dictionary based interchanges for isurf -an interoperability service utility for collaborative...
TRANSCRIPT
Dictionary based interchanges for iSURF -An Interoperability Service Utility for Collaborative Supply Chain Planning across Multiple Domains
David WebberOASIS SET TC / CAM TC(with excerpts and summary from main presentation by Prof. Dr. Asuman DogacMETU-SRDCTurkey)
OASIS SET TC Use Case - iSURF
METU OASIS SET TC Use Case Part I: iSURF - Document Interoperability
Requirements Part II: Using Dictionary based approach and
SET Tools for aligning structure components across syntax vocabularies
Part I: iSURF – Document Interoperability Requirements
Research Objectives: Public Domain Tools Supporting SMEs for Collaborative Supply Chain Planning
iSURF Semantic Interoperability Service Utility
iSURF Global Data Synchronization and Transitory Collaboration Service Utility for dynamic transient supply chain relationships for the SMEs
Existing iSURF Domain Syntax Format Alignment
Dictionary approach summary1. If the document components of two different CCTS based standard share
the same semantic properties: Use this as an indication that they may be similar
2. Some explicitly defined semantic properties may imply further implicit semantic relationships:
Use a reasoner to obtain implicit relationships Align to dictionary definitions allowing crosswalk Create harmonized dictionary lookup Use abstract UID as common reference (linkage between language
specific named types/objects)3. Explicate semantics related with the different usages of document data
types in different document schemas to obtain some desired interpretations by means of such informal semantics
Determine similar/match relationships and rules for constraint alignment and compound component relationships (e.g. date-time vice date and time)
4. Provide dictionary structure format for managing relationships Leverage existing OASIS CAM and ebXML Registry TC work
The current SET Harmonized Ontology The current version of the harmonized ontology
contains the ontological representations of: All of the CCs and BIEs in CCL 07B All of the BIEs in the common library of UBL 2.0 All of the OAGIS 9.1 Common Components and Fields All of the elements in the common library of GS1 XML
For supply chain applications these can be exactly related to existing well established UN/CEFACT dictionary objects (also foundation for CCTS)
Each UN/CEFACT dictionary object has explicit unique element designator – UID (any new items well be assigned their own domain UID).
Part II: Using dictionary based approach as SET Tools for aligning iSURF documents in different syntax
Semantic Properties of UN/CEFACT CCTS based Standards The Core Components have the following
semantic properties: Core Component Data Types Context Code Lists Object Class Term Representation Term The semantics that a BIE is based on a “Core
Component” UID labelling mechanism
The Upper Ontology for the Semantics Exposed by the CCTS Framework
A Specific Instance of the Problem How to transform
UBL 2.0 Forecast Instance, to GS1 XML Forecast Instance?
The first step… Convert the XSDs of these document instances to CAM
templates (forms abstraction layer for inspection by XSLT tools)
Extract dictionary definitions from templates into domain dictionaries; assign UID designators.
Merge dictionaries into one master dictionary Combination of name, type and OWL ontology matching
Compare to UN/CEFACT dictionary – align UID designators
Assign similar / match rules for constraints/components CAM xslt tool can be used to generate the dictionaries Store results in harmonized dictionary format http://camprocessor.sourceforge.net
CAM dictionary generation overview
XSD schemas
CAM Templates
XSLTscript
Master Dictionary
Compare &Merge
Components:NameDescriptionTypeRestrictionsUID
Dictionary Tools Generate a dictionary of core components from a
set of exchange templates Separate dictionary content by namespace Merges annotations and type definitions from
exchange template into dictionary Compare each exchange template to the master
domain dictionary Produce spreadsheet workbooks Update spreadsheet and export back to dictionary
core components
Create Dictionary – CAM process
Select Dictionary; empty for new create, or existing for merge
Output dictionary filename
Select template content namespace to match with
Merge mode; use true to combine content
Compare to Dictionary
Pick dictionary to compare with
Name of result cross-reference file
Open Cross-Reference as Spreadsheet
Explicate semantics related with the different usages of document data types Different document standards use CCTS Data
Types differently For example, “Code.Type" in one standard is
represented by “Text.Type" in another standard and yet with “Identier.Type" in another standard
This knowledge in real world is expressed through class equivalences so that not only the humans but also the reasoner knows about it Code.Type ≡ Text.Type Name.Type ≡ Text.Type Identier.Type ≡ Text.Type Can cross-reference via UID as well as type
Second Step Human / OWL inspectors Dictionary alignment report produces known
equivalents listing (confidence 100%), and then lesser equivalence rankings based on matching factors
Component compound relationships resolved using CAM template structure layouts
Human inspection then reviews and resolves and updates dictionary (using Excel spreadsheet workbook format)
New dictionary produced Iterative refinement over time can enhance alignment
along with common practices through industry agreements
Addressing Structural Differences in Document Schemas The harmonized ontology is effective only to discover
equivalence of both semantically and structurally similar document artifacts
However Different document standards use core components in different structures
A problem in finding the similar artifacts in two different document schemas is that the semantically similar artifacts may appear at structurally different positions
This is solved using CAM templates and dictionary crosswalks on UID values along with match/similar designators and associated crosswalk rules
Example & UID alignment
CAM templates + UID lookup in dictionary resolve structurally different schemas
CAM template / Dictionary / OWL
Source XMLInstance
Source OWLInstance
DATA LEVELKNOWLEDGE LEVEL DATA LEVEL
Target XMLInstance
Target/SourceXSD
Document Schemas
Upper Ontologies
Knowledge Base
Rule Engine & Reasoner
RULES
XSLT Script
Harmonized Ontology
EqualityRelations
SubsumptionRelations
CAM Template
Dictionary
Back to our problem: Translating iSURF Planning Documents Conforming to Different CCTS based Standards
A Specific Instance of the Problem How to transform
UBL 2.0 Forecast Instance, to GS1 XML Forecast Instance?
GS1.XML UID UBL 2.0
Forecast.Indicator.Indicator A1034 Forecast.BasedOnConsensus_Indicator.Indicator
PartyIdentification.Details C3401 PartyIdentification.Details
PartyIdentification.Primary_Identification.GLN_Identifier C3402 PartyIdentification.Identifier
NonGLN_PartyIdentification.Details C3451 PartyIdentification.Details
NonGLN_PartyIdentification.Identification.Text C3452 PartyIdentification.Identifier
ElectronicDocument.Status.Identifier D4310 Forecast.DocumentStateCode.Code
Abstract_Forecast.Purpose.ForecastPurposeCriteriaType_Code E0010 Forecast.PurposeCode.Code
Multi_unitMeasure.Measure.Measure F0301 Dimension.Measure
Abstract_Forecast_TimeStampedTradeItemQuantity.Association.Code
E0451 Forecast.Identifier.Identifer
Date_TimePeriod.EndDate.Date_DateTime T0012 Period.EndDate.Date, Period.EndTime.Time
Date_TimePeriod.BeginDate.Date_DateTime T0013 Period.StartDate.Date, Period.StartTime.Time
TimePeriod.Details T0009 Period.Details
TimePeriod.Length.Duration_Measure T0008 Period.Duration.Measure
TimePeriod.Type.Code T0021 Period.DescriptionCode.Code
TradeItemIdentification.Details F0340 ItemIdentification.Details
TradeItemIdentification.Primary_Identification.GTIN_Identifier F0341 ItemIdentification.Identifier
NonGTIN_TradeItemIdentification.Details F0342 ItemIdentification.Details
NonGTIN_TradeItemIdentification.Identification.Type_Code ItemIdentification.Extended_Identifier.Identifier
The above equivalences are discovered through the UID dictionary cross-references and can be stored back into CAM templates <Extensions> section for runtime crosswalk use.
Runtime crosswalks between template structure member items
Summary Develop crosswalks:
Convert XSD schema to CAM templates Leverage template structure and XPath rules to build
dictionaries with UID labels Build OWL relationships from schema Compare each dictionary to master dictionary and
reference OWL and type knowledge bases to align Produce spreadsheet for manual review Save final results back to master dictionary
Build runtime templates: Compare individual CAM templates to master dictionary,
generate cross-walk section between components Cross-walk can contain alignment rules in XPath for
content handling (e.g. code values and re-formatting)