how to make a publisherDID

Douglas Tody dtody at nrao.edu
Tue Oct 25 13:14:26 PDT 2011


Maybe I am missing something but this seems pretty cut and dried...

A publisherDID (dataset identifier) is just another DID, the only thing
different from other DIDs being context or usage.  So it consists of a
registered authority ID concatenated with a user-defined resource key,
as defined in

http://www.ivoa.net/Documents/REC/Identifiers/Identifiers-20070302.html

So the publisher (e.g. archive) registers an authority ID, which
globally defines a namespace they control, within which they can assign
resource/ dataset keys which are unique within the namespace.  Since the
authority ID is globally unique the publisherDIDs will be too.

I am not sure it is required by the standard but usually the collection
name is appended to the authority ID, i.e. multiple collections can
share the same publisherDID namespace.  About all one could safely
extract from the pubDID is the authority ID since the resource key
syntax is not fixed.  But this could be sufficient to find an associated
ObsTAP service, and given the pubDID one can query this to get the
observation ID, collection name, and other metadata.

 	- Doug


On Tue, 25 Oct 2011, Patrick Dowler wrote:

>
> I need to decide on a procedure for making publisherDID values for use in TAP
> services, for example in the ivoa.ObsCore table, but also our internal CAOM
> tables which also expose the same identifiers. This is following from the
> interesting DAL-DM-DCP discussions on use of URIs.
>
> Presumably, I could start with a DataCollection identifier registered in the
> IVOA registry system, eg:
>
> ivo://cadc.nrc.ca/archive/cfht
>
> (note: more generally, a creatorDID would be linked to a DataCollection and a
> publisherDID might be linked to a provider/service in case they are not the
> same or definitive provider - let's ignore that for now)
>
> In the past we would use the fragment, eg
> ivo://cadc.nrc.ca/archive/cfht#12345/raw but that implies that one can somehow
> "get" the entire collection and then look for "12345/raw" inside it (client
> side).
>
> Instead, I could append some dataset-specific to get an observation identifier,
> eg.
>
> ivo://cadc.nrc.ca/archive/cfht/12345
>
> and then append something product-specific to get an identifier for the product,
> eg.
>
> ivo://cadc.nrc.ca/archive/cfht/12345/raw
>
> However, if someone has one of these (the last one), what can they do with it?
> With this approach, there is no prescribed way to extract the identifier for
> the registered DataCollection. Should there be?
>
> In VOSpace, the spec invents a new URI scheme (vos) that prescribes exactly
> how to extract/create the service URI from the vos URI, but it comes down to
> being able to separate the URI into two halves: a base that can be looked up
> in a registry and a separate bit (path in vos) that can be used when talking
> to the service. In principle this does not require a new scheme, but it does
> require at least a way to separate.
>
> PS-I have the exact same issue with several services where I want to identify
> the service with an ivo URI and I want to make and use URIs for items found
> within/via that service.
>
> -- 
>
> Patrick Dowler
> Tel/Tél: (250) 363-0044
> Canadian Astronomy Data Centre
> National Research Council Canada
> 5071 West Saanich Road
> Victoria, BC V9E 2M7
>
> Centre canadien de donnees astronomiques
> Conseil national de recherches Canada
> 5071, chemin West Saanich
> Victoria (C.-B.) V9E 2M7
>


More information about the dm mailing list