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

Matt Amos zerebubuth at gmail.com
Wed Mar 4 21:51:15 UTC 2009


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




More information about the odc-discuss mailing list