<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
    <title>XMLノート：コラム</title>
    <link rel="alternate" type="text/html" href="http://www.infoteria.com/jp/xmlnote/column/" />
    <link rel="self" type="application/atom+xml" href="http://www.infoteria.com/jp/xmlnote/column/atom.xml" />
   <id>tag:www.infoteria.com,2008:/jp/xmlnote/column/8</id>
    <link rel="service.post" type="application/atom+xml" href="http://blog.infoteria.com/mtr/mt-atom.cgi/weblog/blog_id=8" title="XMLノート：コラム" />
    <updated>2007-11-09T02:45:38Z</updated>
    
    <generator uri="http://www.sixapart.com/movabletype/">Movable Type  3.34</generator>
 
<entry>
    <title>第７回『連載の最後に --標準仕様の隙間--』</title>
    <link rel="alternate" type="text/html" href="http://www.infoteria.com/jp/xmlnote/column/doc/xml_point_xml_041125.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://blog.infoteria.com/mtr/mt-atom.cgi/weblog/blog_id=8/entry_id=384" title="第７回『連載の最後に --標準仕様の隙間--』" />
    <id>tag:renew.infoteria.com,2004:/jp/xmlnote/column//8.384</id>
    
    <published>2004-11-25T04:00:00Z</published>
    <updated>2007-11-09T02:45:38Z</updated>
    
    <summary>今回は連載の最終回ということで私自身が仕事のかたわらで、標準仕様の隙間をどうやって頭の中で整理して埋めていったかをご参考までにご紹介したいと思います。</summary>
    <author>
        <name>木村 達哉</name>
        
    </author>
            <category term="xml_point" />
    
    <content type="html" xml:lang="ja" xml:base="http://www.infoteria.com/jp/xmlnote/column/">
        これまで6回にわたってXMLのトリビアをお届けして参りましたが、ご参考になりましたでしょうか。

第６回 『XMLメディアタイプ』 (2004/10/28)
第５回 『XML文書の空白処理』 (2004/09/30)
第４回 『DOMと名前空間 』 (2004/09/02)
第３回 『名前空間と要素値、属性値 』 (2004/08/05)
第２回 『 standalone=&quot;yes&quot; ／ &quot;no&quot; 』 (2004/07/15)
第１回 『要素内容と混合内容』 (2004/06/17)

XMLは仕様の上に成り立つ標準技術です。仕様の初版では曖昧性や解釈の違いなどもあるかも知れませんが、仕様書自体も版を重ねていますし、前回のWS-IのBasic ProfileのようにSOAP 1.1やWSDL 1.1の曖昧性を補う役割の文書もあります。公開された標準技術は誰もがいつでも使える安心感があります。仕様に曖昧性などがあったとすれば、それを実装する人、使用する人が上手にケアすることによって、標準技術のメリットを大いに享受したいものです。

今回は連載の最終回ということで私自身が仕事のかたわらで、標準仕様の隙間をどうやって頭の中で整理して埋めていったかをご参考までにご紹介したいと思います。

実はコラムでお届けした内容は、ほとんどのものが、XML教育に携わっている間の皆さんからの質問がベースになっています。これまでさまざまな質問がありましたが、それに回答するべくいろいろ調べていくうち自分の中でもだんだん内容が整理されてきて、今回ある程度まとまった形でお届けすることができました。

質問をいただいたときにはその都度調べながら回答していくわけですが、その後ふと考えてみると、さらにこういう場合はどうなんだろうといった、また新しい疑問が自分の中に生まれてくることはよくあります。そのとき時間があれば調べてみればよいのですが、なかなかそうもいきません。そんなときはとりあえずメモに残しておき、解決を先延ばしにします。知りたい内容をピンポイントで探してもすぐに見つかる確率は小さいですが、その後の作業の合間にその知りたいことに遭遇する確率は大きいからです。つまり時間が解決してくれることは多いです。あとはまとまった時間がとれたときに、メモに残した疑問点を集中的に解決するのも効果的です。

またさらに、この連載コラムを書いたことも自分自身の勉強になりました。勉強というより、頭の中をすっきりと整理させることができました。知っているつもりでも文章にまとめるとなると、またまた新しい疑問が出てくることもしばしばです。今回ばかりは毎回の締め切りがありますので、先延ばしというわけにはいきませんが。。
        
    </content>
</entry>
<entry>
    <title>第６回 『XMLメディアタイプ』</title>
    <link rel="alternate" type="text/html" href="http://www.infoteria.com/jp/xmlnote/column/doc/xml_point_mediatype_041028.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://blog.infoteria.com/mtr/mt-atom.cgi/weblog/blog_id=8/entry_id=383" title="第６回 『XMLメディアタイプ』" />
    <id>tag:renew.infoteria.com,2004:/jp/xmlnote/column//8.383</id>
    
    <published>2004-10-28T04:00:00Z</published>
    <updated>2006-05-08T14:39:14Z</updated>
    
    <summary>インターネット上でXML文書の送受信を行う際の、XMLのメディアタイプを定める標準文書として、RFC3023があります。ここで定められているメディアタイプのうち、「text/xml」と「application/xml」の違いに触れてみます。</summary>
    <author>
        <name>木村 達哉</name>
        
    </author>
            <category term="xml_point" />
    
    <content type="html" xml:lang="ja" xml:base="http://www.infoteria.com/jp/xmlnote/column/">
        
        インターネット上でXML文書の送受信を行う際の、XMLのメディアタイプを定める標準文書として、RFC3023があります。ここで定められているメディアタイプのうち、「text/xml」と「application/xml」の違いに触れてみます。

まず「text/xml」は、それが人が読むための文書であることを示し、「application/xml」の場合は、人が読むためのものではなく、アプリケーションによって処理されることを示しています。そしてこれに伴って、文字エンコーディング処理に関する違いがあります。メディアタイプとともにcharsetパラメータを記述することによって、XML文書の文字エンコーディングを直接知らせることができますが、charsetパラメータを省略した場合に「text/xml」と「application/xml」で、その扱い方が異なりますので注意します。

charsetパラメータを記述しなかったとき、「text/xml」の場合、その文字エンコーディングは「us-ascii」として扱われます。「application/xml」の場合は、受け取ったアプリケーション、つまりXMLプロセッサがその文字エンコーディングを識別します。

ここでさらに、SOAP 1.1でのHTTPバインディングにおいて、そのメディアタイプを「text/xml」と定めている点に注意します。日本などでは「us-ascii」以外の文字エンコーディングを使用するXMLが多く、このときcharsetパラメータを記述しなかった場合、誤った文字エンコーディングとして処理されてしまうことになります。もしも国際化対応を考慮していないアプリケーションの場合（想定される文字エンコーディングとして「us-ascii」のみを前提とし、）常にcharsetパラメータを省略するような実装になっている可能性もあると思います。

このような、Webサービスに関する運用上の不具合と相互運用性に関する問題点を削減する目的で、Web Services Interoperability Organization（WS-I）が、Basic Profileとして実装時の基準となるものを定めており、そして多くのアプリケーションが、Basic Profileに対応しつつあります。その中の4.1.11節では、上記の問題を解消するため次のような基準を定めています。

●基準（4.1.11節より）
・（SOAP）メッセージは、UTF-8 又は UTF-16 のいずれかの文字エンコーディングでシリアライズされなければならない（R1012）。
・（SOAP）メッセージのエンベロープのメディアタイプは、charsetパラメータを使って正しい文字エンコーディングを指定しなければならない（R1018）。
    </content>
</entry>
<entry>
    <title>XMLマスター - 「取得したい資格」第１位の理由は?</title>
    <link rel="alternate" type="text/html" href="http://www.infoteria.com/jp/xmlnote/column/doc/xml_column_xmlmaster_041014.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://blog.infoteria.com/mtr/mt-atom.cgi/weblog/blog_id=8/entry_id=381" title="XMLマスター - 「取得したい資格」第１位の理由は?" />
    <id>tag:renew.infoteria.com,2004:/jp/xmlnote/column//8.381</id>
    
    <published>2004-10-14T04:00:00Z</published>
    <updated>2006-05-08T14:39:14Z</updated>
    
    <summary>＠IT自分戦略研究所の調査で、XMLマスターが今年も「エンジニアが取得したい資格」の第１位に選ばれた。この調査は、＠IT自分戦略研究所が読者を対象に毎年行っているアンケートであり、今年はこの8月に実施されたものだ。それでは、XMLマスターが2001年10月の創設後3年連続して取得意向第1位と人気が高い理由を探ってみよう。</summary>
    <author>
        <name>平野 洋一郎</name>
        
    </author>
            <category term="xml_column" />
    
    <content type="html" xml:lang="ja" xml:base="http://www.infoteria.com/jp/xmlnote/column/">
        <![CDATA[<img src="/jp/xmlnote/column/img/xmlmaster1.gif" align="right" />　<a href="http://jibun.atmarkit.co.jp/" target="_blank">＠IT自分戦略研究所</a>の調査で、XMLマスターが2002年から3年連続で「エンジニアが取得したい資格」のベンダーニュートラル資格部門の第１位に選ばれた。この調査は、<a href="http://jibun.atmarkit.co.jp/" target="_blank">＠IT自分戦略研究所</a>が読者を対象に毎年行っているアンケートであり、今年はこの8月に実施され914名の回答を得ている。資格に関する調査は、国家/公的資格、ベンダーニュートラル資格、ベンダー資格に分けられており、XMLマスターの取得意向はベンダーニュートラル部門でUML、Linux、PMPなどの他の資格を引き離して圧倒的な１位である（図１）。]]>
        <![CDATA[<img src="/jp/xmlnote/column/img/xmlmaster2.gif" align="right" />　XMLマスターの2つの資格個別に見ると、「XMLマスター：ベーシック」の取得意向が19.0%、「XMLマスター：プロフェッショナル」の取得意向が15.4%となっている。この取得意向は、ベンダー資格で最も取得意向の高い「ORACLE MASTER Silver」の18.6%、「ORACLE MASTER Gold」の11.7%を上回る数字である（図２）。

　さて、それではXMLマスターが2001年10月の創設後3年連続して取得意向第1位と人気が高い理由を探ってみよう。

<b>理由1：高いXML技術習得意欲</b>

　資格の取得意向の高さの理由としてまず挙げられるのは、当然のことながらXMLマスターがスキル測定するXML技術そのものの習得ニーズの高さである。

　XML技術が、これから様々なIT技術の基盤技術となっていき数多くのエンジニアが必要とされるのは想像に難くないが、実際のエンジニアの技術習得意向はどうなのであろうか。<a href="http://jibun.atmarkit.co.jp/" target="_blank">＠IT自分戦略研究所</a>の同調査では、認定試験だけでなく、技術そのものの習得状況についても調査している。

Q: 現在あなたが保有している技術スキルは何ですか? 
Q: これからあなたが身につけたい技術スキルは何ですか? 

<img src="/jp/xmlnote/column/img/xmlmaster3.gif" align="right" />　これらの設問ではあらかじめ設定されたIT技術をチェック式で複数回答する。その結果、それぞれの技術に関しての習得済みのエンジニアのパーセントと、習得したいエンジニアのパーセントが出る。例えば「XML/Webサービス」では、既に習得済みとする人が約12%、これから習得したいとする人が約47%である。そして、この２つの数字をマトリクス化すると現在それぞれの技術がエンジニアにとってどのようなポジションにあるのかが見えてくる。図３を見て欲しい。縦軸に、これからの身につけたいスキルだと思う人のパーセンテージ、横軸に既に保有しているスキルであるという人のパーセンテージをとってそれぞれの技術をプロットする。これを４つの象限に区切ることで各技術をポジショニングすることができる。

　まず左下のポジションは、習得意向も少なく現役エンジニアの習得者も少ない「<b>レガシー技術</b>」であり、ここには「汎用機系開発」や「COBOL」が入っている。そして右下のポジションは習得者は多いが新規の習得意向は低い「<b>成熟技術</b>」で、「C/C++」「Visual Basic」などが入っている。右上が習得者も多く習得意向も高い「<b>花形技術</b>」で、「Java」「ネットワーク」「データベース」などが入っている。そして、左上がまだ習得者は少ないが習得意向が非常に高い「<b>注目技術</b>」で、「XML/Webサービス」「セキュリティ」などが入っている。

<b>理由2：10年以上使える技術</b>

　また、これまで複数のXMLマスター取得者に「なぜXML技術を習得しようと考えたのか」をヒアリングしたところ「間違いなく長期間使える技術だから」という答えが目立った。

　XMLは、数多くあるITの新しい技術の中でも、全てのベンダーが賛同し推進しているという特色を持つ。他の技術、例えばJava, Linuxは対抗勢力があるし、OracleやMSなどのベンダー資格はその製品の盛衰に依存する。その点、XMLは、さらに新たな技術の基盤技術となっていることもあってこの先10年間を考えても有効な技術だということが分かる。つまり習得のための時間、コストを投資してもかなり長期でリターンを見込むことのできる技術ということができるのだ。

<b>理由3：学習コース・教材が充実</b>

　また、いくら習得意欲が高くてもそれを勉強する手段が乏しいのでは実際に習得することはできない。また、実際のシステム開発、ソフトウェア開発においてXMLに触れOJTでスキルを磨くことは最も重要であるが、OJTにおいてはどうしても技術の習得が断片的になってしまう。そこで、本当にXMLの技術を身につけるには実際の経験とともに体系的な学習も必要となる。

　大手ソリューションベンダーの場合は、社内教育体制も整い、XMLの体系的学習も比較的容易であろう。しかし、それ以外の場合は、社外に頼らざるを得ない。その場合に役立つのが、一般の教育コースや教材である。XMLマスター向けには全国13社の大手教育ベンダーが認定トレーニングコースを持ち、また数多くの書籍や学習ツールも出版されている。これらの学習コース・教材の充実によって、実際の経験に加えてXML技術を体系的網羅的に学習する機会をニーズに合わせて選ぶことができるのだ。

<table border="1">
<tr>
<td bgcolor="#ffff80">XMLマスター認定<br>
教育コース開催社<br>
⇒<a href="http://www.xmlmaster.org/course.html" target="_blank">詳細</a></td>
<td>
■ 株式会社ウチダ人材開発センタ<br>
■ NRIラーニングネットワーク株式会社<br>
■ NEC<br>
■ NECソフト株式会社<br>
■ NECソフトウェア九州<br>
■ 株式会社大塚商会<br> 
■ グローバル ナレッジ ネットワーク 株式会社 <br>
■ 株式会社CSK<br>
■ 株式会社東芝OAコンサルタント<br> 
■ 日本ヒューレット・パッカード株式会社<br> 
■ 株式会社富士通ラーニングメディア<br>
■ 株式会社日立システムアンドサービス<br>
■ リナックスアカデミー <br>
</td>
</tr>
<tr>
<td bgcolor="#ffff80">XMLマスター認定<br>
学習用教材<br>
⇒<a href="http://www.xmlmaster.org/introduction.html" target="_blank">詳細</a></td>
<td>
<b>＜プロフェッショナル＞</b><br>
■ XMLマスター教科書 プロフェッショナル（翔泳社）<br>
■徹底攻略XMLマスター教科書 プロフェッショナル編（インプレス）<br>
■ iStudy for XMLマスター プロフェッショナル（システム・テクノロジー・アイ）<br>
<b>＜ベーシック＞</b><br>
■ 徹底攻略XMLマスター問題集 ベーシック編（インプレス）<br>
■ XMLマスター教科書 ベーシック（翔泳社）<br>
■XML技術者認定試験「XMLマスター ラーニングブック」（技術評論社）<br>
■ 完全合格 XMLマスター試験対策テキスト&模擬問題集（アスキー）<br>
■ iStudy for XMLマスター（システム・テクノロジー・アイ）<br>
■ XML MASTER テキスト XMLマスター（ソフトバンクパブリッシング）<br>
■ XML認定資格取得講座（富士通オフィス機器）<br>
■ XML技術者認定資格　XMLマスターハンドブック（リックテレコム）<br>
</td>
</tr>
</table>

<b>理由4：大手ITベンダー/教育ベンダーが諮問・推奨</b>

<table align="right" border="1">
<tr><td bgcolor="#ffff80">XML技術者育成推進委員会理事</td></tr>
<tr><td bgcolor="#e0ffff">
■ NEC<br>
■ NECソフト株式会社 <br>
■ 株式会社大塚商会 <br>
■ グローバルナレッジネットワーク株式会社 <br>
■ ソニーグローバルソリューションズ株式会社<br>
■ 日本アイ・ビー･エム株式会社 <br>
■ 株式会社日立システムアンドサービス <br>
■ 株式会社日立製作所 <br>
■ 株式会社ＰＦＵ <br>
■ 富士通株式会社 <br>
■ インフォテリア株式会社 <br>
■ XMLコンソーシアム（会員企業約237社） <br>
■ 外資系情報産業研究会（会員企業38社）<br>
</td></tr></table>　最後にXMLマスターのクオリティ維持・向上と普及・推進活動を挙げることができるだろう。XMLマスターの普及推進および試験内容の諮問を行う機関としてXML技術者育成推進委員会がある。これは、大手ITベンダー/IT教育ベンダー11社およびXMLの普及啓蒙にかかわる2団体によって構成される委員会である（表）。XMLマスターの試験は実際に各社のXMLのエキスパートによりチェックされ、実際の現場でXML技術を使う際に役立つ知識とノウハウを測るモノサシとしての品質向上活動が適宜行われている。
　また、XML技術者育成推進委員会では参加各社、および関係各社の社内でのXMLマスターの取得を推進し各社のXML技術スキルの向上を図っている。最近では、XMLマスターを社内の人事評価の対象に入れたり、取得支援制度に組み入れたりする企業が増えており、今後ますますXMLマスター取得の価値が上がっていくだろう。

<b>最後に</b>

　いまやITエンジニアの多くは何らかの形でXMLに触れたことがあるだろう。XML 1.0の仕様はシンプルで、とっつきやすい。１回使ってみて分かった気になっている人も多いのではないだろうか。しかし、基礎的なXML関連技術でさえ実際のプロジェクトで網羅的に使うことはほとんどない。XMLは、これから先長い間、あなたが関与する多くのプロジェクトで、さまざまな形態で使われるだろう。その際に、場当たり的に必要なXMLの技術をかじるのではなく、体系的にスキルを習得しておくことが大きなアドバンテージになるのは間違いない。多くのエンジニアがキャリアアップを強く意識し、エンジニア個人の競争力が問われている昨今、まだ習得者の少ないXML技術を差別化要因としてあなたの競争力を高めるカードにできる。これから10年使える技術を、うわべだけで追うのではなく、しっかりと根本から理解をして自分のアドバンテージにするチャンスなのである。]]>
    </content>
