[]

Technical Information Update for the XML Common Business Library (xCBL)

If you wish to print this newsletter please make sure you do so in landscape format.


NEWSLETTER




Number 4

JULY 2000

Editorials
   ebXML Core Components
   What is the xCBL Users Group?
   EDI and xCBL
   Long-Term Goals

Technical Tip
   The Party Element
     AgencyCode
     Values
     Code Example of Party

Namespaces and xCBL: Upcoming Releases
   How Do Namespaces Work?
   How Does This Affect the Use of xCBL?
xCBL and Important Standards Efforts

Upcoming Events
   ebXML
   XML Asia Pacific 2000
   ebXML
   XML 2000

Where to Go for Help
XML Publications and Resources
Important Links
Job Opportunities
Subscription
About the xCBL User's Group Newsletter


Editorials

back to top

We have been extremely busy working on xCBL recently, and some of the work we have been doing is described in this issue of the newsletter:

  • A large number of new documents have been developed, now in their final stages of development, and we have been learning a lot about how to work with standard EDI messages.
  • A lot of exciting work has been done in the ebXML forum and with other standards groups.
  • We have been discussing how namespaces will be deployed for xCBL releases.
  • The finalization of XSDL, which we will of course be supporting in future, is giving us much food for thought.

xCBL is dedicated to promoting interoperability among business-to-business e-commerce applications: we find that this is an exciting time to be alive! Especially with the major EDI standards bodies taking an increasingly active role in the use of XML-based technology, and with the discussions of community-based and discovery-based trading, we can predict that the future holds many exciting developments. Both in this issue of the newsletter, and in future issues, we will make sure and track these significant developments.

ebXML Core Components

back to top

Our apologies to those who have been anxiously awaiting the article on the Core Components sub-group of the ebXML initiative: due to unforeseen commitments on the part of our distinguished guest author (largely to the excellent-quality pubs in the middle part of the UK, we fancy!) this article has been delayed for publication until the next issue. But don't worry - the wait will be worth it!

What is the xCBL Users Group?

back to top

Although we introduced the xCBL User's Group in the first issue of this newsletter, there have been many new subscribers. Consequently, we felt it appropriate to do a re-introduction for all you newcomers. The xCBL Users Group is a community of developers, development managers, and technical users, both of the Commerce One's products and other XML-based business-to-business e-commerce applications. The major point of focus is the XML Common Business Library, a set of documents and reusable components for building new documents, available as XML DTDs and XDR and SOX schemas. In a more general sense, the user's group is focused on all of the standards around XML and business-to-business e-commerce. This newsletter presents a technical view of issues around building e-commerce applications that use the new XML-based technology.

Aside from the publication of this newsletter, the xCBL user's group also maintains a web site for the distribution of all xCBL-related technologies and documentation, and has a support line for xCBL users: xcbl@commerceone.com. In future, we are hoping to make the membership more formal, and host user's conferences and other events. For the time being, all that is needed to join is to send us e-mail (see below).

A Note about xCBL and the W3C XML Schema Language: All major players in this space have committed to supporting the W3C schema language. Primarily, this impacts Microsoft (who have released products based on their XDR Schema language) and Commerce One (whose products implement the SOX schema language). Commerce One and Microsoft have both been major players in the W3C effort, so the differences are anticipated to be minor. xCBL will be distributed in XSDL (the W3C schema language) soon, and XSDL may replace SOX as the "primary" format for defining xCBL in the future, as its adoption becomes more pervasive.

EDI and xCBL

back to top

As a passing note, it is worth mentioning that with upcoming releases of xCBL, there will be increasing attention paid to more fully supporting existing EDI implementations. This will include the release of additional documents to cover many common transaction sets, along with documentation and mapping information. Major areas of interest include UN/EDIFACT and X12 standards and industry sub-standards, along with the RosettaNet and OBI implementations. (See the article about upcoming releases in this issue to learn more).

Long-Term Goals

back to top

xCBL represents the first attempt to take the basic data sets as defined by EDI implementations over the years, and to render them in XML to solve the problems of global interoperability. This need is becoming clear as business-to-business e-commerce technology matures: increased numbers of trading partners and "plug-and-play" integration promise a brilliant future, but also present us with serious technical challenges, placing a premium on standardization efforts within this problem space. xCBL is dedicated to solving the very serious challenges of interoperability on a global level.

Technical Tip

back to top

The following sections address the usage of some of the common elements in xCBL. (If you have a question on usage, please send mail to xcbl@commerceone.com . We will answer commonly-asked questions in the newsletter.)

