JA
マイツール

XSDジェネレーター(XMLからXMLスキーマへ)

1つ以上のXMLサンプルからXMLスキーマ(XSD)を生成します。要素の構造、minOccurs/maxOccurs、必須属性、推定した単純型までまとめて出力します。

オフにすると、すべての値がxs:stringになります。
XSD
サンプル数
1
ルート要素
catalog

サンプルから推定したスキーマは、サンプルに現れた内容しか分かりません。minOccurs・必須属性・型を確認し、データに決まりがある場合は列挙・パターン・範囲を追加してください。

マイツール →
広告

XMLスキーマ(XSD)は、XML文書にどの要素・属性を、何回、どんな順序と型で書けるかを定義するものです。検証ツール、コード生成ツール、連携先がXSDを求めることは多いのですが、ゼロから書くのは手間がかかります。サンプル文書を1つ以上貼り付けるだけで、要素と入れ子、順序、サンプルから読み取ったminOccurs・maxOccurs、必須・任意の属性、値から推定した単純型を含むXSDのたたき台を作成します。入れ子型(ロシアンドール)と名前付き型(ベネチアンブラインド)から選べます。

使い方

  1. サンプル文書を貼り付けます。任意の要素や繰り返しの要素を反映するには、--- だけの行で区切って複数貼り付けます。
  2. ロシアンドール(入れ子の宣言1つ)かベネチアンブラインド(再利用できる名前付き複合型)を選びます。
  3. 単純型を推定するか、xs:stringのままにするかを決めます。
  4. XSDをコピーし、列挙・パターン・長さ・範囲などを手作業で追加して仕上げます。

計算式

すべての親に要素がある → minOccurs 1 · どこかで欠けている → minOccurs="0" · 1つの親に2回以上 → maxOccurs="unbounded" · すべての要素に属性がある → use="required"

単純型は、true/falseならxs:boolean、整数ならxs:integer、小数ならxs:decimal、実在する日付のISO 8601形式ならxs:dateまたはxs:dateTime、それ以外はxs:stringです(値が空のこともある場合もxs:string)。属性とテキストを併せ持つ要素にはsimpleContentを使い、常に空の要素には空のcomplexTypeを付けます。子要素の出現順が異なる場合はxs:all、繰り返しが混在する場合はunbounded xs:choiceを使います。ルートの名前空間はtargetNamespaceになります。

計算例

サンプルのcatalogからは、<xs:element name="catalog">の中にmaxOccurs="unbounded"のbookが作られます。各bookには必須のidと任意のlang属性があり、titleはxs:string、priceはbaseがxs:decimalで必須のcurrency属性を持つsimpleContent、publishedは最初のbookにしかないためminOccurs="0"のxs:dateです。tagはminOccurs="0"、maxOccurs="unbounded"のxs:stringです。

よくある質問

生成されたスキーマはそのまま使えますか?

いいえ。スキーマはルールではなくサンプルを説明したものです。たまたまサンプルのすべてにあった項目は必須になり、値の型もサンプルが許す範囲でごく一般的になります。連携先に渡す前に必ず確認してください。

ロシアンドールとベネチアンブラインドはどちらがよいですか?

ロシアンドールはすべての宣言を親の中に入れ子にするため、簡潔で読みやすい形式です。ベネチアンブラインドは複合型ごとに名前を付けるので再利用・拡張ができ、大きなスキーマやコード生成ツールに向いています。

ここでXMLをXSDで検証できますか?

まだできません。このサイトでは、XML検証ツールで整形式かどうかを確認できます。XSDによる検証には、xmllint --schema、IDE、お使いのプラットフォームの検証機能を使ってください。

XMLはアップロードされますか?

いいえ。スキーマはブラウザ内で生成されます。

出典

最終更新:

このツールを引用する
APA

kakaoCalc. (2026, November 8). XSDジェネレーター(XMLからXMLスキーマへ). https://kakao.mobile/ja/tools/xsd-generator/

MLA

“XSDジェネレーター(XMLからXMLスキーマへ).” kakaoCalc, 8 Nov. 2026, kakao.mobile/ja/tools/xsd-generator/.

広告