Universal Business Language 2.0

Publication Date

27 October 2005

Document identifier

wd-20051027-UBL-2.0

Editorial Status

This is the first draft (in progress) of the 2.0 index.html file.

Location

No URL yet.

Downloadable Package Location

No URL yet.

Editor

Oops, looks like it's going to be Jon Bosak.

Contributors

Members of the Technical Committee

Abstract

This specification defines the Universal Business Language version 2.0.

Status

This document is a [draft in progress] of the OASIS Universal Business Language (UBL) Technical Committee. The OASIS UBL Technical Committee invites interested parties to comment on this release using the comment link on the UBL TC web page:

http://www.oasis-open.org/committees/comments/form.php?wg_abbrev=ubl

Table of Contents

1 Introduction

2 Normative References

3 Terms and Definitions

4 Symbols and Abbreviations

5 UBL 2.0 Procurement Process

6 UBL 2.0 Schemas

Appendix A (Informative): Release Notes

Appendix B (Informative): UBL 2.0 Extended Procurement Process

Appendix C: Notices

1 Introduction

Since its approval as a W3C recommendation in 1998, XML has been adopted in a number of industries as a framework for the definition of the messages exchanged in electronic commerce. The widespread use of XML has led to the development of multiple industry-specific XML versions of such basic documents as purchase orders, shipping notices, and invoices.

While industry-specific data formats have the advantage of maximal optimization for their business context, the existence of different formats to accomplish the same purpose in different business domains is attended by a number of significant disadvantages as well.

The OASIS Universal Business Language (UBL) is intended to help solve these problems by defining a generic XML interchange format for business documents that can be extended to meet the requirements of particular industries. Specifically, UBL provides the following:

A standard basis for XML business schemas is expected to provide the following advantages:

UBL is designed to provide a universally understood and recognized commercial syntax for legally binding business documents and to operate within a standard business framework such as ISO 15000 (ebXML) to provide a complete, standards-based infrastructure that can extend the benefits of existing EDI systems to businesses of all sizes. UBL is freely available to everyone without legal encumbrance or licensing fees.

UBL schemas are modular, reusable, and extensible in XML-aware ways. As the first standard implementation of ebXML Core Components Technical Specification 2.01, the UBL Library is based on a conceptual model of information components known as Business Information Entities (BIEs). These components are assembled into specific document models such as Order and Invoice. These document assembly models are then transformed in accordance with UBL Naming and Design Rules into W3C XSD schema syntax. This approach facilitates the creation of UBL-based document types beyond those specified in this release.

The UBL 1.0 Order-to-Invoice process

At the core of UBL 2.0 is the same essential procurement process established in UBL 1.0. That process, based on eight basic document types shown in bold outline, is illustrated in the diagram below.

[ubl 1.0 order-to-invoice diagram]

Figure 1. UBL 1.0 Order-to-Invoice Business Process

Though much more limited in scope than traditional EDI message sets, the eight documents provided in UBL 1.0 are applicable to a very large number of real-world use cases and have been widely deployed. A description of this basic procurement process is contained in the UBL 1.0 Standard at http://docs.oasis-open.org/ubl/cd-UBL-1.0/#PROCURE.

New in UBL 2.0

Adoption of UBL 1.0 following ratification as an OASIS Standard in November 2004 has resulted in major inputs of new content beyond the eight basic order-to-invoice business documents specified in the original release. In particular, contributions from representatives of government procurement, taxation, and transportation agencies in Europe, Asia, and the United States have resulted in greatly expanded pre-order and post-invoice capabilities together with the addition of several transport-related document types.

New pre-order UBL document types: Request for Catalogue, Reject Request for Catalogue, Catalogue, Catalogue Replacement, Catalogue Deletion, Catalogue Item Update, Catalogue Pricing Update, Negative Receipt, Positive Receipt, Request for Classification Scheme, Reject Request for Classification Scheme, Classification Scheme, Request for Quotation, Quotation
New post-invoice UBL document types: Credit Note, Account Response, Self-billed Invoice, Self-billing Credit Note, Debit Note, Remittance Advice, Statement of Account
New UBL transport documents: Bill of Lading, Waybill, Forwarding Instruction, Certificate of Origin

