 ACORD 2005. ACORD’s Experiences using W3C Schemas Dan Vint Senior Architect

Slides:



Advertisements
Similar presentations
What is XML? a meta language that allows you to create and format your own document markups a method for putting structured data into a text file; these.
Advertisements

Dr. Alexandra I. Cristea XHTML.
W3C XML Schema: what you might not know (and might or might not like!) Noah Mendelsohn Distinguished Engineer IBM Corp. October 10, 2002.
 Fundamentals of Web Design.  Describe the history and theory of XHTML  Understand the rules for creating valid XHTML documents  Apply a DTD to an.
Copyright © Open Applications Group, Inc. All rights reserved 1 OAGi XML Schema User Report June 21, Michael.
Achieving Distributed Extensibility and Versioning in XML Dave Orchard W3C Lead BEA Systems.
SDPL 2003Notes 2: Document Instances and Grammars1 2.5 XML Schemas n A quick introduction to XML Schema –W3C Recommendation, May 2, 2001: »XML Schema Part.
Tutorial 9 Working with XHTML
An Introduction to XML Schema CSCI 7818 by Ming Rutar.
Lecture 14 XML Validation. a simple element containing text attribute; attributes provide additional information about an element and consist of a name.
More XML namespaces, DTDs CS 431 – February 16, 2005 Carl Lagoze – Cornell University.
RELAX NG. Caveat I did not have a RELAX NG validator when I wrote these slides. Therefore, if an example appears to be wrong, it probably is.
1 Substitution Groups in XML Schemas Tomer Shiran Winter 2003/4 Semester.
Tutorial 9 Working with XHTML. XP Objectives Describe the history and theory of XHTML Understand the rules for creating valid XHTML documents Apply a.
Creating a Well-Formed Valid Document. 2 Objectives Introducing XHTML Creating a Well-Formed Document Creating a Valid Document Creating an XHTML Document.
Sunday, June 28, 2015 Abdelali ZAHI : FALL 2003 : XML Schemas XML Schemas Presented By : Abdelali ZAHI Instructor : Dr H.Haddouti.
XML Introduction What is XML –XML is the eXtensible Markup Language –Became a W3C Recommendation in 1998 –Tag-based syntax, like HTML –You get to make.
System Integration (Cont.) Week 7 – Lecture 2. Approaches Information transfer –Interface –Database replication –Data federation Business process integration.
Document Type Definitions. XML and DTDs A DTD (Document Type Definition) describes the structure of one or more XML documents. Specifically, a DTD describes:
Unit 4 – XML Schema XML - Level I Basic.
Introduction to XML This material is based heavily on the tutorial by the same name at
2005 W3C XML Schema Workshop Path Forward Soumitra Sengupta Microsoft.
® Eurostep.ESUKPC v0.1©Copyright Eurostep Limited An Introduction to ISO STEP Part 25 David Price.
17 Apr 2002 XML Schema Andy Clark. What is it? A grammar definition language – Like DTDs but better Uses XML syntax – Defined by W3C Primary features.
XP New Perspectives on XML Tutorial 4 1 XML Schema Tutorial – Carey ISBN Working with Namespaces and Schemas.
XML Validation I DTDs Robin Burke ECT 360 Winter 2004.
Pemrograman Berbasis WEB XML part 2 -Aurelio Rahmadian- Sumber: w3cschools.com.
Writing Your Last DTD ? Alex Brown Griffin Brown Digital Publishing Ltd.
Lecture 15 XML Validation. a simple element containing text attribute; attributes provide additional information about an element and consist of a name.
XP Tutorial 9New Perspectives on Creating Web Pages with HTML, XHTML, and XML 1 Working with XHTML Creating a Well-Formed Valid Document Tutorial 9.
XP The University of Akron Summit College Business Technology Department Computer Information Systems 2440: 140 Internet Tools Instructor: Enoch E. Damson.
Why XML ? Problems with HTML HTML design - HTML is intended for presentation of information as Web pages. - HTML contains a fixed set of markup tags. This.
XML and XSL Institutional Web Management 2001: Organising Chaos.
Chapter 4: Document Type Definitions. Chapter 4 Objectives Learn to create DTDs Validate an XML document against a DTD Use DTDs to create XML documents.
Creating Extensible Content Models XML Schemas: Best Practices A set of guidelines for designing XML Schemas Created by discussions on xml-dev.
Dr. Azeddine Chikh IS446: Internet Software Development.
XP 1 CREATING AN XML DOCUMENT. XP 2 INTRODUCING XML XML stands for Extensible Markup Language. A markup language specifies the structure and content of.
XML A web enabled data description language 4/22/2001 By Mark Lawson & Edward Ryan L’Herault.
Comments on doing a CIM Project
SDPL 2005Notes 2.5: XML Schemas1 2.5 XML Schemas n Short introduction to XML Schema –W3C Recommendation, 1 st Ed. May, 2001; 2 nd Ed. Oct, 2004: »XML Schema.
New Perspectives on XML, 2nd Edition
An OO schema language for XML SOX W3C Note 30 July 1999.
More XML namespaces, DTDs CS 431 – Carl Lagoze – Cornell University.
XP 1 Creating an XML Document Developing an XML Document for the Jazz Warehouse XML Tutorial.
XML – Part III. The Element … This type of element either has the element content or the mixed content (child element and data) The attributes of the.
An Introduction to XML Sandeep Bhattaram
CSE3201 Information Retrieval Systems DTD Document Type Definition.
Sheet 1XML Technology in E-Commerce 2001Lecture 2 XML Technology in E-Commerce Lecture 2 Logical and Physical Structure, Validity, DTD, XML Schema.
XML 2nd EDITION Tutorial 4 Working With Schemas. XP Schemas A schema is an XML document that defines the content and structure of one or more XML documents.
Tutorial 13 Validating Documents with Schemas
XML eXtensible Markup Language. XML A method of defining a format for exchanging documents and data. –Allows one to define a dialect of XML –A library.
Internet & World Wide Web How to Program, 5/e. © by Pearson Education, Inc. All Rights Reserved.2.
XML Schema (W3C) Thanks to Jussi Pohjolainen TAMK University of Applied Sciences.
XML Validation II Schemas Robin Burke ECT 360. Outline Namespaces Documents  Data types XML Schemas Elements Attributes Derived data types RELAX NG.
® A Proposed UML Profile For EXPRESS David Price Seattle ISO STEP Meeting October 2004.
Introduction to XML Schema John Arnett, MSc Standards Modeller Information and Statistics Division NHSScotland Tel: (x2073)
When we create.rtf document apart from saving the actual info the tool saves additional info like start of a paragraph, bold, size of the font.. Etc. This.
September 6, GJXDM Users Conference NCIC Schema Challenges Patrice A. Yuh
XML Validation II Advanced DTDs + Schemas Robin Burke ECT 360.
XML Validation. a simple element containing text attribute; attributes provide additional information about an element and consist of a name value pair;
Using DSDL plus annotations for Netconf (+) data modeling Rohan Mahy draft-mahy-canmod-dsdl-01.
Tutorial 9 Working with XHTML. New Perspectives on HTML, XHTML, and XML, Comprehensive, 3rd Edition 2 Objectives Describe the history and theory of XHTML.
 XML derives its strength from a variety of supporting technologies.  Structure and data types: When using XML to exchange data among clients, partners,
