Re: Best practices for naming and referring to void:Datasets

On 2014-07-14 17:33, Svensson, Lars wrote:
> All,
>
> I have a question on how to best identify and describe datasets with void. I've read the documentation [1], but couldn't figure out which is the best approach...
>
> Let's assume I have three datasets: foo, bar and baz. The entities in each dataset have URIs like http://data.example.org/foo/*, http://data.example.org/bar/* and http://data.example.org/baz/*. This implies that e. g. http://data.example.org/foo could be a nice URI to identify the dataset foo. When I look at the recipes for how to construct my dataset description, however, it seems I could either
>
> 1) use hash URIs from the site root (e. g. http://data.example.org#foo), or
> 2) place the individual dataset descriptions at the dataset level (e. g. use http://data.example.org/foo as the dataset identifier and then use content negotiation to show either html or RDF).
>
> The question is: If I choose the second approach, how do I link from http://data.example.org/ to the individual dataset descriptions? If I at http://data.example.org simply do this:
>
> <> a void:DatasetDescription ;
>  dcterms:title "A void file for all of my data"@en .
> <http://data.example.org/foo> a void:Dataset .
> <http://data.example.org/bar> a void:Dataset .
> <http://data.example.org/baz> a void:Dataset .
>
> and then at the respective URIs example:foo, example:bar and example:baz publish
>
> <> a void:Dataset ;
>  dcterms:title "The Foo Dataset" ;
>  dcterms:contributor <http://example.org> ;
>  dcterms:license <http://www.opendatacommons.org/odc-public-domain-dedication-and-licence/> .
>
> can I then expect crawlers that start at <http://data.example.org> to automagically continue to crawl the data from the individual datasets, or do I explicitly need to link from the void:DatasetDescription to the void:Datasets à la
>
> <> a void:DatasetDescription ;
>  ...:describes <http://data.example.org/foo> , <http://data.example.org/bar> , <http://data.example.org/baz> .
>
> ? (If so, which property should I use for ...:describes?).
>
> [1] http://www.w3.org/TR/void/#deploying
>
> Thanks in advance for any advice,
>
> Lars
>
>
>
> *** Lesen. Hören. Wissen. Deutsche Nationalbibliothek ***
>

Hi Lars,


I would go at it like this:

#Probably a good idea to use void.ttl or .well-known/void here
<http://data.example.org/void.ttl>
     a void:DatasetDescription ;
     foaf:primaryTopic <http://data.example.org/dataset/example> .

<http://data.example.org/dataset/example>
     a void:Dataset ;
     void:subset <http://data.example.org/foo> .

<http://data.example.org/foo> a void.Dataset .


The rationale for <http://data.example.org/dataset/example> is that, it 
can point to all of your datasets. It also comes in handy when you deal 
with linksets, and just want to point at the complete set:

:linkset-example-ecb
     a void:Linkset ;
     void:linkPredicate skos:exactMatch ;
     void:subjectsTarget <http://data.example.org/dataset/example> ;
     void:objectsTarget <http://ecb.270a.info/dataset/ecb> .


Don't forget that, you can always "resort to" rdfs:seeAlso if you are 
stuck on connecting the dots.

For some deployed examples: http://270a.info/ -> 
http://270a.info/.well-known/void , http://*.270a.info/ and so on.

-Sarven
http://csarven.ca/#i

Received on Tuesday, 15 July 2014 08:32:26 UTC