The role of these new documents is described in further detail below.

Other differences between UBL 1.0 and UBL 2.0

While every effort has been made to keep UBL 2.0 backward-compatible with UBL 1.0, several changes resulting from experience with 1.0 are extensive enough to make this a major release instead of a minor version update. These changes must be considered in upgrading existing UBL-based systems to take advantage of the greatly expanded scope of UBL 2.0.

Global scoping. In UBL 1.0, the great majority of element types were globally scoped, the only exceptions being ID and Code. In UBL 2.0, all types are globally scoped.
Code lists. The UBL mechanism for specifying and validating code lists has been completely revamped using the power of Schematron (ISO/IEC 19757-3) to make it easier to modify code lists and perform basic business rule checking. See the section on code lists below.
Element renaming. Several tag names have been changed to reflect actual practice. These include: [exhaustive list goes here]

Supporting Materials

As an aid to deployment, the standard XML schemas in UBL 1.0 were accompanied by a large quantity of supporting materials, most of them included in the UBL 1.0 release package as informative appendices and the remainder available from sites referenced in the release package. These materials included UML class diagrams of the document components on which the schemas were based, UML class diagrams describing all the document assemblies, spreadsheet models defining the document assemblies, descriptions of example implementations, sample instances of each of the UBL documents used in the example implementations, formatting specifications for the United Nations Layout Keys corresponding to each of the UBL basic business document types, and an ASN.1 specification to enable the transmission of UBL messages in binary form. Also included were documents describing the UBL 1.0 Naming and Design Rules, the UBL 1.0 code list mechanism, and UBL 1.0 customization guidelines.

Due to the greatly increased scope of UBL 2.0, the supporting documents and informative materials corresponding to those in the UBL 1.0 Standard are being provided in a separate UBL 2.0 Support Package in order to reduce scheduling dependencies between the normative and informative parts of the specification. The Support Package is being developed in parallel with the UBL 2.0 specification and will be made available after ratification of UBL 2.0 as an OASIS Standard.

UBL Development Methodology

The methods used to develop the UBL content models and schemas were described in detail in the UBL 1.0 Standard. UBL 2.0 uses essentially the same methodology employed in the final round of UBL 1.0 development, a description of which can be found at http://docs.oasis-open.org/ubl/cd-UBL-1.0/#METHOD.

2 Normative References

[ASN.1] ITU-T X.680-X.683: Abstract Syntax Notation One (ASN.1); ITU-T X.690-X.693: ASN.1 encoding rules
http://www.itu.int/ITU-T/studygroups/com17/languages/X.680-X.693-0207w.zip
http://www.oasis-open.org/committees/download.php/6320/X.680-X.693-0207w.zip
[CCTS] UN/CEFACT ebXML Core Components Technical Specification 2.01
http://www.oasis-open.org/committees/download.php/6232/CEFACT-CCTS-Version-2pt01.zip
[ISO11179] ISO/IEC 11179-1:1999 Information technology — Specification and standardization of data elements — Part 1: Framework for the specification and standardization of data elements
http://www.oasis-open.org/committees/download.php/6233/c002349_ISO_IEC_11179-1_1999%28E%29.pdf
[RFC2119] Key words for use in RFCs to Indicate Requirement Levels
http://www.faqs.org/rfcs/rfc2119.html
http://www.oasis-open.org/committees/download.php/6244/rfc2119.txt.pdf
[SCH] Document Schema Definition Languages (DSDL) - Part 3: Rule-based validation (Schematron)
http://www.iso.ch/iso/en/CatalogueDetailPage.CatalogueDetail?CSNUMBER=40833&scopelist=PROGRAMME
[UML] Unified Modeling Language Version 1.5 (formal/03-03-01)
http://www.omg.org/docs/formal/03-03-01.pdf
http://www.oasis-open.org/committees/download.php/6240/03-03-01.zip
[XML] Extensible Markup Language (XML) 1.0 (Second Edition),W3C Recommendation 6 October 2000
http://www.w3.org/TR/2000/REC-xml-20001006
http://www.oasis-open.org/committees/download.php/6241/REC-xml-20001006.pdf
[XSD1] XML Schema Part 1: Structures, W3C Recommendation 2 May 2001
http://www.w3.org/TR/xmlschema-1/
http://www.oasis-open.org/committees/download.php/6248/xsd1.html
[XSD2] XML Schema Part 2: Datatypes, W3C Recommendation 2 May 2001
http://www.w3.org/TR/xmlschema-2/
http://www.oasis-open.org/committees/download.php/6247/xsd2.html

