ツール
JA

XMLとは?

XML(Extensible Markup Language)は、構造化されたデータを保存・交換するためのテキスト形式です。このガイドでは、XMLの意味、構文の仕組み、.xmlファイルとは何か、そしてサイトマップやSVG画像からOffice文書、電子インボイスまで、XMLが日常的に使われている場面をわかりやすく解説します。

XMLの意味

XMLはExtensible Markup Language(拡張可能なマークアップ言語)の略です。1998年にW3C勧告となった形式で、自分で名前を付けたタグを使ってデータを記述します。これが「拡張可能(extensible)」の意味です。HTMLと違い、XMLにはあらかじめ決められたタグがありません。商品カタログなら<product>や<price>、請求書なら<item>や<total>といったタグを使えます。

ごく小さなXML文書は次のようになります:<book id="1"><title>XML Basics</title><year>2026</year></book>。XMLはプレーンテキストなので、人が読むことができ、あらゆるプログラミング言語で処理できます。XMLはデータを保存・構造化するだけで、それ自体は何も実行しません。データが何を意味し、どう表示するかを決めるのはプログラムです。

XMLの書き方(構文ルール)

XML文書は、いくつかの厳格なルールに従う必要があります。これらのルールを満たした文書を整形式(well-formed)と呼びます:

コメントは<!-- … -->と記述します。XMLの検証ツールを使えば、これらのルールを一瞬でチェックし、エラーのある行を示してくれます。

要素と属性

要素は、開始タグ、内容、終了タグで構成されます:<price>19.90</price>。要素にはテキスト、ほかの要素、またはその両方を含めることができます。属性は、開始タグの中に書く名前と値のペアです:<price currency="EUR">。

要素属性
例<color>red</color>color="red"
繰り返し可能不可(1要素につき1回)
子要素を含められるはいいいえ(テキストのみ)
順序に意味があるはいいいえ

一般的な慣習として、データそのものや、繰り返し・構造を持つ可能性のあるものには要素を使い、ID、単位、種類などのメタデータには属性を使います。

整形式のXMLと妥当なXMLの違い

整形式(well-formed)のXMLは構文ルールに従っており、パーサーはそれ以外のものを受け付けません。妥当な(valid)XMLは、整形式であることに加えて、使用できる要素や属性、その順序やデータ型を定義したスキーマにも適合しています。

XML名前空間

タグ名は誰でも自由に作れるため、2つの語彙が同じ名前を使うことがあります。たとえば、本のタイトルを表す<title>と、人の肩書きを表す<title>です。名前空間は、名前をURIに結び付けることでこれらを区別します。xmlns:cfdi="http://www.sat.gob.mx/cfd/4"はプレフィックスcfdiを宣言するため、<cfdi:Comprobante>はメキシコのCFDI 4.0の語彙に属します。プレフィックスなしのxmlns="…"で宣言するデフォルト名前空間は、その内側にあるプレフィックスのないすべての要素に適用されます。URIは単なる識別子であり、そこから何かがダウンロードされることはありません。

XML・JSON・HTMLの違い

XMLJSONHTML
用途構造化データや文書の保存・交換データ交換(特にWeb API)Webページの表示
タグ名・キー名自分で定義自分で定義HTML標準で決められている
データ型テキスト(スキーマで型を定義しない限り)文字列、数値、真偽値、null、配列、オブジェクトテキスト
属性ありなしあり
コメントありなしあり
スキーマDTD、XSDJSON Schema–
構文エラーパーサーが拒否パーサーが拒否ブラウザが修復

JSONは記述が短く、JavaScriptのオブジェクトにそのまま対応するため、ほとんどのWeb APIはJSONに移行しました。一方XMLは、テキストとマークアップが混在する文書、名前空間が必要なデータ、スキーマによる厳密な検証が求められる場面で今も強みを発揮します。税務当局や出版社、オフィス文書の形式が今もXMLを採用しているのはそのためです。

XMLファイルとは?開き方を解説

.xmlファイルは、XML文書を含むプレーンテキストファイルで、通常はUTF-8でエンコードされています。テキストなので、Windowsのメモ帳、Macのテキストエディット、VS Codeのようなコードエディタなど、どのテキストエディタでも開けます。ChromeやFirefoxのウィンドウにXMLファイルをドラッグするとツリー形式で表示され、ExcelではXMLデータをスプレッドシートに取り込めます。

拡張子が.xmlでなくても、XMLを使っているファイルは数多くあります。.svg画像、.rssフィード、.xsdスキーマ、.xslスタイルシート、.NETの.configファイル、そしてXMLとして保存できるmacOSの.plistファイルなどです。Word、Excel、PowerPointのファイル(.docx、.xlsx、.pptx)は、多数のXMLファイルを収めたZIPアーカイブです。

XMLの主な用途

よくある質問

XMLは何の略ですか?

Extensible Markup Language(拡張可能なマークアップ言語)の略です。「Extensible(拡張可能)」は独自のタグを定義できること、「Markup(マークアップ)」はデータをタグで囲んで構造を記述することを意味します。

XMLはプログラミング言語ですか?

いいえ。XMLはデータ形式であり、情報を記述・構造化することはできても、計算を行うことはできません。XMLの検索や変換には、XPathやXSLTといった関連技術が使われます。

XMLは今でも使われていますか?

はい。多くのWeb APIではJSONがXMLに取って代わりましたが、サイトマップ、RSSフィード、SVG、オフィス文書、Androidのレイアウト、SOAPサービス、そして多くの国の電子インボイスでは、今もXMLが標準です。

最終更新日: