ファイルを知る、使いこなす。
.xml

XMLデータ

Web・開発

XMLはタグでデータの構造を表す形式です。同じXMLでもサイトマップ、アプリ設定、文書など用途はさまざまです。タグの文法が正しくても、利用先が必要とする構造と一致するとは限りません。

主な用途
タグで構造化する文書・設定・データ交換
中身の種類
テキスト
目次・よくある質問・根拠資料を見る

内容の最終確認: · 編集:Kai

開き方・操作手順

使っている環境や目的の項目を開いて、手順を確認してください。

エディター:構造を確認

保存前に元ファイルのコピーを作ります。

  1. VS Code等でファイルを開き、対応する言語モードを確認します。
  2. 開始・終了タグ、属性、名前空間、宣言の文字コードを確認します。
  3. 読み込み文字コードと元の改行形式を確認し、リッチテキストとして保存しないようにします。
構文確認:XMLパーサー

整形式とスキーマ適合を分けます。

  1. ローカルのXML検証ツールでコピーを読み込みます。
  2. 最初のエラーのタグ閉じ忘れ、引用符、特殊文字を確認します。
  3. 必要なら指定DTD・XSDへの適合を確認します。外部参照の扱いはツール設定を確認します。
アプリ:正しい取り込み口を使う

XMLは保存構造であり用途は作成元次第です。

  1. 作成元と必要スキーマ・名前空間を確認します。
  2. 受け取りアプリのXML取り込みでコピーを指定します。
  3. 件数、属性、文字内容、並び順を照合します。

操作名・対応状況はアプリ・OS・版によって異なります。変更する前に原本を残してください。

開けないとき:症状から確認

  • 解析エラー:閉じタグ、引用符、入れ子、特殊文字のエスケープを確認します。
  • 表示が空:XMLはHTMLとは違い、汎用の見た目を定義しません。元アプリや指定された表示方法を使います。
  • アプリが内容を拒否:名前空間、必須要素、版やスキーマの指定を確認します。
  • ampersandでエラー:本文中の&や<をエスケープする必要があるか確認します。
  • タグは同じなのに認識しない:名前空間URIと接頭辞の設定を照合します。
  • 文字コード宣言と実体が違う:宣言だけを変えず、保存文字コードも確認します。

XML → JSON / CSV

  1. 対象XMLの要素・属性・繰り返しの構造を確認し、変換先の項目へ対応付けます。
  2. 対応ツールでコピーを変換し、欠落や順序、文字コード、型を確認します。
  3. 変換前後のキー、件数、文字列・数値・日付などの型を照合し、変換できない項目は別に記録します。

属性・名前空間・本文とタグの混在は単純な表へ移せない場合があります。

タグ・属性・文字の区別

属性の値と要素の本文を区別します。空白や順序が意味を持つ用途では、見た目だけの整形でも結果を確認します。

XMLパーサーの成功は整形式の確認です。アプリが要求する項目の検査は別に行います。

<?xml version="1.0" encoding="UTF-8"?>
<item id="1"><name>Example</name></item>

この手順の根拠:W3C · XML 1.0 (Fifth Edition) / Python Software Foundation · XML Processing Modules

外部参照と変換の扱い

XMLは外部実体などを参照する構造を持つ場合があります。入手元不明のデータは外部取得を制限できるツールで確認します。

CSV・JSON変換後は属性、名前空間、空要素、件数を比較し、原XMLを残します。

この手順の根拠:W3C · XML 1.0 (Fifth Edition) / Python Software Foundation · XML Processing Modules

関連形式との違い

関連形式との違い
形式主な役割選ぶときの注意
XMLタグと属性を持つデータスキーマ・名前空間を確認
JSONキーと値の階層対応ルールが必要
HTMLWeb文書XMLと解析規則が同じではない

取り扱いと安全性

XMLの外部実体や外部参照を処理するアプリには注意が必要です。不明なXMLを管理システムへ取り込まず、利用先の安全な解析設定を確認します。

よくある質問

XMLなら何のアプリでも読める?

構文と用途は別です。必要なスキーマや元アプリを確認します。

ブラウザーで木構造だけ出るのは異常?

データ表示として正常な場合があります。

XMLをHTMLへ改名すればページになる?

文書の内容・構造が違うため、改名だけでは変換できません。

XMLはExcel専用?

多くの用途で使われます。作成元のスキーマを確認して対応アプリを選びます。

XMLをJSONへ変換しても同じ?

属性、名前空間、要素の順序、混在テキストなどの対応ルールが必要です。

形式の基本情報:正式名称・MIME type・管理団体
名称
Extensible Markup Language
管理・仕様
W3C
MIME type
application/xml

公式・一次情報

  • 標準仕様XML 1.0 (Fifth Edition)

    XMLの整形式、宣言、要素などを定義する仕様です。

    W3C · リンク確認:
  • 標準仕様HTML Living Standard

    HTML文書・要素・外部リソースの扱いを定義する仕様です。

    WHATWG · リンク確認:
  • プロジェクト公式XML Processing Modules

    XMLパーサーとセキュリティ上の考慮事項です。

    Python Software Foundation · リンク確認: