-- LOG_ENABLE(2,1) ; -- Clear Introspection Graph associated with these views SPARQL CLEAR GRAPH ; -- SPARQL SELECT COUNT(*) FROM WHERE {?s ?p ?o} ; SPARQL SELECT COUNT(*) FROM WHERE {?s ?p ?o} ; -- ABox Data -- SPARQL CLEAR GRAPH ; SPARQL CLEAR GRAPH ; -- SPARQL SELECT COUNT(*) FROM WHERE {?s ?p ?o} ; SPARQL SELECT COUNT(*) FROM WHERE {?s ?p ?o} ; -- SPARQL DEFINE get:soft "no-sponge" LOAD INTO ; -- SPARQL DEFINE get:soft "no-sponge" LOAD INTO ; -- SPARQL DEFINE get:soft "no-sponge" LOAD INTO ; SPARQL DEFINE get:soft "no-sponge" LOAD INTO ; -- Check -- SPARQL SELECT COUNT(*) FROM WHERE {?s ?p ?o} ; SPARQL SELECT COUNT(*) FROM WHERE {?s ?p ?o} ; -- TBox Data SPARQL CLEAR GRAPH ; SPARQL SELECT COUNT(*) FROM WHERE {?s ?p ?o} ; SPARQL SELECT DISTINCT ?p FROM WHERE {?s ?p ?o} ; -- SPARQL DEFINE get:soft "no-sponge" LOAD INTO ; SPARQL DEFINE get:soft "no-sponge" PREFIX dbp: LOAD dbp:author INTO ; SPARQL DEFINE get:soft "no-sponge" PREFIX dbp: LOAD dbp:pages INTO ; SPARQL DEFINE get:soft "no-sponge" PREFIX dbp: LOAD dbp:pubDate INTO ; SPARQL DEFINE get:soft "no-sponge" PREFIX dbo: LOAD dbo:isbn INTO ; SPARQL DEFINE get:soft "no-sponge" PREFIX dbo: LOAD dbo:birthDate INTO ; SPARQL DEFINE get:soft "no-sponge" PREFIX dbo: LOAD dbo:birthYear INTO ; SPARQL DEFINE get:soft "no-sponge" PREFIX dct: LOAD dct:subject INTO ; SPARQL DEFINE get:soft "no-sponge" PREFIX dbp: LOAD rdfs:comment INTO ; SPARQL DEFINE get:soft "no-sponge" PREFIX dbp: LOAD rdfs:label INTO ; -- Check SPARQL SELECT COUNT(*) FROM WHERE {?s ?p ?o} ; SPARQL SELECT DISTINCT * FROM WHERE {?s ?p ?o} ; -- The triples in this document are to be loaded into a GraphQL Mappings Named Graph denoted by an IRI of the operators choosing; once loaded, -- said named graph is then used to update the GraphQL Bridge using the following: -- TTLP (GQL_CREATE_TYPE_SCHEMA ('{named-graph-iri-for-these-triples}'), '', 'urn:graphql:intro'); -- GraphQL Mapping Graph SPARQL PREFIX rdf: PREFIX rdfs: PREFIX owl: PREFIX dbo: PREFIX dbp: PREFIX gql: PREFIX dct: INSERT DATA INTO { # DBpedia to GraphQL Map Description gql:Map gql:schemaObjects gql:DBpediaBook, gql:DBpediaBooks, gql:Author ; # Target GraphQL Entity Types List gql:dataGraph ; # DBpedia ABox Graph gql:schemaGraph . # DBpedia TBox Graph # DBpedia Class to GraphQL Entity Type Mappings # gql:DBpediaBook gql:type gql:Object ; gql:rdfClass dbo:Book . gql:DBpediaBooks gql:type gql:Array ; gql:rdfClass dbo:Book . gql:Author gql:type gql:Object ; gql:rdfClass dbo:Person . dbo:Book a owl:Class ; gql:field gql:DBpediaBook . dbo:Person a owl:Class ; gql:field gql:Author . # GraphQL Entity Field (Property) to DBpedia Property Mappings # dbp:author a owl:ObjectProperty ; rdfs:range dbo:Person ; rdfs:domain dbo:Book ; gql:type gql:Array ; gql:field gql:author . dbo:isbn a owl:DatatypeProperty ; rdfs:range xsd:string ; rdfs:domain dbo:Book ; gql:type gql:Scalar ; gql:field gql:isbn . dbp:releaseDate a owl:DatatypeProperty ; rdfs:range xsd:int ; rdfs:domain dbo:Book ; gql:type gql:Scalar ; gql:field gql:releaseDate . dbp:pubDate a owl:DatatypeProperty ; rdfs:range xsd:int ; rdfs:domain dbo:Book ; gql:type gql:Scalar ; gql:field gql:pubDate . dbp:pages a owl:DatatypeProperty ; rdfs:range xsd:int ; rdfs:domain dbo:Book ; gql:type gql:Scalar ; gql:field gql:pages . rdfs:label a owl:DatatypeProperty ; rdfs:range xsd:string ; rdfs:domain dbo:Book, dbo:Person ; gql:type gql:Scalar ; gql:field gql:bookTitle, gql:name, gql:authorName . rdfs:comment a owl:DatatypeProperty ; rdfs:range xsd:string ; rdfs:domain dbo:Book, dbo:Person ; gql:type gql:Scalar ; gql:field gql:description . dct:subject a owl:DatatypeProperty ; rdfs:range xsd:string ; rdfs:domain dbo:Book, dbo:Person ; gql:type gql:Array ; gql:field gql:subject . dbo:birthYear a owl:DatatypeProperty ; rdfs:range xsd:string ; rdfs:domain dbo:Person ; gql:type gql:Scalar ; gql:field gql:birthYear . dbo:birthDate a owl:DatatypeProperty ; rdfs:range xsd:string ; rdfs:domain dbo:Person ; gql:type gql:Scalar ; gql:field gql:birthDate . dbo:deathYear a owl:DatatypeProperty ; rdfs:range xsd:string ; rdfs:domain dbo:Person ; gql:type gql:Scalar ; gql:field gql:deathYear . } ; -- Update GQL Bridge Type Schema GQL_INIT_TYPE_SCHEMA(); -- Initialize GQL Type Schema for modification GQL_INTRO_DEL ('urn:graphql:intro:dbpedia'); -- Add modified Instrospection Data to GQL Bridge Type System Schema TTLP (GQL_CREATE_TYPE_SCHEMA ('urn:graphql:dbpedia:bridge:books'), '', 'urn:graphql:intro:dbpedia'); -- Generate Introspection Data GQL_INTRO_ADD ('urn:graphql:intro:dbpedia'); -- Add modified Instrospection Data to GQL Bridge Type System Schema