Quick guide to cam dictionaries
This presentation is the property of its rightful owner.
Sponsored Links
1 / 37

Quick Guide to CAM Dictionaries PowerPoint PPT Presentation


  • 96 Views
  • Uploaded on
  • Presentation posted in: General

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?

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.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Quick guide to cam dictionaries

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)


Agenda

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


Why dictionaries

Why Dictionaries?

Making interoperability baked into the XML infrastructure

Linguistic and semantic alignment; neutral representations

International and National initiatives


Baking in interoperability

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


Neutral content model representation

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


Linguistic and semantic alignment

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)


International and national initiatives

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


  • Introduction to dictionary concepts

    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


    Conceptual information model

    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


    Example person name

    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


  • Conceptual information view

    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


    Xml view of dictionary content

    XML View of Dictionary Content

    Name

    Unique ID

    Component Type

    Cardinality

    Items

    * See slide notes for explanation

    Content Type

    Content Mask


    Excel spreadsheet view

    Excel Spreadsheet View

    properties as columns

    An item per row


    Mapping to dictionaries

    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


    Example cross reference spreadsheet

    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


    Generating dictionaries

    Generating Dictionaries

    Harvesting from existing sources

    Using modelling tools

    Manually from scratch

    Renaming tool


    Harvesting from existing sources

    Harvesting from Existing Sources

    • Schema of exchange structures

    • Physical database models


    Using modelling tools

    Using Modelling Tools

    • Existing logical data models

    • Creating new data models


    Building domain dictionaries

    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)


    From modelling tools

    From modelling tools

    • Ingest

    • Refactor

    • Compress

    • Add namespace

    • Rename (progress) + re-open, save to CAM

    • Evaluate

    • Advanced – editing word-utils / preferences


    Creating from scratch

    Creating from Scratch

    • Outlining components in XML

    • Editing spreadsheet


    Dictionaries catalog

    Dictionaries Catalog

    Available dictionaries and domains


    Dictionary tools

    Dictionary Tools

    Building Exchanges from Components

    Renaming tool


    Using dictionaries blueprints

    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


    Dictionary development tools

    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


    Review

    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


    Accelerated process overview

    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


    Blueprint approach overview

    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


    Generate documentation and schema

    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


    Summary

    Summary

    Dictionary driven exchanges

    Blueprint enabled reuse

    Automated exchange package generation

    Alignment to NDR Principles and Rules

    Testing and validation support


    Domain exchange development steps

    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


  • Quick guide to cam dictionaries

    Example Governance Structure


    Oasis content assembly mechanism cam integration technologies guide

    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


    Reference materials

    Reference Materials

    References and Links


    Links and resources

    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)


    Blueprint driven approach

    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


    Quick guide to cam dictionaries

    • 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


  • Login