XML とは何ですか?

Extensible Markup Language (XML) を使用すると、共有可能な方法でデータを定義および保存できます。XML は、ウェブサイト、データベース、サードパーティーアプリケーションなどのコンピュータシステム間における情報のやり取りをサポートします。事前に定義されたルールを使用すると、受信者はこれらのルールを使用してデータを正確かつ効率的に読み取ることができるため、任意のネットワーク上でデータを XML ファイルとして簡単に送信できます。

XML が重要なのはなぜですか?

Extensible Markup Language (XML) は、任意のデータを定義するルールを提供するマークアップ言語です。他のプログラミング言語とは異なり、XML は単独では計算オペレーションを実行できません。代わりに、構造化データ管理のために、任意のプログラミング言語またはソフトウェアを実装できます。

例えば、コメント付きのテキストドキュメントを考えてみましょう。コメントには、次のような提案が含まれているかもしれません。

  • タイトルを太字にしてください
  • この文は見出しです
  • この単語は作者を示しています

このようなコメントは、そのコンテンツに影響を及ぼすことなく、ドキュメントの使いやすさを改善します。同様に、XML はマークアップ記号を使用して、任意のデータに関する付加情報を提供します。ブラウザやデータ処理アプリケーションなどの他のソフトウェアは、この情報を使用して構造化データをより効率的に処理します。

XML タグ

データを定義するために、XML ではタグと呼ばれるマークアップ記号を使用します。例えば、書店のデータを表すために、<book>、<title>、<author> などのタグを作成できます。1 冊の書籍に関する XML ドキュメントには、次のような内容が含まれます。

<book>

<title> アマゾン ウェブ サービスを学ぶ </title>

<author> Mark Wilkins </author>

</book>

タグにより、さまざまなシステムにまたがる情報フローを統合するための高度なデータコーディングが可能となります。

XML の使用にはどのようなメリットがありますか?

企業間取引をサポートする

ある企業が商品やサービスを別の企業に販売する場合、2 つの企業はコスト、仕様、配送スケジュールなどの情報をやり取りする必要があります。Extensible Markup Language (XML) を使用すると、必要な情報をすべて電子的に共有し、人間の介入なしに複雑な取引を自動的に成立させることができます。 

データの完全性を維持する

XML を使用すると、データの説明とともにデータを送信できるため、データの完全性が損なわれるのを防ぐことができます。この説明情報を使用して、次のことができます。

  • データが正確であることを検証する
  • さまざまなユーザー向けにデータ表示を自動的にカスタマイズする
  • 複数のプラットフォームで整合的にデータを保存する 

検索効率を改善する

検索エンジンなどのコンピュータプログラムは、他の種類のドキュメントよりも効率的かつ正確に XML ファイルをソートおよび分類できます。例えば、「mark」(マーク) という単語は、名詞である場合もあれば、動詞である場合もあります。XML タグに基づいて、検索エンジンは関連する検索結果について、「mark」(マーク) を正確に分類できます。したがって、XML は、コンピュータが自然言語をより効率的に解釈するのに役立ちます。

柔軟なアプリケーションを設計する

XML を使用すると、アプリケーション設計を簡単にアップグレードまたは変更できます。多くのテクノロジー、特に新しいテクノロジーには、XML サポートが組み込まれています。これらのテクノロジーは XML データファイルを自動的に読み取って処理できるため、データベース全体を再フォーマットすることなく、変更を加えることができます。

 

XML にはどのような用途がありますか?

Extensible Markup Language (XML) は、ワードプロセッサなどの一般的な生産性向上ツールから、書籍出版ソフトウェア、さらには複雑なアプリケーション設定システムに至るまで、何千ものアプリケーションの基盤となるテクノロジーです。

データ転送

XML を使用して、同じデータを異なる形式で保存する 2 つのシステム間でデータを送信できます。例えば、ウェブサイトでは日付が MM/DD/YYYY 形式で保存されているが、会計システムでは日付が DD/MM/YYYY 形式で保存されているとします。XML を使用して、ウェブサイトから会計システムにデータを送信できます。デベロッパーは、次のことを自動化するコードを記述できます。

  • ウェブサイトデータを XML 形式に変換する
  • XML データを会計システム用のデータに変換する
  • 会計システム用のデータを XML 形式に戻す
  • XML データをウェブサイト用のデータに戻す