The Party Element

back to top

Definition: A Party is a legal entity, being "party" to a commercial contract, for example. This can be an individual or corporate entity.

Usage: Party is generally re-named when actually used. The core "Party" definition is typically re-named, as in the case of BuyerParty, SupplierParty, ShipToParty, FinalRecipient, BillToParty, and others. The following is a text description of the element, with optional elements indicated with "?", and types provided parenthetically:

Element: Party

Content: (ListOfIdentifier?, NameAddress?, OrderContact (type: Contact)?, ReceivingContact (type: Contact)?, ShippingContact (type: Contact)?, OtherContacts (type: ListOfContactCoded)?)

Attribute: Name: PartyID - Data Type: string - Default Value: NONE

Attribute: Name: AgencyID - Data Type: AgencyCode - Default Value: NONE

Attribute: Name: AgencyOther - Data Type: string - Default Value: NONE

The Party element specifies one or more identification numbers, name, address, telephone and FAX numbers, and email address for a party to a business transaction. It consists of:

  • An optional PartyID attribute, which specifies a single 1- to 50-character identification number for the party. (Note: If specifying multiple identification numbers for the party, use the ListOfIdentifier element instead.)
  • An optional AgencyID attribute, which specifies the agency that issued the PartyID. (Note: If specifying multiple identification numbers for the party, use the ListOfIdentifier element instead.) For a list of agencies, see AgencyCode documentation on page 153 of the xCBL Interconnectivity Guide. If the desired agency is not included in this list, specify an AgencyID of "Other" and use the AgencyOther attribute to specify the actual agency name.
  • An optional AgencyOther attribute, which specifies the agency that issued the PartyID in the event that the AgencyID attribute has a value of "Other." (Note: If specifying multiple identification numbers for the party, use the ListOfIdentifier element instead.)
  • An optional ListOfIdentifier element, which contains one or more identification numbers and the agencies that issued them.
  • An optional NameAddress element, which provides the name and address of the party.
  • An optional OrderContact element, which contains the name, phone numbers, and email address of the party to contact about the order.
  • An optional ReceivingContact element, which contains the name, phone numbers, and email address of the party to contact about receipt of the order.
  • An optional ShippingContact element, which contains the name, phone numbers, and email address of the party to contact about shipment of the order. An optional OtherContacts element, which contains the names, phone numbers, and email addresses of other parties to the order.
AgencyCode

back to top

The AgencyCode datatype enumerates the values that may be used to specify agency names. These values are derived from X12 code list 3055.

Values

back to top

The following 1- to 35-character AgencyCode values have been defined.

If the desired agency is not included in this list, specify an AgencyCode of "Other" and use the AgencyOther attribute to specify the actual 1- to 70-character name of the agency.

Agency Code

AgencyCode Value Description EDIFACT Code
Other The agency is not included in this list.   
CommerceOne Commerce One   
ISO ISO (International Standards Organization) 5
EAN EAN (International Article Numbering Association) 9
AssignedBySupplier Supplier or supplier's agent 91
AssignedByBuyer Buyer or buyer's agent 92
ANSI US, ANSI ASC X12 116
GBABA GB, Article Num Assoc (UK) Limited 136

Code Example of Party

back to top

What follows is a simple example of XML from a business document that includes two elements of type Party. The first is an example of BuyerParty that omits the optional ListOfIdentifier but includes OrderContact, ReceivingContact, and ShippingContact. The optional OtherContacts is omitted. This begins a valid instance of OrderParty. (Note that OrderParty contains two elements that are of type Party, but is not itself of type Party.)

<OrderParty>

<BuyerParty>
  <Party>
    <NameAddress>
      <Name1>Mr. Muljadi Sulistio</Name1>
      <Name2>Attention: Business Service Division</Name2>
      <Address1>1600 Riviera Ave</Address1>
      <Address2>Suite# 200</Address2>
      <City>Walnut Creek</City>
      <StateOrProvince>CA</StateOrProvince>
      <PostalCode>94596</PostalCode>
      <Country>US</Country>
    </NameAddress>
    <OrderContact>
      <Contact>
        <ContactName>Mr. Mike Holloway</ContactName>
        <Telephone>(925) 941-3333</Telephone>
        <Email>mike.holloway@commerceone.com</Email>
        <Fax>(925) 941-4555</Fax>
      </Contact>
    </OrderContact>
    <ReceivingContact>
      <Contact>
        <ContactName>Mr. Debbie Dub</ContactName>
        <Telephone>(925) 941-2222</Telephone>
        <Email>debbie.dub@commerceone.com</Email>
        <Fax>(925) 941-4555</Fax>
      </Contact>
    </ReceivingContact>
    <ShippingContact>
      <Contact>
        <ContactName>Ms. John Wayne</ContactName>
        <Telephone>(925) 941-1111</Telephone>
        <Email>john.wayne@commerceone.com</Email>
        <Fax>(925) 941-4555</Fax>
      </Contact>
    </ShippingContact>
  </Party>
