430 likes | 589 Views
Overview of Semantic Tools . Semantic Technology Boot Camp Day 3. Overview. Categories of Semantic Tools Category Overview Purpose & Role in Architecture Example Tools Tradeoffs and Evaluation Criteria. Categories of Semantic Tools. RDF Parsers Triplestores
E N D
Overview of Semantic Tools Semantic Technology Boot Camp Day 3
Overview • Categories of Semantic Tools • Category Overview • Purpose & Role in Architecture • Example Tools • Tradeoffs and Evaluation Criteria
Categories of Semantic Tools RDF Parsers Triplestores Ontology Editors & Workbenches SPARQL Query Engines Reasoners Middleware & Servers Ontology Documentation Tools Web Development Kits Specialty Libraries
RDF Parsers Like an XML parser, an RDF parser is a software library that will interpret an RDF dataset (or ontology) and construct a memory model of the graph described. Open Source: Jena, OWLAPI, Raptor.
Triplestores A triplestore (also “triple store”) is a type of database optimized for the storage and retrieval of RDF data. Commercial stores: Allegrograph, Stardog Open Source stores: Virtuoso, Sesame, Mulgara
Ontology Editors & Workbenches An ontology editor offers a visual interface for the composition of OWL ontologies. Many editors go further and offer facilities for ontology publishing, batch operations and script processing over a set of ontologies. Commercial: TopBraid Composer Open Source: Protégé, NeOn Toolkit
SPARQL Query Engines A SPARQL query engine will evaluate a SPARQL expression over a specified graph and return an appropriate response for the expression type (ASK, CONSTRUCT, DELETE, SELECT, etc.). • OpenSource: ARQ
Reasoners A semantic reasoner (aka “rules engine”) will apply inherent and specified rules to infer new facts (as triples) from a given set of asserted triples. • OpenSource: OWLIM, Pellet • Commercial: RacerPro, OntoBroker
Ontology Documentation Tools Ontology documentation tools will parse an ontology file and produce formatted documentation generally in HTML or PDF form. • Open Source: Neologism • Commercial: UISPIN
Web Development Kits Web development kits for RDF datasets and ontology provide dynamic interfaces to a triplestore to facilitate search and exploration of RDF content. • Open Source: Open Semantic Framework
Leveraging existing (non-RDF) data Day 3 - Basics
Overview • Mapping relational data to RDF using D2RQ • Mapping Excel Documents to RDF • Mapping XML to RDF/OWL • Other Mappings (JSON, UML, Java/EMF Objects)
Mapping relational data to RDF using D2RQ Problem Description Custom Importers The D2RQ Approach Related Mappers Mapping SPARQL to SQL
Mapping Excel Documents to RDF Similar to the RDBMS conversion problem. Spreadsheets lend themselves to complex tabular structures. Schema and data can appear anywhere. One sheet may have any number of independent tables. Meaning given to style. I.E. bold, italic, font color or cell color may encode meaning. Multiple cells and formulas.
Mapping XML to RDF/OWL • The XML Data Model • Mapping Between Data Models • Finding Meaning between XML Nodes • Custom Conversion • Tools and Toolkits
Mapping XML to RDF/OWL Differences in XML • The XML model is a tree structure. • XML provides structure to a document. • The XML utility is data packaging for transmission as messages. • Uses schema for conformance validation. • Provides a standard that allows parsers to interpret any XML document.
Other Mappings Converting JSON Importing UML Importing EMF Objects
Completed Work on Weather Integrated Surveillance Started Work on Unmanned Aircraft System Flight and Flow Key Deliverables COI Ontology Business Context (DoDAF Artifacts) Other Artifacts Consistent with DoD Net-Centric Data Strategy Process for Inter-Agency Shared Understanding COI Ontology (RDF/OWL) Transformation Rules (XSLT) Message Schema (XSD) Business Process Analysis (OV-2) Service Description (WSDL) Information Exchange Description (OV-3) Architectural Impact Report Operational Activity Model (OV-5b) Business Rules Service Constraints Requirements Document (SV-4) Systems Communications Description (SV-2)
Ontology Portals Example Portals • Purpose: • To be a collaborative web application through which users can publish, access, search, browse, map, and update ontologies and their terms. • Reference Implementation only • Supports: • COI participants (e.g., ontologists, SMEs, and enterprise architects), developers and managers.
Semantic Metadata Catalog and Portal Architecture Weather Community Semantic Metadata Catalog and Portal Service Registration and Discovery JPDO User Interface Layer Semantic Processing Layer Semantic Metadata Catalog Integrated Surveillance Community Existing SOA Registry Service Registration and Discovery Semantic Metadata Portal UDDI NextGen Ontology Community Integration Layer Web Services Layer Integration of Federated Registry Ontology Portal Artifact Catalog External Systems ebXML GIIEP SWIM Access External Color Key: Future Semantic
Sample Ontology Portals • NCBO BioPortal • http://bioportal.bioontology.org/ • One Source • http://onesource.afc2ic.org/ • Marine Metadata Interoperabiligy (MMI) Ontology Registry and Repository (ORR) • http://mmisw.org/
SMB Approach: Semantics to Solutions SOA Foundation for Service Interoperability Semantics Mediation Bus™ • Runtime infrastructure enables semantic interoperability through common ontologies, even if the services are implemented using different data models and message standards. Semantics Common Understanding of Business Concepts Problems • How I can improve Interoperability between different services and reduce system integration costs? • I have already invested a lot in my SOA infrastructure, how do I leverage it for for Semantic Interoperability? • How can Semantics help reduce service development cost and help my enterprise operations?
SOA: Benefits and Limitations • Service Oriented Architecture (SOA) • Key Benefits: • Provides standards based mechanism to access Services at the transport and protocol level • Promotes re-use of existing services • Enables fast adaptation to business needs • Aligns information resources to business goals • Limitations: • Current Web Service standards provide the syntactic description of the service interface, but do not describe the meaning or the semantics of the data or behavior. Hence the consumer of the service; whether another service or a human, needs to have intimate knowledge and awareness about the data and its elements • Current Enterprise Service Buses (ESBs) don’t have an out of the box ability to perform Semantic Mediation, that is the transformation and co-relation of data elements and services based on a pre-defined vocabulary • Manual intervention and deep domain knowledge is required to develop custom mappings to correctly use data exposed by these related but different Web Services
Demo: Traditional SOA Service Consumer FAA Google Earth Client Original Track Data Provider
SOA Silos Airline Code Lookup Table Data: UA Field Name:Commercial Flight Data: 122 Flight Track Display FAA Flight Track Web Service Reference User Human Communication 1 3 1 AF SME AF Flight Track Web Service Field Name: Flight of Interest Data: United 122 Custom Mapping 2 3 System Integration Custom Development SME Field Name:FlightID Data: UA122 2 HR Army Other Data Provider Custom Mapping Developer HR Marine Excess time is spent interpreting data from different sources despite the usage of advanced IT techniques like Web Services
Problem with Custom Development • Discovery of Relevant Information • Human in the Loop for Interoperability Assessment • Custom Mapping and Custom Development • Often requires significant resources and takes a long time • Change Management • Transformation often embed in code • Code and ontology could become disconnected
Demo: SOA Silo Service Consumer FAA Google Earth Client Original Track Data Provider Air Force Alternate Track Data Provider
Demo: Semantic Service Provisioning Service Consumer FAA Google Earth Client Original Track Data Provider SOA Infrastructure Air Force Alternate Track Data Provider Semantic Metadata Catalog Discover Annotation
Benefits of Semantic Service Provisioning • Discovery of Relevant Information • Beyond traditional keyword search • No Need for Human in the Loop for Interoperability Assessment • Machine readable ontologies describe relationships among concept • Avoid Custom Mapping and Custom Development • Faster Development Lifecycle • Reduced Development Cost • Built for Change • Allow transformations and business rules to be managed independent of the code • Consistent with Model Driven Architecture principals
Open Standard Compliance • Web Ontology Language (OWL) • Semantic Annotations for WSDL and XML Schema (SAWSDL) • Minimal Service Model (MSM) and WSMO-Lite • Extensible Stylesheet Language Transformations (XSLT) • Web Service Definition Language (WSDL) Semantics OWL SAWSDL WSMO-Lite Services WSDL SOAP REST Data XML XSLT URI
Minimal Service Model Source: http://cms-wg.sti2.org/minimal-service-model/
Semantic Annotations for WSDL and XML Schema (SAWSDL) • Relate the Service and Message description to the meaning captured in an Ontology. • Annotations can be applied to all WSDL elements and XML Schema types. • Define transformation between wired message format and the ontology representation. XML Schema EnterpriseVocabulary ont:AirTrack a rdfs:Class … … <xsd:ComplexTypename=“FlightTrack” sawsdl:modelReference=“… …” sawsdl:liftingSchemaMapping=“…” sawsdl:loweringSchemaMapping=“…”> XSLT Import SPARQL+XSLT WSDL Service Ontology <operation name=“getFlightTrack” sawsdl:modelReference=“… …”> svc:airTrackProvider svc:payloadont:AirTrack … … <inputmessage=”…”>
Alion Semantic Mediation Bus™ Common Ontology Semantic Mediation BusTM Enterprise Service Bus Registry/ Repository Semantic Mediator Web Service Proxy Message Schema Mapping Semantic Lookup and Interoperability Assessment Semantic Annotation Metadata Management Protocol Adaption Security Service Discovery Message Transformation Message Routing Traditional SOA infrastructure Semantic Mediation Infrastructure • An ontology-based web services mediation component (Semantic Mediator) that enables services with different message formats to interoperate • Embedding the Semantic Mediator in an Enterprise Service Bus (ESB) enables runtime semantic mediation within traditional SOA infrastructure, creating a Semantic Mediation BusTM
Semantic Mediation: Airline Code Lookup Table Data: UA Dynamically Map Information to User Needs HR Army FAA Web Service Field Name:Commercial Flight Data: 211 Semantic Mediation Bus™ Flight Track Display Reference User Semantic Lookup Field Name: Flight of Interest Data: UA211 Air Force Web Service Message Transformation Common Air Track Ontology Web Service Endpoint Field Name:FlightID Data: United 211 HR Army 3rd Party Web Service HR Marine
Demo: Semantic Service Mediation SOA Infrastructure Service Consumer FAA Original Track Data Provider Google Earth Client Alion Semantic Mediation Bus™ Message Transformation Dynamic Service Endpoint Semantic Discovery Interoperability Assessment Air Force Alternate Track Data Provider Semantic Metadata Catalog Annotation
Key Characteristics • Cooperation through federation, instead of standardization • The ontology driven approach avoids imposing a standard that has to be agreed by everybody, thus allowing the agencies to select the formats best suited for their business needs, while still being able to use services offered by other agencies. • Increased ability to adapt to the ever changing business needs in a timely and cost effective manner • The semantic mediation approach encourages transformation logic to be declaratively defined in the ontology, instead of buried in the code, often in multiple places. • No need for rigid conformance • Through loose coupling, the SMB allows transformation between message formats which might not be a complete match. • Building on SOA infrastructure, instead of replacing it • By extending ESB infrastructure, organization can leverage their SOA investment and the existing expertise of their personnel.
Extensibility Considerations • Pluggable to SOA Platforms • Integrate with existing Enterprise Service Buses (ESB) • Interact with Service Registry (ebXML, UDDI, proprietary) • Adaptable to Service Design Choices • Mediate SOAP-based Web Services • Support REST and Plain XML Data • Service Metadata • Provide Intelligent Mediation • Assess service compatibilities based on semantics
Technical Architecture Traditional SOA infrastructure Registry/Repository Service Consumer cannot process the WSDL as implemented by the provider Semantic Mediation Infrastructure WSDL WSDL Initial implementation uses SAWSDL lifting and lowering rules, which define how XML messages are transformed to and created from an ontology However, the WSDL messages can be traced to an ontology understood by the consumer. XML Schema XML Schema SAWSDL Annotation SAWSDL Annotation Lifting and Lowering Rules Lifting and Lowering Rules OWL Ontology Semantic Mediation Bus Extension Framework Semantic Lookup XML/WSDL-OWL Mapping The engine dynamically exposes a web service endpoint as a proxy to the service. The endpoint expose a WSDL that can be accepted by the consumer Mediation Engine is implemented as component of the ESB. Message Transformation Interoperability Assessment Algorithm Extension API Web Service Aggregation Proxy ESB Adapter The service proxy may aggregate service from multiple providers based on the need of consumer. Service Provider Service Consumer ESB API Enterprise Service Bus Service Endpoint Service Endpoint Service Endpoint
Building Block for Enterprise Solutions • Enterprise Challenge: Data integration is as much an issue as in the inter-organizational context • Data mash up solution from disparate systems • Incorporation of unanticipated sources in business intelligence • Enhancement of situational awareness through on-demand integration of data • Opportunity: Ontology is not only a tool for understanding, but also a basis for executable solutions
The SMB Message • Put Ontologies to Work • Enhance service understandability at design time • Facilitate service interoperability at runtime • Leverage Existing SOA Investment • Increase service discoverability and interoperability through semantic annotation • Build on existing services • Use in-house expertise • Ready to deployed now • Streamline Service Integration • Shorten development lifecycle by eliminating the need for custom message mapping • Reduce maintenance cost by leveraging existing infrastructure