600 likes | 621 Views
Explore the history and significance of XML, the eXtensible Markup Language. Learn about its origins, benefits compared to HTML, and its role in information convergence in the digital era.
E N D
XML in eBusiness Spring 2005 Dave Hollander Chief Technology Officer Contivo, Inc
Questions: Origins • Why is XML such an important development? • What are the benefits of XML compared to HTML? • What was the most challenging thing during implementing XML? • What was the creative process in envisioning XML from SGML? What was the spark/moment of clarity that started the process rolling? • What was the goal behind creating XML?
Information Age – or is it? • Guttenberg • Industrial Age • The Web • InfoGlut • Information • It is 3º outside. • Knowledge = info + action • It is 3º out, put on a coat. • Wisdom = knowledge + context • Why bother, I am just jumping in the hot tub!
Large Database Publishing (Full-Text) XML Data-setSize Word Processing Transactional Small Un-Structured Structured The Promise of XML XML is the standard platform for information convergence • XML Enables Information Reuse • Global interchange • Machine processing • New uses for documents • Values of XML • Feature/Complexity balance • Enables semantic processing • User defined semantics Interchangeable Parts drove the Industrial AgeReusable Information drives the Information Age
Origins of XML • 1988 ISO 8879 SGML • 1996 April (WWW2) • XML vision written in a taxiby Jon Bosak and Dave Hollander • 1996 November - introduced to SGML Community • 1997 March - First press articles • 1997 April (WWW6) - introduced to Web Community • 1998 February - XML 1.0 • 1999 January - XML Namespaces • 2001 May - XML Schema • 2001 October - XSL Recommendation • 2002 February - XML Digital Signatures “I didn’t actually build it, but it was based on my idea.”
Why XML? • XML was designed to manage documents on the web • Team included architects of HP.COM and DOCS.SUN.COM • Reuse content made for print in multiple web pages: • data sheets, white papers etc. • Present a more organized view of information • We faced significant differences in how our organizations structured information • So, the answer was to create XML to • Interchange document information between groups • Make it easy to publish content standards • Separate content from presentation • which makes it easy to build tools that reuse information
The design goals for XML • XML shall be straightforwardly usable over the Internet. • XML shall support a wide variety of applications. • XML shall be compatible with SGML. • It shall be easy to write programs which process XML documents. • The number of optional features in XML is to be kept to the absolute minimum, ideally zero. • XML documents should be human-legible and reasonably clear. • The XML design should be prepared quickly. • The design of XML shall be formal and concise. • XML documents shall be easy to create. • Terseness in XML markup is of minimal importance.
XML • XML is the eXtensible Markup Language • Evolved from ISO Standard SGML • Designed to • Add structure to Web documents • Be simple (25 pages) • XML has expanded well beyond its original goals XML is a TGE (TLA Generation Engine)
But what is it? • XML is a meta-language for creating markup languages • Markup – information that computers use • XML makes it easy and reliable for computers (and humans) to identify markup in documents. • Meta-language – a language to create languages XML allows you to design a markup language that describes what is important to you.
Content Closing Tag Opening Tag <tag> Content </tag> Element Markup • Simple Syntax that make it easy to separate “data” from “meta-data” • Markup includes • Elements • Attributes • Comments • Entity references • Processing instructions • CDATA sections • Document type declarations
Meta-Language • Meta-language • A language to create languages • User defined semantics (meaning) • HTML has fixed semantics • Each meta-language • Defined by a schema • May be implicitly defined • Referred to as a dialect <?xml version="1.0"?> <ShoppingCart> <ProductList> Dave’s Order</ProductList> <Part> 00000-99999</Part> </ShoppingCart> XML is a meta-language for creating markup languages
<html> <H1>Dave’s Order</H1> <P><font size=“6”> 00000-99999</font> ….. </html> <?xml version="1.0"?> <ShoppingCart> <List>Dave’s Order</List> <Part> 00000-99999</Part> ….. </ShoppingCart> XML is Descriptive Markup • XML is Descriptive; HTML is procedural • Describe and assign a name to a class of data • Multiple behaviors can be assigned to each class • Examples: layout, search, database, eCommerce • “find the part numbers in all shopping carts” • Markup is only valuable if you know what it means!
Questions: Origins • What was the creative process in envisioning XML from SGML? What was the spark/moment of clarity that started the process rolling? • Laziness • Community of practice w/ 100+ years of experience • Walk through, feature by feature asking“is this necessary for success” • What was the goal behind creating XML? • My favorite: information reuse
Questions: Origins • Why is XML such an important development? • XML is foundation of information interchange • What are the benefits of XML compared to HTML? • User defined markup • More extensive application space • What was the most challenging thing during implementing XML? • Agreeing on “is it necessary”
XML ApplicationsXML SpecificationsXML ProcessorsApplications
Questions: Applications • I know XML is very compatible to many of modern languages, is it compatible to old languages like COBOL • Compare XML to EDI and explain the different industry-specific dialects or standards that exist today. • What are the recent trends and forecasts for corporate use of XML in integrating the enterprise both internally and externally?
XML Specifications • XML Instance Document = the Data • Schemas = the contract • Style-sheets = user interface • XQuery = finding data • Web Services = interchange of data • Protocol • n 1: (computer science) rules determining the format and transmission of data
XML Coordination Group XML Core errata, X-Include, Information Set XML Schema Parts 0, 1, 2, 3 XML Linking WG XML Base, Xpath, Xlink, Xpointer XML Query WG Data Model, Algebra, Language XML Namespaces XML Protocols WG XSL WG XSL, XSLT XML DSIG XML Signature, Canonical XML DOM ( Levels 1, 2, 3 ) Others XML-Encryption VoiceXML XForms WG SMIL, SVG XHTML RDF … The W3C XML Family • More than 20 horizontal XML specifications!
XQuery • XQuery 1.0: An XML Query Language • W3C Working Draft 04 April 2005 • Still at least 3 months from Recommendation • Covers • XPATH: addressing single elements in an XML document • Query: like SQL • Limitations • No semantics • No mechanism to normalize multiple data resource results
W3C XML Schemas • Schema defined in a .xsd file (usually) • Schemas • Defines Classes of documents • Defines structure, constraints and datatypes • Validation • Schemas can only express part of the semantics. • Relax NG is schema specification similar to W3C • Schemas are a contract to interchange information.
XML Schemas • Many Different ways to markup data 1) <BUYER_NAME> JOHN SMITH </BUYER_NAME> 2) <BUYER_NAME> <LAST> SMITH </LAST> <FIRST> JOHN </FIRST> </BUYER_NAME> 3) <NAME role=”BUYER"> <SURNAME BSR_CODE=”NAM-01"> SMITH </SURNAME> <GIVEN BSR_CODE=”NAM-02"> JOHN </GIVEN> </NAME> • Which is right?
Schemas Reflect Business Models • Prescriptive vs. permissive • who pays to make the data right? • Loose vs. tight • how many semantics are expressed? • easy to author vs. reuse • Interchange model • blind or pre-defined partners? • Extensibility • kept up to date vs. predictability CALS The “Waterloo” Model Authors Intent DocBook Pinnacles RosettaNet Shopping Cart Validate your data against a business model.
XML has Namespaces How is software to recognize markup it knows how to process, and avoid confusing it with markup designed for the use of some other software? [1] • Namespaces allow documents to be merged without name collisions. • Can be used to identify an authority for the element type <?xml version="1.0"?> <MyDoc xmlns=“http://mhxml.com/ns1” xmlns:hp=“http://hp.com/ns2”> <part> 00000-99999</part> <!-- from default namespace --> <hp:part> 00000-99999-hp</hp:part> <!-- from HP namespace --> </MyDoc>
ISA~00~ ~00~ ~01~0819405530010 BEG~00~DS~20-P1-749833~~000114. NTE~ORI~SHIP ASAP. Lexical <ShoppingCart> <ProductList> Dave’s Order</ProductList> <Part> 00000-99999</Part> </ShoppingCart> Syntactic <Order> <PL> Dave’s Order</PL> <Part> 00000-99999</Part> </Order> Semantic XML Tools • XML enabled reuse of core technology • Parsers • DOM, SAX, others • Processors • App servers, java, .Net • Databases • Native and Enabled • Free, or at least inexpensive: • http://www.xml.com/programming/
Relational Entity Relation Model Normalization Plan BLOBs/CLOBs Queries Grievances Signers and states Declarations Hierarchical (XML) Elements, attributes Structure Constraints XML as Data Model Now, tell me who’s proudest?
Lexical Reconciliation Legacy XML XML Flat File Lexical EDI XML Legacy • XML does not support non-XML data resources • COBOL • EDI • Others • It is possible, and often a good idea to use XML to harmonize data. Semantic Harmonization Schema Reconciliation Semantic Reconciliation Syntax Semantic XML Harmonized
Beyond XML and B2B • Volume of transactions • Security, Reliability, Predictability • Reduced Cost of Procurement EDI Technology demand for XML eCommerce Technology demand for EDI demand for technology Z XML Technology Performance Metric • Reuse, leverage and communities • Semantics • Cost of new product deployment • One-to-one business • Security, Reliability, Predictability? • Completeness? Technology Z • Interoperability • Flexibility and Agility • Number of trading partners • Global supply chains • Reduced setup and TCO • One-to-one marketing Time Ref: Innovators Dilemma; Clayton Christensen
Compare to EDI ISA~00~ ~00~ ~01~0819405530010 ~01~153734900 ~000114~0927~U~00302~000160473~0~P~|. GS~PO~COMDEX~D710-850~000114~0927~161441~X~003020. ST~850~290267. BEG~00~DS~20-P1-749833~~000114. NTE~ORI~SHIP ASAP. FOB~CC~OR. DTM~002~000114. N1~ST~LUCENT TECHNOLOGIES~92~99. N3~67 WHIPPANY RD~CAHNDANG. N4~WHIPPANY~NJ~07981. I have no idea what this might mean! • EDI error rates can approach 85%. • HTML parsing requires up to 50% of the code in your favorite browser!
EDI Values The 20-80 Rule • Build for the 20% who do 80% of the business Throughput • Primary Design Metric • Information Design Metric • Low Character Count • Move context data to TPA Interoperability • Between trading partners Semantics • Defined in Standards and TPA Throughput Interoperability Semantics
XML Values • SGML for the Web • Make it easy to interchange documents on the web • Interoperability • Primary Design Metric • Loosely coupled systems • Information Design Metrics • Self-describing messages • Ease of processing • Semantics • User defined • Machine and Human • Throughput • Not primary metric Throughput Interoperability Semantics
New Metrics? • eCommerce • Process Effectiveness • Agility: flexibility, adaptability • Strategic Business Relationships • Evolution in Marketplace Dynamics • Technology ( Hubs, I-servers, portals ) • XML • Technical Maturity • Standards ( Schemas, XSL, Query ) • Interoperability ( New TLAs ) • Products ( Contivo ) • New Axis? Throughput Interoperability Semantics It is hard for me to believe that anything will replace XML for information interoperability
Technology Z XML / Content EDI / VAN New Technology Adoption New, disruptive, technology succeeds when performance metrics change • B2B – EDI • Build for the 20% who do 80% of the business • EAI • Connectivity between high value, internal business applications • Web Services • standards describing interoperability • detailed enough to be definitive • flexible enough to describe any system • scalable to be pervasive • easy to implement Clayton Christensen; Innovator’s Dilemma
Integration and Information Silos • Business face a challenge to sustain competencies built around their systems –and– to integrate the systems to create new business solutions. • Requirements ROI and TCO Flexible – built to integrate Evolvable – support legacy and change Loosely Coupled - able to support independent development efforts
Application Application InterfaceAdapter InterfaceAdapter Messaging Messaging System Integration • Developers using middleware need three answers • How are messages moved? • Physical infrastructure selection • What messages are exchanged and in what order? • Delivery, Workflow and/or Collaboration • What do the messages mean? • Logical and Conceptual understanding
95% 5% The Fundamental Challenge Interoperability requires interfaces between applications to be standardized. (Gartner Group) Only 5% is a function of the middleware choice. The remaining 95% is a function of application semantics.
Physical multiple interconnect technologies deploy middleware Logical no messaging standards deploy “canonicals” Conceptual no centralized design model deploy semantic modeling Taming the “Integration Hairball”
Dictionary Transport Services Transform Cust Account Number Cust DUNS Number PO Number PO Issue Date Routing Instrument Ship Date Transit Direction Code Transport Terms Vocabulary Driven VocabularyEnrichment Business Process Requirements DomainModeling DomainModeling SAP RMD Oracle RMD Gap Analysis InterfaceModeling InterfaceModeling Mapping SAP Service Interface (XML Schema) Oracle Service Interface (XML Schema) Code Generation XML Wrapper XML Wrapper SAPAPI OracleAPI SAP Oracle
Questions: Applications • I know XML is very compatible to many of modern languages, is it compatible to old languages like COBOL • Not directly. • There are some tools for converting their data and some tools for programming XML w/ COBOL
Security • Security is mostly a business problem, not a technical one. • Risk, trust and security depend on human management of relationships and assessment. • Technology just adds more risk. • Are there any security challenges on XML? • Visibility
Data Interchange – the UUP example • I had a question when it comes to XML in the use of the Universal User Profile (UUP). In light of today's security and privacy concerns, do you think this concept will take off at some point? • I already trust ebay, paypal, etc with some of this info • With Passport not being used by as many people as Microsoft had hoped and no other visible vendor pushing an alternate, it's acceptance seems doubtful. • The trick will be if someone emerges with a model that adds more value than risk—to me, the consumer.
Security • How can we embed security functionality in XML environment? • Encryption is just changing the visibility. • In Schwab's case, it is mentioned that there is no security mechanism in XML or SOAP. How can we overcome this pitfall in e-business environment? • It will take additional technology and industry initiatives. • And as a follow-up question (to UPP), are there any security safeguards in place within XML or is that left solely up to those writing the applications that use XML.
“Chaord” The Emergence of the “Chaord” “Any self-organizing, adaptive, nonlinear, complex community or system, whether physical, biological or social, the behavior of which exhibits characteristics of both order and chaos. Or, more simply stated, a Chaord is any chaotically ordered complex system.” Dee Hock Founder and CEO Emeritus - VISA Oct. 22, 1994 42
Questions: XML Web Services and eComm • What is the future of XML in e-business? • Are there ways to apply XML that are not currently being done? • Do you think they will be realized? • What are the threats to XML to remain open source? • What are some upcoming developments in Web Services and XML? • How is security implemented in XML vs. Web Services? • Any risk in deployment of XML –related technologies in e-Commerce and any solutions to overcome? • What are the disadvantages and advantages of XML in e-commerce?
XML’s History • Activity does not decline, its rate of growth does. • Industry Investment in standards • Multiple phase Standards Development • Investment during standards development • Activity during lagging phase stays longer due to costs XML Breaks “The Camels Hump” Source: Dr. David Clark, head of Advanced Network Architecture research group, MIT’s Laboratory for Computer Science Activity Research Standards Billion dollar investments Time
Presentment Again, louder Reword Reduction Gesture Translate Fulfillment Guess Look Up Partial Understanding Full Understanding shared context Kann ich bitte ein Glas Wasser haben? Wuerden Sie mir bitte ein Glas Wasser reichen? Wasser bitte! WASSER!!!!!! Can I please a glass of water have?
1991: Crossing the Chasm and Virtual Corporation published 1999: e-Everything, ad nauseum 1994: The Web carries commercial messages anywhere in the world. 2001: Crossroads -- “The P.T. Barnum Era of B2B is over.” 1975: FedEx installs the first drop box 1980s custom applications early 1990s ERP systems mid 1990s fax, phone, EDI late 1990s B2C, B2B 2000s Web Services The Evolution of e-Commerce Web services promise to bring these all together and make networks of computers useful and ubiquitous • Silicon chips made computer ubiquitous • GUIs made using computers ubiquitous • The Web made accessing content ubiquitous • XML made understanding content ubiquitous
Tight coupling Resources high set up costs management attention Small numbers of partners lengthy negotiations detailed contracts extensive monitoring of performance • Loose coupling • Focus on outcomes • not on the way the job gets done • Set standards • manage interfaces between specialist’s activity • orchestrate the process Thousands of partners in a loose network Business Case Coordination costs are steep