SlideShare a Scribd company logo
1 of 26
What’s coming with SPARQL 2? Slides available online at: http://www.slideshare.net/LeeFeigenbaum/whats-coming-in-sparql2 Comments & questions to: Lee Feigenbaum <lee@cambridgesemantics.com> VP Technology & Standards, Cambridge Semantics Co-chair, W3C SPARQL Working Group
For More Details SPARQL By Example http://www.cambridgesemantics.com/2008/09/sparql-by-example/ SPARQL Cheat Sheet http://www.slideshare.net/LeeFeigenbaum/sparql-cheat-sheet SPARQL2 Status http://www.slideshare.net/LeeFeigenbaum/sparql2-status
Why SPARQL? SPARQL is the query language of the Semantic Web. SPARQL lets us: Pull values from structured and semi-structured data Explore data by querying unknown relationships Perform complex joins of disparate data sources in a single, simple query Transform RDF data from one vocabulary to another
Structure of a SPARQL Query A SPARQL query comprises, in order: Prefix declarations, for abbreviating URIs Dataset definition, stating what RDF graph(s) are being queried A result clause, identifying what information to return from the query The query pattern, specifying what to query for in the underlying dataset Query modifiers, slicing, ordering, and otherwise rearranging query results
Anatomy of a SPARQL Query PREFIXfoo:<…> PREFIXbar:<…> … SELECT … FROM <…> FROM NAMED <…> WHERE{   … } ORDER BY … LIMIT … OFFSET … Declare prefix shortcuts  (optional) Query result  clause Define the  dataset (optional) Query pattern Query modifiers (optional)
An Example SPARQL Query Find the name of all landlocked countries with a population bigger than 15 million PREFIXrdfs:<http://www.w3.org/2000/01/rdf-schema#> PREFIXtype:<http://dbpedia.org/class/yago/> PREFIXprop: <http://dbpedia.org/property/> SELECT?country_name ?population  WHERE{  ?countryatype:LandlockedCountries; rdfs:label?country_name; prop:populationEstimate?population. FILTER(?population>15000000). }
SPARQL Over HTTP (the SPARQL Protocol) http://host.domain.com/sparql/endpoint?<parameters> where <parameters>can include: query=<encoded query string> e.g. SELECT+*%0DWHERE+{… default-graph-uri=<encoded graph URI> e.g. http%3A%2F%2Fexmaple.com%2Ffoo… n.b. zero of more occurrences of default-graph-uri 	named-graph-uri=<encoded graph URI> e.g. http%3A%2F%2Fexmaple.com%2Fbar… n.b. zero of more occurrences of named-graph-uri HTTP GET or POST. Graphs given in the protocol override graphs given in the query.
Some Public SPARQL Endpoints
Disclaimer The SPARQL Working Group has not yet decided many of the technical questions surveyed in these slides. All examples are subject to change; please do not construe them as indicators or endorsements of specific technical designs/decisions. All opinions are Lee Feigenbaum’s alone.
Naming I use “SPARQL2” to collectively refer to the work of the 2nd SPARQL Working Group. The actual languages being worked on are known as:SPARQL/Query 1.1SPARQL/Update 1.0
Where are we now? Today August 2010 March 2009 ??? Last Call and beyond of core SPARQL specifications July 2009 FPWD of SPARQL New Features and Rationales document October 2009 FPWD of core SPARQL specifications
Overview
Projected Expressions Select expressions other than variables (literals, functions on literals and variables, etc.) Issues around: Do expressions require an aliased name? Syntax (main issue here) SELECT ?price * ?qty AS ?total_price WHERE {  … }
Aggregates À la SQL aggregates (MIN, MAX, COUNT, AVG, etc.) Issues around: Which aggregates to include Aggregates over mixed datatypes Syntax, keywords, custom aggregates SELECT MIN(?price) AS ?min_price … WHERE { … } GROUP BY ?item
Subqueries Nested queries allow multiple queries to be combined into one.  Issues around: Variable scope & evaluation model Precise syntax SELECT ?article ?authorWHERE {   ?article ex:author ?author .  {     SELECT ?article WHERE {      … ?article …    } ORDER BY … LIMIT …  }}
Negation Supplant the mystifying OPTIONAL/!bound method of negation with a dedicated construct Issues around: Filter semantics vs. set-difference semantics Choice of keyword(s) SELECT … WHERE {   ?person a foaf:Person .  NOT {     ?person foaf:mbox ?email  } }
Service Description A standard discovery mechanism and vocabulary for describing the capabilities, extensions, data sets, and more for a SPARQL endpoint Discovery. How can a client find the RDF that describes a SPARQL endpoint at a particular URI? Description. What predicates, classes, values, etc. should a client expect to find (and be able to query) once it locates a service description? Issues around: Choice of discovery mechanism  Which predicates and enumerations to define URIs for
Update Language Based on the SPARQL Update member submission Batch insert & delete Insert & delete based on triple patterns Graph management (creation, removal) Issues around: Graph stores vs. triple stores Which language statements to include? Transactions/atomicity/concurrency?
Update Protocol The ability to issue SPARQL/Update language statements via a standard protocol (e.g. via HTTP POST) Issues around: Relation to existing SPARQL (Query) Protocol  Security  Need for WSDL description? SOAP bindings?
RESTful Update Where appropriate, map RESTful HTTP requests to SPARQL/Update operations DELETE /foo/g1 …-> DELETE DATA FROM ex:g1 … Issues around: Which mappings to include? Updating graphs with URIs that are not under the control of the SPARQL endpoint
Property Paths Support arbitrary-length predicate paths in triple patterns – “regular expressions” on predicates? Query hierarchical structures such as RDF collections Issues around: Can variables be used in path expressions? Can the length of a path be found? Are paths first-class datatypes? SELECT … WHERE {   ?person foaf:knows+ ?network . }
Basic Federated Query Initial scaffolding for authoring federated SPARQL queries Likely will involve a keyword to explicitly target portions of a query to specific endpoints Initial plan: Start with ARQ’s SERVICE keyword SELECT … WHERE {  … SERVICE ex:books {    …  } }
Entailment Regime Semantics SPARQL/Query 1.0 defines a mechanism to extend SPARQL semantics for additional entailment regimes Use this mechanism to define the semantics of SPARQL queries for: RDF Schema OWL flavors RIF rule sets … Issues around: Requiring consistency checks How to limit infinite results (e.g. from axiomatic inferences)
Common Functions Extend the set of functions that SPARQL engines must support to include some of… Common string functions (e.g. substr) Common date/time/datetime functions Logical functions (COALESCE, IF, …?) Limited discussion to date about which functions to include
Get Involved Join.  Email team-sparql-chairs@w3.org Follow.  WG materials at http://www.w3.org/2009/sparql/wiki/ Comment.  Public feedback at public-rdf-dawg-comments@w3.org Use.  Discuss SPARQL at public-sparql-dev@w3.org
SPARQL Resources The SPARQL Specification http://www.w3.org/TR/rdf-sparql-query/ SPARQL implementations http://esw.w3.org/topic/SparqlImplementations SPARQL endpoints http://esw.w3.org/topic/SparqlEndpoints SPARQL Frequently Asked Questions http://www.thefigtrees.net/lee/sw/sparql-faq SPARQL 2 Working Group http://www.w3.org/2009/sparql/wiki/ Common SPARQL extensions http://esw.w3.org/topic/SPARQL/Extensions

