拡張マークアップ言語 (XML) のことはご存じでしょうし、組織がそれを使用する理由もたくさん耳にしていることでしょう。 しかしながら、XML とは一体なんでしょうか。 この記事では、XML の基本について、その概要と動作について説明します。

この記事の内容

マークアップすること、マークアップ、タグの概要

XML を理解するには、データをマークアップするアイデアを理解するのに役立ちます。 ユーザーは、文書を登録した限り、文書を作成しました。 たとえば、学校の教師は、学生の論文をすべての時間にマークします。 学生は、段落の移動、文章の明確化、スペル ミスの修正などについて学生に伝える。 ドキュメントのマークアップは、ドキュメント内の情報の構造、意味、視覚的な外観を定義する方法です。 Word で変更の記録機能をMicrosoft Office、コンピューター化された形式のマークアップを使用しました。

コンピューター用語では、"mark up" が転じて "markup" という名詞が生まれています。 マークアップは、タグ (またはトークン) と呼ばれているコードを利用してあらゆるデータの構造、視覚的外観、意味 (XML の場合) を定義する過程です。

この記事の HTML コードは、作業時のコンピューター マークアップの良い例です。 (Microsoft Internet Explorer で) 参照する場合は、ページを右クリックし、[ソースの表示] をクリックします。読み取り可能なテキストと、 <p><h2>など、読み取り可能なテキストとハイパーテキスト マークアップ言語 (HTML) タグの組み合わせが表示されます。 HTML ドキュメントと XML ドキュメントのタグは、山かっこで囲まれているため、簡単に認識できます。 この記事のソース コードでは、HTML タグは、各段落の先頭と末尾 (<p> ... </p>) を定義し、各画像の場所をマークするなど、さまざまなジョブを実行します。

XML を構成するものとは何か

HTML ドキュメントと XML ドキュメントには、タグで囲まれたデータが含まれますが、2 つの言語間の類似点が終わる場所です。 HTML では、タグによってデータの外観が定義されます。見出しはここに表示され、段落はそこで始まります。 XML では、タグによってデータの構造と意味 (データとは何か) が定義されます。

データの構造と意味を説明すると、そのデータをさまざまな方法で再利用できるようになります。 たとえば、売上データのブロックがある場合に、ブロック内の各アイテムが明確に識別されている場合は、必要なアイテムを売上レポートに読み込み、他のアイテムを会計データベースに読み込むだけでできます。 言い換えれば、あるシステムを使用してデータを生成し、XML タグでマークアップし、ハードウェア プラットフォームやオペレーティング システムに関係なく、そのデータを他の任意の数のシステムで処理できます。 XML がデータを交換するための最も一般的なテクノロジの 1 つになったのは、移植性です。

これを行う際は、以下の点にご注意ください。

  • XML​​ の代わりに HTML を使用することはできません。 ただし、HTML タグで XML データを囲み、Web ページに表示できます。

  • HTML は、あらゆるユーザーが共有する事前定義されたタグ セットに限定されています。

  • XML の場合、あらゆるタグを作成してデータとその構造を表現できます。 たとえば、ペットに関する情報を保存し、共有するとします。 次のような XML コードを作成できます。

    <?xml version="1.0"?>
    <CAT>
      <NAME>Izzy</NAME>
      <BREED>Siamese</BREED>
      <AGE>6</AGE>
      <ALTERED>yes</ALTERED>
      <DECLAWED>no</DECLAWED>
      <LICENSE>Izz138bod</LICENSE>
      <OWNER>Colin Wilcox</OWNER>
    </CAT>
    

XML タグを使用すると、どのような種類のデータを見ているかを正確に確認できます。 たとえば、これは猫に関するデータであり、猫の名前や年齢など、簡単に見つけることができます。 ほぼすべてのデータ構造を定義するタグを作成する機能が、XML を "拡張可能" にする機能です。

しかしながら、このコード サンプルのタグを HTML ファイルのタグと混同しないでください。 たとえば、この XML 構造を HTML ファイルに貼り付け、ブラウザーでファイルを表示すると、次のようになります。

Izzy Siamese 6 yes no Izz138bod Colin Wilcox

ブラウザーは XML タグを無視し、データだけを表示します。

整形式のデータについて

IT 部門から、"整形式" XML と言う人の声が聞こえそうです。 整形式の XML ファイルは、XML を管理する一連の非常に厳密な規則に準拠しています。 ファイルがこれらの規則に準拠していない場合、XML は動作を停止します。 たとえば、前のコード サンプルでは、すべての開始タグに終了タグが付きます。そのため、サンプルは整形式のルールの 1 つに従います。 タグを削除し、Office プログラムのいずれかのファイルを開こうとすると、エラー メッセージが表示され、プログラムによってファイルの使用が停止されます。

整形式の XML を作成するためのルールを知っている必要は必ずしもありませんが (簡単に理解できますが)、データが整形式でありさえすれば、プログラムやシステムの間で XML データを共有できることを覚えておいてください。 XML ファイルを開けない場合、そのファイルは整形式になっていない可能性があります。

また、XML はプラットフォームに依存し、つまり、XML を使用するために構築されたプログラムは、ハードウェアやオペレーティング システムに関係なく、XML データを読み取って処理できます。 たとえば、適切な XML タグを使用すると、デスクトップ プログラムを使用してメインフレーム コンピューターのデータを開いて操作できます。 また、XML データの本文を作成するユーザーに関係なく、複数のプログラムで同じデータOfficeできます。 移植性が非常に高いので、XML はデータベースとユーザー デスクトップ間でデータを交換するための最も一般的なテクノロジの 1 つになります。

消費アプリケーションに展開した XML

タグ付けされた整形式のデータに加えて、XML システムでは通常、スキーマと変換という 2 つの追加コンポーネントが使用されます。 次のセクションでは、これらの追加コンポーネントの動作について説明します。

スキーマの概要

"schema" という用語を使用して、ユーザーをわいせつにしろ。 スキーマは、XML データ ファイルに格納できるルールとできないルールを含む XML ファイルです。 スキーマ ファイルでは通常、.xsd ファイルの拡張子が使用されます。一方、XML データ ファイルは、.xmlします。

スキーマを使用すると、プログラムはデータを検証できます。 データを構造化し、作成者や他のユーザーに意味のあるものにするためのフレームワークを提供します。 たとえば、ユーザーが日付フィールドにテキストなどの無効なデータを入力した場合、プログラムはユーザーに正しいデータの入力を求めるメッセージを表示できます。 XML ファイル内のデータが特定のスキーマの規則に準拠している限り、XML をサポートするプログラムは、そのスキーマを使用してデータの読み取り、解釈、および処理を行います。 たとえば、次の図に示すように、Excel CAT スキーマ <CAT> データを検証できます。

スキーマによって、アプリケーションで XML データを共有できるようにします。

スキーマは複雑になる可能性があります。この記事では、スキーマを作成する方法を説明する必要があります。 (また、その方法を知っている IT 部門を持っている可能性があります)。 ただし、スキーマの外観を確認するのに役立ちます。 次のスキーマでは、/CAT タグ セット<CAT>規則<定義>します。

<xsd:element name="CAT">  
  <xsd:complexType>  
    <xsd:sequence>
      <xsd:element name="NAME" type="xsd:string"/>
      <xsd:element name="BREED" type="xsd:string"/>
      <xsd:element name="AGE" type="xsd:positiveInteger"/>
      <xsd:element name="ALTERED" type="xsd:boolean"/>
      <xsd:element name="DECLAWED" type="xsd:boolean"/>
      <xsd:element name="LICENSE" type="xsd:string"/>
      <xsd:element name="OWNER" type="xsd:string"/>        
    </xsd:sequence>
  </xsd:complexType>
</xsd:element>

サンプル内のすべてを理解する心配はありません。 次の事実に注意してください。

  • サンプル スキーマの行項目は「宣言」と呼ばれるものです。 動物に関する追加情報、その色や模様などが必要な場合、おそらく IT 部署はスキーマに宣言を追加します。 ビジネス ニーズの変化に合わせて XML 体系を変更できます。

  • 宣言により、データ構造をかなり細かく制御できます。 たとえば、<xsd:sequence> 宣言の場合、<NAME><BREED> のようなタグは、上記の順序で表記される必要があることを意味します。 宣言は、ユーザーが入力できるデータの種類を制御することもできます。 たとえば、上記のスキーマの場合、猫の年齢に正数が、ALTERED タグと DECLAWED タグにはブール値 (TRUE または FALSE) が要求されます。

  • スキーマにより与えられるルールに XML ファイルのデータが準拠すれば、そのデータは有効となります。 スキーマに対して XML データ ファイルをチェックする過程を検証と呼びます。 スキーマ使用の大きな利点は、データの破損を防げることです。 問題に遭遇すると XML は停止するので、破損データを簡単に見つけることができます。

変換の概要

前述のように、XML には、データを使用または再利用するための強力な方法も用意されています。 データを再利用するためのメカニズムは、拡張スタイルシート言語変換 (XSLT) または単に変換と呼ばれる。

ユーザー (または、IT 部署) は変換を利用し、データベースなど、バックエンド システム間でデータを交換できます。 たとえば、データベース A には、営業部に最適なテーブル構造で販売データが保存されています。 データベース B には、経理部に最適なテーブル構造で収益と費用のデータが保存されています。 データベース B で変換を利用し、A からデータを受け取り、そのデータを正しいテーブルに書き込むことができます。

