Re: Uploaded CSV of Chinook sample database

On 16 October 2014 12:49, Anastasia Dimou <anastasia.dimou@ugent.be> wrote:
>
> On 10/15/2014 03:44 PM, Dan Brickley wrote:
>>
>> http://chinookdatabase.codeplex.com/
>>
>> I've uploaded a shell script that converts from the Sqlite3 dump into
>> CSV, alongside the CSVs.
>>
>> See
>> https://github.com/w3c/csvw/tree/gh-pages/examples/tests/scenarios/chinook
>> for overview of schema / contents and links to the data files,
>>
>> https://github.com/w3c/csvw/tree/gh-pages/examples/tests/scenarios/chinook/csv
>>
>> Intent is to use this as a well known dataset for exploring multi-CSV
>> issues with mappings/templates.
>
>
> And I uploaded an RML mapping document mapping the chinook CSV files to RDF.
> See
> https://github.com/w3c/csvw/tree/gh-pages/examples/tests/scenarios/chinook/attempts/attempt-1.
>
> Remark: I changed the public RMLProcessor (development branch) to make it
> even simpler to run the mappings just by providing the mapping document (URL
> or local file) and the output file, for instance mvn exec:java
> -Dexec.args="https://raw.githubusercontent.com/w3c/csvw/gh-pages/examples/tests/scenarios/chinook/attempts/attempt-1/chinook.rml.ttl
> /path/to/local/output/file/chinook.rml.nt"

This is super great - thanks Anastasia! We now have an example of at
least one way of mapping a package of multiple CSVs into a common
graph.

Are there particular bundles of CSVs from other use cases we should
look at next?

The events demo (single csv) is now updated to use the new simpler
tooling / interface.

https://github.com/w3c/csvw/tree/gh-pages/examples/tests/scenarios/events

>From https://github.com/w3c/csvw/blob/gh-pages/examples/tests/scenarios/events/attempts/attempt-1/mapping-events.rml.ttl
here is the mapping.

<#myCSV> rml:source
"https://raw.githubusercontent.com/w3c/csvw/gh-pages/examples/tests/scenarios/events/source/events-listing.csv";
rml:referenceFormulation ql:CSV .
<#MusicEvent>
rml:logicalSource <#myCSV>;
rr:subjectMap [ rr:termType rr:BlankNode; rr:class schema:MusicEvent; ];
rr:predicateObjectMap [ rr:predicate schema:name; rr:objectMap [
rml:reference "Name"; ] ];
rr:predicateObjectMap [ rr:predicate schema:startDate; rr:objectMap [
rml:reference "StartDate"; rr:datatype schema:Date; ] ];
rr:predicateObjectMap [ rr:predicate schema:location; rr:objectMap [
rr:parentTriplesMap <#Place> ] ];
rr:predicateObjectMap [ rr:predicate schema:offers; rr:objectMap [
rr:parentTriplesMap <#Offer> ] ] .
<#Place>
rml:logicalSource <#myCSV>;
rr:subjectMap [ rr:termType rr:BlankNode; rr:class schema:Place; ];
rr:predicateObjectMap [ rr:predicate schema:address; rr:objectMap [
rml:reference "location_address"; ] ];
rr:predicateObjectMap [ rr:predicate schema:name; rr:objectMap [
rml:reference "location_name"; ] ] .
<#Offer>
rml:logicalSource <#myCSV>;
rr:subjectMap [ rr:termType rr:BlankNode; rr:class schema:Offer; ];
rr:predicateObjectMap [ rr:predicate schema:url; rr:objectMap [
rml:reference "ticket_url"; rr:termType rr:IRI; ] ] .



The next natural question is: how should this be cited from the CSV's
JSON-LD metadata description?

Can anyone help make
https://github.com/w3c/csvw/blob/gh-pages/examples/tests/scenarios/events/attempts/attempt-1/metadata.json
look more plausible?

Dan

Received on Thursday, 16 October 2014 14:37:32 UTC