[DDI-SRG] Proposal for DDI URN resolution and new format of DDI URN's
Wendy Thomas
wlt at pop.umn.edu
Mon May 18 11:54:17 EDT 2009
Remember also that DDI allows an unlimited and most commonly a two layer
minor version. In fact DDI itself is using a three layer
major.minor_invalidating.minor_noninvalidating structure
sorry to be so picky :)
On Mon, 18 May 2009, Joachim Wackerow wrote:
> Then major and minor version must be differentiated in the URN.
>
> urn:ddi_3_1:DataCollection.Methodology=icpsr.us.ddi:DataCol_1(2_0).METH_2(1_1)
>
> would be
>
> urn:ddi:icpsr.us.ddi:3_1:DataCollection.DataCol_1.2.0.Methodology.METH_2.1.1
>
> With a wildcard
>
> urn:ddi_3_1:DataCollection.Methodology=icpsr.us.ddi:DataCol_1(2_*).METH_2(1_1)
>
> would be
>
> urn:ddi:icpsr.us.ddi:3_1:DataCollection.DataCol_1.2..Methodology.METH_2.1.1
>
> The URN of the maintainable would be then:
> urn:ddi:icpsr.us.ddi:3_1:DataCollection.DataCol_1.2
>
> The same as DNS name
> *.2.DataCol_1.DataCollection.3_1.icpsr.us.ddi.urn.arpa
>
> Then the resolver (client) will get a list of responses, which must be sorted
> for the highest minor version number.
>
> It looks like an issue which should be further explored.
>
>
>
> The wildcard on the minor number is actually the late bound version of the
> minor number.
>
> Actually it would be much clearer when two fields in DDI would exist for
> major version and minor version. With the current way the content of version
> must be parsed (looking for the period) beyond of XML parsing. This is not a
> clear design.
>
> AbstractVersionableType has currently the attribute "version". It should have
> the attributes "majorVersion" and "minorVersion".
>
> BTW the XML Schema says that the separator between major and minor version is
> a period. The example URN's at various places in the overview and in the user
> guide use underscore.
>
> Anyway I would opt for the two attributes. Then we don't have to parse and we
> don't need the wildcard for getting the latest in minor version.
> (already one regex less :) ). The documentation must be anyway fixed.
>
> The issue is strongly related to the discussion of the new URN format.
>
> Achim
>
> Achim
>
>
> Wendy Thomas wrote:
>> Much clearer. However, if there is not version number provided the
>> prescribed DDI is the default 1.0. How does this handle wildcards?
>>
>> Resolution of bug 198
>> ACTION:
>>
>> Allow use of * for wildcarding version. Expand documentation to explain
>> this option
>>
>> Wendy
>>
>> On Mon, 18 May 2009, Joachim Wackerow wrote:
>>
>>> Wendy,
>>>
>>> Thanks for converting the format.
>>>
>>> Only the maintainable objects seem to be important for URN resolution
>>> purposes. See the assumptions in the introduction. So I focused just on
>>> these.
>>>
>>> urn:ddi_3_1:DataCollection.Methodology=icpsr.us.ddi:DataCol_1(2_0).METH_2(1_1)
>>>
>>> would be
>>>
>>> urn:ddi:icpsr.us.ddi:3_1:DataCollection.DataCol_1.2_0.Methodology.METH_2.1_1
>>>
>>> The structure of a full id of an object (maintainable object or the object
>>> itself) would be:
>>> name-of-object.id-of-object.object-version-number
>>>
>>> When no version number exists an empty string between two dots represents
>>> this (not necessary at the right end).
>>>
>>> Each part of the URN can be understood as positional parameter in a strict
>>> hierarchy. It can be further discussed which separator characters would be
>>> optimal. A colon is anyway a separator in URN's. A dot is the hierarchical
>>> separator in DNS.
>>>
>>> The URN of the maintainable would be then:
>>> urn:ddi:icpsr.us.ddi:3_1:DataCollection.DataCol_1.2_0
>>>
>>> The same as DNS name:
>>> 2_0.DataCol_1.DataCollection.3_1.icpsr.us.ddi.urn.arpa
>>>
>>> The resolver (client) gets a URL or another URN as response, which
>>> identifies the DDI instance, where the maintainable object is contained.
>>> When the response is an URN, the resolver asks again the DNS for this URN
>>> and will get a URL, which identifies the DDI instance.
>>>
>>> Hope this clarifies, Achim
>>>
>>> Wendy Thomas wrote:
>>>>
>>>> Achim
>>>>
>>>> Upon readig this I am unclear regarding the object. Is this a correct
>>>> interpretation of the rewriting of the following urn (current structure)
>>>>
>>>> urn:ddi_3_1:DataCollection.Methodology=icpsr.us.ddi:
>>>> DataCol_1(2_0).METH_2(1_1)
>>>>
>>>> Would now be:
>>>>
>>>> urn:ddi:icpsr.us.ddi:3_1:DataCollection.DataCol_1.Methodology.1_1.METH_2
>>>>
>>>> What about version number of the DataCollection?
>>>>
>>>> Or do you mean:
>>>>
>>>> urn:ddi:icpsr.us.ddi:3_1:DataCollection.DataCol_1.METH_2.1_1
>>>>
>>>> So I don't ever declare what type of object I am referencing just the
>>>> type of its parent maintainable. Still have the question of the version
>>>> number of the parent maintainable. I can have two objects in a
>>>> maintainable with the same ID but different versions can't I?
>>>>
>>>>
>>>>
>>>>
>>>> On Mon, 18 May 2009, Joachim Wackerow wrote:
>>>>
>>>>> Arofan,
>>>>>
>>>>> We talked briefly about this issue at the last conference call. Here are
>>>>> more details.
>>>>>
>>>>> Achim
>>>>>
>>>>> --
>>>>> GESIS - Leibniz Institute for the Social Sciences
>>>>> Postal address: P.O. Box 122155, 68072 Mannheim, Germany
>>>>> Visiting address: B2 1, 68159 Mannheim, Germany
>>>>> Phone: +49 (0)621 1246 262
>>>>> Fax: +49 (0)621 1246 100
>>>>> E-mail: joachim.wackerow at gesis.org
>>>>> www.gesis.org/en/institute/
>>>>>
>>>>
>>>> Wendy L. Thomas Phone: +1 612.624.4389
>>>> Data Access Core Director Fax: +1 612.626.8375
>>>> Minnesota Population Center Email: wlt at pop.umn.edu
>>>> University of Minnesota
>>>> 50 Willey Hall
>>>> 225 19th Avenue South
>>>> Minneapolis, MN 55455
>>>
>>>
>>> --
>>> GESIS - Leibniz Institute for the Social Sciences
>>> Postal address: P.O. Box 122155, 68072 Mannheim, Germany
>>> Visiting address: B2 1, 68159 Mannheim, Germany
>>> Phone: +49 (0)621 1246 262
>>> Fax: +49 (0)621 1246 100
>>> E-mail: joachim.wackerow at gesis.org
>>> www.gesis.org/en/institute/
>>>
>>
>> Wendy L. Thomas Phone: +1 612.624.4389
>> Data Access Core Director Fax: +1 612.626.8375
>> Minnesota Population Center Email: wlt at pop.umn.edu
>> University of Minnesota
>> 50 Willey Hall
>> 225 19th Avenue South
>> Minneapolis, MN 55455
>
>
> --
> GESIS - Leibniz Institute for the Social Sciences
> Postal address: P.O. Box 122155, 68072 Mannheim, Germany
> Visiting address: B2 1, 68159 Mannheim, Germany
> Phone: +49 (0)621 1246 262
> Fax: +49 (0)621 1246 100
> E-mail: joachim.wackerow at gesis.org
> www.gesis.org/en/institute/
>
Wendy L. Thomas Phone: +1 612.624.4389
Data Access Core Director Fax: +1 612.626.8375
Minnesota Population Center Email: wlt at pop.umn.edu
University of Minnesota
50 Willey Hall
225 19th Avenue South
Minneapolis, MN 55455
More information about the DDI-SRG
mailing list