</entry>
<entry>
    <title>EAI  - 企業アプリケーション統合に求められる条件は?</title>
    <link rel="alternate" type="text/html" href="http://www.infoteria.com/jp/xmlnote/column/doc/xml_column_eai_040930.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://blog.infoteria.com/mtr/mt-atom.cgi/weblog/blog_id=8/entry_id=379" title="EAI  - 企業アプリケーション統合に求められる条件は?" />
    <id>tag:renew.infoteria.com,2004:/jp/xmlnote/column//8.379</id>
    
    <published>2004-09-30T04:00:00Z</published>
    <updated>2006-05-08T14:39:14Z</updated>
    
    <summary>最近EAIというキーワードをよく聞くようになった。正確にいうと「再び」よく聞くようになった。EAIはEnterprise Application Integrationの略であり、1998年前後にも一度ITの注目キーワードとして登場している。IT業界では単に開いて読んだだけでは意味がよくわからない3文字略語が多い中で、EAIは比較的ストレートな用語であり、直訳しても「企業アプリケーション統合」とわかりやすい。具体的には、企業内で業務に使用される複数のシステムを連携させ、データやプロセスの効率的な統合をはかるソフトウェアやその仕組みを指す。そのEAIがなぜ再度注目を集めているのか? 以前注目されたときと何が違うのだろか?</summary>
    <author>
        <name>平野 洋一郎</name>
        
    </author>
            <category term="xml_column" />
    
    <content type="html" xml:lang="ja" xml:base="http://www.infoteria.com/jp/xmlnote/column/">
        　最近EAIというキーワードをよく聞くようになった。正確にいうと「再び」よく聞くようになった。EAIはEnterprise Application Integrationの略であり、1998年前後にも一度ITの注目キーワードとして登場している。IT業界では単に読んだだけでは意味がよくわからない3文字略語が多い中で、EAIは比較的ストレートな用語であり、直訳しても「企業アプリケーション統合」とわかりやすい。具体的には、企業内で業務に使用される複数のシステムを連携させ、データやプロセスの効率的な統合を図るソフトウェアやその仕組みを指す。そのEAIが、なぜ再度注目を集めているのか? 以前話題になったときと何が違うのだろか?
        <![CDATA[<b>EAI誕生の背景</b>

　企業の情報システムは、用途に応じて営業支援システム、顧客管理システム、財務会計システム、製造管理システムなど複数の業務アプリケーションが個別に構築され、また、それぞれのシステムの必要性に合わせて、メインフレームやワークステーション、パーソナルコンピュータなど、さまざまな環境が混在している。

<img src="/jp/xmlnote/column/img/eai-1.gif" align="right"/>　近年、業務のスピード向上や、素早い意思決定・企業経営を実現するために、社内の異なる業務アプリケーションの連携が必要となってきた。アプリケーション間の連携を行うには、個別にその接続をコーディングして作りこむこともできるが、この方法では連携の数だけプログラム開発を行わなければならない。そこで、このアプリケーション連携を中心的につかさどり連結の数を大幅に減らすことで開発期間の短縮と柔軟性の確保を両立させるパッケージソフトウェアが現れ、これをEAIと呼んだ（図１）。<img src="/jp/xmlnote/column/img/eai-2.gif" align="right"/>この定義上、EAIに求められる最低限の機能は、各アプリケーションとの結合を実現する「アダプタ」、アプリケーション同士のデータの関連付けや加工を行う「マッパー」、そしてそれらの処理の制御を行う「フロープロセッサ」となる。（図２）

<b>第１世代EAIと第２世代のEAI</b>

　最初にEAIが脚光を浴びた1998年当時、XMLをはじめとしたインターネットテクノロジーは企業情報システムにおいてはまだ普及の途上だった。そのため、その時点で既に存在したプラットフォームとして、メッセージキュー、TPモニタ<sup><a href="#1">*1</a></sup>、DBMSなどをベースとしたEAI製品が多く生まれ、連携テクノロジーとしてはベンダー独自のMOM<sup><a href="#2">*2</a></sup>やCORBA<sup><a href="#3">*3</a></sup>が使われた。

　その後、XMLやインターネット標準技術の普及が進み、企業におけるインターネット活用が当たり前となった。また一方で、グローバル化や構造不況の影響を受けて企業情報システムのビジネスの変化への迅速な適応への要求は加速度的に増してきた。そして、2002年頃から、インターネット標準技術をベースとした新しいEAIソフトウェアが生まれてきたのだ。この新しい世代のEAIの特徴を典型的な例で整理すると次のようになる。

<table border="1">
<tr><td width="150"></td><td align="center" bgcolor="#ffff00">第１世代EAI<br>の典型例</td><td align="center" bgcolor="#ffff00">第２世代EAI<br>の典型例</td></tr>
<tr><td>目的（重点）</td><td>過去の情報資産の有効活用や異機種間の有機的なデータ連携（保守的）</td><td>システム間の処理の高速化や変化への適応のための連携（戦略的）</td></tr>
<tr><td>規模</td><td align="center">大規模</td><td align="center">小規模?中規模</td></tr>
<tr><td>開発形態</td><td align="center">集中的</td><td align="center">反復的</td></tr>
<tr><td>連携技術</td><td align="center">プロプライエタリ</td><td align="center">オープンスタンダード</td></tr>
<tr><td>フローの可視化</td><td align="center">×</td><td align="center">○</td></tr>
<tr><td>統合のスコープ</td><td align="center">ホストを中心とした社内</td><td align="center">社内外</td></tr>
<tr><td>価格</td><td align="center">数千万円?</td><td align="center">数百万円?</td></tr>
</table>

<b>EAIは大企業だけのものではなくなった</b>

<img src="/jp/xmlnote/column/img/eai-3.gif" align="right"/>　第２世代EAIの特性は、規模にとらわれず、オープンな標準技術を使い、社内外にかかわらずアプリケーション統合ができる、つまり様々な意味でオープンであることである。そこで、本稿では第２世代EAIを「オープンEAI」と呼ぶことにする*4。ここに整理したような特性によって、オープンEAIで構成するEAIは構造的にも特徴をもつ。つまり、オープンEAIでは、モノリシックな単一ハブ構造を強要せず、必要に応じて複数のハブを持つことも可能となっているのだ（図３）。その意味でオープンEAIは、「アプリケーション統合」というよりは「アプリケーション連携」の意味合いが強い。英語で言えば、IntegrationというよりはFederationといったところだ。本稿で定義した「オープンEAI」はEnterprise Application Federationのためのパッケージと言うこともできるだろう。オープンEAIの構造によって、局所的に始めて、必要な応じたツールを組み合わせ、システム連携を成長させていくことができる。しかも、特定のベンダーや技術だけに依存する必要もない。オープンEAIの登場により、もはやEAIは、年間に何十億もIT投資ができる大企業だけのものではなくなったのだ。あらゆる企業でシステム連携のニーズは高まっているが、現実的には、EAIを最初から大規模に導入できる企業は少ない。しかも大企業であっても、そのシステムの多さと複雑さゆえに、全社的なシステム連携基盤を一斉に構築することができることは稀である。このような現在のビジネスの状況やニーズを分析すると、現在のEAIに求めらてている姿＝条件が浮かび上がってくる。

<b>オープンEAIとしての５つの条件</b>

<table border="1">
<tr><td bgcolor="#ffff00" width="150">条件<br /><img src="/jp/xmlnote/column/img/white150x2.gif" width="150" height="2" /></td><td bgcolor="#ffff00">説明</td></tr>
<tr><td>小規模に迅速かつ低コストで始められるか？</td><td>企業の規模にかかわらず、アプリケーション連携のニーズは、まず局所的に始まるケースがほとんどである。局所的なニーズをそのメリットに見合うコストで迅速に開発できることが求められる。</td></tr>
<tr><td>ミッションクリティカルな用途に耐えるか？</td><td>大量のデータ処理や24時間稼動などへビィデューティでミッションクリティカルな業務にまで耐えうる性能や実績があるかどうか。</td></tr>
<tr><td>オープン標準技術ベースであるか？</td><td>統合対象となるアプリケーションを全てあらかじめ想定できなくなっている。オープンな標準技術を網羅的にサポートしていることで、新たな接続におけるコストや期間が減少する。特定のOSでしか稼動できないものは稼働環境を固定化することからオープンとは言えない。</td></tr>
<tr><td>処理が可視化されているか？</td><td>処理手順の変更、データ加工処理の変更などさまざまな変更が外的な要因で起こりえる。処理の可視化によって、現場担当者も設計を理解することができ、変更要求や追加要求などに迅速に対応できる。また、コーディングが排除されれば、特定のエンジニアへの依存性を減らすことも可能である。</td></tr>
<tr><td>フロントエンドとの統合をカバーしているか？</td><td>いまやアプリケーション統合のスコープはユーザーの使用するフロントアプリケーションにも及ぶ。そのため、Excel、電子メール、PDFなどユーザーのフロントアプリケーションとの統合が可能かどうかが重要なポイントとなる。</td></tr>
</table>

　あなたがもしEAIパッケージの導入や提案を検討しているのであれば、この5つの条件に各企業の固有の条件を加えて評価するとよいだろう。

<b>EAIパッケージ適用の状況</b>

<img src="/jp/xmlnote/column/img/eai-4.gif" align="right" />　さて、ここまでEAIパッケージについて解説してきた。しかし、ガートナーの調査（図４）にも示されるとおり、企業アプリケーション統合においてはまだEAIパッケージが適用されず個別に作りこまれているケースが多い（図中、赤枠の部分）。つまり、実はEAIのパッケージ選定などという前に、EAIのパッケージすら使っていないケースが多々あるということだ。これは、企業アプリケーション統合の形態がまだ図1の左辺のような構造で作りこまれているものが多いということを示している。このようなケースは、「まず1対1だからEAIパッケージを使うほどでは・・・」というように、とりあえず目の前の問題を解決するためだけに採られたり、または悪いケースでは開発ベンダーの工数を稼ぐために採られることさえあるが、１対１の接続であれ、これからのことを考えて導入をしなければ「常に火を消して回っている」後追い型の企業システムから抜け出すことはできない。実際、「オープンEAI」はこのようなニーズをも満たすために「スモールスタート」ができるような構造になっているわけであり、最初の１対１の接続からEAIパッケージを適用していくべきなのである。

<b>ASTERIAとオープンEAI</b>

　さて、最後に筆者の所属するインフォテリアの製品<a href="/jp/product/asteria/">ASTERIA</a>は、さきほどの「オープンEAI」5つの条件においてどうであろうか？興味のある方は、<a href="/jp/xmlnote/column/article/xml_column_openeai_040930.jsp">別表</a>にまとめたので是非参照してほしい。手前味噌にならないように事実だけを検証してみた。他のEAIパッケージを検討されている方は、同様の検証をしてみてはどうだろうか。

<!--
<table border="1">
<tr><td bgcolor="#ffff00" width="150">条件<br /><img src="http://hirano.com/blog/images/white150x2.gif" width="150" height="2" /></td><td bgcolor="#ffff00">ASTERIAでは</td></tr>
<tr><td valign="top">小規模に迅速かつ低コストで始められるか？</td><td><font size="-1">ASTERIAは、最低ライセンス価格400万円（サーバー320万円、デザイナー80万円）と従来のEAIに比べて大変安価。またプラットフォームもWindows, Linuxなどでも稼動できるため、システム的にもスモールスタートが容易。</td></tr>
<tr><td valign="top">大規模システムを支えられる堅牢性、信頼性があるか？</td><td><font size="-1">ASTERIAは、共同通信をはじめ<a href="/jp/product/case/">全国新聞各社</a>の報道ネットワークに採用されて24時間稼動している。参議院選挙、オリンピックのような大量のニュースや画像送信が発生するケースにも耐えた実績を持つ。また、<a href="/jp/product/case/jnb/index.jsp">ジャパンネット銀行</a>、<a href="/jp/product/case/kyotei/index.jsp">競艇</a>などにおいて、システムの中でも最も信頼性必要とされる銀行口座決済に採用され24時間稼動している。</td></tr>
<tr><td valign="top">オープン技術ベースであるか？</td><td><font size="-1">ASTERIAは、従来から存在した何らかのパッケージソフトウェアに皮をかぶせたり、または買収した企業のソフトウェアを組み合わせたような製品ではなく、ゼロからXMLをはじめとしたインターネットテクノロジーをベースに開発されている。
インフォテリアは、W3C, OASISなどにメンバーとしてオープンな標準技術を積極的に実装している。ASTERIAで対応するオープンな標準技術は下記の通り豊富。（一部）
[IETF] HTTP, HTTPS, SMTP, FTP, POP3, IMAP4, LDAP, SSL, MIME, S/MIME, BASE64, [W3C] XML, XML Schema, XSLT, HTML,  SOAP, WSDL, [OASIS] ebXML, XBRL, [その他] NewsML, RosettaNet, 全銀TCP/IP
</td></tr>
<tr><td valign="top">処理が可視化されているか？</td><td><img src="/jp/xmlnote/column/img/asteria-designer-flow208.gif" align="right" /><font size="-1">ASTERIAのDesigner（デザイナー）では、データ処理フローをアイコン、処理ライン、プロパティ（設定）でビジュアルに設計する。またデータ加工処理を、マッパーでビジュアルに設計する。これらの設計は、従来型のEAIソフトでは、それぞれのフロー設計に加えてコーディングが必要だったが、ASTERIAはフローを書きプロパティを設定するだけで、ノン･コーディングで稼動する。</td></tr>
<tr><td valign="top">フロントエンドとの統合をカバーしているか？</td><td><img src="/jp/xmlnote/column/img/asteria-designer-frontend245.gif" align="right" /><font size="-1">ASTERIAは、Excelアダプター、電子メールコンポーネント、PDFビルダー、画像変換コンポーネントなどを備え、フロントエンドアプリケーションとの連携に応える。Excelアダプターでは、Windowsに限らず各種Unix系サーバー上でもExcelのデータを参照したり生成することが可能。PDFビルダーでは、任意のPDFを差し込み形式で生成することができる。電子メールコンポーネントでは、生成したファイルを任意のアドレスに送付したり、もしくは届いた電子メールから添付ファイルを抜き出して自動処理するなどといったことが可能。</td></tr>
</table>
-->

<b>まとめ</b>

　ホスト連携を中心として大企業から始まった企業アプリケーション統合=EAIは、いまや企業規模を問わず必要となってきている。そして、さまざまなEAIパッケージが登場している。システム連携を行う際には、(1)1対1の接続であっても短視眼的に手作りで作り込む事を止めEAIパッケージを適用すること、(2)EAIパッケージの選定においては本稿「オープンEAI」の5つの条件を考慮すること、の2点を強く推薦する。

【注釈】
<ul><li><a name="1">*1</a> TPモニタ：Transaction Processing Monitorの略。トランザクション処理を実現するためのソフトウェア。複数の個別処理をまとめて、一つの処理単位（トランザクション）として監視し、そのトランザクション全体を「全て成功」か「全て失敗」かのいずれかに帰結させる。</li></a>
<li><a name="2">*2</a> MOM：Messaging Oriented Middlewareの略。メッセージ処理を中心としたミドルウェア。</li>
<li><a name="3">*3</a> CORBA：Common Object Request Broker Architecture の略：OMG(Object Management Group)が定めた、分散したオブジェクト間でメッセージを交換するための仕様。</li>
<li><a name="4">*4</a> 「オープンEAI」は本稿を理解しやすくするための造語であり、一般に使用されている用語ではない。</li>
</ul>]]>
    </content>
