MSc in Communication Sciences 2010-2011 Program in Technologies for Human Communication Davide Eynard Software Technology 2 06 XML-based Technologies
2 ntro XML had a huge impact on the development of current technologies Allows for interoperability between different systems and applications More and more used, as pc grew bigger and faster Backbone for many standards and protocols Well known formats like XHTML, RSS, docx, and odt (OpenOffice documents) Less known formats like DocBook, MathML, SVG, and BPEL Technologies like XML-RPC and AJAX How did the use of XML actually change the way we are doing things?
3 DocBook DocBook in its current version is an XML application Originally built with SGML Now (v5.0) defined with RELAX NG + Schematron rules XML Schema and DTD are also available, but non-standard DocBook documents can be authored using any XML editor (more or less WYSWYG editors are available) XML files can then be converted using the Docbook XSLT stylesheets Transformation in HTML, PDF, etc.
4 Two words on XSLT CSS XSL Stylesheets for (X)HTML Stylesheets for XML, consists of three parts: XSLT to transform XML docs XPath to navigate inside XML code XSL-FO for XML formatting See the XSLT tutorial at W3CSchools!
5 MathML MathML is an XML application describing mathematical notation, aiming at integrating math formulae into the WWW i.e. ax 2 +bx+c looks like: <mrow> <mi>a</mi> <mo>&nvisibletimes;</mo> <msup> <mi>x</mi> <mn>2</mn> </msup> <mo>+</mo> <mi>b</mi> <mo>&nvisibletimes;</mo> <mi>x</mi> <mo>+</mo> <mi>c</mi> </mrow> MathML <math> <apply> <plus/> <apply> <times/> <ci>a</ci> <apply> Content MathML </math> <power/> <ci>x</ci> <cn>2</cn> </apply> </apply> <apply> <times/> <ci>b</ci> <ci>x</ci> </apply> <ci>c</ci> </apply>
6 SVG Scalable Vector Graphics is an XML-based file format to describe 2D vector graphics, both static and dynamic All major modern Web browsers support and render SVG natively Example: Except nternet Explorer (needs a plugin) <circle cx="316px" cy="224px" r="107px" style="stroke: black; stroke-opacity: 1; stroke-width: 1; fill:#ffff00"/>
7 BPEL Many standards for Business Process Management You will see BPMN soon BPEL is an executable XML standard used to model BP No graphics...... but BPMN can be converted to BPEL
8 Web Services Software system designed to support interoperable machineto-machine interaction over a network (cit. Wikipedia) Many WS technologies (and in general many different types of network standards) are currently based on XML Serialization: Conversion of an object into a sequence of bits which can be stored or transmitted Objects become persistent The conversion has to be independent from the architecture, the os, the encoding, and so on XML represents a human-readable serialization
9 AJAX There's AJAX and Ajax AJAX stands for Asynchronous Javascript And XML Ajax (not an acronym) represents similar methodologies, but using different technologies Asynchronous Web pages do not have to be reloaded Web pages become Web applications Javascript XML A scripting language allows the browser to update the page executing code on the client side Used for interchange of data Now JSON is very common too
10 References Some Web references: Tools: http://www.w3schools.com/xsl http://www.w3.org/amaya http://www.bpm.fit.qut.edu.au/projects/babel/tools, a BPMN to BPEL translator http://www.oxygenxml.com, an XML/DocBook WYSWYG editor