3 Terms and Definitions

[Many of these will be eliminated after this revision is done]

Assembly model
A tree-structured model that can be implemented as a document schema.
Class diagram
A graphical notation used by [UML] to describe the static structure of a system, including object classes and their attributes and associations.
Component model
A representation of normalized data components describing a potential network of associations and roles between object classes.
Context
The circumstance or events that form the environment within which something exists or takes place.
Dependency diagram
A refinement of a class diagram that emphasizes the dependent associations between object classes.
Document
A set of information components that are interchanged as part of a business transaction; for example, in placing an order.
Functional dependency
A means of aggregating components based on whether the values of a set of properties change when another set of properties changes, that is, whether the former is dependent on the latter.
Normalization
A formal technique for identifying and defining functional dependencies.
Spreadsheet model
A representation of an assembly model in tabular form.
XSD schema
An XML document definition conforming to the W3C XML Schema language [XSD1][XSD2].

The terms Core Component (CC), Basic Core Component (BCC), Aggregate Core Component (ACC), Association Core Component (ASCC), Business Information Entity (BIE), Basic Business Information Entity (BBIE), and Aggregate Business Information Entity (ABIE) are used in this specification with the meanings given in [CCTS].

The terms Object Class, Property Term, Representation Term, and Qualifier are used in this specification with the meanings given in [ISO11179].

The keywords MUST, MUST NOT, REQUIRED, SHALL, SHALL NOT, SHOULD, SHOULD NOT, RECOMMENDED, MAY and OPTIONAL, when they appear in this document, are to be interpreted as described in [RFC2119].

4 Symbols and Abbreviations

ABIE
Aggregate Business Information Entity
ACC
Aggregate Core Component
ASBIE
Association Business Information Entity
ASCC
Association Core Component
BBIE
Basic Business Information Entity
BCC
Basic Core Component
BIE
Business Information Entity
CC
Core Component
EAN
European Article Numbering Association
EDI
Electronic Data Interchange
ISO
International Organization for Standardization
NDR
UBL Naming and Design Rules (see Appendix B.4)
UML
Unified Modeling Language [UML]
UN/CEFACT
United Nations Centre for Trade Facilitation and Electronic Business
XML
Extensible Markup Language [XML]
XSD
W3C XML Schema Language [XSD1] [XSD2]

5 UBL 2.0 Procurement Process

6 UBL 2.0 Schemas

The UBL 2.0 XSD schemas are the only normative representations of the UBL 2.0 document types and library components.

All of the UBL 2.0 XSD schemas are contained in the xsd/ subdirectory of the UBL 2.0 release package (see Appendix *** AAA *** for more information regarding the structure of the 2.0 release package and Section *** NNN *** for information regarding dependencies among the schema modules). The xsd/ directory is further subdivided into xsd/maindoc/, xsd/common/, and xsd/codelist/ subdirectories.

For convenience in implementing the schemas, a parallel (and technically non-normative) “runtime” set with the annotation elements stripped out is provided in the xsdrt/ directory.

6.1 UBL Document Schemas ****** awaiting revision ******

The XSD schemas defining the eight basic document types that support the generic UBL 1.0 order-to-invoice process are located in the xsd/maindoc/ directory, as listed below.