</entry>
<entry>
    <title>第５回 『XML文書の空白処理』</title>
    <link rel="alternate" type="text/html" href="http://www.infoteria.com/jp/xmlnote/column/doc/xml_point_xml_040930.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://blog.infoteria.com/mtr/mt-atom.cgi/weblog/blog_id=8/entry_id=378" title="第５回 『XML文書の空白処理』" />
    <id>tag:renew.infoteria.com,2004:/jp/xmlnote/column//8.378</id>
    
    <published>2004-09-30T03:00:00Z</published>
    <updated>2006-05-08T14:39:14Z</updated>
    
    <summary>XML文書に、改行やインデントなどの無意味な空白が含まれる場合があります。たとえば次のXML文書では2箇所に含まれています。＜root＞開始タグと＜value＞開始タグの間の空白と、＜/value＞終了タグと＜/root＞終了タグの間の空白です。</summary>
    <author>
        <name>木村 達哉</name>
        
    </author>
            <category term="xml_point" />
    
    <content type="html" xml:lang="ja" xml:base="http://www.infoteria.com/jp/xmlnote/column/">
        <![CDATA[<p>XML文書に、改行やインデントなどの無意味な空白が含まれる場合があります。たとえば次のXML文書では2箇所に含まれています。＜root＞開始タグと＜value＞開始タグの間の空白と、＜/value＞終了タグと＜/root＞終了タグの間の空白です。</p>
<p>
＜root＞<br>
  ＜value＞50＜/value＞<br>
＜/root＞
<br></p>

<p>この2箇所の空白は見た感じ無意味だと思われますが、XMLを処理するパーサーがこれらの空白をどう扱うかは、特定のルールに従います。</p>

<p>●SAX<br>
================================================<br>
SAXパーサーは、無意味だと判断できる場合にその空白をignorableWhitespaceメソッドの方へ送り、そうでない場合にはその空白をcharactersメソッドに送ります。<br>

無意味だと判断できる場合とは、XML文書に文書型宣言があり、DTDの要素型宣言が要素内容（element content）として宣言（この場合ならたとえば、＜!ELEMENT root (value*)＞）され、なおかつSAXパーサーがこれを構文解析した場合です。当然ながら妥当性の検証を行う場合には、必ず構文解析します。しかしそうでない場合にSAXパーサーが要素型宣言を構文解析するかしないかは、パーサー次第です。<br></p>

<p>●DOM<br>
================================================<br>
DOM Level 2まででは、XML文書の読み込みと妥当性の検証についての仕様が定められていませんでしたので、XML文書の読み込み時に無意味な空白をどう扱うかについては明確に定められていませんでした。実際、Apache Xercesはデフォルトですべての空白を読み込み、Microsoft社の.NETのXMLパーサーはデフォルトでは無意味な空白を読み込みません。<br>
ところがDOM Level 3では、XML文書の読み込み時にすべての空白をデフォルトで読み込むよう定められました。もちろんこれは既定値ですので、設定（ここではプロパティとよびます）により変更することができます。.NETのパーサーはこれに相当するプロパティ（これはMicrosoftの拡張機能であり、DOM Level3仕様とイコールではない）を実装していますので、DOM Level 3との違いには注意したいところです。<br>
今後DOM Level 3を実装するパーサーを扱う場合には、無意味な空白の読み込み方法を、明示的に設定した方がよいかもしれません。<br></p>]]>
        
    </content>
</entry>
<entry>
    <title>第４回 『 DOMと名前空間 』</title>
    <link rel="alternate" type="text/html" href="http://www.infoteria.com/jp/xmlnote/column/doc/xml_point_dom_040902.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://blog.infoteria.com/mtr/mt-atom.cgi/weblog/blog_id=8/entry_id=375" title="第４回 『 DOMと名前空間 』" />
    <id>tag:renew.infoteria.com,2004:/jp/xmlnote/column//8.375</id>
    
    <published>2004-09-02T02:56:05Z</published>
    <updated>2006-05-08T14:39:14Z</updated>
    
    <summary>XMLを処理するプログラミングとしてDOMプログラミングを使用する方も多いのではないでしょうか。今回のコラムでは、DOMと名前空間について考察してみます。</summary>
    <author>
        <name>木村 達哉</name>
        
    </author>
            <category term="xml_point" />
    
    <content type="html" xml:lang="ja" xml:base="http://www.infoteria.com/jp/xmlnote/column/">
        XMLを処理するプログラミングとしてDOMプログラミングを使用する方も多いのではないでしょうか。今回のコラムでは、DOMと名前空間について考察してみます。

DOMの仕様（Core）はLevel 1,2,3が勧告されています。

Level 1の勧告は名前空間仕様の勧告より前でしたので、Level 1ではXML名前空間に対応していません。そしてLevel 2で名前空間を伴った処理を行うことが可能になりました。Level 2では???NSといった名前のいくつかのメソッドが導入され、Level 1メソッドが名前空間に対応しました。たとえばsetAttributeメソッドとsetAttributeNSメソッドはどちらも属性を追加（または更新）できますが、名前空間を伴った処理では必ずsetAttributeNSを使用します。そもそもLevel 1では名前空間の概念が導入されていませんので、Level 1のどのメソッドも、名前空間を適切に処理できることを期待することはできません。

