IBM®
本文へジャンプ
    Japan [変更]    ご利用条件
 
 
検索範囲検索:    
    ホーム    製品    サービス & ソリューション    サポート & ダウンロード    マイアカウント    
skip to main content

developerWorks Japan  >  XML  >

XML的思索: Universal Business Language (UBL)

XMLビジネス・フォーマットの宝玉を探る

developerWorks
ページオプション

JavaScript を要するドキュメントオプションは表示されません

原文はこちら

原文はこちら


レベル: 初級

Uche Ogbuji (uche@ogbuji.net), Principal Consultant, Fourthought, Inc.

2003年 2月 01日

Universal Business Language (UBL) は、ビジネス用のXMLフォーマットの混とんとした世界を統一するための、野心的な試みです。最近、UBLを推進するグループが、一般からのレビューを受けるために最初の実動製品をリリースしました。今回の記事で、Uche Ogbujiは、UBLに関する最初の詳しい検討を行っています。

Universal Business Language (UBL) OASIS技術委員会は、私が以前の記事で報告したように、2001年10月17日に発表されました。UBLは、大規模な組織だけでなく、中小規模の組織の立場も考慮して設計された、商取り引き用の文書ライブラリーです。UBLを推進する委員会 (UBL TC) は、彼らの抱負を表す、すぐれた要約を発表しました。

UBL TCの目的は、XMLスキーマの既存ライブラリーに変更を加え、他の既存XMLビジネス・ライブラリーの最もすぐれた機能を組み合わせることにより、XMLビジネス文書 (購買注文、送り状、その他) の標準ライブラリーを開発することです。TCは、その後で、共通UBLソース・ライブラリーに変換規則を適用してコンテキスト特定のビジネス・スキーマを生成するための、メカニズムを設計する予定です。UBLは、ライセンスやその他の料金なしで誰でも自由に使用することのできる、エレクトロニック・コマースのための国際標準になることが見込まれています。

UBL TCは最近、一般的なレビューを受けるために、最初の主要な製品であるUBL Library Content 0p70を作成しました。ホーム・ページからレビュー・パッケージをダウンロードすることができます (参考文献を参照)。興味のある方は、UBLをじっくり吟味して、UBL TCにコメントを寄せてください。この製品は、使用料なしで使うことができ、知的所有権による制約を回避するために、あらゆる努力が払われています。このように重要な成果がこれほど自由に使用できることは、めったにない公共の利益であり、これを推進することにより、私たちすべてが多くのものを得られるはずです。今回のリリースに含まれている素材は、最終的な形式のものではありません。これらは、今年の中ごろに仕上げられる予定であり、しかもそのときに完成するのは最終的なUBL素材のごく一部にすぎないため、コメントを寄せたり、開発に参加したりする時間は十分にあります。UBLとそれに類似したイニシアチブに関する一般的な予備知識、およびこうしたイニシアチブを推進する中核となっている事情を知るためには、このコラムにおける最近のいくつかの記事を読み返すことをお勧めします。


UBLのお披露目

UBLに関して最初に注意しなければならないことは、それが非常に大規模で、非常に包括的であることです。最初のリリースは、5.6 MB ZIPファイルの形で行われ、最も共通的なビジネス・フォームと思われるもの (そしてまた、XML文書としておそらく最も頻繁に提供されるもの) に対応しています。具体的には、以下の取り引きのための仕様が含まれています。

  • 注文
  • 単純な形式および複雑な形式による注文への応答
  • 注文の取り消し
  • 発送案内 (出荷通知とも呼ばれています)
  • 受領案内
  • 送り状

基本的なビジネス概念の集まりにより、上記の仕様のための構築ブロックが作られます。これらは基本ビジネス情報エンティティー (BBIE) と呼ばれ、共通UBLスキーマではコア・コンポーネント・タイプ (CCT) として表現されます。BBIEのほかに、さまざまな仕様により、独自に特殊化されたビジネス情報エンティティー (BIE) が定義されます。これらはUBLの概念モデルを構成し、ビジネス概念をクラスおよびアソシエーションに編成します。UBL概念モデルは、Unified Modeling Language (UML) やエンティティー/リレーショナル・モデリングなどの、他のモデリング・システムに基づいています。実際に、UBLはUMLを使用して概念モデルの高水準ビューを提供します。

