210 likes | 380 Views
XML Standards and Tools. (Chapters 3 and 4 of XML Book). Namespaces Xlink XSL XSLT XML schema. Prevent overlap of names Links XML documents Enables flexible output format Flexible transformation of XML content Extends DTD structure and uses XML notation. Standards to extend XML.
E N D
XML Standards and Tools (Chapters 3 and 4 of XML Book)
Namespaces Xlink XSL XSLT XML schema Prevent overlap of names Links XML documents Enables flexible output format Flexible transformation of XML content Extends DTD structure and uses XML notation Standards to extend XML
Namespaces • Attempt to solve the “naming collision” problem of XML elements and attributes • “status” in two XML applications could have different meanings • Provides the ability to prefix names with an owner <acct:status>invoice</acct:status> <ful:status>shipped</ful:status> • Use reserved XML attribute “xmlns” to associate a namespace prefix with a namespace name.
XML Linking Language (Xlink) • Goal is to create a one-way link from an XML source document to a target document • Beyond simple html links because it allows the exchange of structured information • Ex. Linking an order document to a customer document • Attach “xlink” namespace to attributes of an element • Can link content from multiple xml docs into one new xml document • Ex of lawyer compiling case info into one xml doc • Ex of invoice and shipping data combined in a tracking doc
eXtensible Stylesheet Language (XSL) • Separates formatting of XML content • Can specify font, spacing, etc for elements • Can specify different page layout languages such as html, PDF, RTF, Postscript, etc. • Can suppress or enhance different content for different users • Instructions for particular elements use the “xsl” namespace • Instructions for formatting output use the “fo” namespace
XSL example <xsl:template match=“address”> <fo:block fo:font-size=“large” fo:font-weight=“bold” fo:font-family=“Ariel” fo:font-height=“2” <xsl:apply-templates/> </fo:block> </xsl:template> • Note: xsl is stated using XML syntax • Note also: “apply-templates” tells parser to apply same formatting to all children elements of “Address” element
XSL Transformation (XSLT) • A subset of XSL used to transform one XML document into another XML document with a different format • Allows transformation of internal xml document into competing format of another company’s xml document • Ex of PO • Uses xsl namespace • Selects changed elements and order in new document
XML Schema • Current DTDs require separate parsing since they are not expressed with XML syntax • DTD’s also lack the ability to express the “data type” of elements and attributes • Very early in development of XML schemas
XML Schema example <dataType name=“USAState”> <basetype=“string”/> <lexicalRepresentation> <lexical>AA</lexical> </lexicalRepresentation> </dataType> <elementType name=“State”> <datatypeRef name=“USAState”> </elementType>
Writing XML • Manually (“by hand”) • Text editor, such as “Notepad” • MS freeware “XML Notepad” • Guided by validating editor • XML Authority • XMetaL • XML Spy • Perhaps Office XP • Automated • Many ERP systems supporting XML • Databases can generate XML output • Custom applications can be coded
Well-formedness vs. Validity • Well-formedness relates to syntax • Can it be parsed at all? • Validity relates to vocabulary • Does the well-formed XML document follow the DTD? • XML documents do not have to follow a vocabulary
Sample Vocabularies(Markup Languages) • Mathematical Markup Language (MathML) • Chemical Markup Language (CML) • Wireless Markup Language (WML) • Synchronized Multimedia Markup Language (SMIL) • Scalable Vector Graphics Markup Language (SVG) • VoiceXML
Sample Vocabularies(Markup Languages) 2 • Bean Markup Language (BML) • Extensible 3D (X3D) • Bank Internet Payment System (BIPS) • Electronic Business XML (ebXML) • Visa XML Invoice Specification • Commerce XML (cXML) • LegalXML
Sample Vocabularies(Markup Languages) 3 • Product Data Markup Language (PDML) • Financial Products Markup Language (FpML) • XML Metadata Interchange (XMI) • Trading Partner Agreement Markup Language (tpaML) • Small to Medium Business XML (SMBXML) • Financial Information Exchange Markup Language (FixML)
XBRL • Extensible Business Reporting Language • Custom markup language based upon XML • XML for GAAP • Being added to accounting and financial reporting software • XBRL-compliant software automatically and transparently translates numbers and words for viewing of segments in Web browsers, spreadsheets, and in other application software
XBRL 2 • Faster distribution of financial information • Eliminate rewrites of financial reports • Faster and better Internet searches • Find desired XBRL-tagged data, not thousands of useless “hits” • Drill down • Minimize reentering data
Extensible Electronic Data Interchange (XEDI) • EDI has been around for more than 20 years • Obstacles of EDI • requires investment in proprietary software and hardware • encodes documents that is only machine readable • XEDI is to enable XML as an alternate syntax to bring e-commerce to small and mid-sized companies
XML Repositories and Frameworks • Commerce One XML Framework • Microsoft’s Biz Talk Framework • RosettaNet
Simple Object Access Protocol(SOAP) • XML (text) based RPC calls • The solutions for sharing computer programs in the past - COM, DCOM and CORBA • SOAP is designed to be less complex to learn and deploy on Internet infrastructures • SOAP is independent of object model, operating systems or programming languages
Religious Wars • Need awareness that many camps have been staked out in XML turf • Typically fall into two groups • Microsoft • XML dialed into operating system and most application products • Windows is the XML application platform • XML readily accessible through Visual Basic • Not Microsoft • Many platforms have XML parsing capabilities • Various XML application frameworks can be procured • Most support Java
Enough Already! </zork>!!! <zork>