OpenTravel Model-Driven Schema at IATA


Published on

Presented at the 19th Meeting of the IATA XML Working Group in Montreal, this presentation contains an overview of OpenTravel’s paradigm shift to “neutral” open standards for the travel industry via a model driven architecture (MDA) that provides common representational models of all data and business functionality contained in OpenTravel specifications. The four key framework tools that interoperate for continuous XML component model refinement are discussed in relationship to the OpenTravel Information Model.

Published in: Technology, Education
  • Be the first to comment

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

No notes for slide

OpenTravel Model-Driven Schema at IATA

  1. 1. The Model-Driven Standard Advantage The OpenTravel Interoperability Framework Open “Model” Standards for the Travel Industry 19th Meeting of the IATA XML Working Group (XMLWG/19) Montreal 17-20 September 2012
  2. 2. Agenda• About OpenTravel• Why Model Driven? • MDA Overview & Building Blocks • Enterprise Versus OpenTravel Models • Open-Model “Open” Standards for the Travel Industry• The OpenTravel Interoperability Framework • Introduction & Benefits • Framework Components “At a Glance” • Framework Components “Under the Hood” • Information Model • Capability Model • Component Model• Q&A © 2012 OpenTravel Alliance |
  3. 3. About OpenTravel The OpenTravel Alliance provides a community where companies in the electronic distribution supply chain work together to create an accepted structure for electronic messages, enabling suppliers and distributors to speak the same interoperability language, trading partner to trading partner. © 2012 OpenTravel Alliance |
  4. 4. Since…1999 OpenTravel has been a member funded not-for-profit organization. Since… 2001 OpenTravel has been producing open standards for the travel industry. © 2012 OpenTravel Alliance |
  5. 5. Since…2011 OpenTravel has been re-architecting its open standard to support modern messaging environments… …and implementing a model driven architecture to streamline internal standards development and support implementer enterprise software development. © 2012 OpenTravel Alliance |
  6. 6. Why Model Driven? Model driven standards naturally support system evolution. © 2012 OpenTravel Alliance |
  7. 7. Model Driven Architecture (MDA) » Overview MDA is a framework for software development • Defined by the Object Management Group (OMG) • MDA places importance on models in the software development process • The software development process is driven by the activity of modeling your software system Key Benefits for Enterprise Key Benefits for OpenTravel Productivity ProductivityModel Driven Architecture Portability Domain Modeling Interoperability Schema Quality © 2012 OpenTravel Alliance |
  8. 8. Model Driven Architecture (MDA) » Building Blocks It’s mostly about the model… Model Model Language Description of a system. A model is written in a well-defined language. PIM (independent) UML OCL PSM (specific) (Object Constraint Language ) PIM to Code Meta Object Facility PSM to CodeModel Driven Architecture (MOF) Specific source Source to target language. model. Transformation Transformation Definition Tool …but transformations are important too! © 2012 OpenTravel Alliance |
  9. 9. Model Driven Architecture (MDA) » Typical Enterprise Models Typical Enterprise-Level Model StructureModel Driven Architecture © 2012 OpenTravel Alliance |
  10. 10. Model Driven Architecture (MDA) » OpenTravel Models OpenTravel Model Structure Typical Enterprise ModelsModel Driven Architecture © 2012 OpenTravel Alliance |
  11. 11. Model Driven Architecture (MDA) » Open Model Standards for the Travel Industry The “Open Model Principle” OpenTravel’s core competency is an open standard common information exchange model that supports travel industry business requirements and innovation. • Paradigm shift to “neutral” industry standards for the travel industry – Platform/ tooling neutral – Architectural style neutral • Emphasis on common information exchange modeling • Collection of UML models – Support business functionality • Easy mapping to internal business processes – Support the pace of travel industry innovationModel Driven Architecture • Enhancements made at the model level • Model publishing not labor intensive • Collection of UML models – Support business functionality – Industry adopted transformation included (XML) – Other open source transformations • JAVA, JSON, .NET © 2012 OpenTravel Alliance |
  12. 12. OpenTravel Interoperability Framework A broad component model for the entire travel industry ecosystem. © 2012 OpenTravel Alliance |
  13. 13. OpenTravel Interoperability Framework (OTIF) » Introduction The OTIF Framework uses a model driven architecture (MDA) to better serve OpenTravel members, schema implementers and the travel industry as a whole. • Provides “open” common representational models ofF ramework all data and business functionality contained in OpenTravel specificationsInteroperability • Streamlines OpenTravel standards developmentOpen Travel © 2012 OpenTravel Alliance |
  14. 14. OpenTravel Interoperability Framework (OTIF) » Key Benefits Key benefits for OpenTravel, OpenTravel member companies and specification implementers include: • Reduced schema enhancement time • Schema enhancements at the model level produce final publication • Reduced implementation time & cost • UML-based models integrate with enterprise levelF ramework development platforms • Canonical information model for context and correlations allows IT, business and trading partners to speak the same language • Increased schema qualityInteroperability • Interoperable framework components ensure optimum reuse and reduce redundancy • Improved schema governance • Best practices and policies integrated at the tooling level • Reference XML transformationOpen Travel © 2012 OpenTravel Alliance |
  15. 15. Framework Components At a Glance Continuous XML component model refinement. © 2012 OpenTravel Alliance |
  16. 16. OTIF Key Framework Key Components Four key framework components interoperate for continuous XML component model refinement.F rameworkInteroperabilityOpen Travel © 2012 OpenTravel Alliance |
  17. 17. Key Components » Canonical Model OpenTravel Lexis Canonical Model A SQL Server-based canonical refactoring of OpenTravel’s Common Information Exchange Model (CIEM). NORMALIZED TERMS 211CONTEXTUAL FACETS 1067<<InformationModel>>
  18. 18. Key Components » UML and Data Models Travel industry UML capability models. Provides implementers with UML support at the business and technical level for XML Object Suite component & service composition models that map to business processes.UML MODELS273 © 2012 OpenTravel Alliance |
  19. 19. Key Components » OpenTravel Library Builder Automated XML publication packages. XML compiler that builds and enforces versioning for model XML transformation with type and service libraries.46BUSINESS OBJECTS 1 2 377CORE OBJECTS © 2012 OpenTravel Alliance |
  20. 20. Key Components » Solution Builder Reference solutions for implementers. A compendium of (best practice-based) reference solutions that make working with OpenTravel schema products more productive.XML Cookbooks Schema Dictionaries Data Model UML Models Travel Glossary Implementation MatrixOpenTravel Forum © 2012 OpenTravel Alliance |
  21. 21. Framework Components Under the Hood Tooling, models and products. © 2012 OpenTravel Alliance |
  22. 22. Interoperability Framework Specification ModelThree views of the Framework: Models, Tooling & Integration, Products © 2012 OpenTravel Alliance |
  23. 23. Under the Hood… Information Model A common representational model of all data and data relationships contained in OpenTravel specifications. © 2012 OpenTravel Alliance |
  24. 24. Key Components » Information Model » Canonical Modeler • Provides a common business vocabulary used in XML components, best practices and terms glossary • Leverages other industry standards (IATA, ISO, etc.)F ramework • Provides correlations for concepts that span multiple travelInteroperability industry sectors • Produces logical entity-relationship model for implementer database mapping Used internally by OpenTravelOpen Travel Licensed from igniteXML © 2012 OpenTravel Alliance |
  25. 25. Key Components » Information Model » Canonical Modeler EXAMPLE: This example shows how the concept of a “price” in the canonical model relates to schemaF ramework capabilities: • Air fare and tax • Rental Car rate, chargeInteroperability and fee • Hotel rate, charge and rate planOpen Travel © 2012 OpenTravel Alliance |
  26. 26. Under the Hood… Capability Model UML catalog of OpenTravel schema functionality. © 2012 OpenTravel Alliance |
  27. 27. Key Components » Capability Model » UML Modeler • State of the art UML Modeler – Integrated with Canonical Modeler and OpenTravel Model Builder – Capability stereotype imported from CanonicalF ramework Model – Component model exported to Model BuilderInteroperability • Models included with publication in two formats – XMI Altova UModel used internally by OpenTravel – UML Licensed from AltovaOpen Travel ( © 2012 OpenTravel Alliance |
  28. 28. Key Components » Capability Model » UML Modeler • Supported UML element constructs • Stereotype • Tagged Values • Model • Package • Class • Property • Enumeration • Supported UMLF ramework diagrams • Class • Package • ProfileInteroperability • Sequence • Use Case • Multiple views of capabilities • Type Library • Catalog (concept- based)Open Travel © 2012 OpenTravel Alliance |
  29. 29. Key Components » Capability Model » UML Modeler Custom Features Stereotype (ota2:) profiles applied at model, package, class and property level…F rameworkInteroperability …enforce the OpenTravel common information exchange modelOpen Travel during transformation. © 2012 OpenTravel Alliance |
  30. 30. Key Components » Capability Model » Custom Features Tagged values assigned at stereotype level for XML component and type library classification…F rameworkInteroperabilityOpen Travel …enforce transformation to OpenTravel XML Object Suite OTM model. © 2012 OpenTravel Alliance |
  31. 31. Key Components » Capability Model » Custom Features OpenTravel-built Eclipse class library to transform between model XMI output and custom Model Builder OTM format.F rameworkInteroperabilityOpen Travel © 2012 OpenTravel Alliance |
  32. 32. Under the Hood… XML Component Model Light-weight and extensible XML object and service model with a companion compiler. © 2012 OpenTravel Alliance |
  33. 33. OpenTravel XML Object Suite Component Library A View from the Top A hierarchy of xml objects comprise the XML Object Suite component library © 2012 OpenTravel Alliance |
  34. 34. Component Library: Simple/ Atomic TypeThe most granular building block in the XML Object Suite. ota2: Model Stereotype Icon © 2012 OpenTravel Alliance |
  35. 35. Component Library: EnumerationAn Enumeration complexType with a simpleType base list of enumerated literals. ota2: Model Stereotype Icons © 2012 OpenTravel Alliance |
  36. 36. Component Library: Value With AttributesGroups of attributes related to a single base value that may be a simpleType or complexType open enumeration. ota2: Model Stereotype Icon © 2012 OpenTravel Alliance |
  37. 37. Component Library: Core Object A complexType that serves as a container forapplication data that defines common representations of real world objects. ota2: Model Stereotype Icon © 2012 OpenTravel Alliance |
  38. 38. Component Library: Business ObjectA complexType that is a containers for application data (such as an itinerary or a traveler profile) that is commonly query-able and exists as a standalone object. ota2: Model Stereotype Icon © 2012 OpenTravel Alliance |
  39. 39. Component Library: ServiceA collection of 2.0 components that support interoperablemachine-to-machine interaction over a network specified in Web Services Description Language (WSDL) format. ota2: Model Stereotype Icon © 2012 OpenTravel Alliance |
  40. 40. Component Model » OpenTravel Library Builder Compiler that transforms the OpenTravel model into XML Object Suite type libraries (XSD) and service libraries (WSDL) Compiler fundamentals • Interchange format for service information modelsF ramework • Defines 2.0 XML Object Suite types and schemas • Compiles into XML schema (xsd) and WSDLInteroperability Library Builder used internally by OpenTravel Licensed from third-party Customized for OpenTravelOpen Travel © 2012 OpenTravel Alliance |
  41. 41. Component Model » OpenTravel Library Builder Includes repository capability to collaborate, manage, and distribute OTM XML models. Repository Benefits • Sharing models within or across organizations • Lifecycle and version control of published modelsF ramework • Configurable security and access controls for managed namespaces within a repositoryInteroperability • Browsing and free-text searches of repository content • May be integrated with WSO2 (open source) Governance RepositoryOpen Travel © 2012 OpenTravel Alliance |
  42. 42. Component Model » Library Builder » Tooling Overview Tooling OTA2 is OpenTravel’s new XML • Component development GUI guidelines and messages and an OTM model to XSD OTM is the model compiler (Eclipse Java) transformation for creating OTA2 XML schemasF rameworkInteroperabilityOpen Travel © 2012 OpenTravel Alliance |
  43. 43. Component Model » Library Builder » OTM Model Basics • Model metadata – Version – Status – Namespace – Library name – Imports and includes – Application contextF ramework • Supported model component typesInteroperability – Simple Types • Simple • Closed Enumeration – Complex • Open Enumeration • Value With Attributes • Core Object • Business ObjectOpen Travel – Service © 2012 OpenTravel Alliance |
  44. 44. Component Model » Library Builder » OTM Library Document Model OTM File XSD Schema <?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?> <Library <xsd:schema attributeFormDefault="unqualified" xmlns= elementFormDefault="qualified" odel_v01_01 targetNamespace= xmlns:xsd= file/v01 version="1.0.0" xmlns:xsi= xmlns:ota= instance mmon_v01_00 xsi:schemaLocation=" xmlns:otm= /OTA2/LibraryModel_v01_01 pInfo_v01_00 OTA2_LibraryModel_v1.4.4.xsd"> xmlns:xsd="">F ramework <xsd:annotation> <VersionScheme>OTA2</VersionScheme> <xsd:appinfo> <Status>Draft</Status> <otm:Library> <Namespace>< <otm:LibraryName>OTA2_Profile /Namespace> </otm:LibraryName>Interoperability <Prefix>OTA2</Prefix> <otm:LibraryVersion>1.0.0 <Name>OTA2_Profile_v1.0.0</Name> </otm:LibraryVersion> <Import prefix="xsd" <otm:SourceFile>/Profile.otm namespace=""/> </otm:SourceFile> <otm:CompilerVersion>2.2 <Context </otm:CompilerVersion> applicationContext=" <otm:CompileDate>2012-09- M2" context="OTM2"/> 09T12:23:50.339-05:00</otm:CompileDate> . . . </otm:Library>Open Travel . . . © 2012 OpenTravel Alliance |
  45. 45. Questions? Bonnie Lowell Specification Architect OpenTravel Alliance OpenTravel Interoperability FrameworkUML models just got cool.