More Related Content

What's hot

Lucene And Solr Document Classification
Lucene And Solr Document ClassificationLucene And Solr Document Classification
Lucene And Solr Document ClassificationAlessandro Benedetti
 
Sparql semantic information retrieval by
Sparql semantic information retrieval bySparql semantic information retrieval by
Sparql semantic information retrieval byIJNSA Journal
 
Improved Developer Productivity In JDK8
Improved Developer Productivity In JDK8Improved Developer Productivity In JDK8
Improved Developer Productivity In JDK8Simon Ritter
 
SPARQL Query Verbalization for Explaining Semantic Search Engine Queries
SPARQL Query Verbalization for Explaining Semantic Search Engine QueriesSPARQL Query Verbalization for Explaining Semantic Search Engine Queries
SPARQL Query Verbalization for Explaining Semantic Search Engine QueriesBasil Ell
 
OWL Web Ontology Language Overview
OWL Web Ontology Language OverviewOWL Web Ontology Language Overview
OWL Web Ontology Language OverviewIgor Myroshnichenko
 
The Semantic Web #9 - Web Ontology Language (OWL)
The Semantic Web #9 - Web Ontology Language (OWL)The Semantic Web #9 - Web Ontology Language (OWL)
The Semantic Web #9 - Web Ontology Language (OWL)Myungjin Lee
 
Introduction of Java 8 with emphasis on Lambda Expressions and Streams
Introduction of Java 8 with emphasis on Lambda Expressions and StreamsIntroduction of Java 8 with emphasis on Lambda Expressions and Streams
Introduction of Java 8 with emphasis on Lambda Expressions and StreamsEmiel Paasschens
 
SQL Complete Tutorial. All Topics Covered
SQL Complete Tutorial. All Topics CoveredSQL Complete Tutorial. All Topics Covered
SQL Complete Tutorial. All Topics CoveredDanish Mehraj
 
Overview of the DITA Open Toolkit
Overview of the DITA Open ToolkitOverview of the DITA Open Toolkit
Overview of the DITA Open ToolkitSuite Solutions
 
Jarrar: OWL (Web Ontology Language)
Jarrar: OWL (Web Ontology Language)Jarrar: OWL (Web Ontology Language)
Jarrar: OWL (Web Ontology Language)Mustafa Jarrar
 
