The Cover PagesThe OASIS Cover Pages: The Online Resource for Markup Language Technologies
Advanced Search
Site Map
CP RSS Channel
Contact Us
Sponsoring CP
About Our Sponsors

Cover Stories
Articles & Papers
Press Releases

XML Query

XML Applications
General Apps
Government Apps
Academic Apps

Technology and Society
Tech Topics
Related Standards
Last modified: June 15, 2007
XML Daily Newslink. Friday, 15 June 2007

A Cover Pages Publication
Provided by OASIS and Sponsor Members
Edited by Robin Cover

This issue of XML Daily Newslink is sponsored by:
IBM Corporation

Turn Your Existing Systems Into an SOA Platform Using Apache Synapse
Rajith Attapattu and Paul Fremantle, IBM developerWorks

If you're planning to transform your existing middleware into a Service-Oriented Architecture (SOA) platform, consider using Apache Synapse. Apache Synapse, a simple, high-quality open source alternative, provides an approach to SOA that can expose existing applications without rewriting any code. This article gives you a thorough introduction to Apache Synapse and provides a use case to demonstrate how you can integrate and reuse existing applications using an SOA approach. The ability to reuse, integrate, manage, and control interactions with your existing applications without changing them makes Synapse an attractive choice and a key approach to an SOA strategy. The ESB concept is, unfortunately, poorly defined. However, we have a simple, pragmatic definition: Connect, transform, manage. The ESB model promotes SOA-based integration with service contracts and metadata associated with the service contracts, such as Web Services Description Language (WSDL), schema, or policy. The ESB model ensures that every message that goes into the bus ends up in the right place. Synapse is built around XML and Web services standards. Fundamentally, Synapse is based around the idea of messages moving around a network. The messages can be any format, but Synapse molds them into a logical infoset modeled on the SOAP idea of an envelope containing header and body. By using Web services standards, such as WS-ReliableMessaging and WS-Security, you can use Synapse to enable secure, reliable connections between applications. Synapse can offload these types of quality-of-service (QoS) capabilities without modifying existing applications. For example, by placing a Synapse instance directly in front of an existing XML/HTTP service, you can add support for WS-Security. This can add support for digital signatures, which can be important in a B2B environment.

See also: Apache Synapse

SPARQL Query Language for RDF
Eric Prud'hommeaux and Andy Seaborne (eds), W3C Technical Report

W3C has announced the advancement of "SPARQL Query Language for RDF" to the status of Candidate Recommendation. Implementation feedback is invited through 12-August-2007. RDF is a directed, labeled graph data format for representing information in the Web. The specification defines the syntax and semantics of the SPARQL query language for RDF. SPARQL can be used to express queries across diverse data sources, whether the data is stored natively as RDF or viewed as RDF via middleware. SPARQL contains capabilities for querying required and optional graph patterns along with their conjunctions and disjunctions. SPARQL also supports extensible value testing and constraining queries by source RDF graph. The results of SPARQL queries can be results sets or RDF graphs. With SPARQL (pronounced "sparkle"), developers and end users can consume search results across a wide range of information such as personal, technical, business or scientific data, social networks, or data about digital artifacts like music and images. The SPARQL query language is based on matching graph patterns. Graph patterns contain triple patterns. Triple patterns are like RDF triples, but with the option of a query variables in place of RDF terms in the subject, predicate or object positions. Combining triple patterns gives a basic graph pattern, where an exact match to a graph is needed. A related document "SPARQL Query Results XML Format" is a Last Call Working Draft with comments welcome through 5-July-2007.

See also: W3C Semantic Web

Web Structured, Schema'd and Searchable (Web3S)
Staff, Microsoft Corporation