Level 2で名前空間を伴った処理を行うことが可能になったわけですが、Level 2ではXML文書へのシリアライズの方法が定められていませんので、この点で実装依存となります。たとえばApache Xerces2-J（2.6.2）でプログラミングし、＜root/＞のroot要素に対してsetAttributeNS(&quot;urn:aaa&quot;,&quot;a:att&quot;,&quot;value&quot;)を実行し、XML文書として出力させると結果は＜root a:att=&quot;value&quot;/＞となります。a接頭辞の名前空間宣言がありませんので名前空間仕様に違反していますが、これはシリアライズ時に名前空間宣言の解決が行われなかっただけであって、メソッドの実行自体がおかしかったわけではありません。シリアライズ直前の、DOMツリー上でのatt属性の名前空間を調べてみると、確かに&quot;urn:aaa&quot;です。（DOMプログラミングでatt属性のnamespaceURIアトリビュートを調べてみると分かります。）

Level 3ではDOMツリーをXML文書としてシリアライズする方法を定めましたので、この問題点も解決されました。特にLevel 3 Core仕様書のAppendix B（Namespaces Algorithms）では、名前空間宣言を解決するアルゴリズムが定められています。これに従って上記の結果をシリアライズすると、結果は＜root a:att=&quot;value&quot; xmlns:a=&quot;urn:aaa&quot;/＞となります。

今後このLevel 3が広く実装されると、標準的なシリアライズ結果を予測でき、DOMプログラミングにおいて名前空間宣言を意識する必要がなくなります。
        
    </content>
</entry>
<entry>
    <title>XBRL - 企業財務情報の世界標準を知る</title>
    <link rel="alternate" type="text/html" href="http://www.infoteria.com/jp/xmlnote/column/doc/xml_column_xbrl_040901.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://blog.infoteria.com/mtr/mt-atom.cgi/weblog/blog_id=8/entry_id=376" title="XBRL - 企業財務情報の世界標準を知る" />
    <id>tag:renew.infoteria.com,2004:/jp/xmlnote/column//8.376</id>
    
    <published>2004-09-01T04:00:00Z</published>
    <updated>2006-07-28T08:04:17Z</updated>
    
    <summary>インターネットの普及や電子政府の進展に伴い、企業情報を再利用可能な電子データとして流通させる必要性が高まってきている。その企業情報の中でも最も重要な情報が財務関係の情報であり、その標準仕様として「XBRL」(eXtensible Business Reporting Language)が注目され世界的に普及が進んでいる。今回は、このXBRLとはどのようなものか概要を解説しよう。</summary>
    <author>
        <name>平野 洋一郎</name>
        
    </author>
            <category term="xml_column" />
    
    <content type="html" xml:lang="ja" xml:base="http://www.infoteria.com/jp/xmlnote/column/">
        <![CDATA[<img src="http://www.infoteria.com/jp/xmlnote/column/img/xbrllogo.gif" border="0" align="right" />　インターネットの普及や電子政府の進展に伴い、企業情報を再利用可能な電子データとして流通させる必要性が高まってきている。その企業情報の中でも最も重要な情報が財務関係の情報であり、その標準仕様として「XBRL」(eXtensible Business Reporting Language)が注目され世界的に普及が進んでいる。今回は、このXBRLとはどのようなものか概要を解説しよう。]]>
        <![CDATA[　企業情報のなかで財務諸表は最も重要な情報である。貸借対照表（B/S）や損益計算書（P/L）、キャッシュフロー計算書といった財務諸表に記されている財務情報は、企業活動の実態を表すからである。これらの情報は決算による投資家への情報開示だけに限らず、納税や取引先の信用リスク分析、グループ会社の業績評価など、企業経営のあらゆる局面で利用される。

　このような財務情報を記述するための国際的な標準仕様が「XBRL（eXtensible Business Reporting Language）」である。各企業の財務情報の利用者である投資家や金融機関、監督官庁などの間で、財務情報をインターネットを通じて流通させ、処理のスピードアップや情報の再利用を促進するためのものだ。今回はこのXBRLを取り上げ、仕様策定の狙いや特徴、国内での導入事例などを紹介する。

<b>XBRLの背景と目的</b>

　XBRLの目的は、企業の財務データを、各企業およびその使用しているソフトウェアやベンダーに依存せず、標準的に財務報告書を作成、開示、交換、加工ができるようにすることである。XBRLは、もともとは米国公認会計士協会(AICPA)が開発したものである。1998年に米国公認会計士協会に所属するチャールズ・ホフマン氏が、従来方法による財務情報の電子化の不便な点を解消するために発案したことがきっかけだ。氏の発案を基に1999年7月には、XFRL(eXtensible Financial Reporting Language)として米国公認会計士協会での公式プロジェクトとして発表され、2000年4月には現在のXBRLという名称になった。このような動き受け、日本では2001年4月に日本公認会計士協会を中心として<a href="http://www.xbrl-jp.org/" target="_blank">XBRL Japan</a>が発足し、日本の制度や市場において必要な仕様の開発や普及啓蒙に乗り出した。

　このようにしてスタートしたXBRLが国際的に普及してきた背景には、インターネットの普及や企業のIT化をベースにした業務のスピードアップがある。従来は、期単位や月単位で処理していたものを週単位、日単位で処理するように求められている。また、業務のスピードアップにともない、各企業の決算発表の迅速化、財務諸表をベースとした各種監査や審査の迅速化も求められている。このような処理のために従来は各企業が独自の会計システムを使い、最終的には紙に印刷したり、PDFを生成したりして処理を行ってきた。しかし紙やPDFでは、人が見る分には良いが、その情報をデータ化し加工や分析を行いたい場合には、再度手入力を行うなどの多大な手間がかかっていたのである。

　XBRLを使うことで、企業の財務情報である、貸借対照表（B/S）、損益計算書(P/L)、キャッシュフロー計算書、有価証券報告書、決算短信などを容易に流通させ処理を効率化することが可能となる。そして、XBRLが標準化されていることで、これを使用する金融機関、監督機関、投資家など、様々な当事者間で財務情報を扱うことができるのだ。

<b>XMLが採用された理由</b>

　XBRLにXMLが採用された理由は、第1に、OS、ソフトウェア、言語、ベンダーに非依存であることだ。冒頭でも述べたように、財務情報は企業活動のあらゆる場面で利用される情報であり、様々な企業や機関が関わってくる。個別の技術や製品に依存しないデータ形式として、XML以外の選択肢は事実上なかったと言える。第2に、データの二次加工が容易であることである。標準的に電子化するだけなら、HTMLやPDFといった選択肢もありうるが、二次加工の容易さを考えるとHTMLやPDFでは不十分である。第3に、XMLの周辺技術が豊富であり柔軟性に富む企業財務データを柔軟に記述するのに適しているということが挙げられる。つまり、企業財務データは、各国の会計基準その用途または業界などによって様式が異なるが、その差異をXML SchemaやXLinkといった標準化された技術によってカバーすることができる。さらに、XMLは、対応製品や、技術ノウハウが市場に豊富にあることが普及を促している。

<b>XBRLのメリット</b>

<img src="http://www.hirano.com/infoteria/xbrl1.gif" border="0" align="right" />　図で示すとおり、全ての企業に関わる財務情報だけにXBRLの用途は幅広い（具体的事例については後述）。まずXBRLを外部へ提供する用途としては税務申告、証券取引所や投資家への情報開示、金融機関への融資申請がある。また企業の内部的な用途としては、子会社の自動連結処理、会計士、監査法人などとの間でのデータ処理の自動化などが挙げられる。さらに、財務情報を二次利用した企業信用情報サービスなどにも活用される。

　この図でわかるように、XBRLが普及すれば、企業情報のサプライチェーンといえるものが出来上がる。このことによって第一義的には、銀行や税務署、証券取引所といった、企業の財務情報を収集・分析する立場にある企業や団体が恩恵を受ける。例えば監査法人は、顧客企業からXBRL形式の財務情報をインターネット経由で入手すれば、監査のためのデータ集計・分析業務の手間を大幅に軽減できる。現在はほとんどの場合、紙で財務諸表を受け取り、それを手作業で集計したりコンピュータに入力するなどの手間がかかっている。

　一般企業にとっても、XBRLの利点は大きい。まずは証券取引所や投資家への情報開示、法人税の申告、銀行への融資申請などといった事務処理が簡素化されることである。また、処理の迅速化によって早期に的確な情報開示が可能となり企業信用の向上にも役立てることが可能である。さらに、グループ企業の財務情報をXBRL形式で送受信することができれば、連結決算処理の事務作業のスピードアップに貢献できるだろう。昨今では合併や買収に伴い、関連会社であっても異なった会計システムを使用しているケースも多い。統合する企業の会計システムがXBRL形式でデータを管理していれば、会計システム統合の手間を軽減できる。

　さらに、企業信用情報も現在は紙やPDFで提供されるケースがほとんどだが、XBRLでデータが提供されることで、手元での統計、比較、分析が容易になり判断の迅速化を助けることになる。

<b>XBRLの構造について</b>

<table cellpadding="0" cellspacing="0" align="right"><tr><td><a href="http://www.hirano.com/infoteria/xbrl2c.gif" target="_blank"><img src="http://www.hirano.com/infoteria/xbrl2a.gif" border="0" alt="クリックで拡大" /></a><br><img src="http://www.hirano.com/infoteria/xbrl2b.gif"  border="0" /></td></tr></table>　XBRLの構造は、図に示すように「インスタンス文書」と「タクソノミー文書」に分かれている。インスタンス文書とは、売上高や経常利益といったデータそのものを記した、財務情報の本体である。一方のタクソノミー文書は、勘定科目名や各情報の表示方法、計算方法などを定義したものだ。データ本体とは別に、項目の語彙や表示方法などをタクソノミー文書として定義することで、同一のデータを異なる見方をしたり、異なる用途に利用することができる。このことで、法律の改正によって勘定科目の計算方法が変わったり、様々な言語で財務情報を参照する場合でも容易に対応できる。

　現在、XBRLの各国組織が、国ごとの会計基準や用途に応じた「タクソノミー文書」を開発している。基本となる仕様としては2001年12月に、最新版「XBRL 2.0 Specification」が公開されており、近日中にXBRL 2.1 Specificationが公開される見込みである。XBRL Internationalでは、実装を促進するためにXBRL 2.1 Specificationをできるだけ長い期間固定化し、改定をしないとしている。

　なお、現在、議論されているXBRLのタクソノミーには大きく分類して2種類がある。決算や税務申告など、企業が財務情報を開示するための仕様「XBRL FR（Financial Reporting）」と、企業内部の会計情報（総勘定元帳）を扱うための仕様「XBRL GL（General Ledger）」である。XBRLは元々、企業が対外機関に開示する財務情報を記述する仕様であった。つまり前者のXBRL FRが、当初の用途だった。これに加えて、連結決算処理も含めた組織内財務をカバーするべく、2002年3月にXBRL GLが策定された。

　国内では<a href="http://www.xbrl-jp.org/" target="_blank">XBRL Japan</a>が、有価証券報告書用と商法決算公告用のタクソノミー文書を開発・公開している。これらに加えて、融資審査用と信用調査用のタクソノミー文書を開発中である。これらはいずれも、XBRL FRに分類されるタクソノミー文書である。

　「タクソノミー文書」はさらに、XML Schemaを使ってインスタンス文書の語彙（要素名、属性など）を定義した「タクソノミースキーマ」とXLinkで定義される「リンクベース」がある。「リンクベース」には、勘定科目の階層構造を示す「定義リンクベース」、勘定科目の表示順序を示す「表示リンクベース」、勘定科目の計算方法を示す「計算リンクベース」、勘定科目の表示名称を示す「名称リンクベース」、勘定科目の参考文献を示す「参照リンクベース」がある。

　ところで、XLinkは他のXML標準ではあまり使われていない技術である。XLinkでは、XML文書相互の関係（リンク）を元文書に依存せずに記述することのできる。HTMLの場合は&lt;A　href= &gt;タグがリソースのリンクを示すが、HTMLの&lt;A href= &gt;タグは、元文書に必ずそのリンク情報を記述しなければならない。これに比してXLinkでは、元文書になんら依存せずに元文書と他の情報をリンクさせることが可能だ。この機能を活用して、データのスキーマ定義のほかに、階層構造、表示順序、計算方法、表示名称、参考文献などをリンクとして独立に持つことで、タクソノミーの利用と開発をより柔軟にすることを可能とした。

<!--　なお、図３に記した財務諸表のインスタンス文書の例が、図４である。ヘッダー部分には利用するタクソノミーやリンクベースを記述されている。-->

<b>XBRLのメリットと導入状況</b>

　企業財務情報は世の中の全ての企業が関わりを持つものであり、XBRL普及のメリットは計り知れない。「XBRLの利用ケース」でみたXBRLの典型的な利用パターンのいくつかの業務は既に実用化されつつある。

<img src="http://www.hirano.com/infoteria/xbrl4.gif" border="0" align="right" /><b>１）企業情報開示：東京証券取引所</b>

　東京証券取引所は、2003年4月から同取引所の運営するTDnet（適時開示情報伝達システム）にXBRLを採用し、東証の上場企業には決算短信の１枚目（決算概要情報）がXBRLでの提出が義務付けた。従来TDnetでは、PDFおよびCSVの提出を受け付けていた。しかし、PDFではデータの加工、二次利用はできず、またCSVの提出はPDFと情報の整合性が取れなかったりなど、実用性に乏しかった。XBRLによって提出されたデータは自動的に加工され、翌朝には東証のWebサイトで閲覧可能となっている。このシステムは、XBRL 2.0を採用した世界で最初の実稼動システムである。

<b>２）	納税申告：国税庁</b>

　多くの企業では、納税申告は会計ソフトから出たデータを基に税理士が作成した紙のデータ（これ自体は専用ソフトで印刷される）を、税務署に提出している。また、税務署では提出された資料を職員が一件一件手作業で処理を行っているのが実情であった。

　国税庁では、2003年7月の電子政府の促進を目指すIT戦略本部の決定を受け、2004年3月から名古屋地区でXBRLによる法人税申告を始めた。このシステムは「e-Tax」と呼ばれ、企業が社内のパソコンから申告や申請を送信できるようになっただけでなく、銀行や税務署の窓口に納付書を持参しなければならなかった納付手続きも、パソコンを利用して行えるようになった。このことによって、企業側の処理効率が向上するだけでなく、これまで手作業で行っていた国税側のデータ入力も自動化される。

　国税庁の発表によると2003年5月末現在の利用件数は、既に300件近くとなっている。そして、この6月からは全国で「e-Tax」による法人税申告が可能となっている。国税局では、さらに手続き開始の煩雑さや、一部書類について電子化されていない部分があることを解消していき、2006年度には「e-Tax」での申告件数として130万件を目標としている。

<b>３）企業信用情報サービス：東京商工リサーチ</b>

　株式会社東京商工リサーチは2003年10月より、「X-BIS」という企業情報サービスを開始している。このサービスでは、XBRLをベースに「企業属性情報 ： Entity Information (EI) 」、「企業財務情報 ： Financial Information (FI)」、「企業分析情報 ： Financial Ratio (FR) 」の３種類情報が提供される。従来は、同社の顧客企業はこのような情報をPDFやFAXで得ていたため、企業分析や比較などの場合にはそのデータを再入力する必要があったが、XBRL形式で提供されることにより、加工、分析を容易に行うことができる。

<b>XBRL Japanにおける実証実験</b>

　上記以外の用途として、XBRL Japanでは、銀行の融資申請・審査におけるXBRL仕様の実証実験を行っている。この実験の狙いは、企業の融資申請をXBRLを使いオンライン化するにあたっての問題を把握し解決を図ることである。この実証実験では、最終的には財務情報提供企業の会計システムから融資金融機関の審査システムに人手を介さずにデータを届けることを目指している。XBRL Japanでは、2004年4月に第1回の実証実験を完了し、様々な課題を確認した。第1回の実証実験では、情報提供会社から金融機関がXBRLデータをオフラインでもらい、そのデータを各社のシステムやツールに読み込む実験を行った。

　この実証実験には、データ提供会社として帝国データバンク、東京商工リサーチ、日本経済新聞の３社、ソリューション提供会社として、<a href="/jp/">インフォテリア</a>、ＮＴＴデータ、日本オラクル、日立システム、日立製作所、日立ハイテクノロジーズ、富士通の8社、銀行側としての東京三菱銀行、三井住友銀行、UFJ銀行の3行、監査法人およびコンサルティング企業として、シナンシャルシステム、新日本監査法人、中央青山監査法人、べリングポイントの4社が参加した。現在、第2回目の実証実験を進めているところであり、オンラインでのデータの受け渡しと実際のアプリケーションへのデータの活用に関する実験を行う計画である。（文中社名50音順）

<b>XBRL実装に必要な機能とソフトウェアベンダーの対応</b>

<img src="http://www.infoteria.com/jp/xmlnote/column/img/xbrl5.gif" border="0" align="right" />　一言に「XBRLの実装」といっても、用途によって必要な機能は異なる。表ではXBRLの実装にあたっての機能を整理した。XBRLのための機能は9つに整理される。またこれらの機能は、XBRLデータの提供側と受領側で必要となるものが異なる。さらに、その中での用途によって必要な機能を実装するわけだ。これまでの、XBRLの実装事例では、ほとんどの機能を作りこみで実現しているが、最近ではこれらの機能をパッケージ化して提供する製品も出始めており、インフォテリアの「<a href="/jp/product/asteria/">ASTERIA</a>」もその一例である。

　XBRLの仕様の充実と普及に伴い、インフォテリア以外の各ITベンダーも着々とXBRL対応を進めている。財務データを直接扱うパッケージベンダー、例えば、SAPの「SAP R/3」、NTTデータシステムズの「<a href="http://scaw.net/news/etrans.htm" target="_blank">SCAW</a>」、PCAの「PCA会計」などは、XBRLデータを生成できるよう機能拡張を施している。日立、富士通、日本ユニシスといった大手システムインテグレータも、XBRLのツール製品やXBRLを軸としたシステム構築サービスを発表済みである。

<img src="http://www.infoteria.com/jp/xmlnote/column/img/xbrl6.gif" border="0" align="right" />　「<a href="/jp/product/asteria/">ASTERIA</a>」では、XBRL Encoder、 XBRL Decoder、 XBRL Splitterの3つのコンポーネントを備えることで、従来から「ASTERIA」が扱うことのできる多彩なデータソースをXBRL化したり、また、XBRLで得たデータを社内用に加工したり、データベースに格納したりすることができる。そして、これらの処理を「ASTERIA」の特長である「ノン・コーディング」で行うことができるのだ。（図）

　このように、XBRLは仕様だけでなく、実装環境も整いつつある。究極的には、XBRLはすべての企業に関係のある仕様であるため、自社でどのようにXBRLの対応を進めていくかを今から考えておく必要があるだろう。]]>
    </content>
