XML and Web Services In The News - 02 March 2006

Provided by OASIS | Edited by Robin Cover

This issue of XML.org Daily Newslink is sponsored by Innodata Isogen


HEADLINES:

 Reliable Messaging Demystified
 State in Web Application Design
 Will Foldera Hit The Mark?
 Let The Data Flow
 Seattle Movie Finder: An AJAX- and REST-Powered Virtual Earth Mashup
 XML Schema 1.1 Part 2: Datatypes
 The Future of Customer-Relationship Management Applications

Reliable Messaging Demystified
Shy Cohen, Microsoft Blog
Reliable Messaging means a lot of things to a lot of people so I like to use two separate terms when it comes to WCF features: Reliable Sessions and Queued Messaging. Reliable Sessions provide the equivalent of 'TCP at the SOAP level' and give you exactly-once, in-order message delivery. TCP is reliable like that too (at the packet level), but only hop-to-hop. If all you ever have is a single, un-bridged connection on a super- reliable network then reliable sessions don't give you much. However, this is rarely the case both inside the corporate network and obviously across the Internet. Reliable sessions overcome failures at the transport level (e.g. wireless network connection blinks in and out), at the transport intermediary level (e.g. a web proxy drops the request or the response), and at the SOAP intermediary level (e.g. a SOAP router blinks or drops your message due to load issues). Without this feature it is very hard to write 'connected' applications that work correctly in the face of communication errors. Reliable sessions also track the connection liveliness and let you free resources on the server side if the client goes away for longer than a given amount of time. Queued Messaging is all about having a buffer between the client and the service that decouples them in terms of availability (they don't have to be up at the same time), processing capacity (the service only needs to be able to process the average, not peak client load), and allows wonderful things like offline support for the client (i.e. send messages to the server when it is unreachable or even not running), load-sharing and load-curve-smoothing on the service side, etc.
See also: Reliable Messaging

State in Web Application Design
David Orchard, W3C Draft TAG Finding [Editorial Draft]
The purpose of the finding is to provide guidance to application developers on the use of State in applications in a Web context. It has been developed for discussion by the W3C Technical Architecture Group, and does not yet represent the consensus opinion of the TAG. The document examines a variety of designs for a canonical example application to illustrate the complex trade-offs in the designs. It uses HTML browser based and Web service based examples to show the similarities between the design decisions. The finding concludes with an analysis of the architectural property trade-offs between stateful and stateless applications. State is the data that pertains to an entity at a particular point in time. A variety of software entities have state, ranging from applications to operating systems to network layers. The state of an entity changes over time triggered by some kind of event. The event could be a network message, a timer expiring or an application message. Entities that do not have state, that is there is no trigger that causes a transition, are called stateless. Most interesting resources have state of one sort or another, which is what allows them to provide interesting information when interacting with user agents on the Web.
See also: other W3C TAG Findings

Will Foldera Hit The Mark?
Marc Orchant, ZDNet
Foldera, an online organizational tool that virtually no one has seen, has already had 400,000 people sign up for access to the public beta whenever it is finally made available. M. Orchant says: "That's a remarkable number and it supports my contention that there are fundamentally broken aspects of work that people are eager to address. Foldera, more than most of the organizational plays I've encountered to date, is focusing on a core set of things that are broken. Consider this list of things Foldera promises to help you manage: email, IMs, documents, tasks, events, contacts, teams, applications, projects, activities. Now reflect on the way Foldera intimates it will allow you to manage these information objects and resources. Pay attention to the verbiage -- it's clear, compelling, and well articulated -- hitting the "pain points" marketing wonks are fond of describing as their target: (1) Organize: Foldera instantly sorts and files your sent and received email, instant message dialogs, tasks, documents, and calendar events into Activity Folders on a project by project basis while you work; (2) Communicate: Foldera makes it possible for you to exploit email and instant messaging within the context of a single business project or activity -- every exchange of information and every communication you make in the execution of an activity is grouped together, live in one centralized place; (3) Share: Foldera captures each email, instant message dialogue, document, task and event as a unique object within its associated folder. The proof has yet to be delivered but Foldera's "vision thing" hits pretty close to the mark based on what I see as an unfulfilled need in the market to provide a no-cost-of-entry, scalable fix for much of what has broken in our work.
See also: Foldera web site

