Real Problems Real Solutions Real XML AIIM Briefing Tom Cozzolino, Tim Vattima Answerthink

53
Real Problems Real Problems Real Solutions Real Solutions Real XML Real XML AIIM Briefing AIIM Briefing Tom Cozzolino, Tim Vattima Tom Cozzolino, Tim Vattima Answerthink Answerthink

description

Real Problems Real Solutions Real XML AIIM Briefing Tom Cozzolino, Tim Vattima Answerthink. Today’s Agenda. What is XML? What are the target areas for XML? How has XML been used in Real Solutions? What is on the horizon for XML? Wrap-Up. Today’s Agenda. What is XML? - PowerPoint PPT Presentation

Transcript of Real Problems Real Solutions Real XML AIIM Briefing Tom Cozzolino, Tim Vattima Answerthink

Page 1: Real Problems Real Solutions Real XML AIIM Briefing Tom Cozzolino, Tim Vattima Answerthink

Real ProblemsReal ProblemsReal SolutionsReal Solutions

Real XMLReal XML

AIIM BriefingAIIM BriefingTom Cozzolino, Tim VattimaTom Cozzolino, Tim Vattima

AnswerthinkAnswerthink

Page 2: Real Problems Real Solutions Real XML AIIM Briefing Tom Cozzolino, Tim Vattima Answerthink

Real XML 16.Jan.02

Today’s AgendaToday’s Agenda

What is XML?What is XML? What are the target areas for XML?What are the target areas for XML? How has XML been used in Real Solutions? How has XML been used in Real Solutions? What is on the horizon for XML?What is on the horizon for XML? Wrap-UpWrap-Up

Page 3: Real Problems Real Solutions Real XML AIIM Briefing Tom Cozzolino, Tim Vattima Answerthink

Real XML 16.Jan.02

Today’s AgendaToday’s Agenda

What is XML?What is XML? What are the target areas for XML?What are the target areas for XML? How has XML been used in Real Solutions?How has XML been used in Real Solutions? What is on the horizon for XML?What is on the horizon for XML? Wrap-UpWrap-Up

Page 4: Real Problems Real Solutions Real XML AIIM Briefing Tom Cozzolino, Tim Vattima Answerthink

Real XML 16.Jan.02

What is XML?What is XML?

Brief HistoryBrief History What it is (and what it What it is (and what it isn’tisn’t)) Key ComponentsKey Components XML and the WebXML and the Web XML and ApplicationsXML and Applications

Page 5: Real Problems Real Solutions Real XML AIIM Briefing Tom Cozzolino, Tim Vattima Answerthink

Real XML 16.Jan.02

What is XML? - Brief HistoryWhat is XML? - Brief History

Based on Standard Generalized Markup Based on Standard Generalized Markup Language (SGML), but omits obscure featuresLanguage (SGML), but omits obscure features

Developed by World Wide Web Consortium Developed by World Wide Web Consortium (W3C), originally as “Web SGML”(W3C), originally as “Web SGML”

First spec completed November ‘96First spec completed November ‘96 Created to help the extremes of HTML and Created to help the extremes of HTML and

SGMLSGML

Page 6: Real Problems Real Solutions Real XML AIIM Briefing Tom Cozzolino, Tim Vattima Answerthink

Real XML 16.Jan.02

What is XML? - (and what it What is XML? - (and what it isn’tisn’t))

XML is “an extremely simple dialect of XML is “an extremely simple dialect of SGML.. with the goal to enable generic SGML.. with the goal to enable generic SGML to be served, received, and SGML to be served, received, and processed on the Web in the way that is processed on the Web in the way that is now possible with HTML” now possible with HTML” (source: XML (source: XML specification)specification)

It is It is notnot a programming language or a a programming language or a protocol but a “structured text format” protocol but a “structured text format”

Page 7: Real Problems Real Solutions Real XML AIIM Briefing Tom Cozzolino, Tim Vattima Answerthink

Real XML 16.Jan.02

What is XML? Sample DocumentWhat is XML? Sample Document

<?xml version =“1.0”?>

<product barcode=“3456789A7”>

<manufacturer>Sony</manufacturer>

<name>DVD-5000-5</name>

<quantity>75</quantity>

<color>black</color>

<description>5-Disc DVD Changer</description>

</product>

Page 8: Real Problems Real Solutions Real XML AIIM Briefing Tom Cozzolino, Tim Vattima Answerthink

Real XML 16.Jan.02

What is XML?What is XML?

(source: xml.darmstadt.gmd.de)(source: xml.darmstadt.gmd.de)

Namespaces UNICODEDTD

SCHEMA:DTD

XML SCHEMA

QUERIES:XSLT, XPATHXML QUERY

API:DOMSAX

STANDARD XML VOCABULARIES:XHTML, cXML, ebXML, MathXML

HYPERLINKS:XLINKXPATH

METADATA:RDF, RDFSPICS, P3P

LAYOUT:XSLCSS

XML1.0

Page 9: Real Problems Real Solutions Real XML AIIM Briefing Tom Cozzolino, Tim Vattima Answerthink

Real XML 16.Jan.02