</entry>
<entry>
    <title>第３回 『 名前空間と要素値、属性値 』</title>
    <link rel="alternate" type="text/html" href="http://www.infoteria.com/jp/xmlnote/column/doc/xml_point_namespaces_040805.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://blog.infoteria.com/mtr/mt-atom.cgi/weblog/blog_id=8/entry_id=374" title="第３回 『 名前空間と要素値、属性値 』" />
    <id>tag:renew.infoteria.com,2004:/jp/xmlnote/column//8.374</id>
    
    <published>2004-08-05T04:00:00Z</published>
    <updated>2006-05-08T14:39:14Z</updated>
    
    <summary>XMLの名前空間仕様（Namespaces in XML）では、要素と属性の名前空間を定義するための仕組みを定めています。要素や属性自体の名前空間であって、要素値や属性値については一切触れていません。ところがいくつかのXMLの応用仕様では、名前空間が、要素値や属性値にまで有効となるように名前空間を応用しています。

ここではXML Schema、XPath、SOAPを例に、それぞれによる名前空間の有効範囲を見てみますが、これらの名前空間の応用は、各応用仕様（XML Schemaなど）でそれぞれが定めるものですので、その有効範囲（名前空間仕様以上の有効範囲）はまちまちです。</summary>
    <author>
        <name>木村 達哉</name>
        
    </author>
            <category term="xml_point" />
    
    <content type="html" xml:lang="ja" xml:base="http://www.infoteria.com/jp/xmlnote/column/">
        XMLの名前空間仕様（Namespaces in XML）では、要素と属性の名前空間を定義するための仕組みを定めています。要素や属性自体の名前空間であって、要素値や属性値については一切触れていません。ところがいくつかのXMLの応用仕様では、名前空間が、要素値や属性値にまで有効となるように名前空間を応用しています。

ここではXML Schema、XPath、SOAPを例に、それぞれによる名前空間の有効範囲を見てみますが、これらの名前空間の応用は、各応用仕様（XML Schemaなど）でそれぞれが定めるものですので、その有効範囲（名前空間仕様以上の有効範囲）はまちまちです。

●XML Schema
====================
XML Schemaのelement要素やattribute要素では、type属性を記述することによって、その要素または属性の型を指定します。たとえば次のような例です。

＜xsd:schema xmlns:xsd=&quot;http://www.w3.org/2001/XMLSchema&quot;＞
  ＜xsd:element name=&quot;price&quot; type=&quot;xsd:nonNegativeInteger&quot; /＞
　　　・・・
ここで「nonNegativeInteger」はXML Schemaで定められている組み込み型を表し、「負でない整数」と定義されているものです。XML Schemaで定められている型ですので、XML Schema名前空間を表す接頭辞（ここではxsd）とともに記述されます。

前述の例を、デフォルトの名前空間を使用し記述しなおすと次のようになります。

＜schema xmlns=&quot;http://www.w3.org/2001/XMLSchema&quot;＞
  ＜element name=&quot;price&quot; type=&quot;nonNegativeInteger&quot; /＞
　　　・・・
XML Schemaの構文となるschema要素やelement要素の名前空間接頭辞が不要になる（名前空間仕様にもとづくもの）とともに、type属性値の名前空間接頭辞もなくなります（XML Schemaで定める名前空間の応用）。

XML Schemaのelement要素やattribute要素では、ref属性を記述することによって、グローバルに宣言されたelement要素やattribute要素を参照することができますが、ref属性の属性値も同様です。

●XPath
====================
XPathはXSLTなどで使用されますが、このときXPathは、XSLTの属性値の部分に記述されます。このときXPathの名前空間は、XSLTの名前空間宣言を使用します。

次のような例です。

＜xsl:stylesheet version=&quot;1.0&quot;
      xmlns:xsl=&quot;http://www.w3.org/1999/XSL/Transform&quot;
      xmlns:aaa=&quot;urn:infoteria:column:aaa&quot;＞
＜xsl:template match=&quot;/&quot;＞
  ＜xsl:apply-templates select=&quot;aaa:record&quot; /＞
　　　・・・
この場合のselect属性は、&quot;urn:infoteria:column:aaa&quot;名前空間のrecord要素を選択します。

XPathはXML Schemaと異なり、デフォルトの名前空間を使用しないと定められていますので、次の例では&quot;urn:infoteria:column:aaa&quot;名前空間のrecord要素を選択することができません。

＜xsl:stylesheet version=&quot;1.0&quot;
      xmlns:xsl=&quot;http://www.w3.org/1999/XSL/Transform&quot;
      xmlns=&quot;urn:infoteria:column:aaa&quot;＞
＜xsl:template match=&quot;/&quot;＞
  ＜xsl:apply-templates select=&quot;record&quot; /＞
　　　・・・

この場合のselect属性は、名前空間なしのrecord要素を選択します。

●SOAP
====================
SOAPでは、SOAPメッセージの処理に何らかのエラーがあった場合にフォルトコードを返却するよう定めており、そのフォルトコードはSOAP名前空間に属する値です。次のような例です。

＜SOAP-ENV:Envelope
  xmlns:SOAP-ENV=&quot;http://schemas.xmlsoap.org/soap/envelope/&quot;＞
   ＜SOAP-ENV:Body＞
       ＜SOAP-ENV:Fault＞
           ＜faultcode＞SOAP-ENV:Server＜/faultcode＞
　　　・・・

SOAP 1.1仕様の中ではデフォルトの名前空間には一切触れていませんので、このように、必ず名前空間接頭辞とともに記述します。

※注：コード記述内の＜＞については、本来半角の&lt;&gt;となります。
        
    </content>
</entry>
<entry>
    <title>次世代Webフォーム「XForms」</title>
    <link rel="alternate" type="text/html" href="http://www.infoteria.com/jp/xmlnote/column/doc/xml_column_xforms_040727.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://blog.infoteria.com/mtr/mt-atom.cgi/weblog/blog_id=8/entry_id=373" title="次世代Webフォーム「XForms」" />
    <id>tag:renew.infoteria.com,2004:/jp/xmlnote/column//8.373</id>
    
    <published>2004-07-27T03:00:00Z</published>
    <updated>2006-05-08T14:39:14Z</updated>
    
    <summary>XML関連で最近注目を浴びてきている技術のひとつにXFormsというフォームを中心としたユーザーインターフェイス構築技術がある。XFormsは、W3Cにおいて「The Next Generation of Web Forms」とも呼ばれ、現在広く普及しているHTMLのフォームの次世代版である。</summary>
    <author>
        <name>平野 洋一郎</name>
        
    </author>
            <category term="xml_column" />
    
    <content type="html" xml:lang="ja" xml:base="http://www.infoteria.com/jp/xmlnote/column/">
        　XML関連で最近注目を浴びてきている技術のひとつにXFormsというフォームを中心としたユーザーインターフェイス構築技術がある。XFormsは、W3Cにおいて「The Next Generation of Web Forms」とも呼ばれ、現在広く普及しているHTMLのフォームの次世代版である。まず、その特徴を見てみよう。
        <![CDATA[　第1の特徴は、XFormsでは、データ、用途、ユーザーインターフェイスを分離しているところだ。例えば、HTMLのフォームにおいて「&lt;input type=”checkbox” value=”yes” name=”agreement”&gt;同意する」という記述では、その値である「同意する」、用途である「選択」、ユーザーインターフェイスである「チェックボックス」が全て一緒に記述されている。XFormsではこれらを分離することで、データのハードコードを行わず、かつ実際のユーザーインターフェイスを実行するデバイスに非依存にしている。HTMLでは、機器ごとにフォームデータを作成する必要があったが、XFormsでは、PCのブラウザだけでなく、携帯機器や情報家電などにでも同一のデータを送り個々のデバイスに最適な表示や入力方法を提供することが出来る。

　第2の特徴は、データ型が提供されることである。「整数」、「数値の範囲」、「文字の長さ」などを指定することができ、実際にサポートするデータ型は、XML Schemaにほぼ準拠する。これによって、入力時のデータ型チェックを容易に行うことができる。これまでは、このためには一旦サーバーにデータを送って確認したり、もしくはJavaScriptなどでチェックプログラムを書かなければならなかった。入力フィールドの型が設定できることにより型チェックだけでなく、例えば日付型にはカレンダー状のユーザーインターフェイスを実装するなどのことも可能となる。

　第3の特徴は、XFormsの名前の通り、XMLを直接扱うことができる。XMLデータを、XFormsのモデル内に直接書いたり、またはURIで外部のXMLを直接指定して内部データとして使用できる。そのデータはフォーム内の変数として使用することもできる。そして、直接XML形式でサーバーに送信することも可能である。

<b>XFormsの今後</b>

　すでにお気づきの読者の方もあると思うが、これらの特徴は、いま話題のリッチクライアントの特徴や狙いとも重なる。そして現在存在するリッチクライアントは全て各社の独自技術であるが、XFormsはW3Cが標準化した技術である。つまり、XFormsが実装されたブラウザが登場すれば、それは標準技術に基づくリッチなクライアントの登場であり、高機能だが独自技術ベースの現在のリッチクライアントと、ブラウザの間を埋める大変便利な存在となる可能性もある。

　一方、同じ次世代フォームという領域で、今年6月初旬にOperaとNetspcaeがWeb Forms 2.0という類似の仕様の提案をしている。これは、現在のブラウザにおける実装との整合性を最大限考えた上でフォーム機能を高度化したものだ。提案にあたり、Web Forms 2.0の開発チームは「XFormsと競合する技術ではなく相互補完的な技術である」としているが、実際にはXFormsと重なる部分も多い。このことから、PC環境におけるXForms技術の実装と普及に当たっては悲観的な意見も少なくない。しかし、一方でこれまで貧弱なユーザーインターフェイスしか持たなかった携帯機器においては、XFormsの実装が大いに期待されている。]]>
    </content>
