The OASIS Content Assembly Mechanism ebXML 2003, London, May 5th. David RR Webber Chair OASIS CAM TC http://drrw.net [email protected] http://cam.swiki.net The CAM family in a nutshell CAM syntax - tool for business users to express the information exchange semantics and context of their business process steps as XML-based templates. library of CAM templates provides discovery and re-use of common transaction details and sharing of domain context along with consistent referencing to shared nouns and verbs. CAM processing engine component to provide consistent information exchanges that creates agile information networks with reduced costs of entry and support. OASIS All rights reserved, Copyright , 2003
Agenda Problem Understanding What are we trying to solve and for whom? Using CAM Approach Building templates Next Steps Roadmap for 2003 OASIS All rights reserved, Copyright , 2003 Content Assembly Landscape Business Requirements
Lower costs and reduced errors. Greater efficiency of processes. Drive consistent business conduct. Increase speed of deployment. Improve management controls. Reduce risk for businesses. Provide broad adoption profile Key: Enable use of XML metadata to build consistent information exchanges OASIS All rights reserved, Copyright , 2003 Standards OASIS mission OASIS drives the development, convergence & adoption of e-business standards (XML plumbing) OASIS All rights reserved, Copyright , 2003
Conceptual Model for OASIS Transaction Instance Transaction Patterns Generalized Content Generalized Processes Content Definition Language Process Description Language Repository Presentation Description Service Description Language Messaging XML Syntax Transport Network OASIS All rights reserved, Copyright , 2003
Management Registry / Directory Quality of Services Specialized Processes S e c u r i t y Conformance and Interoperability Specialized Content Vertical Industry Area XML and Web Services / ebXML Area Industry Trends
According to the Gartner Group, by 2003, at least 70 percent of all new applications will be built primarily from components Components allow developers the ability to integrate multiple software modules when creating new applications, reducing in-house programming effort, leveraging sophisticated services, and increasing software quality which can significantly reduce the time, cost and effort of integrations projects. " OASIS All rights reserved, Copyright , 2003 What are we trying to solve and for whom? Understanding the Problem http://cam.swiki.net Building e-Business Orchestration Define business ideas and needs Capture steps and workflow
Then describe the business processing Top layer rules and context Middle layer industry/application integration Implementation layer physical application systems and content delivery / exchange OASIS All rights reserved, Copyright , 2003 Business Layers Components Components 4 Process 1 2 Architectural Architectural Conceptual Conceptual
5 CPA Designing for Flexibility UDDI ebXML 3 Business Layers BODs, MIGs, PIPs Documentation Logical BPSS transaction schema instance OASIS All rights reserved, Copyright , 2003 Implementation Physical
} Constraints, Context, & Structure Business Layers - Objectives Reduce complexity of managing large numbers of transaction formats - document the differences Want to speed adoption by formalizing business rules Want context-driven transaction generation Empowers business users to build interchange details Need to define in a neutral format: works with variety of structures, not just XML. Augment current standards and industry specifications Provide multi-step process support OASIS All rights reserved, Copyright , 2003 Business Challenges for XML Totally static transaction formats do not work need configurable structures
How to apply business context assertions to a information structure? How to derive a consistent way of specifying the interchange parameters to a partner? How to enable business domain users to implement the exchanges? Key: Context is Everywhere The ability to create re-usable information components is driven by the ability to enable context OASIS All rights reserved, Copyright , 2003 XML Schema? Why not just use XML Schema? OAGI did this for BODs V8.0 but required supplementing schema with XSLT and XPath to capture business rules Show stopper - no ability to enable business context OASIS All rights reserved, Copyright , 2003 Lessons learned: Which XML Method(s)?
We need business collaboration on elements syntax: Global complexType definition? Global element definition? or define both? Reuse Reference global element in external namespace? Define local element as substitutionGroup of global element (bring into local namespace)? Define local element using external Namespace complexType (bring into local namespace)? Derive by extension, local element can have additional subelements added to it? OASIS All rights reserved, Copyright , 2003 XML Schema - SWOT Strengths
Weaknesses Widely implemented in major XML parsers Defines structural layouts for XML content Graphical editors available Small footprint works well for embedded applications (web browser) Basic set of data types work well Tools can inspect schema and generate rendering for given XML content Integration with XSLT Schema instance self-contained Supports familiar bottom-up implementation Cannot define all possible structural combinations Opportunities Threats Replace column mechanisms in DBMS tables Support validation in data entry systems Work well with programmer IDE environments
Initial momentum in marketplace stagnates as ebusiness requirements expose critical weaknesses Reduced to role in embedded local systems OASIS All rights reserved, Copyright , 2003 (e.g. scripts - SMIL) Syntax about syntax (Legal Latin v legal English) Limited editing tools (XMLSpy, Stylus, TIBCO) Complex syntax, difficult to hand-code Business context mechanism support Only works for XML structures Versioning of elements and attributes Including structural components External type library support Metadata registry referencing Validation to external code-lists Compliance level and specification support XML by itself is not enough XML, by itself, does not solve interoperability problems yet it
is an important tool for doing so. XML does not provide instant semantics. XML by itself is not the magic bullet. What we need are clear policies and vision of how electronic information enables interoperability OASIS All rights reserved, Copyright , 2003 Using CAM The Approach http://cam.swiki.net Building the right pieces Need to intelligently use XML get maximum benefit, while avoiding potential pitfalls. Exploit work that others have done pathfinder for: OAGIS V8 use of Schema techniques; and best-practices on XML use Provide syntax neutral methods wherever possible
OASIS All rights reserved, Copyright , 2003 e-Business Architecture Stack Business Goals counter Contract Agreement Pattern propose Workflow Modeling & Business Patterns reject accept request response process
process Transaction Transaction Specification CAM CAM template template Model & Schemas Schema Schema Exchange Concept Verbs
Registry Transport Roles Nouns Events OASIS All rights reserved, Copyright , 2003 Context Rules Template-driven Goal Pattern XML Information Exchange Quality (and long-term consistency) Secure Authenticated Delivery and Tracking: Messaging system, envelope format and payload with exchange source profile controls
Delivery Assembly OASIS CAM: Schema: Content structure definition and simple content typing Schema XML Business logic for content structure decisions and explicit rules to enforce content, and interdependencies, with business exchange context, and content definition - UID references
Registry/ business information Dictionary UID content referencing system ensures consistent definition usage UID OASIS All rights reserved, Copyright , 2003 Concept to Runtime Approach Re-usable Re-usable Business Business Information Information components components Registry Components Vocabulary Vocabulary nouns, and
and Industry Industry Dictionaries Dictionaries Physical Conceptual Application Database Structure Choices 1 Required Content Structure 2 CAM Assembly
Structure Process Engine Context Values OASIS All rights reserved, Copyright , 2003 Logical Content References 3 Payload Assembly Payload / Rendering Example : Address Horizontal and Vertical Use Matrix A = Government (Domestic)
B = Vendor C = International Organization D = Customer E = Consortiums Top = Authoritative source D L ev el 0 A A L ev el 1 D a t a e n t r y a s s im p le in c o u n t r y a d d r e s s S t r e e t , C it y , S ta te , Z IP S t r e e t , C it y , S ta te , Z IP M a c h in e s c a n n e d a n d e x tr a c te d
A, B O A G E D I D L ev el 2 E x te n d e d a d d r e s s , In t e r n a t io n a l a n d b u lk m a il L o c a t io n , S t r e e t , C it y , S t a t e , Z I P , C o u n try , B a r C o d e, P O B o x , ...... L E G A C Y B, D, E
S h ip p in g / D e liv e r y , a n d O r g a n iz a t io n A d d r e s s w it h M a il r o o m , lo a d in g b a y , f a c ilit y lo c a t io n , G P S c o d e , .... H R -X M L E C C M A F E D E X O A G Bottom = User and Implementers OASIS All rights reserved, Copyright , 2003 L ev el 4 & 5
F a c ilit ie s m a n a g e m e n t , g lo b a l a d d r e s s s y s t e m , m u lt i- lin g u a l D A C A L T e liv e r y I d e n t if ie r , d d r e s s L in e s , o u n try , d m in is t r a t iv e A r e a , o c a lit y , h o ro u g h fa re , .... U P S E D I B, E
C&A L ev el 3 E D I A, B, C, E C IQ A, C, E Technology Positioning We can use W3C Schema to show basic typing and structural permutations for all XML transaction content, matching the levels of the business model. To provide automation of the business logic at-point-of-use requires OASIS CAM to supplement the Schema. This gives us short-term implementation today, with long-term extensibility and improvement of business value and information quality.
Leverages todays in-place XML technology, provides enhanced functionality for next generation. OASIS All rights reserved, Copyright , 2003 CAM Dissection Required Components and Rendering in XML http://cam.swiki.net Making Assembly Work Assembly Structure Business Context Rules Content Referencing Data Validations
External Application Mapping A,B,C,D,E! OASIS All rights reserved, Copyright , 2003 Technology Foundation Simple XML V1.0 XPath Neutral approach to structure content Assertion predicates OASIS All rights reserved, Copyright , 2003 excludeAttribute() excludeElement()
excludeTree() makeOptional() makeMandatory() makeRepeatable() setRequired() setChoice() setId() setLength() setLimit() setMask() setValue() restrictValues() restrictValuesByUID() useAttribute() useChoice() useElement() useTree() useAttributeByID() useChoiceByID() useElementByID() useTreeByID() lookup() startBlock(), endBlock()
Simple Example Simple Purchase Order Straight up XML structure Second example structure choices Included sub-assemblies OASIS All rights reserved, Copyright , 2003 UBL Example Ordering OP70 Two examples USA: office supplies and UK: carpentry supplies. UBL - W3C Schema CAM - UK carpentry CAM - USA office supplies Combined CAM template with context OASIS All rights reserved, Copyright , 2003 OAGIS V8.0 BOD Example
Synch Party Example: XPath validation extensions: OASIS All rights reserved, Copyright , 2003 BOD Comparators equal() NOTequal() greaterthan () lessthan () greaterthanEQ () lessthanEQ () begins () ends () lookup () member () contains() + Business Context Mechanism Link between messaging layer, business
process layer and assembly layer.
An example context instance 1.0 CAM BPM
OASIS All rights reserved, Copyright , 2003 External Mapping Product List
OASIS All rights reserved, Copyright , 2003 Examples from the field Martin Roberts, CAM team member, presents examples from BT UK experiences http://cam.swiki.net On-line Designer Form Available at the SWIKI http://cam.swiki.net/.uploads/livedemo/Activate.htm OASIS All rights reserved, Copyright , 2003 Next Steps Work in progress: Completion of Specification Implementation of CAM processor
Library of CAM templates Integration with OASIS Registry assembly OASIS All rights reserved, Copyright , 2003 Additional Information OASIS ebXML Registry Technical Committee http://oasis-open.org/committees/regrep/ OASIS CAM (assembly) Technical Committee http://oasis-open.org/committees/cam/ ebXML.org http://www.ebxml.org/ http:ebxmlbook.com OASIS All rights reserved, Copyright , 2003 OASIS Content Assembly Mechanism Technical Committee (CAM TC) http://www.oasis-open.org/committees/cam Thank You OASIS All rights reserved, Copyright , 2003
www.oasis-open.org xml.coverpages.org www.xml.org www.ebxml.org OASIS Content Assembly Mechanism (CAM TC) April 2003 http://cam.swiki.net http://cam.swiki.net