</BuyerParty>

[What follows here is a SupplierParty, containing only the NameAddress element, completing a valid instance of OrderParty.]


<SupplierParty>
  <Party>
     <NameAddress>
      <Name1>Millenium Supplier Corporation</Name1>
      <Name2>Attention: Office Supply Division</Name2>
      <Address1>355 Alameda Street</Address1>
      <Address2>Suite 100</Address2>
      <City>San Jose</City>
       <StateOrProvince>CA</StateOrProvince>
      <PostalCode>94588</PostalCode>
      <Country>US</Country>
    </NameAddress>
  </Party>
</SupplierParty>

</OrderParty>

Note that, because Party is a frequently reused component, all of its children are optional. Note that you may use different sets of the children elements for different purposes, and that this structure maximizes flexibility. It is left up to the processing application to verify that the information needed for a particular type of Party element is complete for the purposes of the application. (Note that ebXML has a concept of "context" that would allow this type of use to be automatically validated by a parser, and remove the need to write code around this at the application level.)

Namespaces and xCBL: Upcoming Releases

back to top

With several new document releases coming up for xCBL, the use of namespaces becomes an increasingly important part of what developers will have to understand. The releases scheduled for xCBL is detailed in the following table. They will take place starting in late summer, 2000, and going through the fall of 2000.

xCBL Releases

Release Version Namespace Documents Comments
xCBL 2.01 (current) cbl PurchaseOrder, PurchaseOrderResponse, AvailabilityCheckRequest, AvailabilityCheckResult, PriceCheckRequest. PriceCheckResult, OrderStatusRequest, OrderStatusResult, Invoice, PriceCatalog, ProductCatalog Notes: some documents are being revised in subsequent releases, but the original versions of the documents continue to exist inside this namespace. OrderRequest has been added to this namespace, and will be released shortly.
xCBL 2.1 cbl01 AdvanceShipmentNotice, AdvanceShipmentNoticeResponse, ChangeOrder, OrderResponse, Invoice, OrderStatusResult The new invoice includes increased information around taxes and payments, but is still limited to a single currency. The revised OrderStatusResult has separate statuses for the order, payment, and shipment.
xCBL 2.2 cbl02 PriceCatalog, ProductCatalog These are revisions of the existing catalog documents to make them easier to use, and to provide support for additional catalog information. (Further revision and expansion is envisioned in future).
xCBL 2.3 cbl03 RemittanceAdvice, PaymentRequest, PaymentInstruction, ShippingSchedule, PlanningSchedule, FileTransfer Support for more EDI transaction sets. May include response documents where applicable.

xCBL 3.0 will be a major re-release, including comprehensive bug fixes, and expanded support for EDI and ERP systems across all of the existing documents.

How Do Namespaces Work?

back to top

Namespaces are a mechanism for avoiding name collisions within XML data definitions. With namespaces, you can have a single element defined in two different ways in different DTDs or XML schemas, and have the processor understand that they are in fact two different constructs. If, for example, we have two definitions of an element called Address, and they come from namespaces x and y, the tags would look like:

<x:Address> ... </x:Address>

<y:Address> ... </y:Address>

Namespaces can also be indicated in an XML document using the reserved xml:ns attribute:

<Address xmlns:x="urn:x-commerceone:document:x.sox"> ... </Address>

<Address xmlns:y="urn:x-commerceone:document:y.sox"> ... </Address>

In this case, everything contained in the element using the xmlns attribute would be understood to come from the DTD specified in the indicated namespace (x or y), and repeating the attribute would not be needed, nor would the use of namespace prefixes within the tags.

How Does This Affect the Use of xCBL?

back to top

Because xCBL is an expanding component library, and schema may need to use component definitions in any of the existing schemas. Consequently, it is assumed that for any xCBL namespace, all previously released namespaces will be available to the parser. If you are only using documents from the cbl and cbl01 namespaces, you would not need the schemas or DTDs from the cbl02 namespace.

