by rohit bhardwaj principal software engineer rbhardwaj@kronos.com kronos inc. ieee computer society...
Post on 27-Mar-2015
215 Views
Preview:
TRANSCRIPT
ByRohit Bhardwaj
Principal Software Engineerrbhardwaj@kronos.com
Kronos Inc.
IEEE Computer Society and GBC/ACMJune 18th 2009
AgendaProblem with current webLinked Data PrinciplesSemantic Web OverviewRDF and RDFaDbpediaOWLQuerying SemWeb DataSemantic Web ServicesWS-TenacityRESTConclusionReferences
How did we get here ?
3
Mainframes
70’s and 80’s Client Server
90’s
SOA2000’s
Web 2.0
Virtualization
SaaS
Utility Computing
Cloud Computing
GRID Computing
Storage Services
Multi Tenancy
Interoperability of data
AgendaProblem with current webLinked Data PrinciplesSemantic Web OverviewRDF and RDFaDbpediaOWLQuerying SemWeb DataSemantic Web ServicesWS-TenacityRESTConclusionReferences
Tim Berners Lee on the Semantic Web
People keep asking what Web 3.0 is. I think maybe when you've got an overlay of scalable vector graphics - everything rippling and folding and looking misty - on Web 2.0 and access to a semantic Web integrated across a huge space of data, you'll have access to an unbelievable data resource."– Tim Berners-Lee, 2006
RAW data to create new Plants
RAWDATA NOW
Raw Data to create Eco-System
Linked Data Principles1. Use URIs as names for things2. Use HTTP URIs so that people can look
up those names3. When someone looks up a URI, provide
useful RDF information4. Include RDF statements that link to
other URIs so that they can discover related things
Tim Berners-Lee 2007http://www.w3.org/DesignIssues/LinkedData.html
Computer understands (RDFa) meaning of web page
Search engines will use semantics for the pageMore accurate searches
AgendaProblem with current webLinked Data PrinciplesSemantic Web OverviewRDF and RDFaDbpediaOWLQuerying SemWeb DataSemantic Web ServicesWS-TenacityRESTConclusionReferences
Semantic Web “provides a common framework that allows data
to be shared and reused across application, enterprise, and community boundaries. It is a collaborative effort led by W3C (World Wide Web Consortium)…”
“Classical” Web: computers deliver documents (text, multimedia…)
Semantic Web: let computers process (interpret, combine, select, judge) and deliver information
Semantic Web Overview
Technologies
AgendaProblem with current webLinked Data PrinciplesSemantic Web OverviewRDF and RDFaDbpediaOWLQuerying SemWeb DataSemantic Web ServicesWS-TenacityRESTConclusionReferences
RDFResource Description FrameworkW3C RecommendationSpecification for a graph metamodel to
comment on web resources (or anything)Uses a triple form
Subject Object
predicate
Subject Predicate Object
MADONNA LIKES SINGING
CURIE: Compact URIRDF uses URI (Uniform Resource Identifier)
to define subjects and predicates.
http://www.example.org/really/really/really/long/urls/to/work/with/is /very/difficult
Triples and N3 Notation (Graph)@prefix pref:
<http://example.org/vocabulary#> .<#madonna> <pref:likes> <#singing> .
MADONNA LIKES SINGING
Subject Predicate Object
Vocabulary : FoaF
Britney MadonnaMadonnaKNOWS
Creating a triple so that Browser can understand <body xmlns:foaf="http//xmlns.com/foaf/0.1/"> <span about="#Britney" property="foaf:name"> Britney Spears </span> </body>
N3 notation: @prefix foaf: <http://xmlns.com/foaf/0.1/> . <#Britney> foaf:name "Britney Spears" .
#Britney
Britney SpearsNAME
Types and Relationships <body xmlns:foaf="http//xmlns.com/foaf/0.1/"> <span about="#Britney" typeof="foaf:Person"> property-"foaf:name"> Britney Spears </span> <span about="#Madonna" typeof="foaf:Person"> property-"foaf:name"> Madonna </span> <span about="#Britney" typeof="foaf:knows"> resource="#Madonna"> Britney is friend of Madonna </span> </body>
Relationship
#Britney
Britney SpearsNAME
PERSON
#Madonna
MadonnaNAME
KNOWS
Building Semantic webWeb of triples going to blogs, sites, countries,
places, things and their relationships between news, people, movies
RDFSRDF Schema (RDFS)– Vocabulary for RDF – taxonomies of classes andproperties, domain, range, …
:Dog rdfs:subClassOf :Animal.:Person rdfs:subClassOf :Animal.:hasChild rdfs:range :Animal;rdfs:domain :Animal.:hasSon rdfs:subPropertyOf :hasChild.:Max a :Dog.:Abel a :Person.:Adam a :Person;:hasSon :Abel.
AgendaProblem with current webLinked Data PrinciplesSemantic Web OverviewRDF and RDFaDbpediaOWLQuerying SemWeb DataSemantic Web ServicesWS-TenacityRESTConclusionReferences
Dbpedia Example
dbpediaAs of November 2008[update], the DBpedia
dataset describes more than 2.6 million things, including at least 213,000 persons, 328,000 places, 57,000 music albums, 36,000 films, 20,000 companies. The dataset features labels and short abstracts for these things in 30 different languages; 609,000 links to images and 3,150,000 links to external web pages; 4,878,100 external links into other RDF datasets, 415,000 Wikipedia categories, and 75,000 YAGO categories.[1]
Example
Community effort to Publish existing open license datasets as
Linked Data on the WebInterlink things between different data
sourcesDevelop clients that consume Linked
Data from the Web
Linked Data BrowsersTabulator Browser (MIT, USA)Disco Hyperdata Browser (FU Berlin, DE)OpenLink RDF Browser (OpenLink, UK)Zitgist RDF Browser (Zitgist, USA)Humboldt (HP Labs, UK)Fenfire (DERI, Irland)Marbles (FU Berlin, DE)
Example 1http://graphs.gapminder.org/world
Example 2http://bitmunk.com/media/6995806
FUZZ Firefox plug-in
FUZZ Plug-in
OpenLink Firefox Plug-in
Some more exampleshttp://richard.cyganiak.de/2007/10/l
od/http://www4.wiwiss.fu-berlin.de/bize
r/pub/lod-datasets_2009-03-05.htmlhttp://www.openstreetmap.org/http://revyu.com/DBpedia Mobile
AgendaProblem with current webLinked Data PrinciplesSemantic Web OverviewRDF and RDFaDbpediaOWLQuerying SemWeb DataSemantic Web ServicesWS-TenacityRESTConclusionReferences
OWLWeb Ontology Language (OWL)W3C RecommendationDesigned to support different levels of
expression withdifferent computational requirements
OWL Lite
OWL DLOWL Full
“Berlin” Ontology example:
Berlin local transport service
AgendaProblem with current webLinked Data PrinciplesSemantic Web OverviewRDF and RDFaDbpediaOWLQuerying Semantic Web DataSemantic Web ServicesWS-TenacityRESTConclusionReferences
Querying Semantic Web Data: SPARQLEmerging W3C Standard for querying RDFSPARQL Protocol and RDF Query LanguageIt has been a moving target, but various tools
are starting to support itARQ SPARQL Processor for JenaRasqal RDF query library for RedlandPellet, KAON2 OWL DL Reasoners
SPARQLSimple Protocol and RDF Query Language– SQL like language for RDF querying
SELECT ?name ?mbox WHERE { ?x foaf:name ?name . ?x foaf:mbox ?mbox . }
– graph matching/construction– SELECT, CONSTRUCT, DESCRIBE, ASK– ORDER BY, DISTINCT, OFFSET, LIMIT• Operates on any RDF graph– i.e., including RDFS/OWL
SPARQL DEMOhttp://demo.openlinksw.com/sparql_demo/#http://www.sparql.org/query.html
Semantic SearchOne of the primary goals of semantic web
Not only keyword full-text searchQuery includes relations between
resourcesConnecting data: mash-up from different
sourcesWithin enterprise or enterprises
Relevant research: “semantic desktop” semantic search within data in a single
PC
Web of Data Search EnginesSWSE (DERI, Ireland)Swoogle (UMBC, USA)
http://swoogle.umbc.edu/Falcons (IWS, China)Sindice (DERI, Ireland)Watson (Open University, UK)MicroSearch (Yahoo, Spain)
AgendaProblem with current webLinked Data PrinciplesSemantic Web OverviewRDF and RDFaDbpediaOWLQuerying SemWeb DataSemantic Web ServicesWS-TenacityRESTConclusionReferences
Semantic Web ServicesSemantic enrichment of Web ServicesSemantic interoperability
Special ontologies developed for the description of services: OWL-S, WSMO, …
service matchmaking to allow service discovery, composition and execution
OWL-SOWL ontology for describing servicesOWL-S Matchmaking:
Description of input and output conditions as a concept
AgendaProblem with current webLinked Data PrinciplesSemantic Web OverviewRDF and RDFaDbpediaOWLQuerying SemWeb DataSemantic Web ServicesWS-TenacityRESTConclusionReferences
WS-Tenacity
SOA = WSDL + SOAP + UDDI
WS-ComplexityReal Complexity
Hard things hardArtificial Complexity
Easy things are (still!) hard
WS-InoperabilitySOAP
Message-oriented requestMixes verb space and content space (No
nouns!)WSDL
What You See Is What You GetUDDI
Published metadata about serviceSimultaneously complex and limited
WS-FlexibilityIf you build it...
Amazon supports both SOAP-based and RESTful Web Services
Developers have spoken (80-90% prefer REST)
AgendaProblem with current webLinked Data PrinciplesSemantic Web OverviewRDF and RDFaDbpediaOWLQuerying SemWeb DataSemantic Web ServicesWS-TenacityRESTConclusionReferences
REST is HistoryREST (REpresentational State Transfer)Based largely on Roy Fielding’s Ph.D. thesisArchitectural style designed to promote
PerformanceScalabilityGeneralitySimplicityModifiability
Separation of Concerns
HTTP://REST.BLUEOXEN.NET/CGI-BIN/WIKI.PL?RESTTRIANGLE
Noun SpaceResources are an abstraction for what is
availableFilesGenerated ContentComputational ResultsConcepts/Organizations/People
What comes back can change over timeThink about today’s /. Page
Verb SpaceConstrained semantics for acting upon
resourcesTraditionally
GETPOSTPUTDELETE
Allows intermediaries to apply security/caching policies
REST Architecture
The Web as ModelScalabilityAddressabilityBookmarkabilityEvolvable architectureSimple, Generalized ModelCoordination on the Edge (Republishability)
Web Building BlocksStandard URI Scheme addressesDocuments, Data, Services, ConceptsLogical resolution to concrete representationStandard application protocols for
manipulationStandard metadata languages
Scalability
Content Negotiation
Access Control
Architectural Migration
RESTful Web ServicesPutting the “Web” in Web ServicesReusing existing technologiesSimple things easy, hard thing possible
Can layer on complexity as necessaryNothing necessarily to buy
AgendaProblem with current webLinked Data PrinciplesSemantic Web OverviewRDF and RDFaDbpediaOWLQuerying SemWeb DataSemantic Web ServicesWS-TenacityRESTConclusionReferences
ConclusionSemantic web is futureRDFa and Ontology languages help computers
understandREST is AN AnswerFor architectural styles that support it, REST
allows systems to be simple but completePromotes separation of noun, verb and content
spaces for simplicity and extensibilitySystems built on principles of REST
demonstrate great scalabilitySome places REST is not the right answer
Semantic Web Examples
http://simile.mit.edu/wiki/Exhibit/Examples
Semantic Web Examples
http://simile.mit.edu/wiki/Exhibit/Examples
Semantic Web Examples
Questions?
Specifications
ReferencesRoy Fielding’s Thesis
http://tinyurl.com/cvamhOpenLink Data Explorer 0.25 for firefoxhttp://microformats.org/about/http://www.openstreetmap.org/http://rdfa.info/abouthttp://www.dataportability.org/Tabulator, Disco RDF Browser
top related