The XML Continuum: From Dynamic Content to Web Services T A K E I T T O T H E N T H
The XML Continuum: From Dynamic Content to Web Services
XML Content SGML 1969 HTML 1992 Mobile ML s 1997 Time XML 1997 Integration EDI 1969 EAI-B2B 1990 s ebxml, OAG, RosettaNet late 1990 s
XML 3 ( ) FpML FiXML CML OMF ( ) ebxml RosettaNet OAG SOAP XML.org (W3C) XML XSL XML Schema DTD DOM
XML
Java+XML+SQL=Real Applications 標準ベース XML XML データ ポータビリティ Java SQL 汎用データアクセス言語 Java アプリケーション ポータビリティ SQL
Oracle XML Developer s Kit: XML XML Parser XSLT Processor XML Schema Processor Web SOAP Server XSQL Servlet Publishing Engine XML Class Generator XML SQL Utility XML TransviewerBeans TransX XML Loader
Oracle XML SQL Utility XML select * from order Oracle XML SQL Utility JSP,Java,PL/SQL, Servlet & Command (SAX, DOM ) <?xml version="1.0"?> <rowset> <row num="1"> <name>mike Lehmann</name> <total_ord>24</total_ord> <avg_value>65</avg_value> <rating>3</rating> <initials>mrl</initials> </row> <rowset>
XML SQL Utility + (JSP or XSQLServlet) = XML WML Web Services Web Services SVG HTML SOAP JSP or XSQL Servlet + XSL Stylesheet> <?xml version="1.0"?> <?xml-stylesheet type="text/xsl href="emp.xsl"?> <xsql:query> select * from emp </xsql:query> Other Systems
Oracle XDK XML
XML
Oracle9i Database XML XML XML SQL SQL XML XML
Oracle9i Database XMLType CREATE TABLE STOREEORDER (ORD sys.xmltype); INSERT INTO STOREORDER values (sys.xmltype.createxml( <CustomerOrder> <Customer> <Id>205</Id> <Username>Mike Lehmann</Username> <Order><Id>101</Id> <OrderDate>13-November-2001</OrderDate> <TrackingNo>AX101</TrackingNo> <OrderTotal>54.00</OrderTotal> <Status>S</Status> </Order> </Customer> </CustomerOrder> ));
Oracle9i Database : XMLType XML XPath SELECT o.ord FROM STOREORDER O WHERE substr((o.ord.extract( '/CustomerOrder/Customer/Order/TrackingNo/text()'). getstringval()),1,5) ='AX099'; CREATE UNIQUE INDEX ISTOREORDER on STOREORDER o substr((o.ord.extract( '/CustomerOrder/Customer/Order/TrackingNo/text()'). getstringval()),1,5));
Oracle9i Database Oracle Text: XPath Collection of XML Documents Searching with XPath SELECT * FROM STOREORDER O WHERE Contains(o.ord, Lehmann INPATH (CustomerOrder/Customer/Username) ) > 0 AND CONTAINS(p.doc, 101 INPATH (CustomerOrder/Customer/Order/Id) ) > 0 AND... <CustomerOrder> <Customer> <Id>304</Id> <Username>Lehmann<Username> <Order> <Id>101</Id> <Status>OK</Status> <TrackingNo>AX101</TrackingNo> </Order></Customer> </CustomerOrder>
Oracle9i Database DBURI XML XML Xpath <? xml version= 1.0?> <DATABASE> <XML> <ORD> <ROW> <ID>101</ID> <TRACKINGNO>John</TRACKINGNO> </ROW> <!-- more rows.. --> </ORD> </XML> </DATABASE> /XML/ORD /XML/ORD/ROW[ID=101] /XML/ORD/ROW[ID=101]/TRACKINGNO
Web XML
Web Services to - WSDL UDDI SOAP
Web Services SOAP JAXM/JAX-RPC Client Application / UDDI/JAXR Web Services Directory WSDL/JSR 110 XML Binding Service Implementation Web Service J2EE, PL/SQL
SOAP XML!! SOAP XML RPC/ SOAP Envelope SOAP Header SOAP Payload Payload Document Fault <SOAP-ENV:Envelope> <SOAP-ENV:Body> <GetStatusResp> Shipped <GetStatusResp/> </SOAP-ENV:Body> </SOAP-ENV:Envelope>
XML Web Services and Java JSR 109 Web Services for J2EE XML UDDI SOAP SOAP WSDL XML XML Java JAXR JAX-RPC JAXM JSR - 110 JAXP JAXB Description Java API for XML Registries Java API for XML Remote Procedure Call Java API for XML Messaging Java API for WSDL Java API for XML Parsing Java API for XML Data Binding
J2EE/CORBA Web Services and Issue J2EE/CORBA Web Services Business Logic Java/Any Any Transport Protocol RMI/IIOP SOAP Interface Definition RMI/IDL WSDL Naming Service JNDI/CosNaming XML Namespace Registry JNDI Repos/LDAP UDDI/ebXML Agreements RMI/IDL Types ebxml CPA/CPP? Discovery JNDI Browsing Registry Search Composition YES/YES ebxml BPSS? Security JAZN/CORBASec SAML, S2ML? Transactionality JTS/OTS BTP? Messaging JMS/CORBA Msg ebxml/rosettanet?
J2EE Web Services or Stateless Java Class Web Service Client Encoder/ Decoder XML Parser SOAP A P A C H E SOAP Servlet Encoder/ Decoder XML Parser Svc Provider API Stateful Java Class Stateless Session EJB Stateful Session EJB UDDI Registry Message Driven Bean Oracle9iAS
J2EE Web Services Client Encode/Decode JAX-B B Binding A P A C H E or Servlet Entry Point Encode/Decode Servlet Entry Point Encode/Decode Servlet Entry Point Encode/Decode Servlet Entry Point Encode/Decode Servlet Entry Point Encode/Decode JAX-B B Binding JAX-B B Binding JAX-B B Binding JAX-B B Binding JAX-B B Binding Stateless Java Class Stateful Java Class Stateless Session EJB Stateful Session EJB Message Driven Bean Oracle9iAS
Web J2EE Web Services
Oracle9i JDeveloper: J2EE, UML and SCM J2EE Stateful/Stateless Session EJB BMP/CMP Entity Beans JSP, JSP Taglib Java Java XML WebDAV
Web Services Java & PL/SQL Web Services Oracle9i JDeveloper Java classes Session EJB Entity EJB PL/SQL Web Service Oracle 9iAS Apache SOAP Apache AXIS (as it evolves) Web Services SOAP WSDL SOAP
Web Service: J2EE
Oracle9iAS : WSDL Java public class TrackService // public boolean getstatus // public boolean setstatus // public boolean gethistory // private void changestatus } WSDL <?xml version = '1.0'?> <definitions...> <types>...</types> <message>... </message> <porttype> <operation name=getstatus> <input message=...> <output message=...> </operation>...
Web Servieces Wizard proxy ( ) WSDL
Jdeveloepr Web Services
Web Services to ebxml, RosettaNet
Web Services and Integration: Component Standards HTTP, FTP, SMTP, File SOAP, MIME OAG, RosettaNet, ebxml,, UBL BizTalk, cxml ebxml(bpss) WSDL, ebxml(cpp) ebxml(cpa), IBM (TPA) UDDI, ebxml(rs)
Oracle9iAS Web Services Integration Proxy Proxy Messaging Messaging Infrastructure Infrastructure JMS JMS JAX JAX-M A P A C H E Message Message Driven Bean Driven Bean B I N D I N G XML XML ebxml ebxml, RosettaNet RosettaNet Business Business Process Process Manager Manager Data, Data, Semantic Semantic Transforms Transforms JCA JCA JMS JMS Client Enterprise Enterprise Applications Applications Messaging Messaging Systems Systems Oracle9 Oracle9iAS AS
Web Services Integration / Web Services B2B A2A
Oracle9i Web Services and XML Web Service Clients Internet UDDI & JAXR Repositories Service Delivery Portal Wireless SOAP ICE Service Development (JDeveloper) Service Implement. J2EE Applications PL/SQL Oracle9iAS Service Integration Business Process Management Semantic Transform. Messaging Oracle E-Business Suite Oracle Exchange 3rd Party Applications B2B Protocols Web Services
Oracle and XML 40 XML Oracle9i Oracle9i XML Oracle9iAS XML Web Service Oracle9i Developer Suite: J2EE and Web Services
Oracle9i and Web Services Web Services Web Serivices web Services ISV Web Service
Oracle Technology Network Software downloads ( ) http:://otn.oracle.co.jp/ ( ) http://otn.oracle.com/
The XML Continuum: From Dynamic Content to Web Services T A K E I T T O T H E N T H