A Committee Draft specification approved by the OASIS CAM Technical Committee has entered a 30-day review period in advance of its submission for approval as an OASIS Standard.
The Content Assembly Mechanism (CAM) "provides an open XML based system for using business rules to define, validate and compose specific business documents from generalized schema elements and structures. A CAM rule set and document assembly template defines the specific business context, content requirement, and transactional function of a document. A CAM template must be capable of consistently reproducing documents that can successfully carry out the specific transactional function that they were designed for. CAM also provides the foundation for creating industry libraries and dictionaries of schema elements and business document structures to support business process needs. The core role of the OASIS CAM specifications is therefore to provide a generic standalone content assembly mechanism that extends beyond the basic structural definition features in XML and schema to provide a comprehensive system with which to define dynamic e-business interoperability."
The CAM specification public review period ends April 15, 2004.
Bibliographic Information
Content Assembly Mechanism (CAM) Specification Document. Committee Draft. Version 1.0. March 04, 2004. 71 pages. With XML Schema.
CAM Background
"CAM came about as part of the ebXML project although it is not a part of that initiative. It was seen that there was a need for a mechanism to allow documents to be created that reflected the Business Context in which they are to be used. It was hoped that the Libraries of documents would be produced and CAM would be a mechanism to refine those documents into the final usable on-the-wire format.
CAM does this by bridging the gap between traditional schema languages and the need for more flexibility in expressing actual business documents. Examples where the use of schemas is not enough abound, but typical use-cases involve fields that vary in length depending on the business context. Rules about content of a field depending on the geography that a document is to be used in, etc..." [from the jcam.org.uk development web site ]
About the OASIS CAM Technical Committee
"The OASIS Content Assembly Mechanism (CAM) Technical Committee works to provide an open XML based system for using business rules to define, validate and compose specific business documents from generalized schema elements and structures. A CAM rule set and document assembly template defines the specific business context, content requirement, and transactional function of a document. A CAM template must be capable of consistently reproducing documents that can successfully carry out the specific transactional function that they were designed for. CAM also provides the foundation for creating industry libraries and dictionaries of schema elements and business document structures to support business process needs.
Components: A CAM template has five sections: assembly structure(s), business context rules, content referencing, data validation and external mappings. They can be used together or in combination. The first two sections are required; the remaining three are optional, so a CAM template can be as simple or sophisticated as the business needs dictate.
CAM provides a global context passing mechanism and an XML rendering for declaring context variables. This context mechanism is at the heart of CAM's effectiveness. By allowing users to quantify what their context factors are precisely, this removes the guess work from business transaction exchanges between partners and allows them to formulize their collaboration agreements exactly. It also makes re-use and identifying potential candidate CAM template models much easier. Simply knowing what the external parameters are can instantly qualify if a template makes sense for a user and allow them to therefore select it.
A CAM implementation requires that a reference CAM template be available along with the CAM processor engine itself. The available jCAM processor is implemented in Java and so can be used in a variety of environments. Along with the CAM processor will typically be an XML instance to be manipulated by the processor. Also CAM maybe used as a Web service and sample WSDL binding definitions are available to facilitate this..." [from the CAM TC FAQ document]
Principal references:
- Content Assembly Mechanism (CAM) Specification Document. March 04, 2004 (PDF). [source .DOC, cache; review announcement]
- CAM spec XML Schema [source]
- CAM: Business Transaction Information Management. Technical Overview. [source PDF]
- CAM Executive Overview [source PDF]
- CAM Central SWIKI site. OASIS CAM Development Resources.
- jcam.org.uk development web site: home of an implementation of the OASIS Content Assembly Mechanism. See also the test cases
- CAM TC FAQ document
- CAM TC Charter
- TC Mailing list archive
- TC Comment list archive
- Contact: David Webber (CAM TC Chair)
- OASIS CAM TC web site