ウェブアプリケーション

XML は、ウェブページに表示するデータの構造を表現できます。HTML などの他のウェブサイトテクノロジーは、XML と連携して、一貫性のある関連データをウェブサイトの訪問者に提供します。例えば、衣服を販売する e コマースのウェブサイトについて考えてみましょう。このウェブサイトでは、すべての訪問者にすべての服を表示するのではなく、XML を使用してユーザーの好みに基づいてカスタマイズされたウェブページを作成します。<brand> タグをフィルタリングすることによって、特定のブランドの商品を表示します。

ドキュメント

XML を使用して、任意のテクニカルドキュメントの構造情報を指定できます。その後、他のプログラムが文書構造を処理して、柔軟に提示します。例えば、段落、番号付きリストに含まれている項目、および見出しの XML タグがあります。これらのタグを使用して、他の種類のソフトウェアが、印刷やウェブページ公開などの用途向けにドキュメントを自動的に準備します。

データタイプ

多くのプログラミング言語は、XML をデータ型としてサポートしています。このサポートにより、XML ファイルを直接操作するプログラムを他の言語で簡単に記述できます。

XML ファイルのコンポーネントにはどのようなものがありますか?

Extensible Markup Language (XML) ファイルは、.xml 拡張子で保存できるテキストベースのドキュメントです。XML は、他のテキストファイルと同様に記述できます。XML ファイルの作成や編集に使用できるツールは、次のとおりです。 

  • Notepad や Notepad++ などのテキストエディタ
  • オンライン XML エディタ
  • ウェブブラウザ

すべての XML ファイルには、次のコンポーネントが含まれます。

XML ドキュメント

XML ファイルの開始と終了を表すため <xml></xml> タグを使用します。これらのタグ内のコンテンツは、XML ドキュメントとも呼ばれます。これは、ソフトウェアが XML コードを処理するために最初に探すタグです。

XML 宣言

XML ドキュメントは、XML 自体に関する情報から開始されます。例えば、従っている XML バージョンについて言及する場合があります。この開始は XML 宣言と呼ばれます。例を示します。

<?xml version="1.0" encoding="UTF-8"?>

XML 要素

XML ドキュメント内に作成する他のすべてのタグは、XML 要素と呼ばれます。XML 要素には次の特徴を含めることができます。

  • テキスト
  • 属性
  • その他の要素

すべての XML ドキュメントは、ルート要素と呼ばれるプライマリタグで始まります。

例えば、以下の XML ファイルを考えてみましょう。

<InvitationList>

<family>

       <aunt>

       <name>Christine</name>

        <name>Stephanie</name>

       </aunt>

</family>

</InvitationList>

<InvitationList> はルート要素で、familyaunt は他の要素名です。

XML 属性

XML 要素には、属性と呼ばれる他の記述子を含めることができます。以下に示すように、独自の属性名を定義し、属性値を引用符で囲んで記述できます。

<person age=“22”>

XML コンテンツ

XML ファイル内のデータは、XML コンテンツとも呼ばれます。例えば、先ほどの XML ファイルには、次のようなデータが含まれています。 

<friend>

       <name>Charlie</name>

       <name>Steve</name>

</friend>

データ値 CharlieSteve はコンテンツです。

XML スキーマとは何ですか?

Extensible Markup Language (XML) スキーマは、XML ファイルの構造に関するいくつかのルールまたは制限を記述したドキュメントです。これらの制約は、次のようないくつかの異なる方法で記述できます。

  • 要素の順序を決定する文法ルール
  • コンテンツが満たさなければならない「はい」または「いいえ」の条件
  • XML ファイル内のコンテンツのデータ型
  • データの完全性についての制約

例えば、書店用の XML スキーマには、次のような制約が課せられる場合があります。

  1. book 要素には、titleauthor という属性があります。
  2. book 要素は、属性名を持つ category 要素の下にネストされます。
  3. 書籍の価格は book の下にネストされる別の要素です。 

これらの制約を満たすために、以下に示すように XML ファイルを記述します。 

<category name=“Technology”>

<book title=“Learning Amazon Web Services”, author=“Mark Wilkins”>

<price>20 USD</price>

</book>

</category>

