1 / 37

Quick Guide to CAM Dictionaries

Quick Guide to CAM Dictionaries. Building and using Canonical XML dictionaries for CAM. Author: David RR Webber Chair OASIS CAM TC April, 2010 http://www.oasis-open.org/committees/cam. (CAM – Content Assembly Mechanism Specification). Agenda. Why Dictionaries?

jadzia
Download Presentation

Quick Guide to CAM Dictionaries

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Quick Guide toCAM Dictionaries Building and using Canonical XML dictionaries for CAM Author: David RR Webber Chair OASIS CAM TC April, 2010 http://www.oasis-open.org/committees/cam (CAM – Content Assembly Mechanism Specification)

  2. Agenda • Why Dictionaries? • Making interoperability baked into the XML infrastructure • Linguistic and semantic alignment; neutral representations • International and national initiatives • Dictionary concepts • What does the dictionary contain conceptually? • Understanding the dictionary XML / use with spreadsheets • Mapping across domains • Generating Dictionaries • Harvesting from existing sources | Using modelling tools | Manually • Catalog of existing dictionaries • Available dictionaries and domains • More Dictionary tools

  3. Why Dictionaries? Making interoperability baked into the XML infrastructure Linguistic and semantic alignment; neutral representations International and National initiatives

  4. Baking in Interoperability • Using consistent component definitions dramatically improves interoperability and reuse • Having formal design methods makes development faster, easier, predictable and repeatable • Aligning local practice to industry domain dictionary can reduce complexity and reinforce best practices • Dictionary definitions can be automatically evaluated for common mistakes and this reduces the opportunity for errors during design phase • Generating software artifacts from neutral dictionary definitions ensures reliable information exchange results across user communities and their particular systems, platforms and tools

  5. Neutral Content Model Representation • Neutral representations allow business stakeholders to participate in dictionary development without technology barriers • Concise neutral formats can be viewed as simple spreadsheets as they have no special syntax dependencies • Based on open public standard specifications, semantic concepts and leading knowledge domain techniques • Neutral representation prevents lock-in by vendor, syntax, tooling or platforms • Maximizes flexibility and future proofing of dictionary definitions

  6. Linguistic and Semantic Alignment • Formal community domain naming and design rules provide consistency of definitions • Consistency of definitions minimizes duplication and overlapping of dictionary components • Dictionaries allow collaboration on component development to improve the overall results • Formal component content detail drives alignment • Design best practices ensure logical self-contained components that can be selected contextually • Avoids explosion of complexity and excessive over definition (e.g. “kitchen-sink” schema)

  7. International and National Initiatives • Sampling of prior dictionary related work • ISO 11179 • UN/CEFACT CCTS / ebXML • OASIS Registry / Repository specifications • USA national initiatives • NIEM • UK / EU examples • e-GIF • RIDE (Health interoperability) • Industry work • HL7 and NIST – Healthcare term registry • Geospatial use of ebXML registry

  8. Introduction to dictionary concepts What does the dictionary contain conceptually? How does the XML organize the information? How does this relate to Excel spreadsheets? Mapping to dictionary and between domains

  9. Conceptual Information Model Follows Naming and Design Rule (NDR) principles and rules Canonical Components Dictionary XML Each compound component Parent (ABIE) Item Parent (ABIE) Item Parent (ABIE) Item Parent (ABIE) Item . . . . . Each atomic component Attribute (ASBIE) Child (BBIE) Item Child (BBIE) Item Child (BBIE) Item Child (BBIE) Item Attribute (ASBIE) Attribute (ASBIE) ebXML CCTS terms (ABIE, BBIE, ASBIE) Parent = Aggregate Business Information Entity Child = Basic Business Information Entity Attribute = Association Business Information Entity Attribute (ASBIE) Optional attributes of component * CCTS – Core Components Technical Specification

  10. Example – Person Name • Person Name (ABIE) • Verified Details? (ASBIE) • First Name (BBIE) • Middle Name (BBIE) • Last Name (BBIE) • Previous Name? (ASBIE) • Language Code (BBIE) Language Code may exist independently of Person Name Verified Details and Previous Name are flags that denote additional information about the entity they are associated with There are three components aspects represented: structure relationships; content rules; definitions

  11. Conceptual Information View Structure Rules CAM Template Definitions DICTIONARY COMPONENTS DOMAIN DATA COMPONENTS Items Item CAM toolkit processing Properties Name Unique ID Component Type Cardinality Content Type Content Mask Children Uses tools in desktop CAM toolkit editor Group Structure Context Where from Definition Rules Language, Label, Notes * Required items in Blue

  12. XML View of Dictionary Content Name Unique ID Component Type Cardinality Items * See slide notes for explanation Content Type Content Mask

  13. Excel Spreadsheet View properties as columns An item per row

  14. Mapping to Dictionaries • You can compare a template of components to a dictionary • check within a domain for alignment to dictionary • check between domains for interoperability • incrementally adding new components to dictionary • Matches on physical names • Reports matching items and details • Reports statistics and percentages of matching • Generates crosswalk xml file • Compatible with Microsoft Excel • Report can be used to do spell checking

  15. Example cross-reference spreadsheet Formatted view in Microsoft Excel of import of cross-reference report details (from generated XML file) Matched details; item and alignment

  16. Generating Dictionaries Harvesting from existing sources Using modelling tools Manually from scratch Renaming tool

  17. Harvesting from Existing Sources • Schema of exchange structures • Physical database models

  18. Using Modelling Tools • Existing logical data models • Creating new data models

  19. LEGEND Automated Manual Analyst Review Apply Naming and Design Rule (NDR) checks and edits Option 1 – From Enterprise Data Model Import XSD and refactor for use with OASIS CAM Building Domain Dictionaries 1 3 Import EDM Model Components XSD schema OASIS CAM template NDR Evaluation, Refactor, Renaming Tool Analyst Review 4 Export Components in XSD syntax Collection of objects from model Ele Def XML 5 Generate Standard Components Dictionary XML DDL ebXML CCTS compatible (ABIE, BBIE, ASBIE) Dictionary of exchange components Option 2 – Derive from existing exchange XSD schema Import each XSD and merge into CAM dictionary 2 3 4 5 Merge & Generate Dictionary XML NDR Evaluation, Refactor, Renaming Tool CAM template Exchange XSD schema XML Import CAM template Exchange XSD schema OASIS CAM template Import Exchange XSD schema Dictionary of exchange components Import ebXML CCTS compatible (ABIE, BBIE, ASBIE)

  20. From modelling tools • Ingest • Refactor • Compress • Add namespace • Rename (progress) + re-open, save to CAM • Evaluate • Advanced – editing word-utils / preferences

  21. Creating from Scratch • Outlining components in XML • Editing spreadsheet

  22. Dictionaries Catalog Available dictionaries and domains

  23. Dictionary Tools Building Exchanges from Components Renaming tool

  24. Using Dictionaries & Blueprints • Dictionaries provide reference sets of components to be used in exchanges; three possible sources: • Dictionaries imported from existing industry schema • Domain dictionary built from an Enterprise Data Model schema • Reverse engineered out from existing exchange schema • Blueprint • Is the outline of the structure components to be used in an exchange schema • Can import components from one or more domain dictionary collections • Sketches out the desired information exchange with re-use of existing exchange component structures, plus any local additions / extensions / exclusions • Expander tool reads the blueprint, references the dictionary, and constructs the complete exchange schema

  25. Component Definitions Component Definitions Dictionary Development Tools Excel Domain dictionary Web tool 1 Blueprint Designer Industry dictionary 2 Search Tools Expander Tool 3 Insert Dictionary Parent Components 4 5 Completed Exchange Template

  26. Review • Top Down development • Reference dictionary components • Create exchange blueprint • Run Expander tool • Refine desired structure in visual editor • NDR Principles and Rules • Best practices for interoperability and schema techniques • Dictionary driven reuse • Enterprise Data Model and industry components • Ensures consistency of definition and use • Automated exchange package generation • Schemas, XML, documentation, mapping crosswalk • Test generated example XML with rules validation

  27. Business Modelling Charter Import EDM Import XSD Work- Group CAM Enabled Naming / NDR / spell check Generate Dictionary Search tools Desktop Web based Blueprints Dictionary Excel Dictionary Completed Exchange Structures NDR Evalu- ation Rules Report XML examples XSD schemas Validation Engine Subset Schema Crosswalk Test Cases Mapping Spreadsheet Rendering Stylesheet Accelerated Process Overview Dictionary Generation Project Inception Model Exchange Exchange Content Modelling dictionaries Expand and Evaluate Results Expand, Review, Refine Review / Tailor Exchange Structures Completed Exchange artifacts Test examples and rules Generate Package Artifacts and Test them Package Exchange

  28. LEGEND Automated Manual Blueprint Approach Overview Target applications 3 Pick Components Structure Outline Blueprint Industry dictionaries formatted as XML Exchange generator tools (CAM) 4 Enterprise Data Model Import and refactor for use with CAM 6 Expand Structure Exchange Structure 2 Exchange Components 1 Build EDM Exchange Blueprint Designer User Interface Local domain dictionary formatted as XML Ele 5 Exchange Package 7 Components Definition (XML) Def Ele Def DDL Dictionary Repository

  29. Generate Documentation and Schema • Documentation: • Create HTML report of exchange schema details and associated content and business rules • Report layout and content designed to be reviewed by business analysts • Schema: • Generate XSD schema for exchange • Customizable exchange folder layout management by namespace for extension, subset and exchange schema components • Writes XSD schema in syntax that is clear, simple and compatible with deployment tooling environments

  30. Summary Dictionary driven exchanges Blueprint enabled reuse Automated exchange package generation Alignment to NDR Principles and Rules Testing and validation support

  31. Domain Exchange Development Steps • Adopt formal Naming and Design Rules (NDR) • UN/CEFACT – NDR • OASIS UBL – Universal Business Language • OASIS EML – Election Markup Language • NIEM – National Information Exchange Model approach (http://www.niem.gov) • OASIS EM - Emergency Management joint initiative with NIEM • Develop data models of core components for use in exchanges • Build Dictionary of Core Components • Provide Principles and Rules guidance to schema team • Use namespaces, Yes / No? • Camel case naming convention? • Schema constructs and restrictions on use? • Information Exchange Package Documentation (IEPD) • Describes formal exchange that conforms to NDR and principles and rules • Provides schema, example XML, supporting artifacts • Re-uses core components • Defines domain specific components

  32. Example Governance Structure

  33. OASIS Content Assembly Mechanism (CAM) & Integration Technologies Guide W3C XSD Schema Ontology Classification Discovery Machine Based Reasoning Shared Semantics Registry OASIS CAM Templates Domain Dictionaries NDR - WHEN? • Alerts • Process control • Workflow • Automated interfacing • Business Intelligence - WHERE? • Domain classification systems • Ontology and reasoning definitions • Associations and linkages • Search and drilldown • Modelling tools • HOW? WHY? • Provides actual use patterns (templates) • Supports context handling and rules • Rendering outputs and documentation for verification • Enables integration testing / certification • Versioning - WHERE? • Shared resources of semantic definitions • Code lists • Dynamic rendering • Distributed versioning control • Role and access security management • WHAT? • Provides lexicon of information content • Describes structure constructs • Arranges groups of information • Simple content typing • Software tooling interfaces - WHO? • - Alignment of meaning and terms • - Consistent domain definitions • Modelling methods and practice • Business information content building blocks

  34. Reference Materials References and Links

  35. Links and Resources • DOWNLOADS - • CAM Toolkit download • https://sourceforge.net/projects/camprocessor • SUPPORTING MATERIALS - • NIEM Naming and Design Rules (NDR) 1.3 • http://www.niem.gov/pdf/NIEM-NDR-1-3.pdf • RESOURCES – • UN/CEFACT Core Components Technical Specification • http://www.unece.org/cefact/ebxml/CCTS_V2-01_Final.pdf • Additional support slides (following)

  36. Static Conventional Models, Artefacts, Code WSDL,XSD,UML,XML Blueprint Driven Approach Data models Excel spreadsheet Blueprint Templates XML visualization XML artifacts XSD schema Agile Dynamic Components TEMPLATES BUSINESS USERS Needs Requirements Procurement Implementation /Use Dynamic Installation Adoption, integration Coding Maintenance Test Design Specification Analysis Software code Compilers Deployment servers XSD schema XML artifacts SW DEVELOPERS

  37. Technology Targeting • Syntax specific production rules 4 XML 2 • Domain Dictionary Details Stored 1 • Wizard • runtime configuration • Template 3 • design time • Exchange Interface / Blueprints • Visual editor + review / test / completion steps 5 • Library • Object templates/Components XML XML XML XML • Facets • Questions / Data • Solution Specific Syntax

More Related