
XML for Java Developers G22.3033-002 Session 2 - Main Theme Markup Language Technologies (Part II) Dr. Jean-Claude Franchitti New York University Computer Science Department Courant Institute of Mathematical Sciences 1 Agenda n Summary of Previous Session n Errata: <pages> tag, XML 2.0, XML Applications !? n History and Current State of XML Standards n Advanced Applications of XML n XML’s eXtensible Style Language (XSL) n Character Encodings and Text Processing n XML and DBMSs n Course Approach ... n XML Application Development n XML References and Class Project n Readings n Assignment #1a (reminder?) 2 n Assignment #1b (1 week) Summary of Previous Session n XML Generics n Course Logistics, Structure and Objectives n History of Meta-Markup Languages n XML Applications: Markup Languages n XML Information Modeling Applications n XML-Based Architectures n XML and Java n XML Development Tools n Summary n Class Project n Readings n Assignment #1a 3 1 Old History n Formatting Markups n Rendition notations (e.g., LaTeX, TeX, RTF, MIF) n Compatible with standard text editors n Processed into presentations (printout, or electronic display) n WYSIWYG n What You See Is “ALL” You Get n Meta-Markup Language n GML (Goldfarb, Mosher, Lorie - IBM 1969) n Generalized (i.e., indep. of systems, devices, applications) n Markups (i.e., information related to struct. & content n Language (i.e., methodology with formal syntax) n Validation capabilities (1974) 4 SGML n SGML (1978 - 10/15/86) n Used by DoD for Continuous Acquisition and Lifecycle Support (CALS) n http://www.oasis-open.org/cover/general.html n SGML DTD or Schema <!DOCTYPE tutorials [ <!ELEMENT tutorials – (tutorial+)> <!ELEMENT tutorial – (title, intro, chap+)> <!ELEMENT title – O (#PCDATA)> <!ELEMENT intro – O (para+)> <!ELEMENT chap – O (title, para+)> <!ELEMENT para – O (#PCDATA)> ]> 5 SGML Markup <tutorials> <tutorial> <title>XML TUTORIAL <intro> <para>Required first paragraph of intro. <para>Optional second paragraph of intro. </intro> <chap> <title>CHAPTER 1 <para>Required first paragraph of first chapter. <chap> <title>CHAPTER 2 <para>Required first paragraph of optional 2nd chapter. </tutorial </tutorials> 6 2 W3C and HTML n Tim Berners-Lee (CERN, 1989) n W3 Hypertext System n W3 uses HTML n Founder of W3C in 1994 n HTML n Based on SGML, no DTD support) n W3C n HTML (http://www.w3.org/TR/html4) n CSS + weakly extensible HTML n XML n XHTML (http://www.w3.org/TR/xhtml1) 7 XML n DTD <!DOCTYPE TUTORIALS [ <!ELEMENT tutorials (tutorial+)> <!ELEMENT tutorial (title, intro, chap+)> <!ELEMENT title (#PCDATA)> <!ELEMENT intro (para+)> <!ELEMENT chap (title, para+)> <!ELEMENT para (#PCDATA)> ]> n XML is different from SGML n Names are case sensitive n Non empty elements must have a start and end tag n DTD or Schema not required 8 Current State of XML Standards http://www.w3.org/XML, www.w3.org/XML/Activity.html, www.w3schools.com/xml n eXtensible Markup Language (XML) 1.0 (2nd Edition) - 10/06/00) n Namespaces in XML - 01/14/99 n URIs: http://www.w3.org/Addressing/ n XML Schema Part 0: Primer - 05/02/01 n XML Schema Part 1: Structures - 05/02/01 n XML Schema Part 2: Datatypes - 05/02/01 n XML Path Language (XPath) Version 1.0 - 11/16/99 n Associating Stylesheets with XML Documents - 06/29/99 n Use “xml:stylesheet” element in the XML document prolog n XSL Transformations (XSLT) Version 1.0 - 11/16/99 n Extensible Stylesheet Language (XSL) Version 1.0 (candidate 9rec.) 3 Current State of XML Standards (continued) n Canonical XML Version 1.0 - 03/19/01 n Document Object Model (DOM) Level 2 - 11/13/00 n Core, Views, Events, Style, Traversal & Range n Web Content Accessibility Guidelines 1.0 - 05/05/99 n Resource Description Framework (RDF) - 02/22/99 n Microsoft Validator: n http://msdn.microsoft.com/downloads/samples/Internet/xml/xml_validator/sample.asp n W3C Schema Validator n http://www.w3.org/2001/03/webdata/xsv 10 Advanced Applications of XML n Ancestors: SGML with Annex K, HyTime, DSSS n Alternatives: HTML 4.01, CSS n HTML-Based n XHTML 1.0, XForms 1.0 n POP -Based n e.g., XHTML, CML, MathML, SMIL, SVG, P3P, RDF, WML n MOM-Based n e.g., ebXML, RosettaNet, cXML, fpML, FIXML n Web Services-Based n Protocols (SOAP, WSDL, UDDI) 11 n Services & Facilities (XAML) Logical Structure of XML Documents: Namespaces 1.0 • Namespaces: provides a simple method to qualify element and attribute names used in XML documents by associating them with namespaces identified by URIs – Example: <price> is borrowed from the “edi” schema <?xml version=“1.0”?> <order:x xmlns:order=‘http://ecommerce.org/order’> xmlns:edi=‘http://ecommerce.org/edi’> <edi:price>14.95</edi:price> </order:x> • See http://www.w3.org/TR/1999/REC-xml-names-19990114/ 12 4 eXtensible Style Language (XSL) n DSSSL & DSSSL-O n CSS 1, 2, 3 … n http://www.w3.org/Style/CSS/ n XSLT n XPath n XSL-FO n XSLT Processors n Stylus Studio XSL development environment n IBM XSL Editor n Saxon and Xalan XSLT processors n XSL-FO Processors n Antenna House 13 n fop XSL Processing n http://www.w3.org/Style/XSL/ n Processing Alternatives: n HTML + CSS -> Presentation n XML + CSS -> Presentation n XML + XSLT -> XSL-FO -> Presentation n XML + XSLT -> XML/HTML + CSS -> Presentation n Client or Server Processing ? n See Session 2 handout on IE5’s implementation n Examples n See Session 2 Sub-Topic 1 Presentation: Beginning XML n See Session 2 handouts on XSL Tree Transformation Language n See Session 2 handout on Cascading Stylesheets 14 n See Session 2 handout on Styling Documents Using XSL Character Encodings & Text Processing n ASCII, ISO 8859, and Unicode n http://www.bbsinc.com/iso8859.html n http://www.oasis-open.org/cover/unicode-xml.html n www.unicode.org n http://www.oasis-open.org/cover/unicode-xml.html n http://home.att.net/~jameskass • Using Unicode characters in XML/HTML – U+ (4 digit min) hex number (e.g., "U+1234”) – Specify as: "&#x1234;" or "&#x10FFFD;". n White space processing ?! 15 5 XML & DBMSs Comparison n Both separate data from rendition/presentation info n Similar languages n DBMSs: Forms and Reporting, DDL, DQL, DCL n XML: XSL, XQL, and processing instructions n No DML in XML n XML is paired with a scripting or programming language n Validation capabilities n DBMSs: datatyping, relationship constraints n XML: data type validity and semantic consistency checks n XML can handle data too complex for some databases n XML interchangeable form of data vs. multidatabases16 Course Approach ... n IBM XML Certification Test 140 n http://www-4.ibm.com/software/ad/certify/obj140.html n Proficiency Objectives – Information Modeling – XML Processing – XML Rendering – XML Query – Architecture Design – Implementation Testing 17 XML Application Development n Applications of XML: Markup Languages n XML Applications Today n POP (Java becoming optional) n Web Content Programming n Web Application Development n Web-Enabled Enterprise Application Development n MOM n EDI v.s. IEC/B2B n EAI Applications n e.g., ERP, SCM, CRM integration n XML Applications Tomorrow n MOM & POP become Web Services 18 6 XML POP Application Development n Java Independent Component Models n JSP Custom Tags n XML/XSLT n XML/Servlet Frameworks (e.g., Cocoon) n XML/Servlet Filters n XML/JavaScript n XML Data Bindings n Java Intensive Component Models n JSP/Java n JSP/JavaBeans n Applets/JWS n Servlets 19 XML MOM Application Development n Java Independent Component Models n Scripting Languages n Non J2EE Platforms (e.g., CORBA 3 & DNA) and PLs n Web Services Platforms n Sun Open Net Environment (ONE) n HP NetAction n Oracle Dynamic Services n IBM WebSphere Platform n Microsoft .NET n Java Intensive Component Models n EJBs n JSP/JavaBeans n Applets/JWS 20 n Servlets XML References n Information – www.learnthenet.com/english/index.html – http://www.xml.com – http://www.xml.org – http://www.xmlu.com – http://www.ucc.ie/xml – http://www.oasis-open.org/cover – http://msdn/microsoft.com/xml – http://xml.about.com n Software – http://xml.apache.org – http://www.alphaworks.ibm.com/tech/xml – http://www.microsoft.com/xml – http://technet.oracle.com/tech/xml – http://java.sun.com/xml – http://www.xmlsoftware.com – http://www.xmlcenter.com/tools/ 21 7 Class Project n Project Description n The project will focus on “multi-channel online community platforms”, and will consist of providing custom XML-based services to support the various aspects of a chosen eBusiness application implemented on such platforms (e.g., “community -based shopping”). Examples of useful services to support these platforms may include synchronized multimedia presentation viewing, and “offline” chat capabilities. A sample specification of an online community platform for a virtual university eBusiness application will be provided for illustration purpose. n A sample community platform for online discussions: www.onchat.com 22 Readings n Readings n XML Development with Java 2: Chapters 1, 4, and 5 n Professional Java XML: Chapters 1, 7, 8, App. A & G n XML and Java: Chapter 1, App. C & E n Handouts posted on the course web site n Review Xpath 1.0, XSLT 1.0, XSL 1.0 W3C Recs n Project Frameworks Setup (ongoing) n Apache’s Web Server, TomCat, and Cocoon n Apache’s Xerces, Xalan 23 Assignment n Assignment #1b: n Review the class project description, and the virtual university sample eBusiness application specification n Come up with your own variant of a an eBusiness application that would benefit from being implemented on top of a “multi- channel online community platform” n Specify a set of services or facilities that would need to be provided on top of an online community platform to support your specific eBusiness application 24 8 Assignment (continued) n Assignment #1b (continued): n Provide a written specification of your overall framework (i.e., platform and services), and propose a staged development approach that would demonstrate the use of XML to support the modern approach at building comprehensive business applications suggested in this course.
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages9 Page
-
File Size-