Order
xsd/maindoc/UBL-Order-1.0.xsd
Order Response
xsd/maindoc/UBL-OrderResponse-1.0.xsd
Order Response Simple
xsd/maindoc/UBL-OrderResponseSimple-1.0.xsd
Order Change
xsd/maindoc/UBL-OrderChange-1.0.xsd
Order Cancellation
xsd/maindoc/UBL-OrderCancellation-1.0.xsd
Despatch Advice
xsd/maindoc/UBL-DespatchAdvice-1.0.xsd
Receipt Advice
xsd/maindoc/UBL-ReceiptAdvice-1.0.xsd
Invoice
xsd/maindoc/UBL-Invoice-1.0.xsd

6.2 UBL Common Schemas ****** awaiting revision ******

The xsd/common directory contains six schemas referenced by the eight document schemas in xsd/maindoc. Two of these common schemas contain the UBL library of reusable data components from which the main document schemas are assembled; three contain definitions needed to implement [CCTS] conformance; and one provides a consistent format for schema metadata. The name of each schema file together with a brief description of its contents is given below.

6.2.1 Reusable BIE Schemas

Common Basic Components
xsd/common/UBL-CommonBasicComponents-1.0.xsd
This schema defines the global Basic Business Information Entities (BBIEs) that are used throughout UBL, serving, in effect, as a “global BBIE type database” for constructing documents. As specified by the UBL Naming and Design Rules, this schema does not include BBIEs having Code or Identifier datatypes; these are defined locally wherever they are used.
Common Aggregate Components
xsd/common/UBL-CommonAggregateComponents-1.0.xsd
This schema defines the Aggregate Business Information Entities (ABIEs) that are used throughout UBL, serving, in effect, as an “ABIE type database” for constructing the main documents.

6.2.2 Reusable Datatype Schemas

Core Component Types
xsd/common/UBL-CoreComponentTypes-1.0.xsd
This schema provides Core Component Types as defined by [CCTS]. These types are used to construct higher-level datatypes in a standardized and consistent manner. This schema should not be modified.
Unspecialized Datatypes
xsd/common/UBL-UnspecializedDatatypes-1.0.xsd
This schema defines Unqualified Data Types for primary and secondary representation terms as specified by [CCTS]. Derived from Core Component Types, these XSD complexType structures are the basic data types from which all other data types must derive. This schema should not be modified.
Specialized Datatypes
xsd/common/UBL-SpecializedDatatypes-1.0.xsd
This schema provides Qualified Data Types as defined by [CCTS]. These XSD complexType structures are derived from Unspecialized Datatypes by extension, restriction, and other contextual constraints, such as facets. The Specialized Datatypes have been customized for the UBL 1.0 procurement process and may be further extended to support additional datatypes required for other business contexts.

NOTE: The terms “specialized” and “unspecialized” are used instead of the terms “qualified” and “unqualified” in order to avoid confusion with qualified and unqualified names in [XSD1][XSD2].

6.2.3 Documentation Metadata Schema

Core Component Parameters
xsd/common/UBL-CoreComponentParameters-1.0.xsd
This schema defines the structure of the annotation/documentation sections that appear in all the other schemas, providing a consistent format for metadata such as object class, representation terms, semantic descriptions, and other supplementary information.

6.3 UBL Code List Schemas ****** awaiting revision ******

The thirteen code list schemas required for UBL 1.0 are included in the xsd/codelist directory. These code list schemas allow component instances conformant to any of the main document schemas to be validated against code list values. See Appendix E for further information about the form of representation used for UBL code lists.

