© COPYRIGHT 2014 MARKLOGIC CORPORATION. ALL RIGHTS RESERVED.
Pushing the Semantics Envelope Charles Greer, Senior Engineer @grechaw
© COPYRIGHT 2014 MARKLOGIC CORPORATION. ALL RIGHTS RESERVED.
SLIDE:
New Landscape for Data Architecture
© COPYRIGHT 2014 MARKLOGIC CORPORATION. ALL RIGHTS RESERVED.
SLIDE:
MarkLogic 7: structured RDF data and SPARQL ▪ Precision query ▪ Return bound variables or triples ▪ Joins ▪ Relationships ▪ Taxonomies
© COPYRIGHT 2014 MARKLOGIC CORPORATION. ALL RIGHTS RESERVED.
SLIDE:
Document-oriented features ▪ Full-text Search ▪ cts:directory-query( $directory ) ▪ cts:collection-query( $collection1, $collection2 ) ▪ cts:document-query( $doc1, $doc2, $doc3 ) ▪ geospatial query ▪ Security ▪ Bitemporal query* ▪ Content Processing Framework
© COPYRIGHT 2014 MARKLOGIC CORPORATION. ALL RIGHTS RESERVED.
SLIDE:
Documents give context to data -- use them both!
document: uri: /customers/125 permissions: ... contains: marked-up text contains: structured RDF data
© COPYRIGHT 2014 MARKLOGIC CORPORATION. ALL RIGHTS RESERVED.
SLIDE:
Contextualization Example, Security patients with Hereditary Diseases:
select ?name where { ?p foaf:name ?name ; :diagnosedWith ?d . ?d a :hereditaryDisease . }
Doctor : “John Doe” Patient : n/a
permissions: ROLE_DOCTOR rdf: :patientDoe foaf:name “John Doe” ; :diagnosedWith :hyperCholestrolemia .
permissions: ROLE_ANYONE rdf: :hyperCholestrolemia a :heriditaryDisease ; rdfs:label “High Cholesterol” .
© COPYRIGHT 2014 MARKLOGIC CORPORATION. ALL RIGHTS RESERVED.
SLIDE:
Documents Contextualize your SPARQL queries ▪ Query within a region:
sem:sparql(“select … where { … }”, cts:path-geospatial-query(...))
▪ Query only within a directory/collection/document
sem:sparql(“select … where { … }”, cts:document-query(...))
▪ Query only documents that match word search
sem:sparql(“select ?thisvalue ?thatvalue where { … }”, cts:word-query(...))
© COPYRIGHT 2014 MARKLOGIC CORPORATION. ALL RIGHTS RESERVED.
SLIDE:
MarkLogic Semantics Pushes the Envelope ▪ No up-front modelling - load as is.
▪ Choose data suitable for joins and structure - make RDF in documents.
▪ Manage documents as you always have, leverage existing features.
▪ Query RDF within the context of document-oriented query.
▪ The RDF triple store is no longer a separate tech stack - your documents are
already smart.