Tutorial 9 Working with XHTML. XP Objectives Describe the history and theory of XHTML Understand the rules for creating valid XHTML documents Apply a.
XP 1Creating Web Pages with XML Tutorial 1 New Perspectives on XML Tutorial 1 – Creating an XML Document.
PART 1 XML Basics. Slide 2 Why XML Here? You need to understand the basics of XML to do much with Android All of they layout and configuration files are.
XML Notes taken from w3schools. What is XML? XML stands for EXtensible Markup Language. XML was designed to store and transport data. XML was designed.
4 Copyright © 2004, Oracle. All rights reserved. Validating XML by Using XML Schema.
Eugenia Fernandez IUPUI
CSE591: Data Mining by H. Liu
Presentation transcript:

 ACORD ACORD’s Experiences using W3C Schemas Dan Vint Senior Architect

ACORD’s Experiences with W3C Schemas SLIDE 2 10/18/02 Background  ACORD  Not-for-profit Insurance industries standards body, we have standards for Life, P&C and RLC lines. Used in US, Canada, England/London Market, and Europe. Growing interest in Japan/China  Three standards started in 3 different ways:  P&C – based upon an earlier EDI standard. Originally designed for DTD use, but added schema support when it was available (currently using both)  Life – started as a MS initiative then brought into ACORD. DTD based originally, now only using schema  RLC – started in a European standards group, also based upon an EDI standard. Using DTDs currently trying to add schema support  Business Issue: How to bring the 3 standards into one design  For ACORD the best thing would be a common model, design and naming conventions  Can’t get there because we are on different cycles. Life and RLC cannot break backwards compatibility, P&C is currently redesigning  Each as a level of adoption and entrenchment.

