@rmlio/yarrrml-parser
Version:
Parse YARRRML descriptions into RML RDF statements
77 lines (74 loc) • 2.31 kB
YAML
prefixes:
transit: "http://vocab.org/transit/terms/"
wgs84_pos: "http://www.w3.org/2003/01/geo/wgs84_pos#"
gn: "http://www.geonames.org/ontology#"
geosp: "http://www.telegraphis.net/ontology/geography/geography#"
sources:
sourceVenue:
access: src/test/resources/example3/Venue.json
referenceFormulation: jsonpath
iterator: $
mappings:
AirportMapping:
sources:
- [src/test/resources/example3/Airport.csv~csv]
subjects: "http://airport.example.com/$(id)"
predicateobjects:
- [a, transit:Stop]
- p: transit:service
o:
mapping: BusMapping
condition:
function: equal
parameters:
- [str1, $(bus)]
- [str2, "$(@id)"]
- p: wgs84_pos:location
o:
mapping: VenueMapping
condition:
function: equal
parameters:
- [str1, $(city)]
- [str2, $($.location.city)]
BusMapping:
sources:
- access: src/test/resources/example3/Transport.xml
referenceFormulation: xpath
iterator: /transport/bus
subjects: "http://trans.example.com/busses/$(@id)"
predicateobjects:
- [a, transit:Service]
- p: transit:stop
o:
mapping: BusStopMapping
BusStopMapping:
sources:
- access: src/test/resources/example3/Transport.xml
referenceFormulation: xpath
iterator: /transport/bus/route/stop
subject: "http://trans.example.com/stops/$(@id)"
predicateobjects:
- [a, transit:Stop]
- [rdfs:label, $(.)]
VenueMapping:
source: sourceVenue
subject: "http://loc.example.com/city/$($.location.city)"
predicateobjects:
- [a, schema:City]
- p: wgs84_pos:location
o:
mapping: LocationMapping
condition:
function: equal
parameters:
- [str1, $($.location.city)]
- [str2, $($.location.city)]
- [geosp:onContinent,$($.location.continent)]
- [gn:countryCode,$($.location.country)]
LocationMapping:
source: sourceVenue
subject: "http://loc.example.com/latlong/$($.venue.latitude),$($.venue.longitude)"
predicateobjects:
- [wgs84_pos:lat,$($.venue.latitude)]
- [wgs84_pos:long,$($.venue.longitude)]