Haystack London - Search Quality Evaluation, Tools and Techniques
Haystack London - Search Quality Evaluation, Tools and Techniques Haystack London - Search Quality Evaluation, Tools and Techniques
Haystack London - Search Quality Evaluation, Tools and Techniques Andrea Gazzarini
 
JDK8 Lambdas and Streams: Changing The Way You Think When Developing Java
JDK8 Lambdas and Streams: Changing The Way You Think When Developing JavaJDK8 Lambdas and Streams: Changing The Way You Think When Developing Java
JDK8 Lambdas and Streams: Changing The Way You Think When Developing JavaSimon Ritter
 
Web ontology language (owl)
Web ontology language (owl)Web ontology language (owl)
Web ontology language (owl)Ameer Sameer
 
Search Quality Evaluation: a Developer Perspective
Search Quality Evaluation: a Developer PerspectiveSearch Quality Evaluation: a Developer Perspective
Search Quality Evaluation: a Developer PerspectiveAndrea Gazzarini
 
SAP ABAP using OOPS - JH Softech
SAP ABAP using OOPS - JH SoftechSAP ABAP using OOPS - JH Softech
SAP ABAP using OOPS - JH SoftechVikram P Madduri
 
Semantic Web: From Representations to Applications
Semantic Web: From Representations to ApplicationsSemantic Web: From Representations to Applications
Semantic Web: From Representations to ApplicationsGuus Schreiber
 
Let's Build an Inverted Index: Introduction to Apache Lucene/Solr
Let's Build an Inverted Index: Introduction to Apache Lucene/SolrLet's Build an Inverted Index: Introduction to Apache Lucene/Solr
Let's Build an Inverted Index: Introduction to Apache Lucene/SolrSease
 
Evaluating Your Learning to Rank Model: Dos and Don’ts in Offline/Online Eval...
Evaluating Your Learning to Rank Model: Dos and Don’ts in Offline/Online Eval...Evaluating Your Learning to Rank Model: Dos and Don’ts in Offline/Online Eval...
Evaluating Your Learning to Rank Model: Dos and Don’ts in Offline/Online Eval...Sease
 
Primer pto basic srch methodology
Primer pto basic srch methodologyPrimer pto basic srch methodology
Primer pto basic srch methodologyPaul Fulhorst
 

What's hot (20)

Semantic web Technology
Semantic web TechnologySemantic web Technology
Semantic web Technology
 
Lucene And Solr Document Classification
Lucene And Solr Document ClassificationLucene And Solr Document Classification
Lucene And Solr Document Classification
 
Sparql semantic information retrieval by
Sparql semantic information retrieval bySparql semantic information retrieval by
Sparql semantic information retrieval by
 
Improved Developer Productivity In JDK8
Improved Developer Productivity In JDK8Improved Developer Productivity In JDK8
Improved Developer Productivity In JDK8
 
SPARQL Query Verbalization for Explaining Semantic Search Engine Queries
SPARQL Query Verbalization for Explaining Semantic Search Engine QueriesSPARQL Query Verbalization for Explaining Semantic Search Engine Queries
SPARQL Query Verbalization for Explaining Semantic Search Engine Queries
 
OWL Web Ontology Language Overview
OWL Web Ontology Language OverviewOWL Web Ontology Language Overview
OWL Web Ontology Language Overview
 
The Semantic Web #9 - Web Ontology Language (OWL)
The Semantic Web #9 - Web Ontology Language (OWL)The Semantic Web #9 - Web Ontology Language (OWL)
The Semantic Web #9 - Web Ontology Language (OWL)
 
Introduction of Java 8 with emphasis on Lambda Expressions and Streams
Introduction of Java 8 with emphasis on Lambda Expressions and StreamsIntroduction of Java 8 with emphasis on Lambda Expressions and Streams
Introduction of Java 8 with emphasis on Lambda Expressions and Streams
 
SQL Complete Tutorial. All Topics Covered
SQL Complete Tutorial. All Topics CoveredSQL Complete Tutorial. All Topics Covered
SQL Complete Tutorial. All Topics Covered
 
Overview of the DITA Open Toolkit
Overview of the DITA Open ToolkitOverview of the DITA Open Toolkit
Overview of the DITA Open Toolkit
 
Jarrar: OWL (Web Ontology Language)
Jarrar: OWL (Web Ontology Language)Jarrar: OWL (Web Ontology Language)
Jarrar: OWL (Web Ontology Language)
 
Haystack London - Search Quality Evaluation, Tools and Techniques
Haystack London - Search Quality Evaluation, Tools and Techniques Haystack London - Search Quality Evaluation, Tools and Techniques
Haystack London - Search Quality Evaluation, Tools and Techniques
 
JDK8 Lambdas and Streams: Changing The Way You Think When Developing Java
JDK8 Lambdas and Streams: Changing The Way You Think When Developing JavaJDK8 Lambdas and Streams: Changing The Way You Think When Developing Java
JDK8 Lambdas and Streams: Changing The Way You Think When Developing Java
 
