Review of semantic enablement techniques used in geospatial and semantic standards for legacy and opportunistic mashups Laurent 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 blackbeltjones/ / 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-enabled reference 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 ObservationsSemantic 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 dataSensorMasher : 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 XMLHTML
CSIRO. Standards for Semantic Sensor Mashups A possible use case with all types of mashups bundled together
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 Extension of Kingsley Idehen’s pyramid:Kingsley Idehen’ “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 Tim Berners-Lee, Cracks and MortarCracks and Mortar W3C TPAC 2007
CSIRO. Standards for Semantic Sensor Mashups Meshup standard “value pyramid” vs. new “Cracks and Mortar”
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 different linking and annotation standards 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 XLink SAWSDL hRESTs RDFa Lifting operations
CSIRO. Standards for Semantic Sensor Mashups Semantically-enabled XML resources and XLink ~1
CSIRO. Standards for Semantic Sensor Mashups Variants of XLink usage
CSIRO. Standards for Semantic Sensor Mashups XLink and RDF AttributeDescriptionIntended RDF xlink:hrefIdentifier of the resource which is the target of the association, given as a URI rdf:about of range resource xlink:roleNature of the target resource, given as a URI rdf:about of class of range resource xlink:arcroleRole or purpose of the target resource in relation to the present resource, given as a URI rdf:about of object property linking domain element to range resource xlink:titleText describing the association or the target resource rdfs:comment
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 OGC Open Geospatial Consortium Reference to an object element in the same GML document Reference to an object element in a remote XML document using the gml:id value of that object: Reference to an object element with a uniform resource name may be encoded as follows (a URN resolver is required): URN: Uniform Resource Name May or may not correspond to Semantic Web resources 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 briefingSemantic Sensor Markup of Data and Services pointing to individual Luis Bermudez Enriching SOS services with Ontologies - OOSTethys/OceansIE and MMI SSN-XG briefingEnriching SOS services with Ontologies - OOSTethys/OceansIE and MMI pointing to individual Janowicz et al. (2009; forthcoming): Semantic Enablement for Spatial Data Infrastructures. Transactions in GIS. Semantic Enablement for Spatial Data Infrastructures pointing to individual 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. 552A Survey of the Semantic Specification of Sensors 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 Confusion between Ex of a property URN should be used): Same issue with attribute Usage (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) 4
CSIRO. Standards for Semantic Sensor Mashups Variants of RDFa usage comparable to XLink
CSIRO. Standards for Semantic Sensor Mashups XLink – RDFa comparison RDF mappingXlinkRDFa Domain instanceabout or src Domain classtypeof Object propertyarc rolerel Inverse object propertyrev Range instancehrefhref or resource Range classroletypeof Datatype propertyproperty Datatype property typeroledatatype Range valuecontent or element content
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.Sense and Sensíability: Semantic Data Modelling for Sensor Networks mapped to class RDFa-inspired (to fix): OWL-like attribute namespaces to mapped to mapped to xsd used but 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) 3 ~4
CSIRO. Standards for Semantic Sensor Mashups Semantically-enabled RESTful web services (hREST-RDFa) 3 ~4
CSIRO. Standards for Semantic Sensor Mashups hRESTs-microformat vs. hRESTs-RDFa RDF mappinghRESTs-microformathRESTs-RDFa Domain instanceid (URL-prefixed)about Domain classclass (closed list)typeof Object propertyref=”model”rel Inverse object propertyrev Range instancehref or resource rdf:about of range classhreftypeof Datatype propertyproperty Datatype property typedatatype Range valuecontent or element content
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 MicroWSMO ontology: 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 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
CSIRO. Standards for Semantic Sensor Mashups Validator mashup framework: Unicorn (Universal Conformance Observation and Report Notation) Unicorn ( ) Validator Mashup project at W3C HTML-only Markup Validator, CSS Validator, Link Checker
CSIRO. Standards for Semantic Sensor Mashups Extend Unicorn to build a complete top-down validator mashup pyramid Mashable validators HTML validators HTML + RDFa HTML SPARQL SPARQL* Linked Data (URIs)* Linked Open Data OWL RDF RDF-ization SAWSDL, …: ? GRDDL (service) XML validators WSDL (via Wikipedia) OGC valdiators XLink SXLink? Full list of W3C list validators:
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) 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 existing standards Mashups requires new validation approaches Which may also be based on mashups (Unicorn-like)
Contact Us Phone: or Web: Thank you CSIRO ICT Centre Laurent Lefort Senior Software Engineer and W3C Office manager Phone: Web:
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).