[odc-discuss] ODbL: Does publishing Produced Work from Derivative Database trigger Derivative Database ShareAlike?

Jonathan Rochkind rochkind at jhu.edu
Wed Mar 4 21:56:31 UTC 2009


Sorry, I don't mean to muddy the waters instead of trying to help, but I 
can't resist.

What if the derived database is constantly changing? Say they take your 
data, and put it in another database that also allows user 
contributions? And the users can not only add new data, but fix/change 
the data they got from you?  This is not an unreasonable use case, I 
don't think?

What would the 'diff' they have to provide look like at any given time, 
and how the heck would they track it?

I'm not sure why you guys arrived at a 'diff' solution in the first 
place, but I'm sure there's some reason I'm missing. If you instead just 
said that the entire derived database needs to be available in an easily 
machine readable format, would that get around some of the issues of the 
'diff'? Ignore the 'diff' entirely?  Or, I see, you're trying to _avoid_ 
making the derived database 'sharealike' infected, but still require 
them to share certain things.  I'm not sure how workable this is in the 
general case. If it gets so complicated that it's hard to understand 
what the requirements are and how to meet them easily, then compliance 
is going to go down.

Jonathan

Matt Amos wrote:
> On Wed, Mar 4, 2009 at 8:54 PM, Simon Ward <simon at bleah.co.uk> wrote:
>   
>> On Wed, Mar 04, 2009 at 08:03:44PM +0000, Richard Fairhurst wrote:
>>     
>>> Matt Amos wrote:
>>>
>>>       
>>>> then i must […] provide […] a "diff" between the original database
>>>> and my Derivative Database. […]
>>>>         
>>> I think this is an issue with the formats that are admissible for a
>>> diff, not with the Produced Work question.
>>>       
>
> i think the two are intimately connected - if i don't have to provide
> the Derived Database when distributing Produced Work then the issue
> over diff formats isn't so important.
>
>   
>> To further add to this:  The ODbL talks about a file of differences, and
>> doesn’t specify the format.
>>     
>
> other than that it is "machine readable" and "containing all of the
> alterations".
>
>   
>> When we think about a “diff”, we think about
>> a file that describe each and every addition and removal between one
>> version of something and another, like the output of the command of the
>> same name.  This boils down to being a set of instructions for
>> transforming the input to the output.
>>     
>
> it does explicitly say "containing all of the alterations". my reading
> of this is that the file must contain each and every change, not a
> description of how the changes are produced.
>
>   
>>> My submission (and that of a few others) to the co-ment page is that
>>> osm2pgsql, or indeed any other open source program on a widely used
>>> platform, should be acceptable as a diff
>>>       
>
> and would it be considered acceptable not to point to a single source
> of a diff, such as a single planet file, but to point to a series of
> "database extracts", such as a single planet file and then all the
> minutely diffs up to the present?
>
>   
>> As a very simple and contrived example, say I have an ASCII text file
>> and want to encode it with rot-13.  I could have a “diff” of each and
>> every change:
>>
>>    < The quick brown fox jumped
>>    < over the lazy dog.
>>    ---
>>    > Gur dhvpx oebja sbk whzcrq
>>    > bire gur ynml qbt.
>>     
>
> this contains all of the alterations.
>
>   
>> Or I could just write a much simpler program that would perform the same
>> transformation:
>>
>>    #!/bin/sh
>>    tr 'a-zA-Z' 'n-za-mN-ZA-M'
>>     
>
> i agree this is much simpler, but the license appears to prohibit it,
> as it does not contain all of the alterations.
>
>   
>> I think this is reasonable.  The transformation should be described
>> fully.  I can’t just say “I used ‘tr’” in my example, that is not
>> enough.  Saying I used ‘osm2pgsql’ to transform OSM data is similarly
>> not enough.  I would also have to include the command line options I
>> used to select projection, for example.
>>     
>
> i think this is reasonable as well. but then we run into the problem
> of what constitutes "machine readable". for example, what if the
> program i used doesn't run on windows? what if it is open-source, but
> links against a proprietary library? what if its written in VAX
> assembly?
>
> (as i was writing this, frederik posted something much more erudite so
> i recommend you read his post too)
>
> cheers,
>
> matt
>
> _______________________________________________
> odc-discuss mailing list
> odc-discuss at lists.okfn.org
> http://lists.okfn.org/cgi-bin/mailman/listinfo/odc-discuss
>   




More information about the odc-discuss mailing list