Web ontology language (owl)
Web ontology language (owl)Web ontology language (owl)
Web ontology language (owl)
 
Search Quality Evaluation: a Developer Perspective
Search Quality Evaluation: a Developer PerspectiveSearch Quality Evaluation: a Developer Perspective
Search Quality Evaluation: a Developer Perspective
 
SAP ABAP using OOPS - JH Softech
SAP ABAP using OOPS - JH SoftechSAP ABAP using OOPS - JH Softech
SAP ABAP using OOPS - JH Softech
 
Semantic Web: From Representations to Applications
Semantic Web: From Representations to ApplicationsSemantic Web: From Representations to Applications
Semantic Web: From Representations to Applications
 
Let's Build an Inverted Index: Introduction to Apache Lucene/Solr
Let's Build an Inverted Index: Introduction to Apache Lucene/SolrLet's Build an Inverted Index: Introduction to Apache Lucene/Solr
Let's Build an Inverted Index: Introduction to Apache Lucene/Solr
 
Evaluating Your Learning to Rank Model: Dos and Don’ts in Offline/Online Eval...
Evaluating Your Learning to Rank Model: Dos and Don’ts in Offline/Online Eval...Evaluating Your Learning to Rank Model: Dos and Don’ts in Offline/Online Eval...
Evaluating Your Learning to Rank Model: Dos and Don’ts in Offline/Online Eval...
 
Primer pto basic srch methodology
Primer pto basic srch methodologyPrimer pto basic srch methodology
Primer pto basic srch methodology
 

Viewers also liked

Awb Small V1 Noteson Ptg Wc1 41
Awb Small V1 Noteson Ptg Wc1 41Awb Small V1 Noteson Ptg Wc1 41
Awb Small V1 Noteson Ptg Wc1 41guest8002080
 
Canal walk hospitality complex
Canal walk hospitality complexCanal walk hospitality complex
Canal walk hospitality complexpaustojan
 
Im periul excelenței
Im periul excelențeiIm periul excelenței
Im periul excelențeiVlad Mihaescu
 
A Call to Action CPAs - Confronting the Lease Accounting Changes - iLease Man...
A Call to Action CPAs - Confronting the Lease Accounting Changes - iLease Man...A Call to Action CPAs - Confronting the Lease Accounting Changes - iLease Man...
A Call to Action CPAs - Confronting the Lease Accounting Changes - iLease Man...jmeedzan
 
Resurse Educaționale Online în România
Resurse Educaționale Online în RomâniaResurse Educaționale Online în România
Resurse Educaționale Online în RomâniaVlad Mihaescu
 
Banking Industry Whitepaper: Implications of the Lease Accounting Changes
Banking Industry Whitepaper: Implications of the Lease Accounting ChangesBanking Industry Whitepaper: Implications of the Lease Accounting Changes
Banking Industry Whitepaper: Implications of the Lease Accounting Changesjmeedzan
 
Romanian Tutors and Students Interaction with MOOCs
Romanian Tutors and Students Interaction with MOOCsRomanian Tutors and Students Interaction with MOOCs
Romanian Tutors and Students Interaction with MOOCsVlad Mihaescu
 
CSHALS 2010 W3C Semanic Web Tutorial
CSHALS 2010 W3C Semanic Web TutorialCSHALS 2010 W3C Semanic Web Tutorial
CSHALS 2010 W3C Semanic Web TutorialLeeFeigenbaum
 
SmartPhone Design and Delivery
SmartPhone Design and DeliverySmartPhone Design and Delivery
SmartPhone Design and DeliveryJason Diehl
 
Profile of an Entrepreneur
Profile of an EntrepreneurProfile of an Entrepreneur
Profile of an EntrepreneurRodney Ang
 
Taking the Tech out of SemTech
Taking the Tech out of SemTechTaking the Tech out of SemTech
Taking the Tech out of SemTechLeeFeigenbaum
 
Data Segmenting in Anzo
Data Segmenting in AnzoData Segmenting in Anzo
Data Segmenting in AnzoLeeFeigenbaum
 
Intro to the Semantic Web Landscape - 2011
Intro to the Semantic Web Landscape - 2011Intro to the Semantic Web Landscape - 2011
Intro to the Semantic Web Landscape - 2011LeeFeigenbaum
 
"Spark, Deep Learning and Life Sciences, Systems Biology in the Big Data Age"...
"Spark, Deep Learning and Life Sciences, Systems Biology in the Big Data Age"..."Spark, Deep Learning and Life Sciences, Systems Biology in the Big Data Age"...
"Spark, Deep Learning and Life Sciences, Systems Biology in the Big Data Age"...Dataconomy Media
 
""Into the Wild" ... with Natural Language Processing and Text Classification...
""Into the Wild" ... with Natural Language Processing and Text Classification...""Into the Wild" ... with Natural Language Processing and Text Classification...
""Into the Wild" ... with Natural Language Processing and Text Classification...Dataconomy Media
 