データ ファイル、スキーマ、変換の組み合わせが基本的な XML システムです。 次の図は、そのようなシステムの一般的な動作を表しています。 データ ファイルがスキーマに対して検証され、変換により使い勝手の良いさまざまな形式でレンダリングされます。 この図の場合、変換により Web ページのテーブルにデータが配置されます。

スキーマと変換を含む XML ファイルの基本構造。

次のコード サンプルは、変換を記述する 1 つの方法を示しています。 WEB ページのテーブル<CAT>データを読み込む。 ここでも、サンプルのポイントは、変換を記述する方法を示すのではなく、変換で使用できる 1 つのフォームを示す点です。

<?xml version="1.0"?>
<xsl:stylesheet version="1.0"> 
<TABLE>
  <TR>
    <TH>Name</TH>
    <TH>Breed</TH>
    <TH>Age</TH>
    <TH>Altered</TH>
    <TH>Declawed</TH>    
    <TH>License</TH>
    <TH>Owner</TH>
  </TR>
  <xsl:for-each select="CAT">
  <TR ALIGN="LEFT" VALIGN="TOP">
    <TD>
      <xsl:value-of select="NAME"/>
    </TD>
    <TD>
      <xsl:value-of select="BREED"/>
    </TD>
    <TD>
      <xsl:value-of select="AGE"/>
    </TD>
    <TD>
      <xsl:value-of select="ALTERED"/>
    </TD>
    <TD>
      <xsl:value-of select="DECLAWED"/>
    </TD>
    <TD>
      <xsl:value-of select="LICENSE"/>
    </TD>
    <TD>
      <xsl:value-of select="OWNER"/>
    </TD>
  </TR>
</xsl:for-each>
</TABLE>

このサンプルでは、ある種類の変換がコード化された場合の外観を示していますが、データから必要な情報をプレーンな英語で記述できるだけであるのに注意してください。 たとえば、IT 部門に移動し、過去 2 年間の特定の地域の売上データを印刷する必要がある場合は、"この方法で表示する必要があります" と言います。 その後、IT 部門は変換を作成 (または変更) して、そのジョブを実行できます。

このすべてがさらに便利なのは、Microsoft や他のベンダーの増加によって、すべての種類のジョブの変革が生み出されているという意味です。 将来、ニーズを満たす変換をダウンロードしたり、目的に合わせて調整したりできる可能性があります。 つまり、XML のコストは時間のと一度に使用するコストが低いという意味です。

Microsoft Office システムの XML

プロフェッショナルなエディションのOffice XML サポートを提供します。 2007 Microsoft Office システムMicrosoft Office では、.docx、.xlsx、および .pptx などの XML ベースのファイル形式が使用されます。 XML は独自のバイナリ形式ではなくテキスト形式でデータを格納します。顧客は独自のスキーマを定義し、より多くの方法でデータを使用できます。料金を支払う必要は一部ありません。 新しい形式の詳細については、「OPEN XML Formats and file name extensions (XML 形式とファイルの拡張子を開く )」を参照してください。 その他の利点は次のとおりです。

  • ファイル サイズが小さくなります。 新しい形式では、ZIP とその他の圧縮技術を利用し、以前のバージョンの Office と比べてファイル サイズを約 75% 減らします。

  • 情報の回復が容易になり、セキュリティが強化されます。 XML は人間が読み取り可能なので、ファイルが破損した場合は、Microsoft メモ帳 または別のテキスト リーダーでファイルを開き、少なくとも一部の情報を回復できます。 また、新しいファイルには、新しいファイル (VBA) コードVisual Basic for Applications安全です。 新しい形式を使用してテンプレートを作成する場合、ActiveX VBA マクロは、ファイルの別のより安全なセクションに存在します。 さらに、ドキュメント検査などのツールを使用して、個人データを削除できます。 ドキュメント検査の使用の詳細については、「ドキュメントを検査して非表示のデータと個人情報を削除 する」を参照してください

ここまでは順調にきましたが、XML データにスキーマがないとどうなるでしょうか。 XML 対応の Office プログラムでは、独自の手法でデータ操作を支援します。 たとえば、Excel の場合、スキーマのない XML ファイルを開くと、スキーマが予測されます。 そのデータを XML テーブルに読み込むためのオプションが Excel から与えられます。 XML のリストとテーブルを使用し、データを並べ替えたり、データを絞り込んだり、データに計算を追加したりできます。

Office で XML ツールを有効にする

既定では [開発] タブは表示されませんが、Office で XML コマンドを使用するとき、リボンに追加する必要があります。

ヘルプを表示

スキルを磨く

トレーニングの探索 >

新機能を最初に入手

Microsoft Insider に参加する >

この情報は役に立ちましたか?

言語の品質にどの程度満足していますか?
どのような要因がお客様の操作性に影響しましたか?

ご意見をいただきありがとうございます。

×