310 likes | 424 Views
XML at Work. John Arnett, MSc Standards Modeller Information and Statistics Division NHSScotland Tel: 0131 551 8073 (x2073) mailto:John.Arnett@isd.csa.scot.nhs.uk http://isdscotland.org/xml. Contents. XML Usage Enabling Technologies XML Applications XML Messaging and Web Services
E N D
XML at Work John Arnett, MSc Standards Modeller Information and Statistics Division NHSScotland Tel: 0131 551 8073 (x2073) mailto:John.Arnett@isd.csa.scot.nhs.uk http://isdscotland.org/xml
Contents • XML Usage • Enabling Technologies • XML Applications • XML Messaging and Web Services • XML in Presentation • XML in Application Logic • XML Data Storage and Content Management
XML Usage • Human readable • Structured and searchable • Separates data from presentation • Self-describing • Extensible – any number of tags allowed • Meta-markup language • Key features
XML Usage • Open standard, promoted by many vendor-neutral organisations, incl. • W3C • OASIS (Organization for Structured Information Standards) • HL7 (Health Level 7) • OMG (Object Management Group) • UK Government
XML Usage • Widely supported by software vendors and open source groups, incl.
Enabling Technologies • Language for locating parts of a document • Provides a syntax for navigating XML document trees • Designed for use by XSLT and XPointer • XPath (XML Path Language)
Simple (unidirectional) links doc1 doc2 • Extended (multidirectional) links doc1 doc2 doc3 Enabling Technologies • XLink (XML Linking Language) • Language for linking resources
Enabling Technologies • Language for referencing specific points in a document • Uses XPath • May be used with XLink to reference specific points in linked documents • XPointer (XML Pointer Language)
Application Logic Presentation Messaging & Web Services Application Logic Presentation Presentation Messaging Presentation Application Logic XML Applications Data Storage & Content Management
XML Messaging • Ideal for data interchange • Text based • Open • Self describing • Extensible • Exchanged between applications on the same network or over the Internet/Extranet • XML Messages
XML Messaging • Health Care • Health Level 7, v3 • Government • UK GovTalkTM schemas • B2B transactions • ebXML • Financial Services reporting • XBRL • XML Business Vocabularies, e.g.
Web Services • Allow systems to communicate over the internet using XML messages • Used for • remote lookups and service calls • enterprise application integration • electronic B2B exchange • Set of emerging standards, incl. SOAP, WSDL and UDDI
Web Services • Lightweight, XML–based protocol for exchanging information over the internet • Language, platform and transport independent • v1.2 W3C Recommendation • SOAP (“Simple Object Access Protocol”)
Web Services • XML-based language for describing services available on the internet • WSDL (Web Services Definition Language)
Web Services • Information Services • business details (white pages) • business categories (yellow pages) • available services (green pages) • Operations • service registration • finding and using services • UDDI (Universal Description, Discovery and Integration) directory services
XML for Presentation • Developed by WC3 as XML-based successor to HTML • Written using well-formed XML • Backwards compatible • Current version (1.1) designed to be extended using modules • XHTML (Extensible HTML)
XML for Presentation • Enables XML to be presented in other XML or non-XML formats – esp. as HTML • v1.0 W3C Recommendation • Can be used to create dynamic web-forms, e.g. WSDL to HTML • XSL (Extensible Stylesheet Language)
XML for Presentation • WML (Wireless Markup Language) for mobile devices • SVG (Scaleable Vector Graphics) • Scientific vocabularies • CML (Chemical Markup Language) • MathML (Mathematical Markup Language) • Other XML presentation technologies
XML in Application Logic • DOM (Document Object Model) • API for in-memory document manipulation using a node-based tree structure
XML in Application Logic • SAX (Simple API for XML) • Alternative, event-driven API, used for parsing large documents
XML Data Storage • Web and file servers • XML enabled databases • Native XML repositories/databases • Document storage solutions incl.
XML Data Storage • Enables SQL-like querying of XML documents using XPath • W3C Working draft • XQuery
XML & Content Management • W3C recommendation for describing information contained in web resources • i.e. anything that can be addressed with a URL • Dublin Core is an RDF vocabulary for describing web pages • RDF (Resource Description Framework)
XML & Content Management • Used to automatically send (or push) web content to subscribers • e.g. subscibers can obtain regular news updates from a news website • RSS (Rich Site Summary) is a smilar application developed by Netscape • Microsoft CDF (Channel Definition Format)
XML & Content Management • Framework for indexing data and document resources using URI’s • Consist of: • topics • associations • occurences • XML Topic Maps (XTM) 1.0 Specification – ISO Standard 13250 • Topic Maps
CDF CML SVG SOAP XSL & XSLT CSS DOM XPOINTER & XLINK XQUERY PICS P3P WSDL WML ebXML XML Core RDF XML XML Schema (XSDL) The XML Standards Family XHTML HTML SGML Adapted from http://www.idealliance.org/XMLRoadmap/WEB/xmlstdill.htm
In Summary… • Open standard, widely supported by many organisations • Applications include • Messaging and web services • Presentation and application logic • Data storage and content management
Find Out More • World Wide Web Consortium • www.w3.org
Messaging and Web Sevices • W3C Web Services Activity • www.w3.org/2002/ws/ • Web Services Interoperability • www.ws-i.org • XMethods • www.xmethods.org/ • Enterprise Integration Patterns • www.enterpriseintegrationpatterns.com
XML Vocabularies • Scottish Health and Community Care XML Steering Group • www.isdscotland.org/xml • GovTalk Schemas and Standards • www.govtalk.gov.uk/schemasstandards/schemasstandards.asp • Health Level 7 • www.hl7.org
XHTML and XSL • W3C HyperText Markup Language (HTML) Home Page • www.w3.org/MarkUp/ • The Extensible Stylesheet Language Family (XSL) • www.w3.org/Style/XSL/