XML Trends & Developments

XML Foundations (INFO 242)

Erik Wilde, UC Berkeley School of Information
2007-12-06
Creative Commons License

This work is licensed under a CC
Attribution 3.0 Unported License

Abstract

XML is a very basic technology for representing trees using a standardized markup-based syntax. An increasing number of technologies are building on this foundation, creating an expanding field of XML-based technologies for interoperability in many different fields. Application-specific XML-based data formats are used in many different settings, and the best data format for a given scenario depends on the existing formats in this area and the exact requirements. More interestingly, generic XML technologies which can be applied in many different settings make it easier for developers and system integrators to achieve their goal of making system interoperate.

Outline (Web Services)

  1. Web Services [5]
  2. XForms [3]
  3. Semantic Web [8]
    1. Microformats [2]
    2. Resource Description Framework (RDF) [4]
  4. Conclusions [1]

XML-Based Distributed Programming

Web Service Technologies

SOAP Example Message

<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
 <env:Header>
  <m:reservation xmlns:m="http://travelcompany.example.org/reservation" env:role="http://www.w3.org/2003/05/soap-envelope/role/next" env:mustUnderstand="true">
   <m:reference>uuid:093a2da1-q345-739r-ba5d-pqff98fe8j7d</m:reference>
   <m:dateAndTime>2001-11-29T13:20:00.000-05:00</m:dateAndTime>
  </m:reservation>
  <n:passenger xmlns:n="http://mycompany.example.com/employees" env:role="http://www.w3.org/2003/05/soap-envelope/role/next" env:mustUnderstand="true">
   <n:name>Åke Jógvan Øyvind</n:name>
  </n:passenger>
 </env:Header>
 <env:Body>
  <p:itinerary xmlns:p="http://travelcompany.example.org/reservation/travel">
   <p:departure>
    <p:departing>New York</p:departing>
    <p:arriving>Los Angeles</p:arriving>
    <p:departureDate>2001-12-14</p:departureDate>
    <p:departureTime>late afternoon</p:departureTime>
    <p:seatPreference>aisle</p:seatPreference>
   </p:departure>
   <p:return>
    <p:departing>Los Angeles</p:departing>
    <p:arriving>New York</p:arriving>
    <p:departureDate>2001-12-20</p:departureDate>
    <p:departureTime>mid-morning</p:departureTime>
    <p:seatPreference/>
   </p:return>
  </p:itinerary>
  <q:lodging xmlns:q="http://travelcompany.example.org/reservation/hotels">
   <q:preference>none</q:preference>
  </q:lodging>
 </env:Body>
</env:Envelope>

WSDL Example (Google)

 <portType name="GoogleSearchPort">
  <operation name="doGetCachedPage">
   <input message="typens:doGetCachedPage"/>
   <output message="typens:doGetCachedPageResponse"/>
  </operation>
  <operation name="doSpellingSuggestion">
   <input message="typens:doSpellingSuggestion"/>
   <output message="typens:doSpellingSuggestionResponse"/>
  </operation>
  <operation name="doGoogleSearch">
   <input message="typens:doGoogleSearch"/>
   <output message="typens:doGoogleSearchResponse"/>
  </operation>
 </portType>

UDDI Data Model

uddi-datamodel.gif

Outline (XForms)

  1. Web Services [5]
  2. XForms [3]
  3. Semantic Web [8]
    1. Microformats [2]
    2. Resource Description Framework (RDF) [4]
  4. Conclusions [1]

HTML Forms Limitations

XForms

XForms Limitations

Outline (Semantic Web)

  1. Web Services [5]
  2. XForms [3]
  3. Semantic Web [8]
    1. Microformats [2]
    2. Resource Description Framework (RDF) [4]
  4. Conclusions [1]

XML is Syntax

<?xml version="1.0" encoding="UTF-8"?>
<文書 改訂日付="1999年3月1日">
 <題>サンプル</題>
 <段落>これはサンプル文書です。</段落>
 <!-- コメント -->
 <段落>会社名</段落>
 <図面 図面実体名="サンプル" />
</文書>

Semantics

Outline (Microformats)

  1. Web Services [5]
  2. XForms [3]
  3. Semantic Web [8]
    1. Microformats [2]
    2. Resource Description Framework (RDF) [4]
  4. Conclusions [1]

Islands of Semantics

Microformat Syntax

Outline (Resource Description Framework (RDF))

  1. Web Services [5]
  2. XForms [3]
  3. Semantic Web [8]
    1. Microformats [2]
    2. Resource Description Framework (RDF) [4]
  4. Conclusions [1]

Describing Resources

<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:contact="http://www.w3.org/2000/10/swap/pim/contact#">
  <contact:Person rdf:about="http://www.w3.org/People/EM/contact#me">
    <contact:fullName>Eric Miller</contact:fullName>
    <contact:mailbox rdf:resource="mailto:em@w3.org"/>
    <contact:personalTitle>Dr.</contact:personalTitle> 
  </contact:Person>
</rdf:RDF>

RDF Graphs

rdf-graph.png

RDF is Simple and Complex

RDF Schema Graph

rdfs-graph.png

Outline (Conclusions)

  1. Web Services [5]
  2. XForms [3]
  3. Semantic Web [8]
    1. Microformats [2]
    2. Resource Description Framework (RDF) [4]
  4. Conclusions [1]

XML is Growing