</entry>
<entry>
    <title>第２回 『 standalone=&quot;yes&quot; ／ &quot;no&quot; 』</title>
    <link rel="alternate" type="text/html" href="http://www.infoteria.com/jp/xmlnote/column/doc/xml_point_dtd_040715.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://blog.infoteria.com/mtr/mt-atom.cgi/weblog/blog_id=8/entry_id=372" title="第２回 『 standalone=&quot;yes&quot; ／ &quot;no&quot; 』" />
    <id>tag:renew.infoteria.com,2004:/jp/xmlnote/column//8.372</id>
    
    <published>2004-07-14T15:00:00Z</published>
    <updated>2006-05-08T14:39:14Z</updated>
    
    <summary>XMLは、DTDを用いて妥当性の検証を行うことができます。XML文書に文書型宣言（）を記述し、XMLプロセッサで妥当性の検証を行います。

妥当性の検証を行う場合XMLプロセッサは、XML文書と、内部・外部を問わずすべてのDTDを読み込むことによって妥当性の検証を行います。</summary>
    <author>
        <name>木村 達哉</name>
        
    </author>
            <category term="xml_point" />
    
    <content type="html" xml:lang="ja" xml:base="http://www.infoteria.com/jp/xmlnote/column/">
        <![CDATA[XMLは、DTDを用いて妥当性の検証を行うことができます。XML文書に文書型宣言（<!DOCTYPE・・・>）を記述し、XMLプロセッサで妥当性の検証を行います。

妥当性の検証を行う場合XMLプロセッサは、XML文書と、内部・外部を問わずすべてのDTDを読み込むことによって妥当性の検証を行います。

妥当性の検証を行わないXMLプロセッサ（非検証XMLプロセッサ）がDTDを全く読み込まないというのは誤りで、一部のDTDを読み込むことが義務付けられています。一部とは、パラメータ実体を除いた内部サブセットDTDです。非検証XMLプロセッサは、（内部・外部を問わない）パラメータ実体と外部サブセットDTD（ここではこれらを外部リソースと呼びます）を読み込んでもよいし、読み込まなくても構いません。

それでは非検証XMLプロセッサは、一部またはすべてのDTDを読み込んで何をするのでしょうか。それは実体宣言により内部実体を解決し、属性リスト宣言から属性の型を読み取り（属性値の正規化に影響します）、またデフォルトの属性値を与えます。

このようなXMLインスタンスに影響を与えるDTDの宣言が、外部リソースに出現しないことを意図的に宣言できるのが、XML宣言部に記述する「standalone="yes"」です。これによりXMLインスタンスを処理する際に、妥当性の検証を行わないのであれば外部リソースを無視できるといったメリットが生まれます。

ところが実際に外部リソースにそのような宣言がない場合であっても、「standalone="yes"」と記述し、そして外部サブセットDTDにより妥当性の検証を行った場合、ひとつ厄介な問題があります。それは次のような妥当性制約が定義されている点です。

◆定義されている妥当性制約
外部リソースで要素内容（子要素のみを含み文字データを含まない）として宣言されている要素が空白文字を含んでいる場合は「standalone="no"」でなくてはならない

つまり「standalone="yes"」と記述した場合、XMLインスタンスにインデントなどの無意味な空白が含まれた場合は、その点で妥当性検証エラーとなってしまいます。XMLのシリアライズの方法によってはインデントなどが含まれる場合もあり、完全に無意味な空白を排除できないような場合は上記の点が問題となります。

結局この件に関する結論としては、妥当性の検証を必要としないなら、「standalone="yes"」が理想であるが、妥当性の検証を必要とするなら「standalone="no"」が現実的である、といったことになりそうです。]]>
        
    </content>
</entry>
<entry>
    <title>第１回 『要素内容と混合内容』</title>
    <link rel="alternate" type="text/html" href="http://www.infoteria.com/jp/xmlnote/column/doc/xml_point_element_040617.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://blog.infoteria.com/mtr/mt-atom.cgi/weblog/blog_id=8/entry_id=371" title="第１回 『要素内容と混合内容』" />
    <id>tag:renew.infoteria.com,2004:/jp/xmlnote/column//8.371</id>
    
    <published>2004-06-16T15:00:00Z</published>
    <updated>2006-05-08T14:39:14Z</updated>
    
    <summary>はじめまして。インフォテリア教育部の木村です。
私はこれまで教育という立場でXMLに携わってきましたが、XMLには実はちょっと紛らわしい部分があったり、あるいは直感では誤解してしまいそうな部分があることにいくつか気が付きました。この連載コラムでは、XMLのそのような話題を7回にわたって解説してみたいと思います。</summary>
    <author>
        <name>木村 達哉</name>
        
    </author>
            <category term="xml_point" />
    
    <content type="html" xml:lang="ja" xml:base="http://www.infoteria.com/jp/xmlnote/column/">
        <![CDATA[<p>はじめまして。インフォテリア教育部の木村です。</p>
<p>私はこれまで教育という立場でXMLに携わってきましたが、XMLには実はちょっと紛らわしい部分があったり、あるいは直感では誤解してしまいそうな部分があることにいくつか気が付きました。この連載コラムでは、XMLのそのような話題を7回にわたって解説してみたいと思います。</p>
<p>まずは手始めに、「要素内容と混合内容」についてです。<br>
DTDでは、ある要素に対する子要素の存在回数などを定義するわけですが、このとき、ある要素の内容として実際考えられるパターンは次の3つです。</p>
<blockquote>
<p><b>◆ある要素の内容として実際考えられる３つのパターン</b><br>
(1) 子要素のみを内容とする<br>
(2) 文字データのみを内容とする<br>
(3) 子要素と文字データを内容とする
</p>
</blockquote>
<p>このときXML 1.0ではこの3つのパターンを2つに分けて、それを要素内容（element content）と混合内容（mixed content）と定義しています。(3)が子要素と文字データの双方を含んでいますので、感覚的には混合内容が(3)のみを指しているように感じますが、実は(1)が要素内容で、(2)(3)が混合内容です。(2)は、子要素の出現が０回である混合内容です。</p>
<p>(2)を混合内容として認識していなくても実際困ることはないと思いますが、「要素内容」という言葉が、XML 1.0の中で定義されている特別な言葉であることを知っていると、それだけXMLの理解が早まります。</p>
<p>ある文章の中で「element content」や「要素内容」（あるいは「エレメントコンテント」などの和訳）という言葉を見たときに、これが単なる要素の内容を指している一般用語ではなく「子要素のみを含み、文字データを含まない」ことが前提になっているということがすぐにイメージできるとよいと思います。</p>
<p>特に要素に含まれる無意味な空白について言及する場合など、XML 1.0はもちろん、DOMやSAXやXML Information Setなどの仕様書内に出てきますので、今度注意してみてください。</p>]]>
        
    </content>