ACORD’s Experiences with W3C Schemas SLIDE 3 10/18/02 Things that we like:  Having the schema format be an XML document has been very useful  We generate schemas and DTDs from a meta-format that is maintained in a database  We slice the schema into smaller subsets via XSLT  Support for basic data types was crucial for our needs.  Having a built-in documentation standard is very nice.  Support for namespaces and import/include/redefine is useful, but rough around the edges.  Can we get this sort of support reversed engineered into XML and DTDs?

ACORD’s Experiences with W3C Schemas SLIDE 4 10/18/02 Things we don’t like about W3C Schema  Took a simple 30 page standard and blew it out of proportion.  XML took a simplifying approach, schema reversed that and put in experimental features and complexity  Fallout:  You need tools to manage a schema  No two tools agree on their implementations  Incomplete implementations  Should have left out xsd:all, DTDs did and Schema implementation is not generally usable anyway.  I can teach DTD syntax in an hour or less; it takes a day for schema  Entities requiring the use of DTDs.  “Yuch! DTDs, that’s old technology and a kludge” Surely if the schema guys had wanted entities to be used they would have defined a new method (or they wouled have at least documented this use.

ACORD’s Experiences with W3C Schemas SLIDE 5 10/18/02 Things we don’t like about W3C Schema (cont)  No way to clearly specify the Schema  Hint attributes!  Confused world of support and no support for the hints, inconsistent on what should happen when they appear  No way to version schema that is supported by tools  xsd:version attribute has no use or support  Namespaces only way to force recognition of a change  Namespace designation of extension – want a different namespace rather than the original ACORD. (namespace pollution)  Extensions, did content really have to be added outside the original choice or sequence?  Extensibility of enumerated lists  Probably 1/3 of the elements in ACORD are based upon code lists, and we can’t extended them.  Need a way to identify the extended code values. We have our tpe based upon QName, but this doesn’t work for external lists.

ACORD’s Experiences with W3C Schemas SLIDE 6 10/18/02 Things we don’t like about W3C Schema (cont)  No easy way to both validate or ignore extensions  We need extensions, but not all trading partners will know what the extensions are, so they need to at least be able to validate the basic ACORD information and structure  We have two designs within our standard  One uses global elements and groups with restriction and extension  Another uses an element of that is of type xsd:any and is added at the end of our aggregates  How about a processContents="strict“ or processContents=“lax"  We could use co-constraints and/or “business rules”  We publish a huge schema – 700 messages, 29,000 lines need help in modularizing to make the smallest schema possible  Business level validation – just because a date is the wrong format, should I reject a $50 million transaction?  Don’t like substituionGroups because it is not easy to determine the final content model  I like the old SGML notion of “no surprises”

ACORD’s Experiences with W3C Schemas SLIDE 7 10/18/02 Where we need help  Need an integrated approach that supports all tools  Code generators my biggest headache currently – don’t support all features, don’t expect to and have decided what subset of XML they think is appropriate  Groups  Redefine  Attributes on data level elements  Too many levels of inheritance in classes – create complex code  ‘abstract’  Possible solution – profiles  XML DTD level support plus data types (import, include, namespaces)  DTD+ with base types (abstracts, redefine)  Schema extreme (key, unique, substitution groups)  Should the W3C consider specifying a language that uses XML as a data type? Scripting or compiled  XML should become a native data type  Consider the adoption of a catalog approach to schema location, general processing, and versioning  One standard has a wide content model for messages and uses a type code to designate the type of message being sent  Everything is optional in the core design of elements  We need a very rich method for managing co-constraints based upon several hundred type codes  Would really like to somehow get auto-magic schema validation of these real message requirements  We want to standardize on the resulting data stream when it comes to extensions  Need a way to prevent the use of features we don’t want to support.

ACORD’s Experiences with W3C Schemas SLIDE 8 10/18/02 Where we need help (cont)  Reuse of other schemas  Good intentions, but impossible to do unless designed at the same time  Design principals and modeling techniques  Based upon different datatypes – with/without id attributes  I want to share part C of an outside schema, outside schema has a definition for Party and it is used in C, I also have a Party definition and I need to substitute it in part C to make it useful  No easy way to take a part of the other schema unless it is in a subset file  All I want is codelist A  All I want is the Party definition  Need to promote a standard way to define codelists and encourage standards producers to publish them in XML based upon that standard. See previous bullet.  Want extensions to be identified against the extender, not the originator  Propose a new attribute "hideBase" to manage “namespace pollution”

ACORD’s Experiences with W3C Schemas SLIDE 9 10/18/02 Why ask why?  Why do xml special attributes require definition in schema, but not DTD?  xml:space requires and include file, but xmlns is automagically there!  How will the xml:id attribute be implemented?  Why is a simpleType not always simple?  Why does adding an attribute make a simpleType become complex with a simple content?