Acknowledgement Response Code
xsd/codelist/UBL-CodeList-AcknowledgementResponseCode-1.0.xsd
Allowance Charge Reason Code
xsd/codelist/UBL-CodeList-AllowanceChargeReasonCode-1.0.xsd
Channel Code
xsd/codelist/UBL-CodeList-ChannelCode-1.0.xsd
Chip Code
xsd/codelist/UBL-CodeList-ChipCode-1.0.xsd
Country Identification Code
xsd/codelist/UBL-CodeList-CountryIdentificationCode-1.0.xsd
Currency Code
xsd/codelist/UBL-CodeList-CurrencyCode-1.0.xsd
Document Status Code
xsd/codelist/UBL-CodeList-DocumentStatusCode-1.0.xsd
Latitude Direction Code
xsd/codelist/UBL-CodeList-LatitudeDirectionCode-1.0.xsd
Line Status Code
xsd/codelist/UBL-CodeList-LineStatusCode-1.0.xsd
Longitude Direction Code
xsd/codelist/UBL-CodeList-LongitudeDirectionCode-1.0.xsd
Operator Code
xsd/codelist/UBL-CodeList-OperatorCode-1.0.xsd
Payment Means Code
xsd/codelist/UBL-CodeList-PaymentMeansCode-1.0.xsd
Substitution Status Code
xsd/codelist/UBL-CodeList-SubstitutionStatusCode-1.0.xsd

6.4 Schema Dependencies ****** awaiting revision ******

The following diagram shows the dependencies among the schema modules comprising a UBL 1.0 document schema. Note that (as in the other UML diagrams used in this release) dependent components point to the components upon which they depend.

[schema dependency diagram]

Figure 2. UBL Schema Dependencies

Appendix A (Informative): Release Notes

A.1 Availability

Online and downloadable versions of this release are available from the locations specified at the top of this document.

A.2 Package Structure ****** awaiting revision ******

The UBL 1.0 specification is published as a zip archive named cd-UBL-1.0.zip. Unzipping this archive creates a directory named cd-UBL-1.0 containing a master hypertext document (this document, index.html) and a number of subdirectories. The files in these subdirectories, linked to from index.html, contain the various normative and informational pieces of the 1.0 release. A description of each subdirectory is given below.

art/
Diagrams and illustrations used in this specification
doc/
Supporting documents created by the UBL TC and referenced in this specification
xsd/
XSD schemas; see Section 6
xsdrt/
“Runtime” XSD schemas; see Section 6

A.3 Tools ****** awaiting revision ******

UBL has inspired the creation of both free and commercial UBL tools. A list of tools currently available for UBL can be found on the web page of the UBL Software Subcommittee:

http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=ubl-ssc.

A.4 Support

UBL is a volunteer project of the international business community. Inquiries regarding UBL may be posted to the public ubl-dev list, archives for which are located at

http://lists.oasis-open.org/archives/ubl-dev/

Subscriptions to ubl-dev can be made through the OASIS list manager at

http://lists.oasis-open.org/ob/adm.pl

A.5 Recursive Structures

Certain components in the library allow recursive nesting. For example, a Package may contain other Packages, a Delivery may specify another Delivery, etc. These are legitimate business data structures. Most real-world applications will limit the depth of recursion in such structures, but XSD schemas are incapable of expressing this constraint. Implementors should be aware of this and may wish to set limits on the depth of recursive structures in their applications.

Appendix B (Informative): UBL 2.0 Extended Procurement Process

The process in which the UBL 2.0 procurement documents are intended to function is described in ./doc/extended-process.pdf [*** needs to be replaced by final document ***]. Note that this description is informative, not normative; it is possible to use UBL 2.0 document types in contexts that fall outside of the process model assumed during their development.

Appendix C: Notices

Copyright © 2001-2005 OASIS Open, Inc. All Rights Reserved.

OASIS takes no position regarding the validity or scope of any intellectual property or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; neither does it represent that it has made any effort to identify any such rights. Information on OASIS's procedures with respect to rights in OASIS specifications can be found at the OASIS website. Copies of claims of rights made available for publication and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementors or users of this specification, can be obtained from the OASIS Executive Director.

OASIS invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights which may cover technology that may be required to implement this specification. Please address the information to the OASIS Executive Director.

This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to OASIS, except as needed for the purpose of developing OASIS specifications, in which case the procedures for copyrights defined in the OASIS Intellectual Property Rights document must be followed, or as required to translate it into languages other than English.

The limited permissions granted above are perpetual and will not be revoked by OASIS or its successors or assigns.

This document and the information contained herein is provided on an “AS IS” basis and OASIS DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.