ただし、具体的な詳細はすべてスプレッドシートで管理されます。そう、スプレッドシートです。つまり、ユーザー・フレンドリーな情報管理として代表的な、お手本のような方法です。UBL TCは、概念の詳細を維持するためには、スプレッドシートが最も用途が広く、管理が容易であると考えました。UMLクラス・ダイアグラムは、こうしたスプレッドシートから生成されます。スプレッドシートはMicrosoft Excelフォーマットで提供されていますが、私はこれをOpenOffice.org で問題なくオープンすることができました。UMLダイアグラムは単純なGIFの形で提供されています。

ゲームのルール

こうした概念モデルは、関連するビジネス文書のためのXMLスキーマの基礎となります。これらのスキーマを派生させるプロセスは、非常に厳密です。UBL TCは、UBL Naming and Design Rules (命名および設計ルール、NDR) のための小委員会を設けました。この小委員会は、UBL XMLコンポーネントの命名および全体的な設計のためのルールに関する、73ページにも及ぶ包括的な文書を作成しました。これらのルールは、UBLに含まれる広範なXMLコンポーネント間で整合性を確保するために設定されたものです。UBLの命名ルールの例を次に示します。

XML構造の名前にはcamel-caseを使用して、名前に含まれる各語の先頭を大文字にし、その後に小文字を続けなければならない (例: AmountContentType)....

XMLの設計ルールの例を次に示します。

オブジェクト・クラスに基づくそれぞれの複合タイプ定義では、オブジェクト・クラスの各プロパティーが要素宣言に反映され、構文に中立なモデルの詳細によってコンテンツ・モデル内のカーディナリティーと位置決めが決定されるような方法で、コンテンツ・モデルを定義しなければならない。

上記のデータ・タイプ化機能は、W3C XML Schemas (WXS) データ・タイプに関して言及した部分であり、実際に、WXSがUBLの規範スキーマ言語として選択されています。2番目のフォーマットとして、Abstract Syntax Notation number One (ASN.1) スキーマで文書タイプ (転送フォーマット) が定義されています。ASN.1は1980年代の半ばから存在するもので、通信プロトコルで使用されるデータ・フォーマットを指定するためのISO標準となっています。UBL用のASN.1スキーマは、広範なASN.1ツールのために開放され、また、ASN.1のPacked Encoding Rulesを使用してUBLをきわめて効率よくエンコードできるようになっています。Packed Encoding Rulesは、実質的にはバイナリー・エンコード方式であるため、非常にコンパクトになっています。実際、XMLに関する多くの議論では、XMLの冗長性が問題視されてXMLのバイナリー・シリアライゼーションが提案されるような場合、気の利いた人々は常にASN.1へのマッピングを提案しています。UBL TCはこの助言に留意しています。




上に戻る


ビジネス文書の見栄え

一般的なレビューのためのパッケージには、UBL文書を (XSL-FOを使用して) 人間の目で読みやすいHTMLまたはPDFに変換するためにCrane Softwrights Ltd. によって開発された、XSLスタイル・シートのセットが含まれています。その結果は、トラックの運転手が積み降ろしホームに進入して積荷を下ろす際に、安全保護要員に提示する文書のようなものになっています。このスタイル・シートのパッケージには、サンプルのXML UBL文書も含まれています (testサブディレクトリーにあります)。リスト1 は、そのうちの1つから抜粋したもので、注文取り引きの例です。


リスト1. UBL注文取り引き文書の例
                
<po:Order xmlns:po="urn:oasis:names:tc:ubl:Order:1.0:0.70"
          xmlns="urn:oasis:names:tc:ubl:CommonAggregateTypes:1.0:0.70">
  <ID>4500004875</ID>
  <IssueDate>2001-12-17</IssueDate>
<!-- Cut to the buyer info -->
  <BuyerParty>
    <ID>R300</ID>
    <PartyName>
      <Name>IDES Retail INC US</Name>
    </PartyName>
    <Address>
      <ID></ID>
      <Street>West Chester Pike</Street>
      <CityName>Parsippany</CityName>
      <CountrySub-EntityCode listID="3166-2" listAgencyID="ISO">NY</CountrySub-EntityCode>
      <Country>
        <Code listID="3166-1" listAgencyID="ISO">US</Code>
      </Country>
    </Address>
    <BuyerContact>
      <ID></ID>
      <Name>Joe Bloggs</Name>
    </BuyerContact>
  </BuyerParty>
