1 / 20

Application XML Enabling A Holistic Approach

SYSTEK. Information Technology. Application XML Enabling A Holistic Approach. London. Australia. Sun Solaris. IBM S/390. Japan. Hong Kong. HP HP-UX. Microsoft NT. Era of Integration. So Many Systems, So Many Platforms!. Sun SPARC. Sun SPARC. London. IBM S/390. Japan. Hong Kong.

vmurray
Download Presentation

Application XML Enabling A Holistic Approach

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. SYSTEK Information Technology Application XML Enabling A Holistic Approach

  2. London Australia Sun Solaris IBM S/390 Japan Hong Kong HP HP-UX Microsoft NT Era of Integration So Many Systems, So Many Platforms!

  3. Sun SPARC Sun SPARC London IBM S/390 Japan Hong Kong IBM AS/400 IBM RS6000 Reign of the Internet Singapore Hong Kong Legacy applications lack access to the Internet!

  4. Sun SPARC Sun SPARC London IBM S/390 Japan Hong Kong IBM AS/400 IBM RS6000 Towards a Unified Data Exchange Solution Singapore Hong Kong Many Systems, Many Platforms but One Internet Enabled Interface

  5. History XML (Extensible MarkupLanguage) A tag-based textual formatting language • document mark-up or data structuring Based on SGML (Standard Generalised Markup Language) • became international standard ISO 8879 in 1986 Standard from W3C (World Wide Web Consortium) • recommendation XML version 1.0 (February 1998) Example • <Person> • <Name>Daniel Chan</Name> • <Title>Chief Technology Officer</Title> • <Company>Systek I.T. Ltd.</Company> • </Person>

  6. HTML, XML, and SGML are one big family! Meta Language simplifies SGML XML defines XML Document / Message Definitions Meta Data Language HTML XHTML Use of the Language XML Documents / Messages Data Web Pages Comparison of SGML and XML www.w3.org/TR/NOTE-sgml-xml-971215

  7. ezXML Approach for the Whole Development Cycle Design Management Implementation Integration

  8. ezXML Approach to Application XML Enabling

  9. Generating DTD using ezXML Designer

  10. ezXML Approach to Application XML Enabling

  11. DTD Management using ezXML DTD Editor

  12. ezXML Approach to Application XML Enabling

  13. Convenience from using ezXML Java API Generator • // Get member element Payment of element Order • ElementClass_Payment payment = order.get_Payment(); • // Get member element CreditCard of element Payment • ElementClass_CreditCard creditCard = payment.get_CreditCard(); • // Get element attribute CardType of element CreditCard and display its value • System.out.println("Card Type: " + creditCard.getAttr_CardType()); Attribute Value A String of “Visa”, “Master”, or “AmericanExpress”

  14. ezXML Approach to Application XML Enabling

  15. Extracting Data from Files using ezXML Text Gateway A rule named GOODS_INFO MAKE %GOODS_INFO { GOODS_INFO [ NAME [$name], QUANTITY [$quantity] ] } MATCH { #ROW(+1) #COL(0) ~‘Product Name:’ (100b)? #EVAL($name, 50x) #ROW(+1) #COL(0) ~‘Quantity:’ (100b)? #EVAL($quantity, 20n) } IGNORE %BETWEEN_RECORD MATCH { #REJECT(~‘Customer ID’) #ROW(+1) #COL(0) } XML message construction Pattern in the text file to be matched A sub-pattern to be matched Data to be extracted from a matched pattern A rule with no output Efficient skipping driven by matched pattern

  16. ezXML Approach to Application XML Enabling

  17. Translating XML Data using ezXML Translation Engine <ezXML_RULE name="test9_program"> <MATCH_TEMPLATE mapping-name='HOUSE_TABLE' name='HouseTable' type='DUMMY'> <MATCH_TEMPLATE name='HouseRecord' type='DUMMY‘> <MATCH_TEMPLATE name='HouseID' type='DUMMY'> <MATCH_TEMPLATE name='houseID1' from='#PCDATA' type='VARIABLE'/> </MATCH_TEMPLATE> <MATCH_TEMPLATE name='HouseName' type='DUMMY'> <MATCH_TEMPLATE name='houseName' from='#PCDATA' type='VARIABLE'/> </MATCH_TEMPLATE> </MATCH_TEMPLATE> </MATCH_TEMPLATE> <MAKE_TEMPLATE mapping-name='RESULT' name='Group' type='DUMMY' multiple='TRUE'> <MAKE_TEMPLATE name='GroupName' type='DUMMY' multiple='FALSE'> <MAKE_TEMPLATE name='groupName' type='VARIABLE' multiple='FALSE'/> </MAKE_TEMPLATE> <MAKE_TEMPLATE name='Staff' type='DUMMY' multiple='TRUE'> <MAKE_TEMPLATE name='StaffName' type='DUMMY' multiple='FALSE'> <MAKE_TEMPLATE name='staffID2' associate='staffID1' type='VARIABLE' multiple='FALSE' hidden='FALSE'/> <MAKE_TEMPLATE name='staffName' type='VARIABLE' multiple='TRUE'/> </MAKE_TEMPLATE> <MAKE_TEMPLATE name='HouseName' type='DUMMY' multiple='TRUE'> <MAKE_TEMPLATE name='houseID2' associate='houseID1' type='VARIABLE' multiple='FALSE' hidden='FALSE'/> <MAKE_TEMPLATE name='houseName' type='VARIABLE' multiple='TRUE'/> </MAKE_TEMPLATE> </MAKE_TEMPLATE> </MAKE_TEMPLATE> </ezXML_RULE> A hierarchy of templates reflecting the structure of the input message Element to be matched Variable to hold matched data A hierarchy of templates to construct the output message

  18. Performance & Complexity • Testing Environment • Celeron 400MHz with 128MB RAM • Windows NT Workstation 4.0 (SP5) with JDK1.3.0 • JAXP 1.1 - from Sun Microsystems Inc. • XML4J 3.1.1 - from IBM Corp. • Input XML message is a SWIFT message in XML format of size 2763 bytes

  19. Conclusions A holistic approach that addresses the need of the whole development cycle XML design becomes a part of application design right at the beginning With ezXML Designer, designs can be formulated using only UML concepts Just like data, designs need to be managed With ezXML DTD Editor, designs can be changed as well as stored in and retrieved from either a file system or a database system DOM and SAX approaches to XML application development is too low level Significant productivity gain can be obtained using a higher level interface to XML With ezXML Java API Generator, high level API can be generated for use by Java applications

  20. More information … www.systekit.com/ezxml/

More Related