Let The Data Flow
Mike Ferguson, IntelligentEnterprise.com
Integrating operational data has long been one of the toughest IT problems, Mike Ferguson argues. He discusses the use of metadata repositories to hold a shared business vocabulary (SBV), such as data names, definitions and integrity rules, and how master data management (MDM) relates to SOA. "One critical aspect of MDM is data definition: You must be sure all entities become master data only through common definitions, names and integrity rules. Like it or not, different versions of master data must be maintained. The SBV tracks changes to master data definitions. Presenting it in XML form in a metadata repository allows data modeling tools, data quality tools and integration software (including message brokers) to work with the SBV in standard ways. Learning what data definitions are out there will give you an indication of how many master data versions exist in different systems. Along with identifying definitions, look at the relationships between them to refine your understanding of which definitions are referring to the same customer name, for example. Informatica's SuperGlue and IBM's Rational Data Architect are useful tools for this exercise. The next steps are to map the disparate data to your master data definitions; sample data sources to get a profile of their data quality; and then, create rules to cleanse and transform the data. Now you're ready to consolidate master data. Look for differences in metadata among the sources, which must be mapped to the SBV definitions. When all this is captured in a metadata repository, you'll be able to generate "artifacts" -- EII views, BI tool views, message broker XSLTs and so on -- that deliver application-specific master data versions still faithful to the common SBV. Marked up in XML, master data can flow through an ESB, which lets the data remain consistent wherever it goes. This approach levels the playing field for all users of the common resource. Also, relational database views, translated into XML views, may be queried by systems using X/Query. And, using the same procedure for unstructured data will bring more resources into the mix."

Seattle Movie Finder: An AJAX- and REST-Powered Virtual Earth Mashup
Dare Obasanjo, XML.com
The author explains how he built the Seattle Movie Finder application using XML, ASP.NET, and the Virtual Earth API. He shows that it doesn't take much more than moderate knowledge of using JavaScript and building RESTful web services to create an interesting mashup. "Every Friday I visit siteslike MSN Movies and IMDB to learn what new movies are available in my neighborhood and in what theaters they will be showing. However, I dislike the user interface of every movie website I've ever used, particularly when it comes to determining what movies are showing in my vicinity. Few, if any, of these sites give a good visual representation of the proximity of the theaters to my location. And it's often hard to tell how many different theaters are showing the movie I want to see that weekend. I've always wanted a user interface that was map-based for browsing movie theater locations, and now thanks to the availability of the Virtual Earth Standard Map Control SDK I've been able to build one for myself. The Virtual Earth control enables developers to build applications using the same technology that powers Windows Live Local."

XML Schema 1.1 Part 2: Datatypes
W3C XML Schema Working Group, Working Draft
W3C has issued a Last Call Public Working Draft of XML Schema 1.1: Datatypes. "XML Schema: Datatypes" is part 2 of the specification of the XML Schema language. It defines facilities for defining datatypes to be used in XML Schemas as well as other XML specifications. The datatype language, which is itself represented in XML, provides a superset of the capabilities found in XML document type definitions (DTDs) for specifying datatypes on elements and attributes. Major changes since 1.0: (1) Support for XML 1.1 has been added; (2) A new primitive decimal type has been defined, which retains information about the precision of the value; (3) In order to align this specification with those being prepared by the XSL and XML Query Working Groups, a new datatype named anyAtomicType which serves as the base type definition for all primitive atomic datatypes has been introduced (4) The conceptual model of the date- and time-related types has been defined more formally. (5) A more formal treatment of the fundamental facets of the primitive datatypes has been adopted; (6) More formal definitions of the lexical space of most types have been provided, with detailed descriptions of the mappings from lexical representation to value and from value to 'canonical representation'. Comments on this document should be made in W3C's public installation of Bugzilla.
See also: XML Schema Languages

The Future of Customer-Relationship Management Applications
Walaika K. Haskins, BPM Today
"CRM is not going away," said William Band, author of a Forrester Research report on CRM trends. "It has gone through a cycle of overinflated expectations, to the sense that the software is not useful at all to a more mature stage, with companies always trying to improve their customer interactions." According to Sheryl Kingstone, program manager for CRM applications and infrastructure Relevant Products/Services from Insight at Yankee Group, CRM software is in the midst of a significant evolutionary shift resulting directly from the convergence of SOA, Web services, and XML, a markup language that facilitates data-sharing across different systems. "This new technology foundation enables the assembly, distribution, and management of business solutions in a way not possible before," she said, with the results being faster decision-making and a lower total cost of ownership for CRM customers. Organizations exhausted from years of overspending on enterprise resources have started to demand that their CRM applications actually enable end-to-end business processes. SAP, for example, long has touted the integration of mySAP CRM solutions Relevant Products/Services from TechExcel with back-office capabilities, which now are offered as an enterprise suite. Microsoft is promoting its business-oriented applications as pre-integrated with other Microsoft back-office and desktop solutions.


XML.org is an OASIS Information Channel sponsored by Innodata Isogen and SAP.

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