SlideShare a Scribd company logo
1 of 61
NONOSQLArchitecture Patterns for Semantic Web Applications Brian Panulla Penn State Web 2011 Conference
Twitter: @bpanulla (c)2010 Google, Imagery (c)2010 TerraMetrics, NASA, Map data (c)2010 Europa Technologies, Google, INEGI, AND
Three things the Semantic Web is not(mostly)
1. Semantic HTML
2. Warmed-over AI http://www.movieprop.com/tvandmovie/terminator/t3endoskeletons1.jpg
3. Magic http://bostonist.com/attachments/Anna%20Edwards/109-gob-magic2.jpg
Who cares?
Semantic Web http://xkcd.com/773/
On NoSQL...
NoSQL: Key/Value and Graphs
On Linked Data...
When things go wrong
Linked Data - 2008 http://richard.cyganiak.de/2007/10/lod/
Linked Data - 2008 http://richard.cyganiak.de/2007/10/lod/	Last updated: 2010-09-22
Technology Primer
RDF: Framework for knowledge representation Declares resources Specifies properties of resources W3C standard since 1999 http://www.w3.org/RDF/
What is a Resource? Everything on the web (or not) is a resource. Uniform Resource Locator
RDF is not XML ...but occasionally dresses up like it XML N-Triples N3 Turtle JSON RDFa 		 in HTML ...
URIs Resources are identified by a Uniform Resource Identifier (URI) Can be found in your XHTML DTD and html tag’s xmlns attribute:
URIs ... Are not necessarily URLs http://webconference.psu.edu http://brian.panul.la http://alumni.psu.edu/brian.panulla
Triples RDF is expressed as triples of URIs: subject (“Penn State”) - resource predicate (”is a") - property object (”University”) - resource Is a Penn State University
Triples Another example: subject (“Brian Panulla”) predicate (”presented at") object (”psuweb11”) presented At Brian Panulla psuweb11
Triples to Graphs United States of America City of Portland State of Oregon North America    State of Washington    State of California Canada NATO Is a borders Is in Held At Is in Member of presented At Is in borders Member of attended Is in Is in Is a Is located in Is in PSUWEB11 Penn State Brian Panulla Portland State University
RDF Schemas RDFS provides limited Set Theory features subClassOf subPropertyOf Domain Range Think of classes in RDFS as sets rather than OOP classes
Ontologies Ontology is the study of being or reality. A Formal Ontology is a specification of a conceptualization (Gruber, 1995) Aristotle
Defining an ontology Web Ontology Language (OWL) Version 2.0 		(October 2009) http://www.w3.org/TR/owl2-overview/ Yes, rly.
Some RDFS/OWL Features Classes Sub-class Equivalent Classes Disjoint Classes Cardinality constraints (max/min) Individuals Same Individual Properties Sub-property Equivalent Inverse Symmetric Transitive
Protégéhttp://protege.stanford.edu/
Triple Stores Graph database that knows RDF Quad Stores: triple store that includes provenance 		“where did the data come from?” Various stores provide Transactional / non-Transactional In-Memory / File system / RDBMS storage
Popular Triple Stores HP/Apache Jena Pellet Reasoner Storage In memory RDBMS (transactions) Filesystem storage (high performance) Open Source
Popular Triple Stores Franz AllegroGraph (server) Virtuoso Universal Server (server) Mulgara  (RESTful service, OSS) Redland (C, Obj-C) New Stardog - Integrated reasoning database RDFa API - https://github.com/webr3/rdf.js
Semantic Web Architecture
Del.icio.us
OMNOMino.us
Basic Requirements Information People Bookmarks Tags Functionality Create an account Add a bookmark Delete a bookmark Browse other users’ bookmarks
Logical Schema
Relational DB - Physical Schema
Modeling in RDF Minimize artificial entities Re-use existing schemas or ontologies
Useful Schemas Dublin CORE METADATA INITIATIVE (DCMI) FrienD-of-a-friend (FOAF)
DMCI
FOAF Well-defined ontology for people, organizations, and social networks
FOAF
RDF Data Model - Member foaf:Person foaf:fullname foaf:nickname foaf:mbox foaf:openid Literal (“datataype”)properties Resource (“object”) property
RDF Data Model - Bookmark foaf:Document dct:title dct:description dct:created dct:modified foaf:page foaf:topic Literal (“datataype”)properties Resource (“object”) properties
Topics from DBPedia SemantifiedWikipedia
Custom properties and classes omnom:bookmarked http://omnomino.us/ontology/om.n3#bookmarked omnom: bookmarked foaf: Document foaf: Person
Custom properties and classes rdfs: subClassOf rdfs: subClassOf foaf: Document foaf: Person omnom: Member omnom: Resource
RDF Data Model
SPARQL Graph query language Read-only (1.0) Safe to expose endpoint to Web SPARQL 1.1 adds updates
A Simple SPARQL Example SELECT ?subj ?pred ?obj WHERE { 		?subj ?pred ?obj. } Demo
SPARQL Query Types SELECT – Returns tuples matching specified pattern ASK – yes or no (tests for existence) CONSTRUCT – Returns a graph DESCRIBE – Returns a graph determined by the query engine
SPARQL Examples: ASK ASK { 	?urifoaf:openid <http://brian.panul.la>. }
SPARQL Examples: Member SELECT DISTINCT ?uri ?fullname ?nickname ?email WHERE { 	?uri a omnom:Member. 	OPTIONAL { ?urifoaf:name ?fullname; foaf:nick ?nickname; foaf:mbox ?email. 	} FILTER (?uri = <http://omnomino.us/member/24601>)
SPARQL Example: Bookmarks
Updates via API
The Good: Domains where schemas/models change rapidly or data is sparse Semantics of relational model inadequate (e.g. inferencing, inheritance) Domains emphasizing relationships Social networks Taxonomies
The Bad: Weaknesses Bad for opaque objects with few relationshps Large sets of homogenous objects Alternatives RDBMS NoSQL Document DBs Key/Value Stores Graph databases
Linked Data Publish/Syndicate complete information sets Embedded explicit semantics, unique identifiers Have minimal impact to other Web information publishing May be static or dynamically generated
Resources Semantic Web Programming - John Hebeler, Matthew Fisher, Ryan Blace, and Andrew Perez-Lopez Semantic Web for the Working Ontologist: Effective Modeling in RDFS and OWL -Dean Allemang and James Hendler Programming the Semantic Web by Toby Segaran, Colin Evans, and Jamie Taylor

More Related Content

What's hot

Virtuoso -- The Prometheus of RDF
Virtuoso -- The Prometheus of RDFVirtuoso -- The Prometheus of RDF
Virtuoso -- The Prometheus of RDFOpenLink Software
 
Entity-Centric Data Management
Entity-Centric Data ManagementEntity-Centric Data Management
Entity-Centric Data ManagementeXascale Infolab
 
Brief State of the Art - Semantic Web technologies for geospatial data - Mode...
Brief State of the Art - Semantic Web technologies for geospatial data - Mode...Brief State of the Art - Semantic Web technologies for geospatial data - Mode...
Brief State of the Art - Semantic Web technologies for geospatial data - Mode...Ana Roxin
 
How Apache Spark fits in the Big Data landscape
How Apache Spark fits in the Big Data landscapeHow Apache Spark fits in the Big Data landscape
How Apache Spark fits in the Big Data landscapePaco Nathan
 
Getting Started With The Talis Platform
Getting Started With The Talis PlatformGetting Started With The Talis Platform
Getting Started With The Talis PlatformLeigh Dodds
 
Semantic Pipes and Semantic Mashups
Semantic Pipes and Semantic MashupsSemantic Pipes and Semantic Mashups
Semantic Pipes and Semantic Mashupsgiurca
 
Do it on your own - From 3 to 5 Star Linked Open Data with RMLio
Do it on your own - From 3 to 5 Star Linked Open Data with RMLioDo it on your own - From 3 to 5 Star Linked Open Data with RMLio
Do it on your own - From 3 to 5 Star Linked Open Data with RMLioOpen Knowledge Belgium
 
Evolutionary & Swarm Computing for the Semantic Web
Evolutionary & Swarm Computing for the Semantic WebEvolutionary & Swarm Computing for the Semantic Web
Evolutionary & Swarm Computing for the Semantic WebAnkit Solanki
 
How Apache Spark fits into the Big Data landscape
How Apache Spark fits into the Big Data landscapeHow Apache Spark fits into the Big Data landscape
How Apache Spark fits into the Big Data landscapePaco Nathan
 
ESWC SS 2012 - Wednesday Tutorial Barry Norton: Building (Production) Semanti...
ESWC SS 2012 - Wednesday Tutorial Barry Norton: Building (Production) Semanti...ESWC SS 2012 - Wednesday Tutorial Barry Norton: Building (Production) Semanti...
ESWC SS 2012 - Wednesday Tutorial Barry Norton: Building (Production) Semanti...eswcsummerschool
 
Use of standards and related issues in predictive analytics
Use of standards and related issues in predictive analyticsUse of standards and related issues in predictive analytics
Use of standards and related issues in predictive analyticsPaco Nathan
 
FAIRness through a novel combination of Web technologies
FAIRness through a novel combination of Web technologiesFAIRness through a novel combination of Web technologies
FAIRness through a novel combination of Web technologiesResearch Data Alliance
 

What's hot (16)

Virtuoso -- The Prometheus of RDF
Virtuoso -- The Prometheus of RDFVirtuoso -- The Prometheus of RDF
Virtuoso -- The Prometheus of RDF
 
Entity-Centric Data Management
Entity-Centric Data ManagementEntity-Centric Data Management
Entity-Centric Data Management
 
The Semantic Data Web, Sören Auer, University of Leipzig
The Semantic Data Web, Sören Auer, University of LeipzigThe Semantic Data Web, Sören Auer, University of Leipzig
The Semantic Data Web, Sören Auer, University of Leipzig
 
Brief State of the Art - Semantic Web technologies for geospatial data - Mode...
Brief State of the Art - Semantic Web technologies for geospatial data - Mode...Brief State of the Art - Semantic Web technologies for geospatial data - Mode...
Brief State of the Art - Semantic Web technologies for geospatial data - Mode...
 
How Apache Spark fits in the Big Data landscape
How Apache Spark fits in the Big Data landscapeHow Apache Spark fits in the Big Data landscape
How Apache Spark fits in the Big Data landscape
 
Getting Started With The Talis Platform
Getting Started With The Talis PlatformGetting Started With The Talis Platform
Getting Started With The Talis Platform
 
Semantic Pipes and Semantic Mashups
Semantic Pipes and Semantic MashupsSemantic Pipes and Semantic Mashups
Semantic Pipes and Semantic Mashups
 
Do it on your own - From 3 to 5 Star Linked Open Data with RMLio
Do it on your own - From 3 to 5 Star Linked Open Data with RMLioDo it on your own - From 3 to 5 Star Linked Open Data with RMLio
Do it on your own - From 3 to 5 Star Linked Open Data with RMLio
 
Evolutionary & Swarm Computing for the Semantic Web
Evolutionary & Swarm Computing for the Semantic WebEvolutionary & Swarm Computing for the Semantic Web
Evolutionary & Swarm Computing for the Semantic Web
 
How Apache Spark fits into the Big Data landscape
How Apache Spark fits into the Big Data landscapeHow Apache Spark fits into the Big Data landscape
How Apache Spark fits into the Big Data landscape
 
Linking library data
Linking library dataLinking library data
Linking library data
 
ESWC SS 2012 - Wednesday Tutorial Barry Norton: Building (Production) Semanti...
ESWC SS 2012 - Wednesday Tutorial Barry Norton: Building (Production) Semanti...ESWC SS 2012 - Wednesday Tutorial Barry Norton: Building (Production) Semanti...
ESWC SS 2012 - Wednesday Tutorial Barry Norton: Building (Production) Semanti...
 
Linked open data
Linked open dataLinked open data
Linked open data
 
Use of standards and related issues in predictive analytics
Use of standards and related issues in predictive analyticsUse of standards and related issues in predictive analytics
Use of standards and related issues in predictive analytics
 
FAIRness through a novel combination of Web technologies
FAIRness through a novel combination of Web technologiesFAIRness through a novel combination of Web technologies
FAIRness through a novel combination of Web technologies
 
Sparql
SparqlSparql
Sparql
 

Viewers also liked

Architecture's io t d_macp
Architecture's io t d_macp Architecture's io t d_macp
Architecture's io t d_macp DMacP
 
OCR processing with deep learning: Apply to Vietnamese documents
OCR processing with deep learning: Apply to Vietnamese documents OCR processing with deep learning: Apply to Vietnamese documents
OCR processing with deep learning: Apply to Vietnamese documents Viet-Trung TRAN
 
Semantics: Seven types of meaning
Semantics: Seven types of meaningSemantics: Seven types of meaning
Semantics: Seven types of meaningMiftadia Laula
 

Viewers also liked (7)

Architecture's io t d_macp
Architecture's io t d_macp Architecture's io t d_macp
Architecture's io t d_macp
 
OCR processing with deep learning: Apply to Vietnamese documents
OCR processing with deep learning: Apply to Vietnamese documents OCR processing with deep learning: Apply to Vietnamese documents
OCR processing with deep learning: Apply to Vietnamese documents
 
Tamil OCR using Tesseract OCR Engine
Tamil OCR using Tesseract OCR EngineTamil OCR using Tesseract OCR Engine
Tamil OCR using Tesseract OCR Engine
 
Semantics
SemanticsSemantics
Semantics
 
Semantics: Seven types of meaning
Semantics: Seven types of meaningSemantics: Seven types of meaning
Semantics: Seven types of meaning
 
SEMANTICS
SEMANTICS SEMANTICS
SEMANTICS
 
Semantics
SemanticsSemantics
Semantics
 

Similar to Architecture Patterns for Semantic Web Applications

State of the Semantic Web
State of the Semantic WebState of the Semantic Web
State of the Semantic WebIvan Herman
 
2011 05-01 linked data
2011 05-01 linked data2011 05-01 linked data
2011 05-01 linked datavafopoulos
 
Data Portability with SIOC and FOAF
Data Portability with SIOC and FOAFData Portability with SIOC and FOAF
Data Portability with SIOC and FOAFUldis Bojars
 
2011 05-02 linked data intro
2011 05-02 linked data intro2011 05-02 linked data intro
2011 05-02 linked data introvafopoulos
 
Future of Web 2.0 & The Semantic Web
Future of Web 2.0 & The Semantic WebFuture of Web 2.0 & The Semantic Web
Future of Web 2.0 & The Semantic Webis20090
 
20100614 ISWSA Keynote
20100614 ISWSA Keynote20100614 ISWSA Keynote
20100614 ISWSA KeynoteAxel Polleres
 
Using the Semantic Web Stack to Make Big Data Smarter
Using the Semantic Web Stack to Make  Big Data SmarterUsing the Semantic Web Stack to Make  Big Data Smarter
Using the Semantic Web Stack to Make Big Data SmarterMatheus Mota
 
Large scale, interactive ad-hoc queries over different datastores with Apache...
Large scale, interactive ad-hoc queries over different datastores with Apache...Large scale, interactive ad-hoc queries over different datastores with Apache...
Large scale, interactive ad-hoc queries over different datastores with Apache...jaxLondonConference
 
Information Extraction and Linked Data Cloud
Information Extraction and Linked Data CloudInformation Extraction and Linked Data Cloud
Information Extraction and Linked Data CloudDhaval Thakker
 
(Re-) Discovering Lost Web Pages
(Re-) Discovering Lost Web Pages(Re-) Discovering Lost Web Pages
(Re-) Discovering Lost Web PagesMichael Nelson
 
From Web 2.0 to the Semantic Web: Bridging the Gap in the Newsmedia Industry
From Web 2.0 to the Semantic Web: Bridging the Gap in the Newsmedia IndustryFrom Web 2.0 to the Semantic Web: Bridging the Gap in the Newsmedia Industry
From Web 2.0 to the Semantic Web: Bridging the Gap in the Newsmedia IndustryJoel Amoussou
 
Site Interoperability Projects at DERI Galway's SW Cluster
Site Interoperability Projects at DERI Galway's SW ClusterSite Interoperability Projects at DERI Galway's SW Cluster
Site Interoperability Projects at DERI Galway's SW ClusterJohn Breslin
 
WWW09 - Triplify Light-Weight Linked Data Publication from Relational Databases
WWW09 - Triplify Light-Weight Linked Data Publication from Relational DatabasesWWW09 - Triplify Light-Weight Linked Data Publication from Relational Databases
WWW09 - Triplify Light-Weight Linked Data Publication from Relational DatabasesSören Auer
 
Semantic Web and Web 3.0 - Web Technologies (1019888BNR)
Semantic Web and Web 3.0 - Web Technologies (1019888BNR)Semantic Web and Web 3.0 - Web Technologies (1019888BNR)
Semantic Web and Web 3.0 - Web Technologies (1019888BNR)Beat Signer
 
The Web of data and web data commons
The Web of data and web data commonsThe Web of data and web data commons
The Web of data and web data commonsJesse Wang
 
Big Data Everywhere Chicago: Apache Spark Plus Many Other Frameworks -- How S...
Big Data Everywhere Chicago: Apache Spark Plus Many Other Frameworks -- How S...Big Data Everywhere Chicago: Apache Spark Plus Many Other Frameworks -- How S...
Big Data Everywhere Chicago: Apache Spark Plus Many Other Frameworks -- How S...BigDataEverywhere
 
Current and Future Trends in Web Search - Seminar on Web Search
Current and Future Trends in Web Search - Seminar on Web SearchCurrent and Future Trends in Web Search - Seminar on Web Search
Current and Future Trends in Web Search - Seminar on Web SearchBeat Signer
 
RO-Crate: A framework for packaging research products into FAIR Research Objects
RO-Crate: A framework for packaging research products into FAIR Research ObjectsRO-Crate: A framework for packaging research products into FAIR Research Objects
RO-Crate: A framework for packaging research products into FAIR Research ObjectsCarole Goble
 

Similar to Architecture Patterns for Semantic Web Applications (20)

State of the Semantic Web
State of the Semantic WebState of the Semantic Web
State of the Semantic Web
 
2011 05-01 linked data
2011 05-01 linked data2011 05-01 linked data
2011 05-01 linked data
 
Data Portability with SIOC and FOAF
Data Portability with SIOC and FOAFData Portability with SIOC and FOAF
Data Portability with SIOC and FOAF
 
2011 05-02 linked data intro
2011 05-02 linked data intro2011 05-02 linked data intro
2011 05-02 linked data intro
 
Future of Web 2.0 & The Semantic Web
Future of Web 2.0 & The Semantic WebFuture of Web 2.0 & The Semantic Web
Future of Web 2.0 & The Semantic Web
 
20100614 ISWSA Keynote
20100614 ISWSA Keynote20100614 ISWSA Keynote
20100614 ISWSA Keynote
 
Using the Semantic Web Stack to Make Big Data Smarter
Using the Semantic Web Stack to Make  Big Data SmarterUsing the Semantic Web Stack to Make  Big Data Smarter
Using the Semantic Web Stack to Make Big Data Smarter
 
Big data apache spark + scala
Big data   apache spark + scalaBig data   apache spark + scala
Big data apache spark + scala
 
Large scale, interactive ad-hoc queries over different datastores with Apache...
Large scale, interactive ad-hoc queries over different datastores with Apache...Large scale, interactive ad-hoc queries over different datastores with Apache...
Large scale, interactive ad-hoc queries over different datastores with Apache...
 
Information Extraction and Linked Data Cloud
Information Extraction and Linked Data CloudInformation Extraction and Linked Data Cloud
Information Extraction and Linked Data Cloud
 
(Re-) Discovering Lost Web Pages
(Re-) Discovering Lost Web Pages(Re-) Discovering Lost Web Pages
(Re-) Discovering Lost Web Pages
 
From Web 2.0 to the Semantic Web: Bridging the Gap in the Newsmedia Industry
From Web 2.0 to the Semantic Web: Bridging the Gap in the Newsmedia IndustryFrom Web 2.0 to the Semantic Web: Bridging the Gap in the Newsmedia Industry
From Web 2.0 to the Semantic Web: Bridging the Gap in the Newsmedia Industry
 
Site Interoperability Projects at DERI Galway's SW Cluster
Site Interoperability Projects at DERI Galway's SW ClusterSite Interoperability Projects at DERI Galway's SW Cluster
Site Interoperability Projects at DERI Galway's SW Cluster
 
WWW09 - Triplify Light-Weight Linked Data Publication from Relational Databases
WWW09 - Triplify Light-Weight Linked Data Publication from Relational DatabasesWWW09 - Triplify Light-Weight Linked Data Publication from Relational Databases
WWW09 - Triplify Light-Weight Linked Data Publication from Relational Databases
 
Semantic Web and Web 3.0 - Web Technologies (1019888BNR)
Semantic Web and Web 3.0 - Web Technologies (1019888BNR)Semantic Web and Web 3.0 - Web Technologies (1019888BNR)
Semantic Web and Web 3.0 - Web Technologies (1019888BNR)
 
Web Topics
Web TopicsWeb Topics
Web Topics
 
The Web of data and web data commons
The Web of data and web data commonsThe Web of data and web data commons
The Web of data and web data commons
 
Big Data Everywhere Chicago: Apache Spark Plus Many Other Frameworks -- How S...
Big Data Everywhere Chicago: Apache Spark Plus Many Other Frameworks -- How S...Big Data Everywhere Chicago: Apache Spark Plus Many Other Frameworks -- How S...
Big Data Everywhere Chicago: Apache Spark Plus Many Other Frameworks -- How S...
 
Current and Future Trends in Web Search - Seminar on Web Search
Current and Future Trends in Web Search - Seminar on Web SearchCurrent and Future Trends in Web Search - Seminar on Web Search
Current and Future Trends in Web Search - Seminar on Web Search
 
RO-Crate: A framework for packaging research products into FAIR Research Objects
RO-Crate: A framework for packaging research products into FAIR Research ObjectsRO-Crate: A framework for packaging research products into FAIR Research Objects
RO-Crate: A framework for packaging research products into FAIR Research Objects
 

Architecture Patterns for Semantic Web Applications

  • 1. NONOSQLArchitecture Patterns for Semantic Web Applications Brian Panulla Penn State Web 2011 Conference
  • 2. Twitter: @bpanulla (c)2010 Google, Imagery (c)2010 TerraMetrics, NASA, Map data (c)2010 Europa Technologies, Google, INEGI, AND
  • 3. Three things the Semantic Web is not(mostly)
  • 5. 2. Warmed-over AI http://www.movieprop.com/tvandmovie/terminator/t3endoskeletons1.jpg
  • 10.
  • 13.
  • 14. When things go wrong
  • 15. Linked Data - 2008 http://richard.cyganiak.de/2007/10/lod/
  • 16. Linked Data - 2008 http://richard.cyganiak.de/2007/10/lod/ Last updated: 2010-09-22
  • 18. RDF: Framework for knowledge representation Declares resources Specifies properties of resources W3C standard since 1999 http://www.w3.org/RDF/
  • 19. What is a Resource? Everything on the web (or not) is a resource. Uniform Resource Locator
  • 20. RDF is not XML ...but occasionally dresses up like it XML N-Triples N3 Turtle JSON RDFa in HTML ...
  • 21. URIs Resources are identified by a Uniform Resource Identifier (URI) Can be found in your XHTML DTD and html tag’s xmlns attribute:
  • 22. URIs ... Are not necessarily URLs http://webconference.psu.edu http://brian.panul.la http://alumni.psu.edu/brian.panulla
  • 23. Triples RDF is expressed as triples of URIs: subject (“Penn State”) - resource predicate (”is a") - property object (”University”) - resource Is a Penn State University
  • 24. Triples Another example: subject (“Brian Panulla”) predicate (”presented at") object (”psuweb11”) presented At Brian Panulla psuweb11
  • 25. Triples to Graphs United States of America City of Portland State of Oregon North America State of Washington State of California Canada NATO Is a borders Is in Held At Is in Member of presented At Is in borders Member of attended Is in Is in Is a Is located in Is in PSUWEB11 Penn State Brian Panulla Portland State University
  • 26. RDF Schemas RDFS provides limited Set Theory features subClassOf subPropertyOf Domain Range Think of classes in RDFS as sets rather than OOP classes
  • 27. Ontologies Ontology is the study of being or reality. A Formal Ontology is a specification of a conceptualization (Gruber, 1995) Aristotle
  • 28. Defining an ontology Web Ontology Language (OWL) Version 2.0 (October 2009) http://www.w3.org/TR/owl2-overview/ Yes, rly.
  • 29. Some RDFS/OWL Features Classes Sub-class Equivalent Classes Disjoint Classes Cardinality constraints (max/min) Individuals Same Individual Properties Sub-property Equivalent Inverse Symmetric Transitive
  • 31. Triple Stores Graph database that knows RDF Quad Stores: triple store that includes provenance “where did the data come from?” Various stores provide Transactional / non-Transactional In-Memory / File system / RDBMS storage
  • 32. Popular Triple Stores HP/Apache Jena Pellet Reasoner Storage In memory RDBMS (transactions) Filesystem storage (high performance) Open Source
  • 33. Popular Triple Stores Franz AllegroGraph (server) Virtuoso Universal Server (server) Mulgara (RESTful service, OSS) Redland (C, Obj-C) New Stardog - Integrated reasoning database RDFa API - https://github.com/webr3/rdf.js
  • 37. Basic Requirements Information People Bookmarks Tags Functionality Create an account Add a bookmark Delete a bookmark Browse other users’ bookmarks
  • 39. Relational DB - Physical Schema
  • 40. Modeling in RDF Minimize artificial entities Re-use existing schemas or ontologies
  • 41. Useful Schemas Dublin CORE METADATA INITIATIVE (DCMI) FrienD-of-a-friend (FOAF)
  • 42. DMCI
  • 43. FOAF Well-defined ontology for people, organizations, and social networks
  • 44. FOAF
  • 45. RDF Data Model - Member foaf:Person foaf:fullname foaf:nickname foaf:mbox foaf:openid Literal (“datataype”)properties Resource (“object”) property
  • 46. RDF Data Model - Bookmark foaf:Document dct:title dct:description dct:created dct:modified foaf:page foaf:topic Literal (“datataype”)properties Resource (“object”) properties
  • 47. Topics from DBPedia SemantifiedWikipedia
  • 48. Custom properties and classes omnom:bookmarked http://omnomino.us/ontology/om.n3#bookmarked omnom: bookmarked foaf: Document foaf: Person
  • 49. Custom properties and classes rdfs: subClassOf rdfs: subClassOf foaf: Document foaf: Person omnom: Member omnom: Resource
  • 51. SPARQL Graph query language Read-only (1.0) Safe to expose endpoint to Web SPARQL 1.1 adds updates
  • 52. A Simple SPARQL Example SELECT ?subj ?pred ?obj WHERE { ?subj ?pred ?obj. } Demo
  • 53. SPARQL Query Types SELECT – Returns tuples matching specified pattern ASK – yes or no (tests for existence) CONSTRUCT – Returns a graph DESCRIBE – Returns a graph determined by the query engine
  • 54. SPARQL Examples: ASK ASK { ?urifoaf:openid <http://brian.panul.la>. }
  • 55. SPARQL Examples: Member SELECT DISTINCT ?uri ?fullname ?nickname ?email WHERE { ?uri a omnom:Member. OPTIONAL { ?urifoaf:name ?fullname; foaf:nick ?nickname; foaf:mbox ?email. } FILTER (?uri = <http://omnomino.us/member/24601>)
  • 58. The Good: Domains where schemas/models change rapidly or data is sparse Semantics of relational model inadequate (e.g. inferencing, inheritance) Domains emphasizing relationships Social networks Taxonomies
  • 59. The Bad: Weaknesses Bad for opaque objects with few relationshps Large sets of homogenous objects Alternatives RDBMS NoSQL Document DBs Key/Value Stores Graph databases
  • 60. Linked Data Publish/Syndicate complete information sets Embedded explicit semantics, unique identifiers Have minimal impact to other Web information publishing May be static or dynamically generated
  • 61. Resources Semantic Web Programming - John Hebeler, Matthew Fisher, Ryan Blace, and Andrew Perez-Lopez Semantic Web for the Working Ontologist: Effective Modeling in RDFS and OWL -Dean Allemang and James Hendler Programming the Semantic Web by Toby Segaran, Colin Evans, and Jamie Taylor

Editor's Notes

  1. http://www.flickr.com/photos/mayhem/3104825022/in/photostream/
  2. http://www.flickr.com/photos/herr_hartmann/448478567/in/photostream/http://www.flickr.com/photos/mayhem/3104825022/in/photostream/
  3. http://www.flickr.com/photos/jingleslenobel/4971486823