</entry>
<entry>
    <title>話題のBlogとXMLの関係</title>
    <link rel="alternate" type="text/html" href="http://www.infoteria.com/jp/xmlnote/column/doc/xml_column_blog_040513.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://blog.infoteria.com/mtr/mt-atom.cgi/weblog/blog_id=8/entry_id=370" title="話題のBlogとXMLの関係" />
    <id>tag:renew.infoteria.com,2004:/jp/xmlnote/column//8.370</id>
    
    <published>2004-05-13T00:00:00Z</published>
    <updated>2006-05-08T14:39:14Z</updated>
    
    <summary>最近インターネット上で「Blog」が急速に普及している。「Blog」とは、Web Logを略したもので、もともとはWeb上のログつまり記録を残す、日記的なものに使われていたものだ。それだけなら、従来からあるCMS (Content Management System)を使えばよいのだが、Blogがここまで普及した背景には、他のWebサイトやサービスとの連携の強さがある。そして、実はそこでXMLが活用されているのである。</summary>
    <author>
        <name>平野 洋一郎</name>
        
    </author>
            <category term="xml_column" />
    
    <content type="html" xml:lang="ja" xml:base="http://www.infoteria.com/jp/xmlnote/column/">
        <![CDATA[　最近インターネットで「Blog」が急速に普及している。「Blog」とは、Web Logを略したもので、もともとはWeb上のログつまり記録を残す、日記的なものに使われていたものだ。それだけなら、従来からあるCMS (Content Management System)を使えばよいのだが、Blogがここまで普及した背景には、他のWebサイトやサービスとの連携の強さがある。そして、実はそこでXMLが活用されている。

<div class="title2">国内で急速に普及が進む</div>

　Blogは米国では2002年頃から流行し始めたが、日本国内ではここにきて急速に普及が進んでいる。その背景には、大手ISPがこぞってBlogのASPサービスを始めたということがある（<a href="#table1">表１：大手ISPのブログサービス</a>）。さらに、Blogツール開発の大手Six Apart社(MovableTypeの開発元、本社米国)が3月18日に<a href="http://www.sixapart.jp/" target="_blank">日本法人</a>を設立するなどBlog関連サービス側の動きが慌しくなっている。

<table align="right" border="0"><tr><td><font size="-2" color="#000066"><b>図１：週刊！木村剛</b></font></td></tr><tr><td><a href="http://kimuratakeshi.cocolog-nifty.com/" target="_blank"><img src="http://hirano.com/blog/images/column11-1.gif" border="0" align="right" /></a></td></tr><tr><td><br /><font size="-2" color="#000066"><b>図２：ふじすえBlog</b></font></td></tr><tr><td><a href="http://fujisue.net/blog/index.html" target="_blank"><img src="http://hirano.com/blog/images/column11-2.gif" border="0" align="right" /></a></td></tr></table>コンテンツ側も、単に一個人の日記ではなく、双方向コミュニケーションツールとしての利用やオフィシャルな情報発信ツールとしての利用が活発化している。

　例えば、エコノミストの木村剛氏は、Blogで「週刊！木村剛」(<a href="http://kimuratakeshi.cocolog-nifty.com/" target="_blank">http://kimuratakeshi.cocolog-nifty.com/</a>)を発行し、読者と毎日のようにインタラクティブな議論を展開している。民主党の藤末健三氏は「ふじすえBlog」(<a href="http://fujisue.net/blog/index.html" target="_blank">http://fujisue.net/blog/index.html</a>)で、毎日のように全国各地での講演や政策について自ら直接発信し、有権者との意見交換を行っている。米国では大統領選にまでBlogが活用されるようになっているが、国内でもこのように実際の政治・経済の現場でBlogが使われ始めている。さらに、まだ数は少ないが国内企業の公式サイトでの導入も始まっている（このページも実はBlogだ）。

<div class="title2">BlogとXMLの関係</div>

　では、このBlogとXMLとはどのような関係があるのだろうか。Webサイトを表示するには、HTMLで十分だし、コンテンツの管理は内部的なことなので何らかの形でデータベース化しておけばよい。実は、XMLはBlogの最大の特徴である他のサイトやサービスとの連携の部分で活躍しているのである。

<div class="title3">１）RSSフィード</div>
<p> </p>
<table border="0" align="right"><tr><td><font size="-3" color="#000066"><b>図３：RSSデータ(index.xml)</b></font></td></tr><tr><td><a href="http://fujisue.net/blog/index.xml" target="_blank"><img src="http://hirano.com/blog/images/column11-3.gif" border="0" align="right" /></a></td></tr></table>　Blogには、RSS(Rich Site Summary / RDF Site Summary)フィード用のデータを提供する機能がある。RSSフィードとは、ある種のデータ提供サービスで、特定のWebサイトの読者がそのWebサイトに行かなくても更新状況や更新内容を知ることができるしくみである。そして、このデータフォーマットとしてXMLが使用されている。

　例として前出の「ふじすえblog」の例を見てみよう。このサイトのURL <a href="http://fujisue.net/blog/index.html" target="_blank">http://fujisue.net/blog/index.html</a>を表示してみてほしい。まずは、普通に画面が表示される。次に、URLの最後の「.html」を「.xml」に<a href="http://fujisue.net/blog/index.xml" target="_blank">変えて表示</a>してみてほしい。どうだろう。サイトの内容がXMLで表示されたと思う。このようにBlogサイトは、HTMLだけでなくXMLでも情報を発信しているのだ。

<table border="0" cellpadding="5" align="left"><tr><td><font size="-2" color="#000066"><b>図４：RSSフィードサービスの一例（Bloglines.com）</b></font></td></tr><tr><td><img src="http://hirano.com/blog/images/column11-4.gif" border="0" align="left" padding="5" /></td></tr></table>　XMLで送ることで、受信側はそのデータを加工して使うことができる。例えば、複数のサイトの更新状況を並べて表示したり（図4）、更新された内容だけを取り出してニュースティッカーのように画面上に流れ表示をしたりといった活用だ。

　ところで、RSSはXMLデータであるが、その仕様はまだ完全に一本化されていない。現在RSS 0.9、RSS 1.0、RSS 2.0そしてAtomという４つの仕様があるが、GoogleやMovableTypeがAtomを採用したことから、Atom仕様に大きな期待がかかってきている。

<div class="title3">２）トラックバック</div>

　トラックバックは、Blogの持つ大変ユニークな機能だ。簡単にいうと「逆リンク」の機能といえる。通常、自分とサイトと関連する情報のあるサイト（対象サイト）をリンクする場合には、自分のサイトにその対象サイトへのリンクを置く。しかし、トラックバックを使うと、「対象サイト上に自分のサイトへのリンクを自動的に置く」ことができるのである。

　このトラックバックでもXMLが活用されている。トラックバックの仕組みはこうだ。まず、自分のサイトからトラックバックしたいサイトにトラックバックのリクエストを送る。ここで送る内容は、Blog名(blog_name)、タイトル(title)、記事URL(url)、記事の概要(excerpt)である。このリクエストは、HTMLのフォームからも送ることができるように単純なHTTP POSTの形式になっている。そして、そのリクエストを受け付けたサイトは、その内容を自らのサイトに反映して、レスポンスを返す。このレスポンスがXML形式になっている。

<div class="title3">３）サイトの更新通知 (Ping)</div>
<p> </p>

<table align="right" border="0"><tr><td><font size="-2" color="#000066"><b>図５：サイト更新通知XMLの例</b></font></td><tr><tr><td><img src="http://hirano.com/blog/images/column11-5.gif" border="0" /></td></tr></table>　Blogでは、RSSのようにサイトの情報を受動的に提供するしくみだけでなく、サイトの更新を能動的に通知(Ping)するしくみがある。このしくみは、Blogサイトの情報集積サイトや検索サイトなどで使われている。例えば、米国の<a href="http://www.weblogs.com/" target="_blank">Weblogs.com</a>や、国内の<a href="http://ping.bloggers.jp/" target="_blank">Bloggers.jp</a>などがこれにあたる。そしてこの更新情報の通知にXML-RPCが使用されている（図5）。

　MovableTypeなどのBlogツールでエントリ更新をすると同時に、Blogツールからサービスサイトに通知が行われる。このプロトコルでは、Blog名 、BlogのURL、更新されたURL、カテゴリ名をXMLで通知する。そして、登録サイトから、エラー値とメッセージがXMLで返される（<a href="http://www.xmlrpc.com/weblogsCom" target="_blank">詳細仕様</a>）。

<div class="title2">さらに進化するBlogの環境</div>

　このように、Blogの特徴の多くはXMLを使って実現されている。電子商取引やSOAPによるシステム連携などの大規模なシステムだけでなく、このような草の根的な技術、サービスでもXMLが活用されるようになってきているのである。

　そしてBlogは、今でも日進月歩で進化している。スパムコメントの排除、複数Blogへのシングルログイン、Moblog（Mobile Blog = モバイル環境でのBlog）など、開発中の技術は目白押しだ。そしてこのような進化の背景でもXMLは引き続き重要な役割を果たしていくだろう。]]>
        <![CDATA[<hr size="2">
<a name="table1">表１</a>：大手ISPのブログサービス
<table border="1" bordercolor="#999999"><tr><td bgcolor="#ffff88">ISP名</td><td bgcolor="#ffff88">サービス名</td><td bgcolor="#ffff88">開始日</td></tr><tr><td>@Nifty</td><td>ココログ</td><td>2003/12/2</td></tr><tr><td>Livedoor</td><td>Livedoor Blog</td><td>2003/12/18</td></tr><tr><td>エキサイト</td><td>エキサイトブログβ版</td><td>2004/2/2</td></tr><tr><td>Goo</td><td>Goo BLOG</td><td>2004/3/9</td></tr><tr><td>Biglobe</td><td>ウェブリブログ</td><td>2004/3/22</td></tr><tr><td>NTTコミュニケーションズ(OCN)</td><td>ブログ人（じん）</td><td>2004/3/30</td></tr></table>]]>
    </content>
</entry>
<entry>
    <title>Webサービス標準化の全体像と課題</title>
    <link rel="alternate" type="text/html" href="http://www.infoteria.com/jp/xmlnote/column/doc/xml_column_webservices_040427.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://blog.infoteria.com/mtr/mt-atom.cgi/weblog/blog_id=8/entry_id=369" title="Webサービス標準化の全体像と課題" />
    <id>tag:renew.infoteria.com,2004:/jp/xmlnote/column//8.369</id>
    
    <published>2004-04-27T04:00:00Z</published>
    <updated>2006-05-08T14:39:14Z</updated>
    
    <summary>Webサービスは当初、SOAP、WSDL、UDDIの３つの技術で構築されるサービスがであると定義されていたが、Webサービスを繋いで実際に動かすためにはさらに多くの取り決めが必要であることから、数多くのWebサービス関連仕様の提案と標準化が進んでいる。これらの仕様は「WS-」で始まる名称をつけられることが多いため、ここではこれらをまとめて「WS-標準化」と呼ぶこととする。個別仕様の詳しい内容は専門の記事に譲るとして、ここではWebサービスを取り巻く数多くの標準化の動向を見てみよう。</summary>
    <author>
        <name>平野 洋一郎</name>
        
    </author>
            <category term="xml_column" />
    
    <content type="html" xml:lang="ja" xml:base="http://www.infoteria.com/jp/xmlnote/column/">
        　XMLは1998年の誕生から6年を経て、いまやコンピュータデータの共通言語として確固たるポジションを確立し、数々の新しい技術の基盤技術ともなっている。その新技術の中でも、注目を浴びているWebサービスの標準化に着目してみよう。Webサービスは当初、SOAP、WSDL、UDDIの３つの技術で構築されるサービスがであると定義されていたが、Webサービスを繋いで実際に動かすためにはさらに多くの取り決めが必要であることから、数多くのWebサービス関連仕様の提案と標準化が進んでいる。これらの仕様は「WS-」で始まる名称をつけられることが多いため、ここではこれらをまとめて「WS-標準化」と呼ぶこととする。個別仕様の詳しい内容は専門の記事に譲るとして、ここではWebサービスを取り巻く数多くの標準化の動向を見てみよう。
        <![CDATA[<strong>なぜ「WS-標準化」が花盛りなのか？</strong>

　表1は、現在標準化や提案が行われているWebサービス技術、つまりここでいうところの「WS-標準化」の一覧である。数の多さに驚いた人も多いのではないだろうか。それでは、何故これほど多くの「WS-標準化」が行われているのだろうか？
<img src="http://hirano.com/blog/images/column10pic1.gif" align="right" />　Webサービスを一つの側面から簡単に説明すれば、人間を対象としてサービスしていたWebサイトの対象をコンピュータに代えたものということができる。例えば、物品販売のWebサイトは、ブラウザを使った人に対するサービスであるが、物品販売のWebサービスは、他のコンピュータが自動的に発注を行ってその結果をデータとして返すサービスである。WebサイトとWebサービスの違いを整理すると図1のようになるが、ここで重要なことはWebサービスではプログラムによって自動的に処理されるという点である。Webサイトの場合に人が行なっていた様々な行為、例えば「相手を信用するのかどうかの判断」、「同じ請求書が2回来ていないかかどうかの確認」、「別の処理（例えば購入処理と資産管理）との連携」などを、Webサービスではコンピュータ自動で処理することになる。つまり、これまで人が行っていた様々な処理をコンピュータが行うのであり、それらの処理を自動で行なうための約束事が必要で、それこそが現在数多く提案されている「WS-標準化」である。

<strong>「WS-標準化」を整理する</strong>

　図2は、表1に示した「WS-標準化」の中で主要なものを整理しWebサービス関連仕様の標準化の全体像として示したものである。
<img src="http://hirano.com/blog/images/column10pic2.gif" align="right" />　図2では、各仕様を示すボックスの色はその仕様を標準化している団体を示す。灰色については現時点でまだ標準化団体に提出されていない標準案である。この色分けからまず、Webサービスに関連する標準化に団体は4つあり、それぞれが大まかな役割分担ができていることがわかる。つまり、IETFはインターネットプロトコルなど通信基盤の分野、W3CはXMLやSOAPを初めとする基本的なデータ記述の分野、OASISはそれら基本技術をベースとした応用技術の分野、そしてWS-Iはそれらの技術の実装における相互接続性の分野という役割分担である。
　上下方向は技術のレイヤーを示しており、上下に重なっている仕様はそれぞれ基本的に組み合わせて使うことができる。同じレイヤーで左右に間隔を空けて配置してあるものは、類似の仕様が対立していることを示している。

<strong>競合仕様の状況</strong>

　図を見ると仕様が対立した部分が3箇所ある。これらは、全体を理解する上でも重要なので、以下で具体的に見ていこう。

(1) 信頼性メッセージング：WS-Reliability 対 WS-ReliableMessaging

　この2つの仕様は、どちらもWebサービスのメッセージの信頼性を確保するためのものである。信頼性を確保するというのは、(1)メッセージの到達を確実にする、(2)重複到達を排除する、(3)到達順番を保証するという3つの大きな役割を意味する。インターネットのメッセージングは不特定のサーバーを介して行われるものであり、途中でどこかのサーバーのダウンによってメッセージが失われることもあり、また到達の順番も保証されていない。しかしながら、実際のビジネスにおいては個々のドキュメントは、確実に、重複なく、正しい順序で相手に到達しなければならない。例えば、注文書が2回届いたり、キャンセル通知が元となる注文書の前に届いたりしてはいけない。
　WS-Reliabilityは、富士通、日立、NECなどが提案し、現在OASISで標準化が進められている仕様である。これは、ebXMLのmessaging Serviceをルーツとした実績のある実装である。特徴としては、他のセキュリティ技術に対して非依存であることロイヤリティフリーを宣言していることなどが挙げられる。MS-Reliabilityは、WS-ReliableMessagingは、IBM, Microsft, Tibcoなどが提案したもので、現時点では標準化団体にはまだ提出されていないが、提案各社の製品に実装されている。
　WS-ReliabilityとWS-ReliableMessagingはどちらとも同様の目的のために開発されたものであり、あきらかに対立している。そのためOASISでは、両仕様の統合をに呼びかけており、年内には何らかの調整が行われるであろう。

(2) サービスの連携：BPEL4WS 対 WS-CL (Choreography Language)<sup><a href="#note1">注</a></sup>

　この2つの仕様は、どちらも複数のWebサービスを連鎖させビジネスフローとして使うための仕様であり、例えば、Webサービスの起動、データの操作、障害の通知、またはフローの終了などのアクティビティを作成し、それらを組み合わせることで複雑なプロセスを組み立てることができます。またアクティビティを、順番に実行するのか、並列して実行するのか、特定の条件に基づいて実行するのかなどを定義することも可能だ。
　BPEL4WSはOASISで標準化が進み、WS-CLはW3Cで標準化が進んでいるため、標準化団体同士の争いと見られている側面がある。しかしながら、Webサービスの応用領域は、W3Cが従来カバーしてきた基礎技術領域とは違うためW3Cで標準化することが適切かどうかという疑問の声も多い。実際、図2を見てもWS-CLが他のW3Cの標準化レイヤーと異なり飛び地のようなポジションなっていることがわかる。
　また、MicrosoftがWS-CLを離脱するなどの行動や、WS-CLでのディスカッションが進展していないなどのことから、私はこの2つの仕様はBPEL4WSを中心に収斂していくものと考えている。

(3) トランザクション：WS-Transaction 対 WS-CAF

　この2つの仕様は、どちらもWebサービスを使ってトランザクション処理を行う基盤となる仕様である。Webサービスでトランザクション処理を実現するためには、複数の異なるコンピュータ環境をまたがって、処理のコミットやロールバック処理を行なうため、様々な取り決めと厳密な実装が必要となる。WS-Transactionと関連仕様のWS-CoordinationはIBM、Microsoftなどにより提案されているWebサービスによる分散トランザクションを可能にするための標準仕様案である。従来のクローズドな環境やベンダーで行なわれていたトランザクション処理を、不特定多数でWebサービスで結合した環境で可能にする。
　そしてWS-Transactionの発表から約1年後の昨年8月にIONA, Oracle, Sun MicrosystemsなどがWS-CAFを発表した。WS-CAFは、3つの仕様から構成され（表1参照）、WS-Transaction + WS-Coordinationのカバー領域と重複している。これらは主として各社が提供する製品における実装の都合に起因している。
　WS-CAFはOASISでの標準化が始まっており、IBM, Microsoftといった実力派対標準化団体という構図になっている。Webサービス連携に関する仕様が複数存在すると、Webサービスを連携させるために複数の仕様を実装しないといけないことになるため、Webサービス構築側もWebサービス利用側も余計にコストがかかってしまうこととなる。

<strong>その他の注目「WS-標準化」</strong>

　次に、対立しているわけではないが、Webサービスの実用化にあたり注目すべき仕様をピックアップする。

 (1) セキュリティ：WS-Security

　セキュリティに関しては、多くの仕様が提案されており競合があるように見えるかもしれないが、基本的にはそれぞれが補完的になるものである。ベースになるデータセキュリティの仕様であるXML Signature（XML署名）、XML Encryption（XML暗号化）は特にWebサービスにかかわらずXMLデータ全般に適用できるデジタル署名と暗号化の仕様であり、WS-Securityはこれらを使用し、その上で、WS-Securityでは、デジタル署名、暗号化、セキュリティトークンの付加を提供する。
　さらに、サービスによって必要なセキュリティを付加するしくみとして、WS-Policy(※)、WS-Privacy(※)、WS-Trust(※)、WS-SecureConversion(※)、WS-Federation(※)、WS-Authorization(※)などが開発中である。（※の概要については表1参照）

(2) サービスの管理：WS-Manageability

　OASISのWS-Distributed Management TCで標準化が進められているWS-Manageabilityは、Webサービスを管理するWebサービスを規定する仕様である。従来はシステム管理ツールが独自の技術によってそれぞれのシステムを監視、管理していた。WS-Managabilityは、複数のWebサービスによって組まれたシステムについての可用性、状態、パフォーマンス、使用状況、構成などをWebサービスによって管理するための仕組みである。

<strong>「WS-標準化」の今後</strong>

　Webサービス周辺の標準化仕様提案は未だに衰えを見せない。例えば、2004年1月8日には、Microsoft, BEA, Tibco社がWS-EventingというWebサービスにおけるイベント処理のための新仕様を提案した。Webサービスをあらゆる場面で適用していくためには、今年いっぱいはまだ新しい仕様の提案や標準化が続くであろう。しかし、先に紹介した3つの対立する仕様に関しては、仕様が対立したままでは各ベンダーの実装の障害にもなるため、各社何らかの決着を付けたいという思惑が働いており、近いうちに何らかの形で統合され実用的な仕様となるに違いない。

　混乱しているように感じられる「WS-標準化」も、このように整理すれば、たいして混乱しているわけではないことがわかる。Webサービスをビジネスに使う場合には数々の約束事が必要で、その仕様が揃ってきているということだ。対立している3つの領域の統合もそう遠いことではない。今年から来年にかけて、一般的な企業でもWebサービスを一つの技術基盤として検討する年となるだろう。

<hr size="2">

<a name="note1">注（追記）</a>：W3CのChoreography仕様は、2004年4月27日に<a href="http://www.w3.org/TR/ws-cdl-10/" target="_blank">WS-CDL</a>としてワーキングドラフトが発表された。（図２は更新済み）

<a name="table1">表１　Webサービス標準提案仕様一覧</a>
<img src="http://hirano.com/blog/images/column10table1.gif" />
以上]]>
    </content>
</entry>
<entry>
    <title>第10回 　『ＸＭＬマスター世界展開と中国』</title>
    <link rel="alternate" type="text/html" href="http://www.infoteria.com/jp/xmlnote/column/doc/xml_yomoyama_xmlmaster_040219.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://blog.infoteria.com/mtr/mt-atom.cgi/weblog/blog_id=8/entry_id=368" title="第10回 　『ＸＭＬマスター世界展開と中国』" />
    <id>tag:renew.infoteria.com,2004:/jp/xmlnote/column//8.368</id>
    
    <published>2004-02-18T15:00:00Z</published>
    <updated>2006-05-08T14:39:14Z</updated>
    
    <summary>いよいよ先月から、日本発のXMLの技術認定制度「XMLマスター」が世界121ヶ国で受験可能となりました。121ヶ国の中でも、特にお隣の中国はXMLマスターに対して興味をお持ちの方が最も多い国です。それというのも、北京、上海、大連といった大都市を中心に日本向けのソフトウェア開発が盛んで現在でも増加傾向にあることや、日本と同様にお墨付きを重視する風潮などに起因しています。実際、XML技術者育成推進委員会理事の大手ITベンダー各社も数多くのソフトウェアを中国で開発しています。</summary>
    <author>
        <name>平野 洋一郎</name>
        
    </author>
            <category term="xml_yomoyama" />
    
    <content type="html" xml:lang="ja" xml:base="http://www.infoteria.com/jp/xmlnote/column/">
        こんにちは、インフォテリアの平野です。

いよいよ先月から、日本発のXMLの技術認定制度「XMLマスター」が世界121ヶ国で受験可能となりました。

121ヶ国の中でも、特にお隣の中国はXMLマスターに対して興味をお持ちの方が最も多い国です。それというのも、北京、上海、大連といった大都市を中心に日本向けのソフトウェア開発が盛んで現在でも増加傾向にあることや、日本と同様にお墨付きを重視する風潮などに起因しています。実際、XML技術者育成推進委員会理事の大手ITベンダー各社も数多くのソフトウェアを中国で開発しています。このようなことから、XMLマスターの世界展開を行う以前から「XMLマスターを中国で受験するにはどうすればよいのか」と言った問い合わせをたびたび受けていました。 

さて、XMLマスターの試験が開始されるにあたり、事務局の役割として私も年明け早々北京に渡り、IT教育会社（試験センターも兼ねる）の責任者方々を対象にXMLマスターの説明会を行ってきました。IT教育会社の興味も非常に高く、会場は満員となっていました。

説明会にはプロメトリック社の陳総経理も出席され、「これまでは、ITベンダーの技術を中心とした教育・試験が行われていたが、これからのオープン時代は、テクノロジーを中心とした教育・試験が重要となる」と挨拶され、参加した方々の大きな同意を得ていました。

また、教育会社や大学との個別の話の中では、エンジニアのソフトウェア基礎技術に対する並々ならぬ意欲を感じました。そうした個々の意欲に加えてしっかりとした教育や認定制度が整っていくことで、これから中国がコスト面だけでなく技術や能力といった側面で世界で独自の役割を担う時代もそう遠くないでしょう。

つい最近、携帯電話の加入数で中国が日本を抜いたとか、インターネットの接続数で中国が日本を抜いたとの報道がなされていますが、XMLマスターの取得者数で中国が日本を抜いたというニュースを聞く日もあるかもしれません。

しかし、もし国外の取得者の方が多くなるということが起こったとしても、日本のIT関連各社で大同団結して推進してきたXMLマスターが、グローバルな技術指標として認められるということですから、大いに喜ぶべきことでしょう。これから、中国に限らずソフトウェア開発のボーダーはどんどん下がっていきます。海外にソフトウェアの開発を委託されたり、共同開発されたりする時には、他の認定資格と同じように全世界で取得可能なXMLマスターも技術指標の一つとして是非活用してください。
        
    </content>
</entry>
<entry>
    <title>第８回　『良いＩＴコンサルタントの見分け方』</title>
    <link rel="alternate" type="text/html" href="http://www.infoteria.com/jp/xmlnote/column/doc/it_consultant_consultant_040205.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://blog.infoteria.com/mtr/mt-atom.cgi/weblog/blog_id=8/entry_id=367" title="第８回　『良いＩＴコンサルタントの見分け方』" />
    <id>tag:renew.infoteria.com,2004:/jp/xmlnote/column//8.367</id>
    
    <published>2004-02-04T15:00:00Z</published>
    <updated>2007-03-27T14:17:54Z</updated>
    
    <summary>さて今回は、このコラムの最終回になります。最終回は、お客様の視点から見た、良いＩＴコンサルタントの見分け方についてご紹介します。
結論から申し上げると『良いＩＴコンサルタントは「ＮＯ」を明確に言えるコンサルタント』です。しかし、「ＮＯ」を言って、お客様と問題を起こすコンサルタントは悪いＩＴコンサルタントです。良いＩＴコンサルタントは「ＮＯ」を言うことによって、お客様から評価され、感謝されるコンサルタントです。</summary>
    <author>
        <name>インフォテリア株式会社</name>
        
    </author>
            <category term="it_consultant" />
    
    <content type="html" xml:lang="ja" xml:base="http://www.infoteria.com/jp/xmlnote/column/">
        <![CDATA[こんにちは、インフォテリア斎藤です。

さて今回は、このコラムの最終回になります。最終回は、お客様の視点から見た、良いＩＴコンサルタントの見分け方についてご紹介します。

結論から申し上げると『良いＩＴコンサルタントは「ＮＯ」を明確に言えるコンサルタント』です。しかし、「ＮＯ」を言って、お客様と問題を起こすコンサルタントは悪いＩＴコンサルタントです。良いＩＴコンサルタントは「ＮＯ」を言うことによって、お客様から評価され、感謝されるコンサルタントです。

お客様に「ＮＯ」を言って納得を得るためには、十分な論理と洞察、そしてお客様とのコミュニケーションが必要になります。お客様は自らの要求に対して「ＮＯ」を言われたわけですから、素直に受け入れていただける状況にはなりにくいと思います。そこで重要なことは、十分な論理と洞察による明確な理由と「お客様のため」という考え方が基盤にあることです。微塵でも、理由にぶれがあったり、お客様のためという基盤が揺らぐようなものが見えたりしたら、その「ＮＯ」は受け入れられません。

システム開発の現状において、お客様の要求に対して「ＹＥＳ」ばかりを言うコンサルタントは、プロジェクト開始当初はお客様から重宝されがちです。始めの内は和やかでも、プロジェクトが進むにつれて、お客様のためという基盤を持たないプロジェクトは雰囲気が悪くなります。えてして「ＹＥＳ」ばかりのコンサルタントが行うプロジェクトは、スケジュールが遅れがちで、次から次へと問題が発生するからです。最悪の場合、予定通りにカットオーバーできなくなり、お客様とコンサルタントの属す会社との間で訴訟問題になりかねません。

やはり、まずお客様の業務要件およびシステム要件を明確にした上で、お客様の要求に対してシステムとして「ＹＥＳ」「ＮＯ」をきちんと判断することが重要です。加えて、システムの観点から業務に対して「ＹＥＳ」「ＮＯ」を判断し、提言することができれば、お客様に提供できる価値が上がります。「ＮＯ」という判断をした場合、お客様の要求を満たすための代替案まで提案することができれば、さらに、お客様に提供できる価値が上がります。

あるソフトウェア・ベンダーのコンサルタントは、お客様に対して営業する際に、自社のソフトウェアが適していないと判断すると「貴社の要求には向きません」とはっきり言うそうです。ソフトウェアの売上機会がなくなるわけですから、営業担当者からするととんでもない話と思われますが、そうするとお客様からは「ソフトウェアはともかく、コンサルタントだけでも派遣して下さい」と言われるそうです。つまり、別の売上機会が発生することになります。会社として、このように判断することを善としていることはすばらしいことだと思います。

10年以上前には、日本のコンサルタントのプロジェクトにおける主要業務は大半が、お客様がシステムの選択などを行う際、あらかじめ担当者が決定した要求内容を社内稟議で通すため、その理由づけとして必要となる論理的な説明資料の作成でした（当然、異なるプロジェクトもたくさんありましたが…）。その要求が「ＹＥＳ」であるということを導き出すための理由を作成するために大量の調査・分析を行うというものでした。要求は「ＹＥＳ」であると決まっているわけですから「ＮＯ」を言う余地はありませんでした。その成果物が、後からは誰も読まないような分厚いレポートでした。

昨今は、お客様の要求が厳しくなり（当然とも言えるのですが…）、分厚いレポートよりも目に見える成果、具体的には、予定通りにシステム稼働をカットオーバーさせること、システム稼働による業務効率の改善、などの成果を出さなければならなくなりました。言い換えると、ＩＴコンサルタントにとって、お客様に対して成果を出すための「ＮＯ」を言うことのできる環境になってきているということです。成果を出すことのできないコンサルタントは淘汰されていくことになりますから、厳しい環境であるとも言えます。

この環境で生き残っていくために、ＩＴコンサルタントは基礎能力を備えて、お客様にサービスを提供していく中で経験を積んでいくことが、今まで以上に重要になっていくものと思います。

お客様の視点から見た良いＩＴコンサルタントの見分け方について、おわかりいただけましたでしょうか？8回にわかってコラム：「ＩＴコンサルタント」って何？？をご愛読いただきまして、ありがとうございました。本コラムに関するご意見、ご感想などございましたら、<a href="mailto:sales@infoteria.co.jp">sales@infoteria.co.jp</a> までお気軽にご連絡ください。]]>
        
    </content>
</entry>

</feed> 

