PLCS Reference Data Testing


Published on

Describing experience gained using Semantic Web tools in PLCS Reference Data development.

Published in: Technology
  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

PLCS Reference Data Testing

  1. 1. On PLCS Reference Data Testing David Price Managing Director, TopQuadrant Limited [email_address] Analysis Validating Maintaining Deploying Evolving Acquiring Modeling Architecting Integrating
  2. 2. Semantic Tool RD Testing Capabilities <ul><li>SPARQL queries for quality assessment </li></ul><ul><li>SPARQL Rules/SPIN also available for persistent constraints </li></ul><ul><li>Reference Data development </li></ul><ul><ul><li>Import/Transform to RD </li></ul></ul><ul><ul><li>RD spreadsheet or RD XML </li></ul></ul><ul><ul><li>XSD2OWL (generic) </li></ul></ul><ul><ul><li>UML or EXPRESS to OWL </li></ul></ul><ul><li>Export as N3 so reviewers can read plain text as well as XML </li></ul><ul><li>ISO PLCS schema, OASIS RD subset schema, OASIS RD available as needed </li></ul>
  3. 3. Constraint-like SPARQL Queries <ul><li>Example - Find OWL Classes without a dc:source annotation </li></ul>NOTE – Available in TopBraid Composer Free edition
  4. 4. General SPARQL Queries <ul><li>Find all Assigned_property-related RD classes </li></ul>
  5. 5. SPIN (aka SPARQL Rules)? <ul><li>SPIN is the de-facto industry standard to represent SPARQL rules and constraints on Semantic Web models. </li></ul><ul><li>Open source implementation available and is included in TopBraid Composer Free Edition </li></ul>
  6. 6. SPARQL Rules/SPIN QA <ul><li>Use SPIN Constraints to check RD quality </li></ul><ul><li>Define constraints requiring Dublin Core on all OWL Classes </li></ul><ul><li>Turn on ‘Validation’ in TBC </li></ul><ul><li>Violations shown when editing RD classes </li></ul>NOTE – Available in TopBraid Composer Free edition
  7. 7. Dublin Core Constraints
  8. 8. Constraint Violation! <ul><li>Missing dc:source annotation in DerivedDocument </li></ul>1 or more errors exist Each error flagged Apply SPIN constraints
  9. 9. Constraint Violation! – Big Screen 2) Errors found in instance 3) Each error flagged 1) Apply SPIN constraints
  10. 10. Reference Data Testing Approach <ul><li>Create ‘PLCS proxy ontology’ from AP239 EXPRESS schema </li></ul><ul><li>Create OWL Individuals based on PLCS proxy ontology </li></ul><ul><ul><li>Equivalent to Part 28 XML data file contents </li></ul></ul><ul><ul><li>Derive rdf:type from PLCS Classification Assignment in data so that reasoners can find errors such as using disjoint classes on same instance </li></ul></ul><ul><li>Use Semantic Web tools where useful </li></ul><ul><ul><li>SPARQL </li></ul></ul>
  11. 11. Domain/Proxy Ontologies Proxy Ontology Domain Ontology Mapping P28 XML Schema Message Mappings EXPRESS XML reeper
  12. 12. AP239 Proxy Ontology Screenshot
  13. 13. Exchange File Testing Approach? <ul><li>Convert P28/P21 to OWL individuals </li></ul><ul><li>Converter or post-conversion SPARQL Construct can add rdf:type statements to RD </li></ul><ul><li>Open individuals file in Semantic Web tool </li></ul><ul><li>Run SPARQL queries </li></ul><ul><li>Run SPARQL Construct to generate data based on ‘valid’ PLCS dataset and compare with expected result data </li></ul><ul><li>Execute ‘domain’ constraints written using SPIN </li></ul><ul><li>Generate reports </li></ul><ul><li>TopBraid Composer can compare two ontologies </li></ul><ul><ul><li>Result is RDF to be processed into a report </li></ul></ul><ul><ul><li>Could compare results of data exchange tests </li></ul></ul>
  14. 14. Namespaces on Following Diagram <ul><li>AP239 = PLCS Proxy Ontology used to create instances, the full PLCS schema as OWL </li></ul><ul><li>data = data as in a Part 28 XML or Part 21 text file </li></ul><ul><li>ShipDesignRD = Ship Design Reference Data </li></ul><ul><li>schema = subset of PLCS schema classes used as top of RD hierarchy </li></ul><ul><li>Orange circle = Class </li></ul><ul><li>Purple diamond = instance </li></ul>NOTE – Diagramming not available in TopBraid Composer Free edition
  15. 15. Part Manufacturer RD Example rdf:type (green box) is OWL equiv of PLCS Classification_assignment (red box) of PLCS = URI of the OWL class. ShipDesignRD schema = RD PLCS schema AP239 = Proxy ontology
  16. 17. PLCS-Related Ontology Layers PLCS RD and Proxy Ontology SPARQL Rules for PLCS and/or DEX Business, domain, testing SPARQL Rules
  17. 18. Additional thoughts <ul><li>The proxy ontology testing approach clearly results in a ‘schema’ that can be used for data exchange </li></ul><ul><ul><li>In addition to P21, P28 can use RDF encodings </li></ul></ul><ul><ul><li>Need to do more work on EXPRESS schema constraints as SPARQL/SPIN </li></ul></ul><ul><li>Starting process of standardizing SPIN as ‘SPARQL Rules’ </li></ul><ul><ul><li>If interested in supporting that, please let me know </li></ul></ul><ul><li>PLCS ontology is a step towards PLCS data sharing on the Web vision </li></ul>
  18. 19. Feedback <ul><li>DEXLib, like STEPmod is designed for spec writers,not implementors </li></ul><ul><ul><li>Perhaps stop trying to do both and use something else for implementation? </li></ul></ul><ul><li>Writing P28-based implementations is actually pretty easy </li></ul><ul><li>Big Question – Why DEXs given technology available today? </li></ul><ul><li>Or perhaps Why always a DEX for PLCS? </li></ul><ul><li>In cases where OASIS PLCS spec ‘gets something wrong’, just say NO! </li></ul><ul><ul><li>For example, a simple script can add /IGNORE if ever required </li></ul></ul>
  19. 20. TopQuadrant Corporate Overview <ul><li>Formed in 2001 </li></ul><ul><ul><li>Privately held </li></ul></ul><ul><ul><li>First Semantic Web Consulting Firm in U.S. </li></ul></ul><ul><li>Products: TopBraid Suite </li></ul><ul><ul><li>Semantic Web Application Platform </li></ul></ul><ul><ul><li>600+ Customers </li></ul></ul><ul><li>Solution Services </li></ul><ul><ul><li>Workshops: Solution Envisioning, Ontology Modeling </li></ul></ul><ul><ul><li>Jumpstarts to Large Implementations </li></ul></ul><ul><li>Semantic Web Training </li></ul><ul><ul><li>700+ People Trained </li></ul></ul><ul><li>International Locations </li></ul><ul><ul><li>Alexandria, VA </li></ul></ul><ul><ul><li>London, UK TopQuadrant Limited </li></ul></ul><ul><ul><li>Mountain View, CA </li></ul></ul><ul><ul><li>TopQuadrant Korea – Seoul, S. Korea </li></ul></ul><ul><li>Strategic Partnerships </li></ul><ul><ul><li>Oracle, Franz, CTG </li></ul></ul>