<!-- Cut to the order line -->
  <OrderLine>
    <BuyersID></BuyersID>
    <Quantity unitCode="unit">10</Quantity>
    <Item>
      <ID>R100016</ID>
      <Description>Tuner X300</Description>
      <BasePrice>
        <PriceAmount currencyID="USD">350</PriceAmount>
      </BasePrice>
    </Item>
<!-- Cut to end -->
  </OrderLine>
</po:Order>

UBLは概念IDと、標準化されたボキャブラリーに大きく依存しています。取り引き文書には固有の数値IDが割り当てられ、すべてのBIEにIDを関連付けることができるようになっています。Country/Code 要素は、標準ボキャブラリーであるISO 3166 (International Country Code Standard) への参照を示しています。ただし、一般には、XMLフォーマットはかなり単純なものと考えて差し支えありません。




上に戻る


要約

私は、このコラムでUBLについて最後に述べたときには、UBLがビジネス向けのXMLボキャブラリーの混とんとした世界を統一するための決定打 になるのだろうかと、疑問に思っていました。UBLは確かに、支配的なフォーマットとなりうる多くの可能性を秘めています。UBLは非常に厳密に定義され、必要に応じて他の作業成果の利点を受け入れ、ロイヤリティーを無料に維持して広い範囲での採用と開発への参加を促しています。また、他の類似システムの開発作業が活気のない状態になっている中で、UBLの開発はきわめて活発に行われています。

とはいえ、ビジネスで使用されるさまざまなタイプの取り引きのすべてに適用できるようにUBLを拡張するためには、まだ多くの作業が必要です。例えば、EDIのANSI X12およびUN/EDIFACTフレーバーではそれぞれ、300を超える取り引きセットが定義されていますが、いくつかの業界でUBLが本格的に使用され始めるまでに、その多くをUBLで使用できるようにする必要があります。確かに、UBLの包括的なコア・モデルおよび拡張性によって管理することのできるボキャブラリーには、多くの重複部分がありますが、UBL TCの抱負を実現するためには、やるべきことがたくさん残っていることは間違いありません。それでも、UBLが今年の後半に仕上がればすぐに使用可能になる、以下のような便利な製品が、多数用意されています。

  • 共通ビジネス・フォームの初期セットとして使用できる、中核的な取り引きフォーマットのセット
  • 再使用可能な概念モデルおよびボキャブラリー
  • さまざまな規約から最良のアイデアを借用した、いくつかの設計慣行
  • UBLを処理するアプリケーションをブートストラップするのに十分な量のコード

ぜひ読者自身で詳しく検討し、UBL TCにアイデアをお寄せください。



参考文献



著者について

Photo of Uche Ogbuji

Uche Ogbuji は、次世代の Web 技術を専門とするサービスの会社である、Uli, LLC の代表者です。Ogbuji 氏は XML、RDF、およびナレッジ管理アプリケーション用のオープン・ソース・プラットフォームである 4Suite の開発リーダーであり、Versa RDF 照会言語の開発リーダーでもあります。ナイジェリア出身のコンピューター・エンジニア兼ライターで、米国コロラド州ボールダー在住です。彼に関して詳しくは、彼のブログである Copia を見てください。




記事の評価


サイト改善のため、ご意見をお寄せください。こちらのフォームからお願いいたします。



 


 


不充分・不完全である大変素晴らしい
 


この記事を共有する

del.icio.us del.icio.us newsing newsing FC2ブックマーク FC2ブックマーク
Choix! Choix! ニフティクリップ ニフティクリップ Yahoo!ブックマーク Yahoo!ブックマーク
MM/memo MM/memo CZブックマーク CZブックマーク livedoorクリップ livedoorクリップ
はてなブックマーク はてなブックマーク Buzzurl(バザール) Buzzurl(バザール)




上に戻る


    日本IBMについて プライバシー お問い合わせ