With the xCBL version 3.0 release, xCBL namespace will be aligned with functional areas, such that business services can be released independent of each other. With advances in the available Schema registries such as XMl.org and BizTalk.org, this will make it easier to find just those xCBL constructs that you need for a particular application or vertical application. Some portal-based applications (Commerce One's among them, naturally) will also have their own registries for the members of those particular trading communities.

xCBL and Important Standards Efforts

back to top

xCBL's development is informed by active participation in many standards efforts going on both nationally and internationally. The following is a table of standards groups that xCBL staff track and participate in. This list may also be of interest to the users of xCBL, as it points up some of the most productive and important efforts in the use of XML to provide interoperability in the e-commerce space.

International, National, and Industry Standards Efforts

Group Name Description
ebXML UN/CEFACT and OASIS have established the Electronic Business XML initiative to develop a technical framework that will enable XML to be utilized in a consistent manner for the exchange of all electronic business data. xCBL staff are heavily involved, in both leadership and participation roles. This effort is widely supported by the EDI standards bodies - X12 and UN/EDIFACT - as well as some of the forward-looking XML technology companies (Sun, Commerce One). For more information go to ebXML's web site
RosettaNet xCBL staff attend meetings and use RosettaNet standards as an important source of data sets and process descriptions. For more information go to RosettaNet's web site
eCo Commerce Net created the eCo working group to define a conceptual framework through which e-commerce systems can be discovered, examined and understood. The creators and maintainers of xCBL were very active in this effort, especially where the specification addresses document definition and componentization. xCBL was used to illustrate the concepts in this area. For more information go to eCo's web site
AIAG Automotive Industry Action Group. Under the auspices of AIAG, volunteers from over 1,600 member companies tackle industry issues in supply, manufacturing, engineering, quality and finance. Working together, they investigate the benefits of commonization in new areas, examine established business processes with an eye toward improvement, and compare procedures to determine best practices. AIAG members are very active within the ebXML initiative, and are looking seriously at XML as an enabling technology. xCBL staff are active participants in this work. For more information go to AIAG's web site
OASIS The Organization for the Advancement of Structured Information Standards is a nonprofit, international consortium dedicated to accelerating the adoption of product-independent formats based on public standards. These standards include SGML, XML, HTML and CGM as well as others that are related to structured information processing. xCBL staff participate in the Registry/Repository working group, and Commerce One is a member of the vendor consortium. For more information go to Oasis's web site
OBI Open Buying on the Internet: Commerce One is chairing the XML/OBI effort, and uses OBI as an important source for standard document formats. For more information go to OBI's web site
UN/CEFACT United Nations Centre for Trade Facilitation and Electronic Business: Commerce One is a member of the Techniques and Methods working group (TMWG). For more information go to UN/CEFACT's web site
UN/EDIFACT UN Trade Data Interchange Directory (EDIFACT): xCBL has been involved with the developers of Simpl-EDI and works closely with UN/EDIFACT representatives in the ebXML initiative. UN/EDIFACT provides one important source for the contents of new xCBL documents. For more information go to UN/EDIFACT's web site
ANSI X.12 xCBL is also based partly on the X12 definitions of standard messages. xCBL staff work closely with X12 staff in the ebXML initiative, and attends meetings concerning ebXML and XML in general. for more information go to ANSI X12's web site
W3C World Wide Web Consortium: Commerce One staff have been heavily involved in the Schema working group. For more information go to W3C's web site

Note that this list is not exhaustive. As much as possible, xCBL staff are involved in standards efforts that are important in the use of XML in business-to-business e-commerce.

Upcoming Events

back to top

ebXML

back to top

When: Aug 7 - 11, 2000, Where: San Jose, California, USA

Meeting number four in a series of six meetings spread out across 18 months. UN/CEFACT and OASIS established ebXML to develop a technical framework that will enable XML to be utilized in a consistent manner for the exchange of all electronic business data. Industry groups currently working on XML specifications are invited to participate in the 18-month project. For more information go to the ebXML web site

Commerce One is one of the cosponsors of this event.

XML Asia Pacific 2000

back to top

When: October 31-November 3, 2000, Where: Sydney Hilton Hotel, Sydney, Australia

XML/SGML Asia Pacific is the region's annual conference and exhibition on the applications, trends, and technologies that support XML, SGML, and related standards. The 2000 event includes sessions for managers and users alike. In addition there is an extra stream to specifically address the interests of software developers. One day tutorials and user group meetings precede the conference. For more information go to the GCA's web site .

ebXML

back to top

When: Nov 06-10, 2000, Where: Tokyo, Japan

UN/CEFACT and OASIS established ebXML to develop a technical framework that will enable XML to be utilized in a consistent manner for the exchange of all electronic business data. Industry groups currently working on XML specifications are invited to participate in the 18-month project

XML 2000

back to top

When: December 3-7, 2000, Where: Marriott Wardman Park, Washington, DC

This comprehensive XML event provides an in-depth look at the implementation and application of XML and related technologies. Conference includes the largest exposition of XML technology in the world. Tracks include E-commerce, Web innovations, publishing, content management/data management, Web graphics, management, and core technologies/standards/vocabularies. Pre-conference tutorials are also offered. A presentation by Commerce One will be featured with this event.

Where to Go for Help

back to top

When you are looking for general information about xCBL and related XML technology.

The SOX Tutorial (PDF)

XDK (includes CXP, the Sox Parser, and an integrated XSL transformation engine)

BizTalk JumpStart Kit

Documentation (includes the Document Guide and an HTML Structure Reference - these are also available in downloadable form.)

XML Publications and Resources

back to top

Publications written by individuals here at Commerce One are available at:http://www.commerceone.com/xml/publications/index.html

Talks of interest to xCBL users presented at XML Europe 2000, including a talk on designing schemas for B2B e-commerce, and a discussion of "Effective Strategies for Integrating Business on the Net Using XML" .

There is now a training course available for those interested in learning about how xCBL, SOX, and XML in general are used inside Commerce One's products.

Important Links

back to top

Commerce One's xCBL pages will give you lots of information about xCBL and XML technology that Commerce One uses. There are FAQ pages, Download pages, Documentation pages. Check it out!

BizTalk (you must register with the BizTalk repository before getting access)

Robin Cover's OASIS SGML/XML Web Page . Great place to find all kinds of information.

OASIS

OASIS Repository (XML.org)

For all of the latest and greatest when it comes to the

When looking for XML Schema information the w3c may be a good place to start.

Find information about Namespaces in XML at this link.

The Mission of ebXML is to provide an open XML-based infrastructure enabling the global use of electronic business information in an interoperable, secure and consistent manner by all parties. Go to this link to find out more: ebXML

And more news from ebXML go to their news link

There are several organizations that may prove helpful when doing research into the EDI to XML issues. You can try DISA or Data Interchange Standards Association and the related ASC X12 .

Job Opportunities

back to top

Commerce One is looking for individuals to fill the following positions working with xCBL, XML Messaging, and similar open-standards-based technology:

XML Experts: Experience working with SGML/XML for 3+ years, a solid knowledge of standard XML tools and related standards, and experience writing editing DTDs/XML Schemas. Knowledge of EDI a plus. Experience in standards activities desirable.

XML Developers: Experience developing SGML/XML applications using standard tools/programming languages: XSL, Python, Java, Perl, etc. Knowledge of distributed computing and/or relational/object database technology a plus.

XML Technology Marketers: Experience with product management and standards promotion; solid knowledge of the capabilities of applied XML technology.

Business Analysts: Experience with business analysis for enterprise information systems; knowledge of Internet technology and the capabilities of applied XML technology a plus.

Document Engineering Program Manager: Combination of strong technology and software development skills, along with excellent process and interpersonal skills for coordination of projects across product lines.

We are also interested in hiring anyone with an interest in B2B e-commerce, and a background in SGML/XML and related technologies. Please send resumes and/or questions to: xcbl@commerceone.com . We will consider having people in some positions working remotely.

Subscription

back to top

Subscription to this newsletter is through Commerce One. To subscribe or unsubscribe, please send an email to: xcbl@commerceone.com . Include your name, company name, and address along with your email address. Use the phrase "xCBL Mailing List" in the subject field, followed by the phrase "Subscribe" or "Unsubscribe".

About the xCBL User's Group Newsletter

back to top

The xCBL User's Group Newsletter is produced using XML. If you would prefer to receive it in raw form, drop us a line.

Co-Editors: Arofan Gregory, Lisa Seaburg, Terry Allen

Designer: Lisa Seaburg

Contributors: Brian Hayes, David Burdett, Arofan Gregory, Lisa Seaburg, Matthew Fuchs, Dirk Dougherty, Terry Allen, Bob Glushko, Mette Hedin

 

 
HOME | ABOUT xCBL | xCBL4.0 | xCBL3.5 | EARLIER VERSIONS | DEVELOPMENT RESOURCES | FAQ | LINKS | CONTACT US

License Information - Copyright © 2000
For problems or questions regarding this site, contact xcblwebmaster@commerceone.com.