What is XML? - Components: Document Type What is XML? - Components: Document Type Descriptor (DTD)Descriptor (DTD)

A Formal statement regarding what a “valid document” A Formal statement regarding what a “valid document” may containmay contain

Lists all elements, attributes, and entities used and Lists all elements, attributes, and entities used and associated contextsassociated contexts

Documents that do not conform to the DTD are invalidDocuments that do not conform to the DTD are invalid Human ReadableHuman Readable ...

<!ELEMENT first_name (#PCDATA)><!ELEMENT last_name (#PCDATA)><!ELEMENT profession (#PCDATA)><!ELEMENT name (first_name, last_name)><!ELEMENT person (name, profession*)>...Source: O’Reilly

Page 10: Real Problems Real Solutions Real XML AIIM Briefing Tom Cozzolino, Tim Vattima Answerthink

Real XML 16.Jan.02

What is XML? - Components: ParsersWhat is XML? - Components: Parsers

Check documents for “well-formedness” Check documents for “well-formedness” (i.e., are all tags closed, etc.?)(i.e., are all tags closed, etc.?)

Checks for “validity” (i.e., does it Checks for “validity” (i.e., does it conform to the DTD?)conform to the DTD?)

Parsers exist or under development for Parsers exist or under development for most platforms (W2K, Unix, PDA, Phone)most platforms (W2K, Unix, PDA, Phone)

Page 11: Real Problems Real Solutions Real XML AIIM Briefing Tom Cozzolino, Tim Vattima Answerthink

Real XML 16.Jan.02

XML and the Web: NamespacesXML and the Web: Namespaces

A namespace “is a collection of element and A namespace “is a collection of element and attribute names identified by a URI reference” attribute names identified by a URI reference” (source: XML FAQ)(source: XML FAQ)

Namespaces are necessary to Namespaces are necessary to allow “software modules..to be able to recognize the tags and attributes which they are designed to process, even in the face of ‘collisions’ occurring when markup intended for some other software package uses the same element type or attribute name” (source: W3C.org)

Page 12: Real Problems Real Solutions Real XML AIIM Briefing Tom Cozzolino, Tim Vattima Answerthink

Real XML 16.Jan.02

XML and the Web: Namespaces (cont’d)XML and the Web: Namespaces (cont’d)

<?xml version="1.0"?><!-- both namespace prefixes are available throughout --><bk:book xmlns:bk='urn:loc.gov:books' xmlns:isbn='urn:ISBN:0-395-36341-6'><bk:title>Cheaper by the Dozen</bk:title><isbn:number>1568491379</isbn:number></bk:book>

Source: http://www.w3.org/TR/REC-xml-names/

Page 13: Real Problems Real Solutions Real XML AIIM Briefing Tom Cozzolino, Tim Vattima Answerthink

Real XML 16.Jan.02

What is XML? - Components: InternationalizationWhat is XML? - Components: Internationalization

XML Documents contain XML Documents contain UnicodeUnicode Text Text (supports about 50,000 characters)(supports about 50,000 characters)

All XML documents should have an All XML documents should have an encoding declaration:encoding declaration:<?xml Version=“1.0” encoding=“KOI8-R”?><?xml Version=“1.0” encoding=“KOI8-R”?>

xml:lang attribute can specify the xml:lang attribute can specify the language of a specific elementlanguage of a specific element

Page 14: Real Problems Real Solutions Real XML AIIM Briefing Tom Cozzolino, Tim Vattima Answerthink

Real XML 16.Jan.02

XML and the Web: OptionsXML and the Web: Options XHTML - Retrofit HTML Documents to be XHTML - Retrofit HTML Documents to be

XML-compliant (i.e., <p> with </p>, etc.)XML-compliant (i.e., <p> with </p>, etc.) XML files + Cascading Style Sheets (CSS) - XML files + Cascading Style Sheets (CSS) -

combines content (XML) with display (CSS) combines content (XML) with display (CSS) to produce HTML for browsersto produce HTML for browsers

XML files + Extensible Stylesheet XML files + Extensible Stylesheet Language (XSL) Transformation (XSLT) - Language (XSL) Transformation (XSLT) - veryvery important! important!

Page 15: Real Problems Real Solutions Real XML AIIM Briefing Tom Cozzolino, Tim Vattima Answerthink

Real XML 16.Jan.02

XML and the Web: XLINK, XPOINTERXML and the Web: XLINK, XPOINTER

XLINK: HREF on steroids: bi-directional, actionable, “arcs” XLINK: HREF on steroids: bi-directional, actionable, “arcs” are supportedare supported

<FOOTNOTE xmlns:xlink="http://www.w3.org/XML/XLink/0.9" xlink:type="simple" xlink:href="footnote7.xml">7

</FOOTNOTE>

<STORE xlink:type=“locator” xlink:href=“http://www.amazon.com/bookinfo? theisbn=0192343451” xlink:label=“buy”>Amazon</STORE>

XPOINTER: Links portions of documentsXPOINTER: Links portions of documentsxpointer(/people/person/name/first_name/text())xpointer(/people/person/name/first_name/text())

Page 16: Real Problems Real Solutions Real XML AIIM Briefing Tom Cozzolino, Tim Vattima Answerthink

Real XML 16.Jan.02

XML and Applications: SAX, DOMXML and Applications: SAX, DOM

Two Alternatives to store/parse XML Two Alternatives to store/parse XML documents in memory:documents in memory: DOM - Document Object Model - read the entire DOM - Document Object Model - read the entire

XML object into memory before operating on it XML object into memory before operating on it (better for random access)(better for random access)

SAX - Simple API for XML - process the XML SAX - Simple API for XML - process the XML object on <tag> </tag> basis object on <tag> </tag> basis (better for large documents)(better for large documents)

Page 17: Real Problems Real Solutions Real XML AIIM Briefing Tom Cozzolino, Tim Vattima Answerthink

Real XML 16.Jan.02

XML and Applications: RDFXML and Applications: RDF Resource Description Framework (RDF) consistently and Resource Description Framework (RDF) consistently and

unambiguously describes products, services, and unambiguously describes products, services, and content for non-human consumerscontent for non-human consumers

Source: http://www.ukoln.ac.uk/metadata/resources/rdf/examples/2/

Page 18: Real Problems Real Solutions Real XML AIIM Briefing Tom Cozzolino, Tim Vattima Answerthink

Real XML 16.Jan.02

XML and Applications: RDF (cont’d)XML and Applications: RDF (cont’d)<rdf:RDF xmlns:rdf="http://www.w3.org/TR/WD-rdf-syntax#" xmlns:dc="http://purl.org/dc/elements/1.0/" xmlns:dcq="http://purl.org/dc/qualifiers/1.0/"> <rdf:Description about="http://www.ariadne.ac.uk/"> <dc:Title>Ariadne - The Web Version</dc:Title> <dc:Subject> journal; magazine; elib; electronic libraries; digital

libraries; networking; Web; IT; higher education </dc:Subject> <dc:Description> A Web magazine of Internet issues for librarians and information specialists </dc:Description> ...</rdf:RDF>

Source: http://www.ukoln.ac.uk/metadata/resources/rdf/examples/2/

Page 19: Real Problems Real Solutions Real XML AIIM Briefing Tom Cozzolino, Tim Vattima Answerthink

Real XML 16.Jan.02

Today’s AgendaToday’s Agenda

What is XML?What is XML? What are the target areas for XML?What are the target areas for XML? How has XML been used in Real Solutions?How has XML been used in Real Solutions? What is on the horizon for XML?What is on the horizon for XML? Wrap-UpWrap-Up

Page 20: Real Problems Real Solutions Real XML AIIM Briefing Tom Cozzolino, Tim Vattima Answerthink

Real XML 16.Jan.02

B2B PressuresB2B Pressures

Say Goodbye to EDISay Goodbye to EDI EDI is batch - XML+B2B is near real-timeEDI is batch - XML+B2B is near real-time EDI is point-to-point - adding partners is difficult and tediousEDI is point-to-point - adding partners is difficult and tedious

Uses the inexpensive InternetUses the inexpensive Internet No costly WAN connectionsNo costly WAN connections XML-B2B uses simple protocols like HTTP(S)XML-B2B uses simple protocols like HTTP(S)

Leverage Vertical Industry StandardsLeverage Vertical Industry Standards Finance/Banking uses ebXML or SOAP to allow real-time Finance/Banking uses ebXML or SOAP to allow real-time

query/update for customers and partnersquery/update for customers and partners Information Services such as News, Weather, and Investment Information Services such as News, Weather, and Investment

services use XML and SOAP to provide open B2B services to services use XML and SOAP to provide open B2B services to customerscustomers

Page 21: Real Problems Real Solutions Real XML AIIM Briefing Tom Cozzolino, Tim Vattima Answerthink

Real XML 16.Jan.02

Leveraging Investments in Legacy SystemsLeveraging Investments in Legacy Systems

Streamlines Internal Processes by allowing Streamlines Internal Processes by allowing Modern and Legacy Systems to coexist Modern and Legacy Systems to coexist through a common interface to informationthrough a common interface to information

FlexibleFlexible XML can be easily changed to add / delete / change new XML can be easily changed to add / delete / change new

business functionsbusiness functions Combining with XSLT typically means little or no Combining with XSLT typically means little or no

reprogramming of old codereprogramming of old code

Self-Describing DataSelf-Describing Data XML contains not only the data but the metadata, so data XML contains not only the data but the metadata, so data

definitions are always up to datedefinitions are always up to date

Page 22: Real Problems Real Solutions Real XML AIIM Briefing Tom Cozzolino, Tim Vattima Answerthink

Real XML 16.Jan.02

Delivering to Multiple ChannelsDelivering to Multiple Channels

Presentation Tier can support (m)any clientsPresentation Tier can support (m)any clients Browsers - HTMLBrowsers - HTML Phones - WMLPhones - WML Voice Processing - VoiceXMLVoice Processing - VoiceXML PDA - HTMLPDA - HTML

XSLT transforms XML to appropriate client XSLT transforms XML to appropriate client response, saving considerable effort and response, saving considerable effort and maintenancemaintenance

Page 23: Real Problems Real Solutions Real XML AIIM Briefing Tom Cozzolino, Tim Vattima Answerthink

Real XML 16.Jan.02

XSLT

...<scene> <FX>General Road Building noises.</FX> <speech speaker="Prosser"> Come off it Mr Dent, you can't win you know. There's no point in lying down in the path of progress. </speech> <speech speaker="Arthur"> I've gone off the idea of progress. It's overrated </speech>...

XSLTXSLT eXtensible Stylesheet Language (XSL)eXtensible Stylesheet Language (XSL)

Language for expressing style sheetsLanguage for expressing style sheets Like CSS, XSL is a file that describes how to display an XML documentLike CSS, XSL is a file that describes how to display an XML document

XML...<xsl:template match="FX"> <fo:block font-weight="bold"> <xsl:apply-templates/> </fo:block></xsl:templates>...<xsl:template match="speech[@speaker="Arthur"]"> <fo:block background-color="blue"> <xsl:value-of select="@speaker">: <xsl:apply-templates/> </fo:block></xsl:template>...

XSL

HTML

Source: http://www.w3.org/Style/XSL/WhatIsXSL.html

Page 24: Real Problems Real Solutions Real XML AIIM Briefing Tom Cozzolino, Tim Vattima Answerthink

Real XML 16.Jan.02

Dealing with Heterogeneous EnvironmentsDealing with Heterogeneous Environments

Support for multiple operating systems and component Support for multiple operating systems and component modelsmodels Supported on Windows / UNIX / Midrange / MainframeSupported on Windows / UNIX / Midrange / Mainframe XML Messages easily passed via Message Oriented MiddlewareXML Messages easily passed via Message Oriented Middleware SOAP, ebXMLSOAP, ebXML

Windows UNIX

Midrange Mainframe

XML

.NET

JVM

JVM

JVM

Page 25: Real Problems Real Solutions Real XML AIIM Briefing Tom Cozzolino, Tim Vattima Answerthink

Real XML 16.Jan.02

Easing Application DevelopmentEasing Application Development

Time SavingsTime Savings Human-Readable tools automate Application building (ANT Build Tool)Human-Readable tools automate Application building (ANT Build Tool) XSLT can Promote Pattern-based automatic Code Generation:XSLT can Promote Pattern-based automatic Code Generation:

XSLT Code Fragment Corresponding generated code fragment

public static StringgetEnumValueAsString(int enumValue)

{ switch(enumValue)

{<xsl:for-each select=’choices/choice’>

case <xsl:value-of select=’@value’/>:

return “<xsl:value-of select=’@name’/>;

</xsl:for-each>

default:

return null; }}

public static StringgetEnumValueAsString(int enumValue)

{ switch(enumValue) {

case 1: return “start”;

case 2: return “stop”;

case 3: return “test”;

default:

return null; }}

Page 26: Real Problems Real Solutions Real XML AIIM Briefing Tom Cozzolino, Tim Vattima Answerthink

Real XML 16.Jan.02

Easing Application Development (cont’d)Easing Application Development (cont’d)

Flexible DesignFlexible Design Java API for XML Binding (JAXB) for marshalling and Java API for XML Binding (JAXB) for marshalling and

unmarshalling XML and Java objectsunmarshalling XML and Java objects

<order id=1225678> <date>12/15/2001</date> <customer id=00067></customer> <lineitems> <lineitem id=1 qty=4> <product id=145></product> </lineitem> <lineitem id=2 qty=2> <product id=201></product> </lineitem> <lineitem id=3 qty=10> <product id=357></product> </lineitem> </lineitems></order>

Order

Id:1225678date:12/15/2001custId:00067lineitems:ArrayList

DTD

JAXB

Page 27: Real Problems Real Solutions Real XML AIIM Briefing Tom Cozzolino, Tim Vattima Answerthink

Real XML 16.Jan.02

Easing Application Development (cont’d)Easing Application Development (cont’d)

Flexible DesignFlexible Design Naming and Directory Services for location-transparent design Naming and Directory Services for location-transparent design

(Universal Description, Discovery and Integration Services - UDDI)(Universal Description, Discovery and Integration Services - UDDI) Configuration Management, Application PropertiesConfiguration Management, Application Properties XML and SQL Databases:XML and SQL Databases:

<root xmlns:sql="urn:schemas-microsoft-com:xml-sql"><root xmlns:sql="urn:schemas-microsoft-com:xml-sql">

<Suffolk><Suffolk>

<sql:query>SELECT name FROM tgr361030c WHERE fips != 0 FOR XML <sql:query>SELECT name FROM tgr361030c WHERE fips != 0 FOR XML AUTOAUTO

</sql:query></Suffolk></sql:query></Suffolk>

<root><root>

Page 28: Real Problems Real Solutions Real XML AIIM Briefing Tom Cozzolino, Tim Vattima Answerthink

Real XML 16.Jan.02

Today’s AgendaToday’s Agenda

What is XML?What is XML? What are the target areas for XML?What are the target areas for XML? How has XML been used in Real Solutions?How has XML been used in Real Solutions? What is on the horizon for XML?What is on the horizon for XML? Wrap-UpWrap-Up

Page 29: Real Problems Real Solutions Real XML AIIM Briefing Tom Cozzolino, Tim Vattima Answerthink

Real XML 16.Jan.02

How has XML been used in Real Solutions?How has XML been used in Real Solutions?

Freight Company: Expanding into the Dot Com Freight Company: Expanding into the Dot Com WorldWorld

Wireless Infrastructure Provider: Supporting Wireless Infrastructure Provider: Supporting Multiple Wireless Devices with the same contentMultiple Wireless Devices with the same content

Pharmaceutical Company: Publishing Internet-Pharmaceutical Company: Publishing Internet-based subscriptions from multiple sourcesbased subscriptions from multiple sources

Telco: Increasing Operating Efficiencies by Telco: Increasing Operating Efficiencies by adding multiple sales channels and partnersadding multiple sales channels and partners

Page 30: Real Problems Real Solutions Real XML AIIM Briefing Tom Cozzolino, Tim Vattima Answerthink

Real XML 16.Jan.02

Freight Handling Company: Expanding into the Freight Handling Company: Expanding into the Dot Com WorldDot Com World

$375MM Freight Handler$375MM Freight Handler How do non-Brick-and-Mortar Companies handle How do non-Brick-and-Mortar Companies handle

timely warehousing and fulfillment?timely warehousing and fulfillment? Customers demanding a “Glass Pipeline” to track Customers demanding a “Glass Pipeline” to track

end-to-end Logisticsend-to-end Logistics Business Problem: Existing warehousing software Business Problem: Existing warehousing software

solutions cannot easily handle multiple independent solutions cannot easily handle multiple independent companies in the same warehousecompanies in the same warehouse

Page 31: Real Problems Real Solutions Real XML AIIM Briefing Tom Cozzolino, Tim Vattima Answerthink

Real XML 16.Jan.02

Freight Handling Company: Technical SolutionFreight Handling Company: Technical Solution

Use well-known Messaging infrastructure to provide Use well-known Messaging infrastructure to provide highly-available connectivity between the new Order highly-available connectivity between the new Order Management System and the Legacy Transaction Management System and the Legacy Transaction processing systemprocessing system

Define XML-based message structure as the Define XML-based message structure as the “payload” for messages between the disparate “payload” for messages between the disparate systemssystems

Tools Used: IBM MQ Series and Microsoft Message Tools Used: IBM MQ Series and Microsoft Message Queue (MSMQ)Queue (MSMQ)

Page 32: Real Problems Real Solutions Real XML AIIM Briefing Tom Cozzolino, Tim Vattima Answerthink

Real XML 16.Jan.02

Freight Handling Company: Technical SolutionFreight Handling Company: Technical Solution

Operational Applications

WebWeb Browser

HTML

Java VM

WorkflowManager

J2EE Application Server

Java

Middleware Extension

Middleware

Web PresenceServices:

Portal,Static HTML,

Webmail,Search

Web Server

Java VM

3rd party Servlets

HTML

MessageOriented

Middleware

MessagingServer

XML

JDBC

DataWhse

Middleware

OrderFullfil-ment

App 1 Middleware

Opera-tions

MessageOriented

Middleware

MessagingServer

IBM MQ SeriesMSMQ

XML

Servlet / JSP

DataWhse

Middleware

Legacy

Legacy Applications

ODBC

Portal Framework

Channels

Page 33: Real Problems Real Solutions Real XML AIIM Briefing Tom Cozzolino, Tim Vattima Answerthink

Real XML 16.Jan.02

Freight Handling Company: Freight Handling Company: Benefits of using XMLBenefits of using XML

Enabled the developers to focus on the design of Enabled the developers to focus on the design of Order Management System, not point-to-point Order Management System, not point-to-point communicationscommunications

Legacy: Led to a flexible, open architecture for Legacy: Led to a flexible, open architecture for integrating with the legacy transaction processing integrating with the legacy transaction processing system (easy to add / modify transactions)system (easy to add / modify transactions)

Heterogeneous: Common XML denominator allowed Heterogeneous: Common XML denominator allowed straightforward integration of IBM and Microsoft straightforward integration of IBM and Microsoft TechnologiesTechnologies

Page 34: Real Problems Real Solutions Real XML AIIM Briefing Tom Cozzolino, Tim Vattima Answerthink

Real XML 16.Jan.02

Wireless Infrastructure Provider: Supporting Wireless Infrastructure Provider: Supporting Multiple Wireless Devices with the same contentMultiple Wireless Devices with the same content

Startup Company funded by Major device, Telco, and Startup Company funded by Major device, Telco, and Financial Services InvestorsFinancial Services Investors

Provides Infrastructure to link Multiple channels with Provides Infrastructure to link Multiple channels with information through the use of barcodesinformation through the use of barcodes

Business Problem: Provide fast linkages between a large Business Problem: Provide fast linkages between a large array of channels and back-end services, including: array of channels and back-end services, including: Database, LDAPDatabase, LDAP MessagingMessaging Voice ProcessingVoice Processing Data Import and ExportData Import and Export

Page 35: Real Problems Real Solutions Real XML AIIM Briefing Tom Cozzolino, Tim Vattima Answerthink

Real XML 16.Jan.02

Wireless Infrastructure Provider:Wireless Infrastructure Provider:Technical SolutionTechnical Solution

AllAll responses to client are formulated as XML responses to client are formulated as XML XSLT is used to transform the XML response to XSLT is used to transform the XML response to

the appropriate content for the target clientthe appropriate content for the target client As new client-types become available, all that As new client-types become available, all that

is needed is a new XSLT template for that is needed is a new XSLT template for that client type – client type – no rewriting no rewriting of codeof code

Page 36: Real Problems Real Solutions Real XML AIIM Briefing Tom Cozzolino, Tim Vattima Answerthink

Real XML 16.Jan.02

Wireless Infrastructure Provider:Wireless Infrastructure Provider:Technical SolutionTechnical Solution

PDA WebBrowser

Operational Applications

SmartPhone

Phone.comBrowserWML

WebWeb Browser

HTML

Java VM

WorkflowManager

J2EE Application Server

Java

Middleware Extension

Middleware

Web PresenceServices:

Portal,Static HTML,

Webmail,Search

Web Server

Java VM

3rd party Servlets

ML (XML + XSLT)

HTML WML HTML

Phone

MessageOrientedMiddleware

MessagingServer

TIBCO

VoiceXML

WebPresenceServices:

Web Server

XMLHTTP

Content provider

?? Backend Systems ??

InternetVoiceProcessing

Server

JDBC

HTML

Voice

VoiceXML

NativeApp

TBD

DataWhse

Middleware

CodeManager

App 1 Middleware

ClicCenter

App 2 Middleware

ContentCatalog

App 3 Middleware

Connect2

Page 37: Real Problems Real Solutions Real XML AIIM Briefing Tom Cozzolino, Tim Vattima Answerthink

Real XML 16.Jan.02

Wireless Infrastructure Provider:Wireless Infrastructure Provider:Technical Solution (cont’d)Technical Solution (cont’d)

Integration with many types of servers Integration with many types of servers Message-Oriented Middleware server queues Message-Oriented Middleware server queues

XML messages among many services providing a XML messages among many services providing a fault tolerant, guaranteed delivery mechanism for fault tolerant, guaranteed delivery mechanism for messagesmessages

Each service is attached to a particular message Each service is attached to a particular message queue to process the incoming XMLqueue to process the incoming XML

Page 38: Real Problems Real Solutions Real XML AIIM Briefing Tom Cozzolino, Tim Vattima Answerthink

Real XML 16.Jan.02

Wireless Infrastructure Provider:Wireless Infrastructure Provider:Technical Solution (cont’d) Technical Solution (cont’d)

A Custom Data Migration Service allows import A Custom Data Migration Service allows import and export of a client’s product list for and export of a client’s product list for maintenance and batch loadingmaintenance and batch loading

Due to potentially large datasets, SAX is used to Due to potentially large datasets, SAX is used to provide complete control over XML generation provide complete control over XML generation and parsingand parsing

Tools Used: Castor, SAX, XSLT, ANT, BEA Tools Used: Castor, SAX, XSLT, ANT, BEA Weblogic, TibcoWeblogic, Tibco

Page 39: Real Problems Real Solutions Real XML AIIM Briefing Tom Cozzolino, Tim Vattima Answerthink

Real XML 16.Jan.02

Wireless Infrastructure Provider: Wireless Infrastructure Provider: Benefits of using XMLBenefits of using XML

Application Development: Cost savings Application Development: Cost savings Code generationCode generation

XML templates for many similar Java Objects are run through an XSLT XML templates for many similar Java Objects are run through an XSLT transformer to produce ready-to-compile java source filestransformer to produce ready-to-compile java source files

ANT – Application Build ToolANT – Application Build Tool Castor allowed XML to be used to marshall and unmarshall to and Castor allowed XML to be used to marshall and unmarshall to and

from Java objects - no additional coding was necessary beyond the from Java objects - no additional coding was necessary beyond the objects’ DTDobjects’ DTD

> 100 hrs. of work saved> 100 hrs. of work saved

Heterogeneous: XML allows non-proprietary Heterogeneous: XML allows non-proprietary messaging across a variety of servicesmessaging across a variety of services Flexible DesignFlexible Design Pluggable architecturePluggable architecture

Page 40: Real Problems Real Solutions Real XML AIIM Briefing Tom Cozzolino, Tim Vattima Answerthink

Real XML 16.Jan.02

Pharmaceutical: Publishing Internet-based Pharmaceutical: Publishing Internet-based subscriptions from multiple sourcessubscriptions from multiple sources

$14BN+ Annual Revenue$14BN+ Annual Revenue Grow top-line revenue by providing subscription-Grow top-line revenue by providing subscription-

based information to Research Communities over based information to Research Communities over the Internetthe Internet

Business Problem: Create a uniform approach to Business Problem: Create a uniform approach to handling various content styles and formats to be handling various content styles and formats to be searched and browsed using a searched and browsed using a singlesingle taxonomy taxonomy

Transform XML to HTML for presentationTransform XML to HTML for presentation Target: 90K documents loaded per monthTarget: 90K documents loaded per month

Page 41: Real Problems Real Solutions Real XML AIIM Briefing Tom Cozzolino, Tim Vattima Answerthink

Real XML 16.Jan.02

Pharmaceutical: Technical SolutionPharmaceutical: Technical Solution

Use XSLT to convert various content Use XSLT to convert various content styles to common internal XML formatstyles to common internal XML format

Use Industrial-strength RDBMS for Use Industrial-strength RDBMS for indexing and retrieval of data stored in indexing and retrieval of data stored in internal formatinternal format

Tools Used: Oracle DB and Parser, XSLT, Tools Used: Oracle DB and Parser, XSLT, BEA WebLogicBEA WebLogic

Page 42: Real Problems Real Solutions Real XML AIIM Briefing Tom Cozzolino, Tim Vattima Answerthink

Real XML 16.Jan.02

HTML

Database

Channels

WebWeb Browser

HTML

Java VM

Portal Framework

OracleJDBC

Bios

OracleJDBC

News

OracleJDBC

Citations

OracleJDBC

Postings

WorkflowManager

J2EE Application Server

Java VM

Web PresenceServices

Web Server

Java VM

3rd party Servlets

HTML

JDBC

FTPE-Mail

Proprietary

Citations

Db

News

Db

Bios

Db

Postings

Db

Business Logic

JSPs XML DTD

Internet

Pharmaceutical: ArchitecturePharmaceutical: Architecture

Page 43: Real Problems Real Solutions Real XML AIIM Briefing Tom Cozzolino, Tim Vattima Answerthink

Real XML 16.Jan.02

PharmaceuticalPharmaceutical: Benefits of using XML: Benefits of using XML

Heterogeneous: Transforming all content to a Heterogeneous: Transforming all content to a standard XML format greatly simplified the standard XML format greatly simplified the loading, indexing and presentation of data loading, indexing and presentation of data from multiple sourcesfrom multiple sources

Development: Strategy allowed developers / Development: Strategy allowed developers / architects to focus on the taxonomy browsing architects to focus on the taxonomy browsing capabilities of the applicationcapabilities of the application

Page 44: Real Problems Real Solutions Real XML AIIM Briefing Tom Cozzolino, Tim Vattima Answerthink

Real XML 16.Jan.02

Telco: Increasing Operating Efficiencies by adding Telco: Increasing Operating Efficiencies by adding multiple sales channels and partnersmultiple sales channels and partners

$5+BN Revenue, 15+MM Subscribers Worldwide$5+BN Revenue, 15+MM Subscribers Worldwide High Investment in Legacy Systems High Investment in Legacy Systems Requires seamless Integration among many Requires seamless Integration among many

services: Authorized Resellers (including services: Authorized Resellers (including LightBridge - Credit Check, Payment Plus - Deposit LightBridge - Credit Check, Payment Plus - Deposit Settlement, External Billing, others)Settlement, External Billing, others)

Business Problem: Reduce operational friction Business Problem: Reduce operational friction between external partners and Company, provide between external partners and Company, provide lower delivery time for new customer serviceslower delivery time for new customer services

Page 45: Real Problems Real Solutions Real XML AIIM Briefing Tom Cozzolino, Tim Vattima Answerthink

Real XML 16.Jan.02

Telco: Technical Solution (Authorized Resellers - 200K Telco: Technical Solution (Authorized Resellers - 200K Transactions per month)Transactions per month)

Commerce XML (cXML) DTD used to communicate to Commerce XML (cXML) DTD used to communicate to BrightPointBrightPoint

Purchase Order sent as XML with response containing Purchase Order sent as XML with response containing shipping informationshipping information

cXML allows Company to use standards-compliant fulfillment cXML allows Company to use standards-compliant fulfillment vendors with vendors with nono changes in its interfacing systems changes in its interfacing systems

Credit Check request sent to LightBridge via XMLCredit Check request sent to LightBridge via XML LightBridge processes request and sends XML response with LightBridge processes request and sends XML response with

a credit rating in real timea credit rating in real time Tools Used: Java-based XML Parsers, SOAP, iPlanet Tools Used: Java-based XML Parsers, SOAP, iPlanet

Application ServerApplication Server

Page 46: Real Problems Real Solutions Real XML AIIM Briefing Tom Cozzolino, Tim Vattima Answerthink

Real XML 16.Jan.02

Telco: Technical Solution (Authorized Resellers)Telco: Technical Solution (Authorized Resellers)

Operational Applications

Channels

WebWeb Browser

HTML

Java VM

Portal Framework

OrderEntry

MIddleware

OrderEntry Db

Web PresenceServices:

Portal,Static HTML,

Webmail,Search

Web Server

Java VM3rd partyServlets

ML (XML + XSLT)

HTML

JDBC

InternetUDDI

Registry(Future)

LIghtbridgeCredit

Validation Db

EnsembleBilling

Db

TRISBilling

Db

PaymentPlus

DespositSettlement

Db

UDDIRegistry(Future)

External Systems usetechnologies such as: MSMQ MQSI Others

BusinessLogic

J2EE Application Server

Java

Middleware Extension

Middleware

OlineAuthorization

Module

OrderValidation

Module

SOAPXMLHTTPcXML

Page 47: Real Problems Real Solutions Real XML AIIM Briefing Tom Cozzolino, Tim Vattima Answerthink

Real XML 16.Jan.02

Telco: Benefits of using XML on the projectTelco: Benefits of using XML on the project

B2B: SOAP / Web Services reduces the amount of B2B: SOAP / Web Services reduces the amount of knowledge trading partners need about each other’s knowledge trading partners need about each other’s technologiestechnologies

Development: Loosely-coupled interfaces are more Development: Loosely-coupled interfaces are more scalable and provide guaranteed delivery of scalable and provide guaranteed delivery of transactionstransactions

Development: Using SOAP over HTTP sidesteps Development: Using SOAP over HTTP sidesteps messy architectural / security constraintsmessy architectural / security constraints

Page 48: Real Problems Real Solutions Real XML AIIM Briefing Tom Cozzolino, Tim Vattima Answerthink

Real XML 16.Jan.02

Today’s AgendaToday’s Agenda

What is XML?What is XML? What are the target areas for XML?What are the target areas for XML? How has XML been used in Real Solutions?How has XML been used in Real Solutions? What is on the horizon for XML?What is on the horizon for XML? Wrap-UpWrap-Up

Page 49: Real Problems Real Solutions Real XML AIIM Briefing Tom Cozzolino, Tim Vattima Answerthink

Real XML 16.Jan.02

What is on the horizon for XML? Web ServicesWhat is on the horizon for XML? Web Services

Allows dynamic Program-to-Program “Assembly” of Allows dynamic Program-to-Program “Assembly” of ServicesServices

Leverages Public and Private Universal Description, Leverages Public and Private Universal Description, Discovery and Integration Services (UDDI)Discovery and Integration Services (UDDI)

Huge amount of Industry Emphasis (IBM, Microsoft, BEA, Huge amount of Industry Emphasis (IBM, Microsoft, BEA, Sun)Sun)

Standards Efforts (ebXML, others) coalescing around Standards Efforts (ebXML, others) coalescing around Web ServicesWeb Services

Bottom Line: 6 mos. - 18 mos.Bottom Line: 6 mos. - 18 mos.

Page 50: Real Problems Real Solutions Real XML AIIM Briefing Tom Cozzolino, Tim Vattima Answerthink

Real XML 16.Jan.02

Web Services Sample ArchitectureWeb Services Sample Architecture

Leads to Real Leads to Real

Integration..Integration..(source: webservices.org)(source: webservices.org)

A SimpleA Simple

Approach..Approach.. (source: ibm.com)(source: ibm.com)

Page 51: Real Problems Real Solutions Real XML AIIM Briefing Tom Cozzolino, Tim Vattima Answerthink

Real XML 16.Jan.02

What is on the horizon for XML? Next-Generation What is on the horizon for XML? Next-Generation Information ManagementInformation Management

Current Web is Current Web is “Unsearchable” - 2 Billion “Unsearchable” - 2 Billion pages pages cannotcannot be effectively be effectively leveraged using conventional leveraged using conventional crawler technologycrawler technology

XML, RDF, DAML, and XML, RDF, DAML, and shareable “Ontologies” will shareable “Ontologies” will bring the “Semantic Web” into bring the “Semantic Web” into beingbeing

Agents will be able to find Agents will be able to find Web content, and Web content, and UnderstandUnderstand it’s value and contextit’s value and context

Bottom Line: 1-4 yrs.Bottom Line: 1-4 yrs.

(source: w3c.org)(source: w3c.org)

Page 52: Real Problems Real Solutions Real XML AIIM Briefing Tom Cozzolino, Tim Vattima Answerthink

Real XML 16.Jan.02

ConclusionsConclusions XML is hugely applicable to a number of important XML is hugely applicable to a number of important

business and technology problems of todaybusiness and technology problems of today XML has been successfully applied to the Logistics, XML has been successfully applied to the Logistics,

Wireless, Telco, Pharmaceutical and Content Wireless, Telco, Pharmaceutical and Content Management spaces to great benefitManagement spaces to great benefit

XML-based technologies are exploding in all dimensions XML-based technologies are exploding in all dimensions of the IT spaceof the IT space

Change will be rapid, but investments in XML-based Change will be rapid, but investments in XML-based systems now will be leverageable in the futuresystems now will be leverageable in the future

Page 53: Real Problems Real Solutions Real XML AIIM Briefing Tom Cozzolino, Tim Vattima Answerthink

Real XML 16.Jan.02

Thank YouThank You

Tom CozzolinoTom Cozzolino

[email protected]@Answerthink.com

Tim VattimaTim Vattima

[email protected]@Answerthink.com

Jim HopkinsJim Hopkins

[email protected]@Answerthink.com