Review of semantic enablement techniques used in geospatial and semantic standards for legacy and opportunistic mashupsLaurent Lefort, Australian Ontology Workshop 2009
Standards for Semantic Sensor Mashups
CSIRO. Standards for Semantic Sensor Mashups
Outline of the talk
• Which standards for which mashups? • Server-side/legacy or client-side/opportunistic
• Semantic-enabled?• Semantic enablement pathways
• Links and annotations
• Meshup “value pyramid”
• Review of specific standards• XLink, RDFa, SAWSDL/hRESTs
• Failure risk and validation issues• Conclusion
CSIRO. Standards for Semantic Sensor Mashups
Web 2.0 & 3.0 (Sem Web) rocks XML and WSDL don’t (anymore)
Matt Jones http://www.flickr.com/photos/blackbeltjones/3150215637/
WHICH STANDARDS FOR WHICH MASHUPS?
CSIRO. Standards for Semantic Sensor Mashups
Motivations: W3C Semantic Sensor Network incubator group
Registries & Dictionaries
Sensor and obs.
Sensors and Observations
Linking Open Data resources
OGC Services (SOS, SPS, SAS, SES)
Semanticaly-annotated OGC services
(SOS, SPS, SAS, …)
Enable semantic service integration
Semantic annotations
Ontology-enabled APIs
Ontology-enabledreference datasets
Enable semantic mashups
To begin the formal process of producing ontologies that define the capabilities of sensors and sensor networks To develop semantic annotations of a key language used by services based sensor networks (especially the ones developed by the Open Geospatial Consortium)
Semantic annotations - for OGC services?- for Mashups?
CSIRO. Standards for Semantic Sensor Mashups
Server-side mashups (Web 1.0 & 2.0)
• Server-side mashups• Server-side software component accessing XML files, Databases,
SOAPful or RESTful web services
• The result is generally packaged as a web service
• For legacy resources: • Complex APIs
• Workflow engine and wrappers
• Output in XML
CSIRO. Standards for Semantic Sensor Mashups
Client-side mashups (Web 1.0 & 2.0)
• Client-side mashup: • Client-side scripts accessing mashable resources (RESTful
services mostly)
• The result is packaged into an interactive web application
• For opportunistic mashups: • Simpler APIs
• Scripting languages
• Output in HTML
CSIRO. Standards for Semantic Sensor Mashups
Server-side semantic mashups (Web 3.0)
• Server side mashup:• Semantic enablement of XML files, Databases, SOAPful or
RESTful web services (SAWSDL)
• Integration with linking open data and ontologies services through triple stores (APIs or resources)
CSIRO. Standards for Semantic Sensor Mashups
Example of semantic composition (server side)
• Composer’s Workbench• XML-RDF
• Wrap complex services using semantic annotations mapping WSDL/XML schema to DL ontology (also SQL DBs)
• New requirements: provenance XG
Cameron et al. (2009) Semantic Solutions for Integration of Federated Ocean Observations
CSIRO. Standards for Semantic Sensor Mashups
Client-side semantic mashups (Web 3.0)
• Client side mashup:• Enrichment of HTML resources with RDFa markup allowing to “lift”
the content into RDF
• Reduction of number of APIs to handle by scripts (SPARQL or equivalent)
CSIRO. Standards for Semantic Sensor Mashups
Example of semantic pipes (client side)
• Sensor masher (browser-based)• RDF-HTML (RESTful services, Javascript)
• Avoid the use of proprietary or product-specific APIs • Leverage URI-based data integration (Linked Open Data)
• Lightweight pipes (user-defined) based on DERI Pipes
Danh Le Phuoc (2009): SensorMasher : publishing and building mashup of sensor data
CSIRO. Standards for Semantic Sensor Mashups
Semantic enablement: where?
CSIRO. Standards for Semantic Sensor Mashups
Four semantic enablement pathways: Server-side (1,2, 3) or client-side (3,4)
• 1. Include RDF (SKOS/OWL) resources in XML using XLink,• 2. Annotate SOAPful web services with SAWSDL• 3. Annotate RESTful web services with hRESTs (SA-
REST/MicroWSMO),• 4. Include RDF (SKOS/OWL) resources in HTML using RDFa.
1
42 3 3
1
1
1
XML HTML
CSIRO. Standards for Semantic Sensor Mashups
A possible use case with all types of mashupsbundled together
Model Mashups
Web mashups
Search
Legacy
OGC
services
Legacy OGC
aggregator
(e.g. ArcGIS)
RDF-ized
OGC
service
Composed
services
Semantic mashups
Geospatial mashups
Model
pipes
Geo Mashups
Legacy
services
(XML+REST/
WSDL) Legacy mashups
(XML+REST/WSDL)
Web mashups
Search
Geo Mashups
Model Mashups
Web pages mashups (HTML)Geospatial mashups
(XML/JSON+REST)
Semantic
pipes
RDF-ized
Composed
service
RDF-ized
OGC
Aggregator
Model mashups
(XML/JSON+REST)
Semantic mashups
(RDF/JSON+SPARQL)
Semantic web page mashups
(HTML+RDFa)
1 42 32 33
CSIRO. Standards for Semantic Sensor Mashups
Meshup “value pyramid”
• Semantic mashups over• RDFa content embedded in web
pages• Linked Open Data resources
• XML, database and web service resources
• Meshup• A semantically mashable
semantic mashup
• a mashup consuming and serving SW content,
• RDFa standard is disruptive• New generation of SW apps
• New “value pyramid” top
RDF-ization (Lifting layer)
Linked Open Data resources
SPARQL protocol
HTML/RDFa
Mesh
ups
Legacy Resources
(XML, Database, Web services)
Extension of Kingsley Idehen’s pyramid: “Getting The Linked Data Value Pyramid Layers Right (Updated)”
XML
RDF
HTML
CSIRO. Standards for Semantic Sensor Mashups
Meshup standard “value pyramid” vs. TBL’s Cracks and Mortar
RDF-ization (Lifting layer)
Linked Open Data resources
SPARQL protocol
HTML
Mash
ups
Legacy Resources
(XML, Database, Web services)
Tim Berners-Lee, Cracks and MortarW3C TPAC 2007
CSIRO. Standards for Semantic Sensor Mashups
Meshup standard “value pyramid”vs. new “Cracks and Mortar”
Ontology
of objectsVirtual
RDF
data
XML
SchemaExisting
SQL DB
SQL
Schema
Lifting
script
XSLT or Xquery
HTML
pages
Ontology
of objectsVirtual
RDF
data
Ontology
of objects Virtual
RDF
data
RDB-RDF
Mapping
RDFa
markup
Existing
XMLGRDDL
markup
Lifting service
Lifting service
RDFa service
SparQL
SparQL SparQL
Users
Mashup
site
Mashup
site
Mashup
site
Mashup
site
HTTP + HTML (RDFa) + SVG + DOM + JS + Mashable APIs
XML or JSON + HTTP + JS + Mashable APIs
HTTP + HTML (RDFa) + SVG + DOM + JS + Mashable APIs
RDF-ization (Lifting layer)
Linked Open Data resources
SPARQL protocol
HTML/RDFa
Mesh
ups
Legacy Resources
(XML, Database, Web services)
CSIRO. Standards for Semantic Sensor Mashups
Definitions: links, annotations, lifting operations
• Links specifies the inclusion of remotely managed resources.• Mechanisms used to extend available content from any type of
resources with information sourced from remotely managed content (type or instance).
• Possible between two documents of the same type or between documents of different types.
• Semantic annotations define how to map service capabilities to semantic definitions to enable the discovery or composition of web services.
• The transition from XML-based services to RDF-based services is called a lifting operation (Farrell and Lausen 2007) and the inverse one, from RDF to XML is called a lowering operation.
CSIRO. Standards for Semantic Sensor Mashups
Semantic enablement pathways using differentlinking and annotation standards
• 1. Include RDF (SKOS/OWL) resources in XML using XLink,
• 2. Annotate SOAPfulweb services with SAWSDL
• 3. Annotate RESTfulweb services with hRESTs (SA-REST/MicroWSMO),
• 4. Include RDF (SKOS/OWL) resources in HTML using RDFa.
RDF-ization (Lifting layer)
Linked Open Data resources
SPARQL protocol
HTML/RDFa
Mesh
ups
Legacy Resources
(XML, Database, Web services)1
2 3
4
XLink
SAWSDLhRESTs
RDFa
Lifting operations
1
2
3
4
CSIRO. Standards for Semantic Sensor Mashups
Semantically-enabled XML resources and XLink
HTTP + HTML + SVG + DOM + JS + RDF + OWL + SPARQL
Ontology
of objectsVirtual
RDF
data
XML
Schema
Lifting
script
XSLT or Xquery Existing
XMLGRDDL
markup
Lifting service
SparQL
~1
CSIRO. Standards for Semantic Sensor Mashups
Variants of XLink usage
Existing
XML
XLink
markup
Existing
XML
(instances)
Existing
XML
XLink
markup
Existing
XML
(types)
Existing
XML
XLink
markup
Existing
RDF
(instances)
Existing
XML
XLink
markup
Existing
OWL
(types)
Xlink href
or URNs for
ontologies
(class or
property)
Xlink href
or URNs for
“data”
(individuals)
Inclusion of remote resources
Inclusion of remote semantic resources
Model reference to ontological descriptionDescribed in GML spec. xlink
@href
Xlink @href
and SWE/GML@definition
Model reference to ontological description
Xlink @role and @arcrole
Xlink @role, @arcrole
and SWE/GML @definition
CSIRO. Standards for Semantic Sensor Mashups
XLink and RDF
rdfs:commentText describing the association or the target resource
xlink:title
rdf:about of object property linking domain element to range resource
Role or purpose of the target resource in relation to the present resource, given as a URI
xlink:arcrole
rdf:about of class of range resource
Nature of the target resource, given as a URI
xlink:role
rdf:about of range resource
Identifier of the resource which is the target of the association, given as a URI
xlink:href
Intended RDFDescriptionAttribute
CSIRO. Standards for Semantic Sensor Mashups
Usage of XLink in GML – related to URNs
• Conventions defined by the GML standard (Portele 2007)• Portele C. (2007): OpenGIS® Geography Markup Language (GML)
Encoding Standard version 3.2.1 OGC 07-036 Open Geospatial Consortium 2007-08-27
• Reference to an object element in the same GML document <myProperty xlink:href="#o1"/>
• Reference to an object element in a remote XML document using the gml:id value of that object: <myPropertyxlink:href="http://my.big.org/test.xml#o1"/>
• Reference to an object element with a uniform resource name may be encoded as follows (a URN resolver is required): <myPropertyxlink:href="urn:x-ogc:def:crs:EPSG:6.3:4326"/>
• URN: Uniform Resource Name • May or may not correspond to Semantic Web resources
• http://en.wikipedia.org/wiki/Uniform_Resource_Name
• URN is a generic resource naming mechanism: the mapping of a URN to a class, property or individual is not normalised
CSIRO. Standards for Semantic Sensor Mashups
Current XLink usage
• Sheth Semantic Sensor Markup of Data and Services SSN-XG briefing
• XLink @href pointing to individual
• Luis Bermudez Enriching SOS services with Ontologies -OOSTethys/OceansIE and MMI SSN-XG briefing
• XLink @href pointing to individual
• Janowicz et al. (2009; forthcoming): Semantic Enablement for Spatial Data Infrastructures. Transactions in GIS.
• XLink @href pointing to individual with @role pointing to sawsdl:modelReference (should be arcrole)
• Correct use of sawsdl:modelReference in XML schema but does not define the associated lifting script
• Compton et al. (2009) A Survey of the Semantic Specification of Sensors, in Proc. International Workshop on Semantic Sensor Networks SSN’09 CEUR-WS Vol. 552
• XLink @href pointing to undefined concepts (#AirTemperature)
CSIRO. Standards for Semantic Sensor Mashups
Major issues with XLink (and its usage in OGC)
• ISSUE: URNs can point to an individual, a class or a property • No guidelines on these three types of URN
• <swe:Quantitydefinition="urn:ogc:def:property:SBE:batteryCurrent">
• Confusion between XLink @role vs. @arcrole• Ex of a property URN (here, @arcrole should be used): <swe:field
name="Battery Current“xlink:role="urn:ogc:def:property:powerSupply">
• Same issue with the @definition attribute
• Usage of @href (to an individual) generally correct• Because the majority of the community developing and using OGC
standard plans to use SKOS to manage vocabulary elements
CSIRO. Standards for Semantic Sensor Mashups
Semantically-enabled web pages (RDFa)
HTTP + HTML (RDFa) + DOM + JS + RDF + OWL + SPARQL
HTML
pages
Ontology
of objectsVirtual
RDF
data
RDFa
markup
RDFa service
SparQL
4
CSIRO. Standards for Semantic Sensor Mashups
Variants of RDFa usage comparable to XLink
CSIRO. Standards for Semantic Sensor Mashups
XLink – RDFa comparison
content or element contentRange value
datatyperoleDatatype property type
propertyDatatype property
typeofroleRange class
href or resourcehrefRange instance
revInverse object property
relarc roleObject property
typeofDomain class
about or srcDomain instance
RDFaXlinkRDF mapping
CSIRO. Standards for Semantic Sensor Mashups
Tentative use of RDFa instead of XLink
• Barnaghi et al. Sense and Sensíability: Semantic Data Modelling for Sensor Networks, in Proc. of the ICT Mobile Summit 2009, June 2009.
• SWE’s @definition mapped to class
• RDFa-inspired (to fix): • OWL-like attribute namespaces to clear
• @about mapped to individual,
• @datatype mapped to xsd type,
• @resource used but without corresponding @property, • @ID used,
• URI conventions?
• It is important to note that RDFa obeys to a rigorous specification which allows the development and usage of generic lifting scripts
CSIRO. Standards for Semantic Sensor Mashups
Variants of RDFa usage in relation to hRESTs
• Two possibilities to do semantic markup of HTML files• Microformats
• RDFa
CSIRO. Standards for Semantic Sensor Mashups
Semantically-enabled RESTful web services (hREST-microformat)
HTTP + HTML + SVG + DOM + JS + RDF + OWL + SPARQL
HTML
description
Dynamic
XML
hRESTs-
micro-
formats
markup
Ontology
of objects
Lifting
script
RESTful service
Service
ontology
RDF description
of service
Lifting service
for data
XSLT or Xquery SA-REST or
MicroWSMO
?
Semantically-
enabled output
Semantically-enabled service
Lifting
operation
and service
ontology
hard-coded
Lifting
script
3 ~4
CSIRO. Standards for Semantic Sensor Mashups
Semantically-enabled RESTful web services (hREST-RDFa)
HTTP + HTML + SVG + DOM + JS + RDF + OWL + SPARQL
HTML
description
Dynamic
XML
hRESTs-
in-RDFa
markup
Ontology
of objects
Lifting
script
RESTful service
Service
ontology
RDF description
of service
Lifting service
for data
XSLT or Xquery SA-REST or
MicroWSMO
?
Semantically-
enabled output
Semantically-enabled service
Lifting
operation
following
RDFa spec.
3 ~4
CSIRO. Standards for Semantic Sensor Mashups
hRESTs-microformat vs. hRESTs-RDFa
content or element content
Range value
datatypeDatatype property type
propertyDatatype property
typeofhrefrdf:about of range class
href or resourceRange instance
rev Inverse object property
relref=”model”Object property
typeofclass (closed list)Domain class
about id (URL-prefixed)Domain instance
hRESTs-RDFahRESTs-microformatRDF mapping
CSIRO. Standards for Semantic Sensor Mashups
hRESTs-RDFa preferred to hRESTs-microformat
• hRESTs-microformat forces the user to pick the service ontology and have access to the corresponding lifting script
• SAREST ontology ~ what’s used in SAWSDL• http://knoesis.wright.edu/research/srl/standards/sa-rest/
• MicroWSMO ontology: WSMO-Lite: • http://www.wsmo.org/ns/wsmo-lite/
• hRESTs-RDFa allows to specify the service ontology the mapping definitions will be lifted to
• e.g. one adapted to a specific platform • sensor networks, grid computing, …
• It should be possible to have a similar freedom of choice with SAWSDL
• It’s not the case right now (next slide)
CSIRO. Standards for Semantic Sensor Mashups
Semantically-enabled SOAPful web services
HTTP + HTML + SVG + DOM + JS + RDF + OWL + SPARQL
WSDL
XML
Schema
Dynamic
XML
SAWSDL
markup
Lifting
script
WSDL Web service
RDF
description
of serviceXSLT or Xquery
Service
ontology
Lifting
operation
and service
ontology
hard-coded
Lifting
script
Lifting service for description
Ontology
of objects
Lifting service
for data?
Semantically-
enabled output
Semantically-enabled service
2
CSIRO. Standards for Semantic Sensor Mashups
Failure risk analysis
• Opportunistic mashups depends on external resources which may disappear or evolve without notice,
• especially mashable services and semantic resources,
• The risks of failure are greater and more diverse than in other environments.
• Question: where to start
Semantic
Services
Legacy mashups
Mashable
web pages
Web
services
Ontologies
Triple
stores
SPARQL
Linked Open
Data
Web pages
RDFa
XML RDF HTML
Opportunistic mashups
CSIRO. Standards for Semantic Sensor Mashups
Validator mashup framework: Unicorn (Universal Conformance Observation and Report Notation)
• Unicorn (2006-2008)• Validator Mashup project at W3C
• http://www.w3.org/QA/Tools/Unicorn/
• HTML-only• Markup Validator, • CSS Validator,
• Link Checker
CSIRO. Standards for Semantic Sensor Mashups
Extend Unicorn to build a complete top-down validatormashup pyramid
• Mashable validators• HTML validators
• HTML + RDFa http://validator.w3.org/• HTML http://validator.nu/
• SPARQL• SPARQL* http://www.sparql.org/validator.html• Linked Data (URIs)* http://vapour.sourceforge.net/
• Linked Open Data• OWL http://owl.cs.manchester.ac.uk/validator/• RDF http://www.w3.org/RDF/Validator/
• RDF-ization• SAWSDL, …: ?• GRDDL (service) http://www.w3.org/2007/08/grddl/
• XML validators• WSDL http://www.validwsdl.com/ (via Wikipedia)• OGC valdiators• XLink SXLink?
• Full list of W3C list validators: http://www.w3.org/QA/TheMatrix
RDF-ization (Lifting layer)
Linked Open Data resources
SPARQL protocol
HTML/RDFa
Mesh
ups
Legacy Resources
(XML, Database, Web services)
CSIRO. Standards for Semantic Sensor Mashups
Identification of area of future work
• Semantic annotation standards for both WSDL and REST services• Ontologies for different types of services
• Lifting scripts for services
• Guidelines on the part of HTML to be annotated for RESTful services
• Controlled upgrade of legacy standards: need at least better guidelines (and validation tools)
• XLink @role and @arcrole are easy to confuse
• URNs mappings to individuals, class or properties should be specified unambiguously in OGC specifications (and elsewhere?)
• Develop a RDFa style for XLink may help to separate the current usage of XLink (intra-XML) to new usages where XLink would be used in conjunction with semantic web resources
• Validators and validator mashups• Higher risk of errors with mashups
• Golden opportunity to re-engineer and mash existing validators
• Some missing validators especially at the lower levels (e.g. XLink, URNs)
CSIRO. Standards for Semantic Sensor Mashups
Conclusions
• Semantic mashups complete existing semantic integration approaches but don’t replace them
• Lightweight composition by end users with semantic pipes to explore opportunities
• Transition to more stable infrastructure built on top of legacy services if the proof of concept phase is successful
• Mashups require hybrid combination of XML, RDF and HTML standards
• Some standards like XLink or RDFa are adaptable at different levels of the pyramid
• Special care must be taken for the semantic upgrades of existingstandards
• Mashups requires new validation approaches• Which may also be based on mashups (Unicorn-like)
Contact UsPhone: 1300 363 400 or +61 3 9545 2176
Email: [email protected] Web: www.csiro.au
Thank you
CSIRO ICT CentreLaurent LefortSenior Software Engineer and W3C Office manager
Phone: +61 2 6216 7046Email: [email protected]: www.ict.csiro.au
Backup slides
CSIRO. Standards for Semantic Sensor Mashups
Memo
• GRDDL - A markup format for Gleaning Resource Descriptions from Dialects of Languages. It is a W3C Recommendation, and enables users to obtain RDF triples out of XML documents, including XHTML. It defines the syntax to include a reference to a lifting script in a source document - the lifting script can then be used to transform the document to RDF
• Microdata - Allows nested groups of name-value pairs to be added to documents, in parallel with the existing content. A non-semantic alternatibe to RDFa
• SAWSDL - A set of extension attributes for the Web Services Description Language and XML Schema definition language that allows description of additional semantics of WSDL components. Allows the user to record the mapping of WSDL elements to concepts defined in a reference ontology and to specify the lifting scripts which can be applied to the output of a service to transform it into a RDF file using the reference ontology concepts
• hRESTs - A microformat to add additional meta-data to REST API descriptions in HTML and XHTML. Developers can directly embed meta-data from various models such an ontology, taxonomy or a tag cloud into their API descriptions. The embedded meta-data can be used to improve search (for example: perform faceted search for APIs), data mediation (in conjunction with XML annotation) as well as help in easier integration of services to create mashups.
• SA-REST and Micro-WSMO : two similar methods to semantically annotate REST services using the same microformat (hRESTs) and a different target ontology. Similar basis than SAWSDL (including the possibility to include a reference to a lifting script) but applicable to an HTML-based description of a service).
Top Related