Presentation on theme: "Ümit Yalçınalp David Burdett Gunther Stuhec NetWeaver Platform EcoSystem Group, SAP Labs XML Schema User Experience Report."— Presentation transcript:
Ümit Yalçınalp David Burdett Gunther Stuhec NetWeaver Platform EcoSystem Group, SAP Labs XML Schema User Experience Report
SAP AG 2005,XML Schema user experiences, Ümit Yalçinalp/ 2 XML Schema and SAP SAP provides Business Applications and Business Applications Platform The backbone of SAP‘s Enterprise Services Architecture: XML and Web Services Our usage of XML Schema is multidimensional Data definitions for applications Integration using Web Services Multi-language platform Our experience can be summarized with respect to Usability Implementation Language Bindings
SAP AG 2005,XML Schema user experiences, Ümit Yalçinalp/ 3 Usability Development of Business Vocabularities is a Key Focus Need guidelines and rules for building data definitions Reduction of variability and complexity is necessary Design decisions/approaches can not be arbitrary for authoring Must be toolable, extensible within our platform Predefined Vocabularies are building blocks for applications UN/CEFACT Core Component specification Adopted by all major vertical industries standards groups Basis for SAP Business Applications Has defined naming convention and feature subset = Profile of XML Schema Profile examples: Limits use of extension or restriction No substitution group, redefine, xs:any Three important aspects Business documents extensible in dimensions to handle domain specific needs: industry, business process, product, etc. Limits unbound occurances of choice, sequence Includes guidelines for handling business document versioning !
SAP AG 2005,XML Schema user experiences, Ümit Yalçinalp/ 4 Usability (cont) Versioning is a major problem we encounter everywhere: Namespaces Application Specific extensions, attributes in schemas or components Please Nail down Semantics of Versioning first: Major versions = constitute significant and/or non-backwards compatible changes Minor versions = used for compatible changes within a major version, monotonic This Problem must be solved ASAP Otherwise, versions of components and vocabularies will NOT be integrate able in the very near future
SAP AG 2005,XML Schema user experiences, Ümit Yalçinalp/ 5 Implementation and Usability Comments on Some Schema Features: Redefine (IU, HTI) Substitution Groups (IU, HTI) Block/Blockdefault (IU) Occurance (Choice/Sequence) (HTI) NOTATION (IU) Key/Field/XPath/Selector (high overhead for runtime validation ) HTI=hard to implement, IU=infrequently used
SAP AG 2005,XML Schema user experiences, Ümit Yalçinalp/ 6 Language Bindings SAP has two language stacks: ABAP and Java Two aspects of binding are considered: XML2Language Language2XML Round tripping, serialization/deserialization is not uniform In our own platform, a profile (based on Core Components) is adopted for developing building applications WS Proxies still need to deal with XML Schema in its entirety!
SAP AG 2005,XML Schema user experiences, Ümit Yalçinalp/ 7 Conclusion/Recommendations Two Recommendations: Formalize profiles of XML Profiles are inevitable and useful For language bindings For vocabularies For specific user communities Should include: Formal method of defining a profile Identifying that a profile has been used in a Schema Instance Benefit Enables tools to be developed that are optimized to the use of that schema profile Enables development of optimized XML schema processors for some applications Versioning must be Addressed!