Semantic Web Landscape 2009
Semantic Web Landscape 2009Semantic Web Landscape 2009
Semantic Web Landscape 2009LeeFeigenbaum
 
Evolution Towards Web 3.0: The Semantic Web
Evolution Towards Web 3.0: The Semantic WebEvolution Towards Web 3.0: The Semantic Web
Evolution Towards Web 3.0: The Semantic WebLeeFeigenbaum
 

Viewers also liked (20)

Awb Small V1 Noteson Ptg Wc1 41
Awb Small V1 Noteson Ptg Wc1 41Awb Small V1 Noteson Ptg Wc1 41
Awb Small V1 Noteson Ptg Wc1 41
 
Canal walk hospitality complex
Canal walk hospitality complexCanal walk hospitality complex
Canal walk hospitality complex
 
Bbqfaxorder1
Bbqfaxorder1Bbqfaxorder1
Bbqfaxorder1
 
Im periul excelenței
Im periul excelențeiIm periul excelenței
Im periul excelenței
 
A Call to Action CPAs - Confronting the Lease Accounting Changes - iLease Man...
A Call to Action CPAs - Confronting the Lease Accounting Changes - iLease Man...A Call to Action CPAs - Confronting the Lease Accounting Changes - iLease Man...
A Call to Action CPAs - Confronting the Lease Accounting Changes - iLease Man...
 
Resurse Educaționale Online în România
Resurse Educaționale Online în RomâniaResurse Educaționale Online în România
Resurse Educaționale Online în România
 
Banking Industry Whitepaper: Implications of the Lease Accounting Changes
Banking Industry Whitepaper: Implications of the Lease Accounting ChangesBanking Industry Whitepaper: Implications of the Lease Accounting Changes
Banking Industry Whitepaper: Implications of the Lease Accounting Changes
 
SPARQL 1.1 Status
SPARQL 1.1 StatusSPARQL 1.1 Status
SPARQL 1.1 Status
 
Romanian Tutors and Students Interaction with MOOCs
Romanian Tutors and Students Interaction with MOOCsRomanian Tutors and Students Interaction with MOOCs
Romanian Tutors and Students Interaction with MOOCs
 
CSHALS 2010 W3C Semanic Web Tutorial
CSHALS 2010 W3C Semanic Web TutorialCSHALS 2010 W3C Semanic Web Tutorial
CSHALS 2010 W3C Semanic Web Tutorial
 
SmartPhone Design and Delivery
SmartPhone Design and DeliverySmartPhone Design and Delivery
SmartPhone Design and Delivery
 
Profile of an Entrepreneur
Profile of an EntrepreneurProfile of an Entrepreneur
Profile of an Entrepreneur
 
Taking the Tech out of SemTech
Taking the Tech out of SemTechTaking the Tech out of SemTech
Taking the Tech out of SemTech
 
Data Segmenting in Anzo
Data Segmenting in AnzoData Segmenting in Anzo
Data Segmenting in Anzo
 
Intro to the Semantic Web Landscape - 2011
Intro to the Semantic Web Landscape - 2011Intro to the Semantic Web Landscape - 2011
Intro to the Semantic Web Landscape - 2011
 
"Spark, Deep Learning and Life Sciences, Systems Biology in the Big Data Age"...
"Spark, Deep Learning and Life Sciences, Systems Biology in the Big Data Age"..."Spark, Deep Learning and Life Sciences, Systems Biology in the Big Data Age"...
"Spark, Deep Learning and Life Sciences, Systems Biology in the Big Data Age"...
 
""Into the Wild" ... with Natural Language Processing and Text Classification...
""Into the Wild" ... with Natural Language Processing and Text Classification...""Into the Wild" ... with Natural Language Processing and Text Classification...
""Into the Wild" ... with Natural Language Processing and Text Classification...
 
Semantic Web Landscape 2009
Semantic Web Landscape 2009Semantic Web Landscape 2009
Semantic Web Landscape 2009
 
Evolution Towards Web 3.0: The Semantic Web
Evolution Towards Web 3.0: The Semantic WebEvolution Towards Web 3.0: The Semantic Web
Evolution Towards Web 3.0: The Semantic Web
 
SPARQL Cheat Sheet
SPARQL Cheat SheetSPARQL Cheat Sheet
SPARQL Cheat Sheet
 

Similar to What;s Coming In SPARQL2?

Querying the Semantic Web with SPARQL
Querying the Semantic Web with SPARQLQuerying the Semantic Web with SPARQL
Querying the Semantic Web with SPARQLEmanuele Della Valle
 
SPARQLing Services
SPARQLing ServicesSPARQLing Services
SPARQLing ServicesLeigh Dodds
 
SPARQL and SQL: technical aspects and synergy
SPARQL and SQL: technical aspects and synergySPARQL and SQL: technical aspects and synergy
SPARQL and SQL: technical aspects and synergyYannis Kalfoglou
 