XML スキーマは、さまざまなソフトウェアアプリケーションが XML ファイルを作成および使用する方法に一貫性を持たせます。一部の業界では、企業間データ送信を目的とした XML コードの記述の複雑さを軽減するために、オペレーションに固有の XML スキーマを実装しています。例えば、Scalable Vector Graphics (SVG) は、コンピュータグラフィックス関連のデータを記述するための XML 仕様です。ソフトウェアデベロッパーは、このような業界仕様を満たすように XML ファイルを記述します。

XML パーサーとは何ですか?

Extensible Markup Language (XML) パーサーは、XML ドキュメントを処理したり、読み取ったりして、ドキュメント内のデータを抽出できるソフトウェアです。XML パーサーは、XML ファイルの構文またはルールもチェックし、特定の XML スキーマに照らして検証できます。XML は厳密なマークアップ言語であるため、検証エラーまたは構文エラーがあると、パーサーはファイルを処理しません。例えば、次の条件のいずれかが当てはまる場合、XML パーサーはエラーを表示します。

  • 終了タグがない
  • 属性値に引用符がない
  • スキーマの条件が満たされていない

ソフトウェアアプリケーションは、XML パーサーを使用して XML ファイルをネイティブデータ型に変換します。したがって、XML 自体の詳細を調べることなく、アプリケーションロジックに集中できます。

 

XML は HTML とどのように異なりますか?

HyperText Markup Language (HTML) は、ほとんどのウェブページで使用されている言語です。ウェブブラウザは HTML ドキュメントを処理し、マルチメディアページとして表示します。World Wide Web Consortium (W3C) は、ウェブが長期的に成長できるようにするためのプロトコルとガイドラインを策定する国際的なコミュニティです。W3C は、ウェブサイトデベロッパーが整合性と質を実現するために実装する HTML と Extensible Markup Language (XML) の両方の標準を確立しました。

XML とHTML

HTML ファイルと XML ファイルは非常に似ていますが、いくつかの重要な違いがあります。

目的

HTML の目的は、データの提示と表示です。他方で、XML はデータを格納および送信します。

タグ

HTML には事前に定義されたタグがありますが、XML ではユーザーは独自のタグを作成および定義できます。

構文ルール

HTML と XML の構文には、目立たないが、重要な違いがいくつかあります。例えば、XML では大文字と小文字が区別されますが、HTML では区別されません。<book> ではなく <Book> としてタグを記述すると、XML パーサーはエラーを表示します。

AWS のサービスは XML をどのようにサポートしていますか?

すべての AWS データ統合サービスは、Extensible Markup Language (XML) ファイルを処理できます。以下にいくつかの例を挙げます。

AWS Glue は、分析、機械学習、アプリケーション開発を目的として、データを検出、準備、結合するために使用できる、サーバーレスデータ統合サービスです。AWS Glue DataBrew は、コードを記述することなく、インタラクティブなポイント & クリックのビジュアルインターフェイスでデータを準備するために使用できる、視覚的なデータ準備ツールです。DataBrew は、XML を含むあらゆる種類のファイル形式を入力できます。

Amazon Simple Queue Service (SQS) は、あらゆるボリュームのソフトウェアコンポーネント間でメッセージを送信、保存、受信できる、フルマネージド型のメッセージキューイングサービスです。Amazon SQS のメッセージとして送信できるのは、最大 256 KB のテキストデータ (XML、JSON、未フォーマットのテキストなど) です。

Amazon Kinesis を使用することで、ストリーミングデータをリアルタイムで収集、処理、分析することが簡単になるため、インサイトを適時に取得して新しい情報に迅速に対応できます。Kinesis の主要な機能により、あらゆる規模でストリーミングデータをコスト効率よく処理できます。また、アプリケーションの要件に適したツールを柔軟に選択できます。Kinesis を使用して、XML データをリアルタイムでストリーミング、変換、分析します。

今すぐ AWS アカウントを作成して、データ統合の使用を開始しましょう。

AWS での次のステップ

追加の製品関連リソースを確認する
分析サービスの詳細 
無料のアカウントにサインアップ

AWS 無料利用枠にすぐにアクセスできます。 

サインアップ 
コンソールで構築を開始する

AWS マネジメントコンソールで、AWS を使って構築を開始しましょう。

サインイン