This issue of XML Daily Newslink is sponsored by:
Sun Microsystems, Inc. http://sun.com
- OPC: A New Standard for Packaging Your Data
- django-atompub: Implementation of Atom Format and Protocol for Django
- SOA Reusable Assets: The Preferred Data Source Pattern
- W3C Patent Advisory Group Recommends W3C Stop Work on REX 1.0
- RealNetworks Case Highlights Sea-Change In Patent Law
- OASIS ebXML Messaging Services Version 3.0: Part 1, Core Features
- PRISM Version 2.0 Available for Public Comment
OPC: A New Standard for Packaging Your Data
Jack Davis and Andrey Shur, MSDN Magazine
In the move toward open standards, a new file packaging technology has evolved as part of the 2007 Microsoft Office System Open XML specification that was recently approved by the ECMA International standards organization. An underlying component of this standard is Open Packaging Conventions (OPC), which defines a structured means to store application data together with related resources using a standard ZIP file. The XML Paper Specification (XPS), which defines the new print-spool and document presentation format for Window Vista, also implements the storage and transport of high-fidelity documents based on OPC. Open Packaging uses ZIP files because they are a known industry format that is easy to work with, inspect, and access. In fact, you can take a package-based file (a .docx file, for example), rename it with a .zip extension, and access its contents using a standard ZIP utility, such as the Compressed Folders feature built into Windows Explorer. A package stores two basic elements: PackageParts (which are referred to simply as parts) and PackageRelationships (which are referred to as relationships). Parts represent the actual content being packaged. Relationships offer a number of advantages. (1) Relational Structuring: Relationships allow associations between content and resources to be determined without needing to read or parse content streams. Preprocessing tasks can aggregate, cache, and access needed resources without having to understand the details of the content in use. (2) Content Discoverability: Relationship types combined with part MIME content types enable quick discoverability of the structure, associations, and content of the parts contained in the package. Schema Independence: Content and resource associations defined by relationships are schema independent. This is especially helpful for content defined in XML markup where parsing would typically require knowledge of the specific schema in use. (4) Reference Integrity: For XML-based content, you can specify resources in markup by a reference to a relationship ID, rather than embedding resource URI references directly in markup. This simplifies the XML markup and eliminates the possibility that content references and relationship references might become out of sync.
See also: XML Paper Specification (XPS)
django-atompub: Implementation of Atom Format and Protocol for Django
James Tauber, Software Announcement
The Google Code django-atompub Project intends to be a full implementation of the Atom Syndication Format (IETF RFC 4287) and Atom Publishing Protocol for the Django web framework. The full set of RFC 4287 elements is now supported. The "User Guide to django-atompub" provides instructions for use. As of Revision 15, 'atom.py has' no dependency on Django itself, so it can actually be used outside of Django as a general Python library for generating Atom feeds. To generate an atom feed with django-atompub, firstly download atom.py and put it somewhere in your python path. Then, create bridge class that will tie your models to the atom data model. This class should extend Feed in the above atom module and then implement a variety of methods to provide data to the feed generator. Aas to feed validation, RFC 4287 places certain constraints on combinations of elements and their contents. For example, [i] if a feed has no author, each of the entries must have an author -- possibly in the source element; [ii] if no there is content, an entry must have alternate link; [iii] external content—i.e., content with a src attribute) requires the entry has a summary. By default, feeds are validated against these and many other constraints described in RFC 4287. This check greatly reduces the chance of producing an invalid atom feed. If a feed violates a constraint, an 'atom.ValidationError' will be thrown. In django-atompub, the Text, Person, Link, Category, Source, and Content Constructs are supported. The main Django project is also tracking this Google Code work. Note from the author (James Tauber): "Although the Django web framework has had Atom support for a while, it is incomplete and, for the most part, covers only those fields that Atom and RSS have in common. So I offered to implement full support for RFC 4287 in Django. The result is available at django-atompub on Google Code. The atom.py module is actually independent of Django and so can be used as a general Python library for Atom feed generation. Support for the Atom Publishing Protocol—which is the main project delviverable is next..."
See also: Atom references
SOA Reusable Assets: The Preferred Data Source Pattern
Eoin Lane and Jim Conallen, IBM developerWorks
This article series explores reusable assets such as recipes, software patterns, and models; it shows how to accelerate the development of SOA solutions. Part 1 and Part 2 in the series introduced the SOA service implementation and optimize recipe, as well as an accompanying reference example. Part 3 of this series also showed how a legacy application can be surfaced using a top-down approach. The reference example accompanying the SOA implementation and optimization services recipe detailed how a reusable catalog service model was identified and specified using domain decomposition of the lookup item business process. Part 4 in this series focused on satisfying the other non-functional requirements for this new catalog service. These non-functional requirements are focused around service performance, service scalability, and traceability. This Part 5 article demonstrates one pattern to show how a set of separate services can be federated into a single service, namely the preferred data source pattern. The preferred data source pattern is a microflow pattern for service aggregation. It was harvested from an IBM SOA engagement, and it has been reused in several other SOA applications and engagements. The context mapping of patterns to non-functional requirements and of non-functional requirements to architectural decisions enables the SOA developer or architect to build architecturally consistent code that is compliant with the software development best practices and principles... Through the use of a model-driven development process, core functionality has been leveraged and reused in a form that makes it consistent and of higher quality. The WS preferred data source pattern is a well-documented pattern, and it commonly occurs in enterprise and SOA environments. The actual pattern implementation described in this article provides a consistent and easy way to introduce this architectural mechanism to development teams with some degree of assurance that each implementation is consistent. Consistent application of architectural mechanisms not only promotes easier maintenance, but it helps ensure higher quality, because discovered defects can be fixed for all applications. This pattern can be combined with other patterns in the SOA implementation and optimize services recipe to solve other functional and non-functional requirements. The requestor side cache pattern from the example can be added to the preferred data source implementation, speeding up the performance of slow services. The AspectJ based logging patterns can be used to log or audit service usage without significantly affecting the preferred data or caching functionality.
Staff. W3C Announcement W3C has issued a "Report of the REX PAG 2007 on REX 1.0" recommending that Work on REX 1.0 be stopped. France Telecom, as a Participant of the WebAPI WG and SVG WG has excluded the following several from W3C RF licensing commitment on the Remote Events for XML (REX) 1.0 specification. As a result of the November AC Meeting, W3C decided to trigger a Patent Advisory Group to enquire about the excluded patents and chartered the first REX PAG. Apart from exploring and trying to understand the patent in question, the REX-PAG explored the existence of prior art. Subsequently, a page with prior art was created. Relevant work which substantially pre-dates the patent application includes the Plan 9 operating system and the News Desktop from Sun Microsystems. As a condition of participating in any Working Group, each participant (W3C Members, W3C Team members, invited experts, and members of the public) must agree to make available under W3C RF licensing requirements any Essential Claims related to the work of that particular Working Group—unless the participant declines to so license its IP, and elects to follow the "Exclusion From W3C RF Licensing Requirements. The goal of the W3C Patent Policy is to assure that Recommendations produced under this policy can be implemented on a Royalty-Free (RF) basis. Remote Events for XML (REX) 1.0 is an XML grammar for representing events as they are defined in DOM 3 Events, primarily but not exclusively for purposes of transmission. It enables one endpoint to interact remotely with another endpoint holding a DOM representation by sending it DOM Events as if they had occurred directly at the same location. REX 1.0 is a joint work between the WebAPI Working Group and the SVG Working Group. REX, when applied to SVG to transmit DOM mutation events, was intended to allow for live updates to SVG animations in Web Applications, on mobile phones or the desktop. There are competing, non Royalty-Free standards from MPEG, BIFS and LASeR; the latter is also expected to be used in non Royalty-Free standard 3GPP DIMS.
See also: the PAG launch
RealNetworks Case Highlights Sea-Change In Patent Law
Larry Barrett, InternetNews.com
Discerning what's obvious and what isn't when it comes to technology patents became a bit less gray last week when a federal judge in San Francisco reversed himself and abruptly dismissed a case brought against RealNetworks. Attorneys as well as U.S. patent examiners say Judge William Schwarzer's surprising about-face is just the first of what will be many reverberations felt in courtrooms in the coming months, changing not only the way patent-infringement cases are adjudicated but also whether or not patents are granted in the first place. RealNetworks (Quote) is the first high-profile beneficiary of a new standard established in April when the Supreme Court issued its ruling in the case of KSR International v. Teleflex Inc. At the core of the Court's decision was the notion of "obviousness," a fundamental component of patent law. The fundamental shift in determining obviousness, experts say, means technology companies with legitimate patents will have a much easier time defending themselves from expensive and occasionally frivolous patent-infringement lawsuits. Technology companies of all types are constantly fighting off patent-infringement lawsuits of varying degrees of merit. In August, Apple agreed to pay Creative Technology $100 million to settle a squabble over patents for music players. Analysts and technology executives have argued that patent-infringement litigation stymies innovation and compatibility and force companies to waste money that could be used on research and development on legal fees. ... [it's estimated that] the USPTO has a backlog of roughly 750,000 applications waiting to be processed.
See also: Patents and Open Standards
OASIS ebXML Messaging Services Version 3.0: Part 1, Core Features
Pete Wenzel (ed), OASIS Committee Specification
OASIS announced that the ebXML Messaging Services Technical Committee has submitted the "OASIS ebXML Messaging Services Version 3.0: Part 1, Core Features" specification to be considered as an OASIS Standard. The specification defines a communications-protocol neutral method for exchanging electronic business messages. It defines specific Web Services-based enveloping constructs supporting reliable, secure delivery of business information. Furthermore, the specification defines a flexible enveloping technique, permitting messages to contain payloads of any format type. This versatility ensures legacy electronic business systems employing traditional syntaxes (i.e. UN/EDIFACT, ASC X12, or HL7) can leverage the advantages of the ebXML infrastructure along with users of emerging technologies. This CS is the first major revision of ebXML Message Services since the OASIS ebMS 2.0 (April 2002). It continues the use of relevant Web Services specifications, including SOAP 1.1 and SOAP with Attachments; and also encourages the use of and converge with various Web Services standards that have emerged since the publication of ebMS 2.0, including SOAP 1.2, Web Services Security: SOAP Message Security 1.0 & 1.1, WS-Reliability 1.1, WS- ReliableMessaging 1.1. It is designed to be used either with or without any of the other ebXML components, including ebXML Business Process Specification Schema (BPSS) 2.0.4 and a forthcoming version of ebXML Collaboration Protocol Profile and Agreement (CPP/A).
See also: the announcement
PRISM Version 2.0 Available for Public Comment
Staff, IDEAlliance Announcement
PRISM (Publishing Requirements for Industry Standard Metadata), an IDEAlliance Working Group, has announced the availability of the new PRISM 2.0 Specifications for industry comment. In 1999, IDEAlliance founded the PRISM Working Group to address the emerging requirements by publishers to utilize standardized metadata to facilitate content management and aggregation as well as to facilitate search. Since that time the PRISM metadata framework has been broadly implemented by both magazine and journal publishers. PRISM 2.0 is the first major revision in the specification since its initial release in 2001. This major revision of PRISM addresses the new requirements for publishers and media companies to deliver content in an online multimedia environment, as well as in print. According to Lee Vetten, McGraw-Hill Business Information Group's Co-Chair of the PRISM Working Group, "PRISM 2.0 heralds a new generation for PRISM. Today's magazine publishers have made a dramatic shift to delivering eMedia-based content online as well as traditional print magazines. The development of PRISM 2.0 reflects the commitment of the PRISM Working Group to mirror today's new publishing models in the specification." One of the major changes in PRISM 2.0 is the inclusion of a new compliance profile for PRISM XMP. Until this time, the use of PRISM metadata was limited to the XML / RDF environment. Now the new PRISM XMP profile (profile three), provides publishers with the capability to embed PRISM metadata directly into multimedia objects that are so critical to magazine publishing in the online environment. Dianne Kennedy: "...we have undertaken an aggressive update of the PRISM Specification to address content that, for the first time, appears online before it is cast in print. In addition we have focused on extending PRISM to address many more media formants and have redesigned and enhanced our controlled vocabularies to provide for more sophisticated metadata encoding based on delivery media, presentation format and genre. The PRISM Working Group is open to all IDEAlliance members and includes: the Hachette Filipacchi Media, McGraw-Hill Companies, Inc., Platts, a division of The McGraw-Hill Companies, Inc., Conde Naste Publishing, Poundhill Software, Adobe Systems, Really Strategies, Time Inc., U.S. News and World Report, Factiva/Dow Jones and L.A. Burman Associates.
See also: the XMP specification description
XML Daily Newslink and Cover Pages are sponsored by:
|BEA Systems, Inc.||http://www.bea.com|
|Sun Microsystems, Inc.||http://sun.com|
XML Daily Newslink: http://xml.coverpages.org/newsletter.html
Newsletter Archive: http://xml.coverpages.org/newsletterArchive.html
Newsletter subscribe: firstname.lastname@example.org
Newsletter unsubscribe: email@example.com
Newsletter help: firstname.lastname@example.org
Cover Pages: http://xml.coverpages.org/