A hands on overview of the semantic web
A hands on overview of the semantic webA hands on overview of the semantic web
A hands on overview of the semantic webMarakana Inc.
 
SPARQL-DL - Theory & Practice
SPARQL-DL - Theory & PracticeSPARQL-DL - Theory & Practice
SPARQL-DL - Theory & PracticeAdriel Café
 
The Semantic Web #10 - SPARQL
The Semantic Web #10 - SPARQLThe Semantic Web #10 - SPARQL
The Semantic Web #10 - SPARQLMyungjin Lee
 
Sesam4 project presentation sparql - april 2011
Sesam4   project presentation sparql - april 2011Sesam4   project presentation sparql - april 2011
Sesam4 project presentation sparql - april 2011sesam4able
 
Sesam4 project presentation sparql - april 2011
Sesam4   project presentation sparql - april 2011Sesam4   project presentation sparql - april 2011
Sesam4 project presentation sparql - april 2011Robert Engels
 
Spark SQL Tutorial | Spark SQL Using Scala | Apache Spark Tutorial For Beginn...
Spark SQL Tutorial | Spark SQL Using Scala | Apache Spark Tutorial For Beginn...Spark SQL Tutorial | Spark SQL Using Scala | Apache Spark Tutorial For Beginn...
Spark SQL Tutorial | Spark SQL Using Scala | Apache Spark Tutorial For Beginn...Simplilearn
 
Overview of the SPARQL-Generate language and latest developments
Overview of the SPARQL-Generate language and latest developmentsOverview of the SPARQL-Generate language and latest developments
Overview of the SPARQL-Generate language and latest developmentsMaxime Lefrançois
 
Automating the Use of Web APIs through Lightweight Semantics
Automating the Use of Web APIs through Lightweight SemanticsAutomating the Use of Web APIs through Lightweight Semantics
Automating the Use of Web APIs through Lightweight Semanticsmmaleshkova
 
Re-using Media on the Web: Media fragment re-mixing and playout
Re-using Media on the Web: Media fragment re-mixing and playoutRe-using Media on the Web: Media fragment re-mixing and playout
Re-using Media on the Web: Media fragment re-mixing and playoutMediaMixerCommunity
 
Swap For Dummies Rsp 2007 11 29
Swap For Dummies Rsp 2007 11 29Swap For Dummies Rsp 2007 11 29
Swap For Dummies Rsp 2007 11 29Julie Allinson
 
SPARQL 1.1 Update (2013-03-05)
SPARQL 1.1 Update (2013-03-05)SPARQL 1.1 Update (2013-03-05)
SPARQL 1.1 Update (2013-03-05)andyseaborne
 
Oracle Fundamental and PL-SQL.docx
Oracle Fundamental and PL-SQL.docxOracle Fundamental and PL-SQL.docx
Oracle Fundamental and PL-SQL.docxChandan Kumar
 
Web technologies-course 07.pptx
Web technologies-course 07.pptxWeb technologies-course 07.pptx
Web technologies-course 07.pptxStefan Oprea
 

Similar to What;s Coming In SPARQL2? (20)

Querying the Semantic Web with SPARQL
Querying the Semantic Web with SPARQLQuerying the Semantic Web with SPARQL
Querying the Semantic Web with SPARQL
 
Web Spa
Web SpaWeb Spa
Web Spa
 
SPARQLing Services
SPARQLing ServicesSPARQLing Services
SPARQLing Services
 
SPARQL and SQL: technical aspects and synergy
SPARQL and SQL: technical aspects and synergySPARQL and SQL: technical aspects and synergy
SPARQL and SQL: technical aspects and synergy
 
Semantic Web
Semantic WebSemantic Web
Semantic Web
 
Semantic Web
Semantic WebSemantic Web
Semantic Web
 
A hands on overview of the semantic web
A hands on overview of the semantic webA hands on overview of the semantic web
A hands on overview of the semantic web
 
SPIN in Five Slides
SPIN in Five SlidesSPIN in Five Slides
SPIN in Five Slides
 
SPARQL-DL - Theory & Practice
SPARQL-DL - Theory & PracticeSPARQL-DL - Theory & Practice
SPARQL-DL - Theory & Practice
 
The Semantic Web #10 - SPARQL
The Semantic Web #10 - SPARQLThe Semantic Web #10 - SPARQL
The Semantic Web #10 - SPARQL
 
Sesam4 project presentation sparql - april 2011
Sesam4   project presentation sparql - april 2011Sesam4   project presentation sparql - april 2011
Sesam4 project presentation sparql - april 2011
 
Sesam4 project presentation sparql - april 2011
Sesam4   project presentation sparql - april 2011Sesam4   project presentation sparql - april 2011
Sesam4 project presentation sparql - april 2011
 
