310 likes | 449 Vues
This presentation, given by Frank Olken from Lawrence Berkeley National Laboratory to the ATLAS Collaboration on May 8, 2000, discusses key XML standards and tools pivotal for documentation and data exchange in physics research. It covers XML elements such as XML Schema, XSLT, and XML Namespaces, explaining their significance and application in structuring data models for detectors. The talk emphasizes standards like STEP to XML mappings, highlighting the advantages and challenges of XML adoption in the scientific community, with particular focus on document structuring and interoperability.
E N D
XML Standards & Toolsfor Detector Description Frank Olken Lawrence Berkeley National Laboratory presented to ATLAS Collaboration May 8, 2000 ATLAS Collaboration
Outline to Talk • XML Standards Family • XML, XML Namespaces, XML Schema, XSLT, SVG, … • Express to XML mappings • (ISO TC 184 STEP) • XML Tools • Parsers, editors, DB load/unload, … ATLAS Collaboration
Purposes of XML • Intended for document structure mark up • Intended for data exchange • Mediocre data modeling facilities • Not intended for data storage representation • Portability paramount • Tends to be verbose (due to mnemonic tags) ATLAS Collaboration
Significance of XML • Modest technical improvements over prior art • Major advantage: industry consensus • IBM, Oracle, Microsoft, Sun, Informix, ... • Implication: lots of tools, portability ATLAS Collaboration
XML 1.0 • Simplified version of SGML (like HTML) • Markup metalanguage • Application specific tag sets • Uses DTDs (Document Type Defn) to specify document structure • No built-in semantics • Standard approved several years ago ATLAS Collaboration
XML Namespaces • Provides segmented address space • Avoids collisions of tag names • Full namespaces are URI references (URLs) • Abbreviated namespace references are “<abbrev:tagname>” • Hot debate of usage as values (references) • Approved as W3C recommendation (tags) • usage as data values still being debated ATLAS Collaboration
XML Schema Language • Will replace DTDs (Doc. Type Def’n.) • Uses XML syntax • hence can be created and processed with XML tools • Has basic datatypes: • integer, float, double, datetime, string, URIref • Currently in last call, candidate rec. in June ATLAS Collaboration
XML Schema Language (cont.) • Deficiencies: • Lacks collection types (set, bag, sequence) • Lacks vector, array types • Lacks complex number types • Lacks measurement units • Lacks multiple inheritance • Lacks versioning • Limited extensibility mechanisms ATLAS Collaboration
XML Schema Language (cont.) • New standards should use XML Schema instead of DTDs !!! • Advantages: • more, better tools • schema-driven validating parsers can check basic data types • new tools are emerging now, throughout summer and fall ATLAS Collaboration
XSLT • Extensible Style Language (Translation) • Language to describe XML to XML mappings (or to HTML, or to text) • Uses XML syntax • Useful for styling XML (e.g., to HTML) • Useful for message format translation, etc. • Standard is in last call. ATLAS Collaboration
DSSSL: Document Style Semantics and Specification Language • Developed for formatting SGML • Can be used with XML • Based on Scheme (a LISP dialect) • See Jade (James Clark’s DSSSL Engine) • See Open Jade project ATLAS Collaboration
Scalable Vector Graphics • Standard for encoding 2D vector graphics • Browser plug-ins available now to render • e.g., Adobe, ... • Allows browser to pan/zoom • Standard is in last call • Ugly syntax ATLAS Collaboration
XMI = XML Metadata Interchange Format • Originally, encoding of UML models in XML • For exchange of UML models and data stored in UML specified • Developed by Object Management Group • Now in version 1.1 (uses namespaces) • V 1.2 (XML Schema based) in development ATLAS Collaboration
STEP to XML Mappings • Standard for the Exchange of Product Data • Includes several geometry representations • EXPRESS = modeling language • (extended entity relationship model) • STEP Part 28 • maps STEP datasets/schemas into XML • Currently being drafted by ISO TC 184 ATLAS Collaboration
STEP to XML Mappings (cont.) • XML encoding of EXPRESS schemas • Multiple encodings of STEP data to XML • Late binding STEP data to XML • generic XML DTD, not schema specific • limited utility • Early Binding STEP to XML • attribute-based encoding (poor) • element-based encoding (preferred) ATLAS Collaboration
STEP to XML Mappings (cont.) • EXPRESS to UML mapping • UML = Unified Modeling Language • UML popular modeling methdology • UML to XML mapping • Called XMI by Object Mgt. Group • Hence: EXPRESS -> UML -> XMI • Advantage: exploits UML to XMI tools • Disadvantage: complex, verbose XML ATLAS Collaboration
XML Tools • XML Schema editors • Structured XML document editors • XSLT Stylesheet editors/debuggers • XML Parsers • XSLT engines • Storage/query engines ATLAS Collaboration
XML DTD / Schema Editors • Structured editors for XML DTDs, Schemas • Used to create document structure specs • XML Authority schema editor • from Extensibility • handles multiple DTD/schema languages • IBM’s alphaWorks Schema Editor • XML Spy, et al. … ATLAS Collaboration
XML Structured Document Editors • DTD / schema based editors • Used for word processing, data entry, ... • Context constrained tag generation • Automatic generation of closing tags • Immediate datatype checking (if schemas) • Xmetal, Adept, XML Pro, … ATLAS Collaboration
XML Stylesheet Editors • Structure-based editor for XSLT stylesheets • Multi-window user interface • (XML source, XSLT stylesheet, output) • XSLT Debugging tools • single step execution • identification of which rule fired ATLAS Collaboration
XML Parsers • Parsers process XML input files for applications programs • Non-validating parsers only check for well formedness • (matching opening and closing tags) • Validating parsers check syntax • (conformance to DTD/schema) • Use validating parsers - catch errors early ATLAS Collaboration
XML Parser API’s • SAX 1.0 and 2.0 • event-based, • suitable for stream processing - e.g. querying • DOM API • based on Document Object Model (parse tree) • requires entire DOM in memory • suitable for sorting portions of document, restructuring documents, etc. ATLAS Collaboration
XML Parsers (cont.) • Many good free parsers available • Available in C, C++, Java, Python, Perl • XP (J. Clark), RXP (R. Tobin), ... • IBM, Sun, Microsoft, Oracle, ... • IBM + Sun donated to Apache • Schema support this spring or summer ATLAS Collaboration
XSLT Processors • XSLT = XSL Transformation Language • XML to XML or HTML (or text) • Suitable for most message reformatting • Also for XML to XSL formatting objects • XT (James Clark) • Saxon (Windows xx only) • Lotus XSL (Java Bean from IBM ) ATLAS Collaboration
Browser support of XML • IE 5.0 (now) has (nonstd.) XML support • directly renders XML • Netscape 6.0 (April) may render XML(?) • Opera 4.0 (alpha now) supports XML • Alternatives: • server side translation to HTML • plug-ins (e.g. transcode to HTML) ATLAS Collaboration
XML Storage • Alternative approaches: • relational DBMS • hybrid object/relational DBMS • object oriented DBMS • How finely to decompose document? • Vendors: • Excelon, IBM, Oracle, Software AG, Informix, Infoshark ATLAS Collaboration
XML Query Engines • W3C XML Query Language WG at work • XML QL will permit direct query of XML • synthesis of XML encoded query results • Proposals: • IBM, Microsoft, ATT, Software AG, … • Products: • Nimble.com ATLAS Collaboration
Conclusions • XML Schema Lang. v.1.0 is nearly done • Use XML Schema Language not DTDs • Use schema-driven validating parsers • Use SVG for 2D Vector Graphics • Many schema driven document editors available shortly (XML Spy, Xmetal, …) ATLAS Collaboration
Acknowledgements • This work has been supported entirely by the U.S. Environmental Protection Agency. • Program managers: Bruce Bargmeyer and Mike Cullen. ATLAS Collaboration
XML Information Sources • w3c.org (World Wide Consortium - XML stds) • xml.com (O’Reilly web site) • Robin Cover’s XML Web Page at OASIS • oasis-open.org (XML DTD/Schema Registry) • ebxml.org (e-commerce architecture) • biztalk.org (Microsoft) • xml.apache.org (XML in Apache webserver) ATLAS Collaboration
XML Information Sources • wfmc.org (Workflow Mgt. Coalition - now AIIM) • XML Journal, XML Magazine, ... • gca.org • XTECH Conference (February in San Jose) • XML Europe Conference (June in Paris) • Extreme Markup Conference (August in Montreal) • XML 2000 (Washington, DC in December) • Inside DTDs (book on scientific MLs) ATLAS Collaboration