@prefix rr: <http://www.w3.org/ns/r2rml#> .
@prefix rml: <http://semweb.mmlab.be/ns/rml#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix ql: <http://semweb.mmlab.be/ns/ql#> .
@prefix map: <http://mapping.example.com/> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix sd: <http://www.w3.org/ns/sparql-service-description#> .
@prefix ex: <http://example.com/> .
@prefix cs: <http://www.cheapshark.com/> .
@prefix ldi: <http://www.vlaanderen.be/ns/ldi#> .

map:fn_000 rml:logicalSource map:source_000 ;
	rr:predicateObjectMap map:pom_005, map:pomexec_000 .

map:fn_001 rml:logicalSource map:source_000 ;
	rr:predicateObjectMap map:pom_007, map:pomexec_001 .

map:gm_000 rdf:type rr:GraphMap ;
	rr:template "http://www.cheapshark.com/gamedeals/{gameID}/{lastChange}" .

map:map_person_000 rml:logicalSource map:source_000 ;
	rdf:type rr:TriplesMap ;
	rdfs:label "person" ;
	rr:predicateObjectMap map:pom_000, map:pom_001, map:pom_002, map:pom_003, map:pom_004, map:pom_006, map:pom_008, map:pom_009, map:pom_010 ;
	rr:subjectMap map:s_000 .

map:om_000 rdf:type rr:ObjectMap ;
	rr:constant <http://www.cheapshark.com/GameDeal> ;
	rr:termType rr:IRI .

map:om_001 rml:reference "title" ;
	rdf:type rr:ObjectMap ;
	rr:termType rr:Literal .

map:om_002 rml:reference "metacriticLink" ;
	rdf:type rr:ObjectMap ;
	rr:termType rr:Literal .

map:om_003 rml:reference "thumb" ;
	rdf:type rr:ObjectMap ;
	rr:termType rr:Literal .

map:om_004 <http://semweb.mmlab.be/ns/fnml#functionValue> map:fn_000 ;
	rdf:type <http://semweb.mmlab.be/ns/fnml#FunctionTermMap> ;
	rr:datatype xsd:DateTime ;
	rr:termType rr:Literal .

map:om_005 rml:reference "releaseDate" ;
	rdf:type rr:ObjectMap ;
	rr:termType rr:Literal .

map:om_006 <http://semweb.mmlab.be/ns/fnml#functionValue> map:fn_001 ;
	rdf:type <http://semweb.mmlab.be/ns/fnml#FunctionTermMap> ;
	rr:datatype xsd:DateTime ;
	rr:termType rr:Literal .

map:om_007 rml:reference "lastChange" ;
	rdf:type rr:ObjectMap ;
	rr:termType rr:Literal .

map:om_008 rml:reference "isOnSale" ;
	rdf:type rr:ObjectMap ;
	rr:datatype xsd:Boolean ;
	rr:termType rr:Literal .

map:om_009 rml:reference "normalPrice" ;
	rdf:type rr:ObjectMap ;
	rr:datatype xsd:Double ;
	rr:termType rr:Literal .

map:om_010 rml:reference "salePrice" ;
	rdf:type rr:ObjectMap ;
	rr:datatype xsd:Double ;
	rr:termType rr:Literal .

map:omexec_000 rr:constant <http://www.vlaanderen.be/ns/ldi#epochToIso8601> ;
	rr:termType rr:IRI .

map:omexec_001 rr:constant <http://www.vlaanderen.be/ns/ldi#epochToIso8601> ;
	rr:termType rr:IRI .

map:pm_000 rdf:type rr:PredicateMap ;
	rr:constant rdf:type .

map:pm_001 rdf:type rr:PredicateMap ;
	rr:constant cs:title .

map:pm_002 rdf:type rr:PredicateMap ;
	rr:constant cs:metacriticLink .

map:pm_003 rdf:type rr:PredicateMap ;
	rr:constant cs:thumb .

map:pm_004 rdf:type rr:PredicateMap ;
	rr:constant cs:releaseDate .

map:pm_005 rdf:type rr:PredicateMap ;
	rr:constant ldi:epoch .

map:pm_006 rdf:type rr:PredicateMap ;
	rr:constant cs:lastChange .

map:pm_007 rdf:type rr:PredicateMap ;
	rr:constant ldi:epoch .

map:pm_008 rdf:type rr:PredicateMap ;
	rr:constant cs:isOnSale .

map:pm_009 rdf:type rr:PredicateMap ;
	rr:constant cs:normalPrice .

map:pm_010 rdf:type rr:PredicateMap ;
	rr:constant cs:salePrice .

map:pmexec_000 rr:constant <https://w3id.org/function/ontology#executes> .

map:pmexec_001 rr:constant <https://w3id.org/function/ontology#executes> .

map:pom_000 rdf:type rr:PredicateObjectMap ;
	rr:objectMap map:om_000 ;
	rr:predicateMap map:pm_000 .

map:pom_001 rdf:type rr:PredicateObjectMap ;
	rr:objectMap map:om_001 ;
	rr:predicateMap map:pm_001 .

map:pom_002 rdf:type rr:PredicateObjectMap ;
	rr:objectMap map:om_002 ;
	rr:predicateMap map:pm_002 .

map:pom_003 rdf:type rr:PredicateObjectMap ;
	rr:objectMap map:om_003 ;
	rr:predicateMap map:pm_003 .

map:pom_004 rdf:type rr:PredicateObjectMap ;
	rr:objectMap map:om_004 ;
	rr:predicateMap map:pm_004 .

map:pom_005 rdf:type rr:PredicateObjectMap ;
	rr:objectMap map:om_005 ;
	rr:predicateMap map:pm_005 .

map:pom_006 rdf:type rr:PredicateObjectMap ;
	rr:objectMap map:om_006 ;
	rr:predicateMap map:pm_006 .

map:pom_007 rdf:type rr:PredicateObjectMap ;
	rr:objectMap map:om_007 ;
	rr:predicateMap map:pm_007 .

map:pom_008 rdf:type rr:PredicateObjectMap ;
	rr:objectMap map:om_008 ;
	rr:predicateMap map:pm_008 .

map:pom_009 rdf:type rr:PredicateObjectMap ;
	rr:objectMap map:om_009 ;
	rr:predicateMap map:pm_009 .

map:pom_010 rdf:type rr:PredicateObjectMap ;
	rr:objectMap map:om_010 ;
	rr:predicateMap map:pm_010 .

map:pomexec_000 rr:objectMap map:omexec_000 ;
	rr:predicateMap map:pmexec_000 .

map:pomexec_001 rr:objectMap map:omexec_001 ;
	rr:predicateMap map:pmexec_001 .

map:rules_000 <http://rdfs.org/ns/void#exampleResource> map:map_person_000 ;
	rdf:type <http://rdfs.org/ns/void#Dataset> .

map:s_000 rdf:type rr:SubjectMap ;
	rr:graphMap map:gm_000 ;
	rr:template "http://www.cheapshark.com/gamedeals/{gameID}" .

map:source_000 rml:iterator "$[*]" ;
	rml:referenceFormulation ql:JSONPath ;
	rml:source "deals.json" ;
	rdf:type rml:LogicalSource .