Spark SQL Tutorial | Spark SQL Using Scala | Apache Spark Tutorial For Beginn...
Spark SQL Tutorial | Spark SQL Using Scala | Apache Spark Tutorial For Beginn...Spark SQL Tutorial | Spark SQL Using Scala | Apache Spark Tutorial For Beginn...
Spark SQL Tutorial | Spark SQL Using Scala | Apache Spark Tutorial For Beginn...
 
Overview of the SPARQL-Generate language and latest developments
Overview of the SPARQL-Generate language and latest developmentsOverview of the SPARQL-Generate language and latest developments
Overview of the SPARQL-Generate language and latest developments
 
Automating the Use of Web APIs through Lightweight Semantics
Automating the Use of Web APIs through Lightweight SemanticsAutomating the Use of Web APIs through Lightweight Semantics
Automating the Use of Web APIs through Lightweight Semantics
 
Re-using Media on the Web: Media fragment re-mixing and playout
Re-using Media on the Web: Media fragment re-mixing and playoutRe-using Media on the Web: Media fragment re-mixing and playout
Re-using Media on the Web: Media fragment re-mixing and playout
 
Swap For Dummies Rsp 2007 11 29
Swap For Dummies Rsp 2007 11 29Swap For Dummies Rsp 2007 11 29
Swap For Dummies Rsp 2007 11 29
 
SPARQL 1.1 Update (2013-03-05)
SPARQL 1.1 Update (2013-03-05)SPARQL 1.1 Update (2013-03-05)
SPARQL 1.1 Update (2013-03-05)
 
Oracle Fundamental and PL-SQL.docx
Oracle Fundamental and PL-SQL.docxOracle Fundamental and PL-SQL.docx
Oracle Fundamental and PL-SQL.docx
 
Web technologies-course 07.pptx
Web technologies-course 07.pptxWeb technologies-course 07.pptx
Web technologies-course 07.pptx
 

Recently uploaded

How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DaySri Ambati
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 

Recently uploaded (20)

How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 