The purpose of this document is to define a protocol that is a good fit for Live Contacts. Live Contacts is the central data store in Windows Live for address book information. All Hotmail contacts, Messenger buddies and Spaces' friends are recorded in Live Contacts. There are currently approximately 500,000,000 active address books in Live Contacts. The key issues that Live Contacts faces in terms of designing a protocol to let third parties access it are Simplicity, Cost of Read/Writes, and Versioning. (1) Simplicity: The target audience for Web3S are web developers and their code runs in a dizzying array of operating systems, application execution environments, programming languages, tool kits, etc. Many of these environments are completely custom so we can't just hand out sample code for all of them. This means that many people wanting to interact with us will have to build their own libraries to do so from scratch. As such it is critical that our protocol be as simple as possible. We have therefore chosen to take a straight forward HTTP approach where our resources are all URI addressable and use the standard RFC 2616 methods (DELETE/GET/PUT/POST). We have introduced, however, a new method—UPDATE. This method was introduced to deal with a specific issue that comes up with some of the more complex schemas. We have also defined a very simple data infoset that can be easily serialized into/out of XML and JSON. We feel that there are important communities that want to interact with us via both XML and JSON so we wanted a system simple enough to properly support both. (2) Cost of Read/Writes: every value in an address book is individually addressable with a URL using a path language; we specify the use of merge semantics which enables write requests to only specify values that need to be changed. (3) Versining: all clients implement an ignore rule—that is, clients must ignore data they don't recognize; this means that when new values are added older clients won't see them and thus not break...

See also: Yaron Goland's blog

NIEM 2.0: Information Exchange Model at the Next Level
Joab Jackson, Government Computer News

The National Information Exchange Model (NIEM) has gotten its first upgrade. Version 2 should be released by the end of this month, and the final beta is available on the NIEM site. The large Extensible Markup Language (XML) schema, overseen by the Homeland Security and Justice departments, provides a common language for federal, state and local agencies to share information on natural disasters, terrorist attacks and other crises. Each piece of agency data is tagged by a particular NIEM name so it can easily be identified by systems outside the one where it originated. The first production version of NIEM appeared in June 2006. It used Justice's Global Justice XML Data Model as the foundation, but is being expanded to cover other common items relating to criminal justice and law enforcement. Perhaps the major area of change is the unification of namespaces, a term applied to collections of tags. The first version of NIEM had two main namespaces, Universal and Common. Universal components were items that would be common to all parties using NIEM. Common components were items that existed in more than one domain... The specification is already being used in some law enforcement efforts, such as the National Data Exchange project, an electronic catalog of criminal information currently being developed by the FBI.

See also: the NIEM Web site

Ajax for JSF: Seam Remoting and Ajax4jsf Fuse Client and Server
Dan Allen, IBM developerWorks

JSF's component-based methodology encourages abstraction, but most Ajax implementations interfere with it by exposing the underlying HTTP exchange. In this final article in the Seamless JSF series, the author shows you how to use the Seam Remoting API and Ajax4jsf components to communicate with managed beans on the server as if they were local to the browser. Both Seam Remoting and Ajax4jsf complement JSF's component model by extending its abstraction to include Ajax communication. The best thing about combining Seam with Ajax is that it lets you do all the fancy Web 2.0 stuff without getting tangled up in the JavaScript XMLHttpRequest object. With Seam Remoting and Ajax4jsf, you can communicate with managed beans on the server as if they were local to the browser. The browser and server state remain in sync, and you never have to deal with the low-level API that facilitates their communication. Nowhere in any of the code presented in this article is it necessary to interact directly with the XMLHttpRequest JavaScript object. Instead, all the work is hidden behind higher level APIs that let you either query and manipulate server-side components directly, or invoke actions and update regions of a given page. And, thanks to the magic of Ajax, all that work happens asynchronously.


XML Daily Newslink and Cover Pages are sponsored by:

BEA Systems, Inc.
IBM Corporation
Sun Microsystems, Inc.

XML Daily Newslink:
Newsletter Archive:
Newsletter subscribe:
Newsletter unsubscribe:
Newsletter help:
Cover Pages:

Hosted By
OASIS - Organization for the Advancement of Structured Information Standards

Sponsored By

IBM Corporation
ISIS Papyrus
Microsoft Corporation
Oracle Corporation


XML Daily Newslink
Receive daily news updates from Managing Editor, Robin Cover.

 Newsletter Subscription
 Newsletter Archives
Globe Image

Document URI:  —  Legal stuff
Robin Cover, Editor: