XML and Web Services In The News - 3 October 2006

Provided by OASIS | Edited by Robin Cover

This issue of XML Daily Newslink is sponsored by SAP


HEADLINES:

 The Use of XML Schema for Normative Contributions to W3C Recommendations
 XForms and OpenDocument
 XML Inclusions (XInclude) Version 1.0 (Second Edition)
 XCMTDMW: Element to Element Linking
 Nokia Unveils RSS Technology for Phones
 IBM Moves to Close Gaps in SOA Offerings

The Use of XML Schema for Normative Contributions to W3C Recommendations
John Boyer, IBM Blog
The XML Schema language is a good language for capturing the syntactic constraints of an XML vocabulary. But let's face it, it is really designed more for describing data. It's just not powerful enough to be used for making normative contributions to W3C Recommendations like, say, XForms. Quite apart from what anyone tells you about the normativeness of a schema, you can determine that the schema associated with a recommendation is informative, not normative, if it does not appear in TR space. This is a subdirectory of the W3 website named 'tr' and used to publish all technical recommendations of the W3C. In the case of XForms, the schema lives in the working group space, not TR space, so it is informative. However, the location of the schema isn't really the deciding factor for me. Even if a schema did appear in TR space, it still would only be informative in my opinion because there are lots of language constraints that you just cannot express in schema but which are expressed in the recommendation. A number of great examples of this can be found in XForms, two of which are explained below. Perhaps the easiest is the use of XPath expressions in XForms. In the XForms schema, a number of the attributes like calculate and ref have values that must be XPath expressions... So, in the schema for XForms, we say that both ref and bind are optional even though that's not very accurate. Separately, each is optional, but that's only the half of the story that XML schema can tell. The full story appears in the normative text of the XForms Recommendation.
See also: on Schema languages

XForms and OpenDocument
J. David Eisenberg, Online Tutorial
This tutorial covers the basic concepts of XForms. You can create form controls whose data is bound to parts of an XML data instance, and you can save that data in a local file or send it to a server. The tutorial provides enough information to start using this new technology. Let's say you're in charge of a database of chartered clubs for an amateur sports association. Club directors send you papers like the one in Appendix A, and you enter the data into an XML file, which is used to create an online searchable database of the clubs. Clearly, the better option is to send the club directors a machine-readable document with form fields that they fill in. The directors send the file back to you, and, rather than having to decipher their handwriting and re-enter the data, you run a program to extract the information. The idea of having a document with user-modifiable fields is not a new one, but OpenDocument's use of the World Wide Web Consortium's XForms recommendation is especially noteworthy, because the data that is stored with the document is in XML format, not in some proprietary format dependent upon a single vendor's tools. A form in XForms is described by XML elements. Each form is composed of a model and form controls. The model contains: (1) Instance data - an XML 'template' that will be filled in by information in the form controls. (2) Submission - a description of where the instance data is to be sent and how it is to be sent. A form can have multiple ways of being submitted; one to save the data into a file, one to send to a web URL, another to send to a different URL. (3) Binding - a connection between a node in the instance data and a form control (text box, drop-down menu, etc), or a connection between instance data and a constraint in a model item. XForms is not a stand-alone system; instead, you put the XForms markup into a document and hand the document to an application that is XForms aware. Under the guidance of the bindings, the application handles all the interaction between the controls (which the application owns) and the instance data.
See also: OpenDocument references

XML Inclusions (XInclude) Version 1.0 (Second Edition)
Jonathan Marsh, David Orchard (et al., eds), W3C Technical Report
W3C's XML Core Working Group has released a Proposed Edited Recommendation for "XML Inclusions (XInclude) Version 1.0 Second Edition." Produced as a convenience to readers, the second edition is intended to correct all known errata in the 2004 XInclude 1.0 Recommendation. Many programming languages provide an inclusion mechanism to facilitate modularity. Markup languages also often have need of such a mechanism. The XInclude specification introduces a generic mechanism for merging XML documents (as represented by their information sets) for use by applications that need such a facility. The syntax leverages existing XML constructs: elements, attributes, and URI references. XInclude differs from the linking features described in the [XML Linking Language], specifically links with the attribute value show="embed". Such links provide a media-type independent syntax for indicating that a resource is to be embedded graphically within the display of the document. XLink does not specify a specific processing model, but simply facilitates the detection of links and recognition of associated metadata by a higher level application. XInclude, on the other hand, specifies a media-type specific (XML into XML) transformation. It defines a specific processing model for merging information sets. XInclude processing occurs at a low level, often by a generic XInclude processor which makes the resulting information set available to higher level applications. Simple information item inclusion as described in this specification differs from transclusion, which preserves contextual information such as style.
See also: the W3C news item

XCMTDMW: Element to Element Linking
Eliot Kimber, Blog
What do we mean by "linking" in the context of XML document processing? [...] Consider a simple XInclude "include" link. This link is establishing a relationship between itself, the 'xi:include' element, and the element that is the document element of the XML document named by the href= attribute. The semantics of the relationship are defined by the XInclude specification and are "transclude" or "use-by-reference" ... It is also not a link between the document that contains the xi:include element and the document entity. It is a link from one element, the xi:include element to another element, the document element of the document entity named. This is very important and if you aren't seeing the distinction we need to stop now... XInclude defines a useful shortcut which is that, by definition (not just by convention), a reference to a document entity with no explicit XPointer is a reference to that document entity's document element... During authoring (that is, during the revision life cycle of the information) there is a strong requirement for various forms of indirect addressing in order to avoid the very problem we ran into here: change to a link target requires changing the link source even though the semantics of the link were otherwise not affected... Finally, I'll leave you with one question: what W3C or OASIS or IETF standard provides a mechanism for doing indirect addressing of XML elements that are not document elements? I left out ISO because we already know the answer: HyTime (ISO/IEC 10744:1996).
See also: Dr. Macro's XML Rants Blog series

Nokia Unveils RSS Technology for Phones
Nancy Gohrin, InfoWorld
Web 2.0 is coming to mobile phones, according to Nokia, which has launched a service that allows Java-enabled phone users to choose widgets, or small applications, that can be displayed on their phones. WidSets is a free offering that users can set up on the WidSets Web site. On the site, customers can choose from many different widgets that will be displayed on their phones. Widgets usually reside on a desktop and receive information, such as data delivered via RSS (Really Simple Syndication). For example, a Google News widget can appear as a small icon, and when users click on the icon, they can see the latest headlines that appear on the Google News Web site. Widgets are considered Web 2.0 applications because they offer an interactive and customizable service different from more static Web sites. After a new user signs up, the WidSets site sends an application via text message to the user's phone. Users must run the WidSets application and stay connected to the Internet to see the widgets and to allow the widgets to be updated with new content. The WidSets Web site is designed to support community input so users can browse for useful widgets based on community rankings. The service is free for phone users, although they'll pay associated costs to their mobile operators for data download. For now, Nokia doesn't have a way to make money from the offering but in the future the service could support advertising or Nokia could sell premium content.

IBM Moves to Close Gaps in SOA Offerings
China Martens, InfoWorld
IBM is filling holes in its SOA (service-oriented architecture) product line-up, notably in the areas of business process management and industry-specific services. IBM Tuesday made what it billed as its most extensive rollout of SOA offerings to date, including four new products, 23 enhanced versions of existing software and 11 new services offerings. IBM positioned the news as demonstrating that the entire company is focusing its attentions squarely on the SOA space as a revenue driver. So far, IBM has helped close to 3,000 customers put in place SOA, Mills said. However, only a "relatively modest percentage" of those users have been using the SOA approach for a number of years, he added. Mills stressed IBM's need to be seen by customers as "the" industry provider of end-to-end SOA capabilities. While there are plenty of small niche SOA players, IBM mostly competes with Hewlett-Packard when pitching an SOA portfolio. IBM is investing more than $1 billion in SOA-related areas this year, he said. One of the four new products IBM unwrapped Tuesday is WebSphere Business Services Fabric. The software is based on the technology IBM acquired when it purchased niche SOA player Webify in August and also draws on services from IBM business partners. The product includes prebuilt accelerators, tools and frameworks to help ensure that SOA applications comply with specific industry regulations. Another new offering is WebSphere Registry and Repository (WSRR) to help customers manage their Web services and shared business processes. The software enables users to publish and find SOA services and can also hook into third-party registries and repositories. The two other new tools are Tivoli Change and Configuration Management Database and Tivoli Dynamic Workload Broker.
See also: IBM SOA Resources


XML.org is an OASIS Information Channel sponsored by BEA Systems, Inc., IBM Corporation, Innodata Isogen, SAP AG and Sun Microsystems, Inc.

Use http://www.oasis-open.org/mlmanage to unsubscribe or change an email address. See http://xml.org/xml/news_market.shtml for the list archives.


Bottom Gear Image