What;s Coming In SPARQL2?

  • 1. What’s coming with SPARQL 2? Slides available online at: http://www.slideshare.net/LeeFeigenbaum/whats-coming-in-sparql2 Comments & questions to: Lee Feigenbaum <lee@cambridgesemantics.com> VP Technology & Standards, Cambridge Semantics Co-chair, W3C SPARQL Working Group
  • 2. For More Details SPARQL By Example http://www.cambridgesemantics.com/2008/09/sparql-by-example/ SPARQL Cheat Sheet http://www.slideshare.net/LeeFeigenbaum/sparql-cheat-sheet SPARQL2 Status http://www.slideshare.net/LeeFeigenbaum/sparql2-status
  • 3. Why SPARQL? SPARQL is the query language of the Semantic Web. SPARQL lets us: Pull values from structured and semi-structured data Explore data by querying unknown relationships Perform complex joins of disparate data sources in a single, simple query Transform RDF data from one vocabulary to another
  • 4. Structure of a SPARQL Query A SPARQL query comprises, in order: Prefix declarations, for abbreviating URIs Dataset definition, stating what RDF graph(s) are being queried A result clause, identifying what information to return from the query The query pattern, specifying what to query for in the underlying dataset Query modifiers, slicing, ordering, and otherwise rearranging query results
  • 5. Anatomy of a SPARQL Query PREFIXfoo:<…> PREFIXbar:<…> … SELECT … FROM <…> FROM NAMED <…> WHERE{ … } ORDER BY … LIMIT … OFFSET … Declare prefix shortcuts (optional) Query result clause Define the dataset (optional) Query pattern Query modifiers (optional)
  • 6. An Example SPARQL Query Find the name of all landlocked countries with a population bigger than 15 million PREFIXrdfs:<http://www.w3.org/2000/01/rdf-schema#> PREFIXtype:<http://dbpedia.org/class/yago/> PREFIXprop: <http://dbpedia.org/property/> SELECT?country_name ?population WHERE{ ?countryatype:LandlockedCountries; rdfs:label?country_name; prop:populationEstimate?population. FILTER(?population>15000000). }
  • 7. SPARQL Over HTTP (the SPARQL Protocol) http://host.domain.com/sparql/endpoint?<parameters> where <parameters>can include: query=<encoded query string> e.g. SELECT+*%0DWHERE+{… default-graph-uri=<encoded graph URI> e.g. http%3A%2F%2Fexmaple.com%2Ffoo… n.b. zero of more occurrences of default-graph-uri named-graph-uri=<encoded graph URI> e.g. http%3A%2F%2Fexmaple.com%2Fbar… n.b. zero of more occurrences of named-graph-uri HTTP GET or POST. Graphs given in the protocol override graphs given in the query.
  • 8. Some Public SPARQL Endpoints
  • 9. Disclaimer The SPARQL Working Group has not yet decided many of the technical questions surveyed in these slides. All examples are subject to change; please do not construe them as indicators or endorsements of specific technical designs/decisions. All opinions are Lee Feigenbaum’s alone.
  • 10. Naming I use “SPARQL2” to collectively refer to the work of the 2nd SPARQL Working Group. The actual languages being worked on are known as:SPARQL/Query 1.1SPARQL/Update 1.0
  • 11. Where are we now? Today August 2010 March 2009 ??? Last Call and beyond of core SPARQL specifications July 2009 FPWD of SPARQL New Features and Rationales document October 2009 FPWD of core SPARQL specifications
  • 13. Projected Expressions Select expressions other than variables (literals, functions on literals and variables, etc.) Issues around: Do expressions require an aliased name? Syntax (main issue here) SELECT ?price * ?qty AS ?total_price WHERE { … }
  • 14. Aggregates À la SQL aggregates (MIN, MAX, COUNT, AVG, etc.) Issues around: Which aggregates to include Aggregates over mixed datatypes Syntax, keywords, custom aggregates SELECT MIN(?price) AS ?min_price … WHERE { … } GROUP BY ?item
  • 15. Subqueries Nested queries allow multiple queries to be combined into one. Issues around: Variable scope & evaluation model Precise syntax SELECT ?article ?authorWHERE { ?article ex:author ?author . { SELECT ?article WHERE { … ?article … } ORDER BY … LIMIT … }}
  • 16. Negation Supplant the mystifying OPTIONAL/!bound method of negation with a dedicated construct Issues around: Filter semantics vs. set-difference semantics Choice of keyword(s) SELECT … WHERE { ?person a foaf:Person . NOT { ?person foaf:mbox ?email } }
  • 17. Service Description A standard discovery mechanism and vocabulary for describing the capabilities, extensions, data sets, and more for a SPARQL endpoint Discovery. How can a client find the RDF that describes a SPARQL endpoint at a particular URI? Description. What predicates, classes, values, etc. should a client expect to find (and be able to query) once it locates a service description? Issues around: Choice of discovery mechanism Which predicates and enumerations to define URIs for
  • 18. Update Language Based on the SPARQL Update member submission Batch insert & delete Insert & delete based on triple patterns Graph management (creation, removal) Issues around: Graph stores vs. triple stores Which language statements to include? Transactions/atomicity/concurrency?
  • 19. Update Protocol The ability to issue SPARQL/Update language statements via a standard protocol (e.g. via HTTP POST) Issues around: Relation to existing SPARQL (Query) Protocol Security Need for WSDL description? SOAP bindings?
  • 20. RESTful Update Where appropriate, map RESTful HTTP requests to SPARQL/Update operations DELETE /foo/g1 …-> DELETE DATA FROM ex:g1 … Issues around: Which mappings to include? Updating graphs with URIs that are not under the control of the SPARQL endpoint
  • 21. Property Paths Support arbitrary-length predicate paths in triple patterns – “regular expressions” on predicates? Query hierarchical structures such as RDF collections Issues around: Can variables be used in path expressions? Can the length of a path be found? Are paths first-class datatypes? SELECT … WHERE { ?person foaf:knows+ ?network . }
  • 22. Basic Federated Query Initial scaffolding for authoring federated SPARQL queries Likely will involve a keyword to explicitly target portions of a query to specific endpoints Initial plan: Start with ARQ’s SERVICE keyword SELECT … WHERE { … SERVICE ex:books { … } }
  • 23. Entailment Regime Semantics SPARQL/Query 1.0 defines a mechanism to extend SPARQL semantics for additional entailment regimes Use this mechanism to define the semantics of SPARQL queries for: RDF Schema OWL flavors RIF rule sets … Issues around: Requiring consistency checks How to limit infinite results (e.g. from axiomatic inferences)
  • 24. Common Functions Extend the set of functions that SPARQL engines must support to include some of… Common string functions (e.g. substr) Common date/time/datetime functions Logical functions (COALESCE, IF, …?) Limited discussion to date about which functions to include
  • 25. Get Involved Join. Email team-sparql-chairs@w3.org Follow. WG materials at http://www.w3.org/2009/sparql/wiki/ Comment. Public feedback at public-rdf-dawg-comments@w3.org Use. Discuss SPARQL at public-sparql-dev@w3.org
  • 26. SPARQL Resources The SPARQL Specification http://www.w3.org/TR/rdf-sparql-query/ SPARQL implementations http://esw.w3.org/topic/SparqlImplementations SPARQL endpoints http://esw.w3.org/topic/SparqlEndpoints SPARQL Frequently Asked Questions http://www.thefigtrees.net/lee/sw/sparql-faq SPARQL 2 Working Group http://www.w3.org/2009/sparql/wiki/ Common SPARQL extensions http://esw.w3.org/topic/SPARQL/Extensions

Editor's Notes

  1. http://www.w3.org/Submission/SPARQL-Update/
  2. http://www.w3.org/Submission/SPARQL-Update/
  3. http://www.w3.org/Submission/SPARQL-Update/