アットウィキロゴ
学習帳@Wiki
掲示板 掲示板 ページ検索 ページ検索 メニュー メニュー

学習帳@Wiki

XML Schema

最終更新:

Bot(ページ名リンク)

- view
だれでも歓迎! 編集

[XML] XML Schema


XML Schemaの概要

XML Schemaとは:DTDの問題点を解決したスキーマ定義言語
XSD(XML Schema Definition Language):XML Schemaの仕様にしたがってスキーマを記述するための言語

DTDの問題点
  • XMLの文法規則に従っていない:DTD独自の文法規則を習得する必要がある
  • データ型が少ない:すべて文字データとして扱う。文字列、数値、日付など、要素内容はすべて#PCDATAとして宣言する
  • 継承機能がない:同じような定義を何度も記述する必要がある
  • 名前空間に対応していない

XML Schemaの仕様

XML Schemaの特徴
  • XMLの文法規則に従う
  • データ型が豊富で、独自に定義することも可能:要素の階層構造、要素名、属性名、要素や属性のデータ型を定義する。型の派生機能を用いれば、継承機能を実現できる。
  • XML文書のデータ構造を定義する
  • 名前空間に対応している

XML Schemaの定義手順
  1. XML宣言:XML SchemaはXMLの文法に従うため、1行目に記述する。
  2. スキーマ宣言:XML Schemaの名前空間を宣言する。
  3. データ型定義:要素内容や属性地をデータ型として定義する。データ型定義には、内容に文字データのみを持つ「単純型」と、内容に子要素のみ持つか、あるいは文字データ以外に属性を持つ「複合型」がある。
  4. 要素宣言:要素名の指定とデータ型を結び付ける。要素宣言には、xs:element要素を使用する。
  5. 属性宣言:属性名の指定とデータ型を結び付ける。属性値は必ず単純型を指定する。属性宣言には、xs:attribute要素を使用する。

スキーマ宣言

  • XML Schema文書のルート要素(スキーマ宣言)はxs:schema
  • スキーマ宣言では、XML Schemaの名前空間を宣言
  • 名前空間接頭語:「xs」
  • 名前空間:「http://www.w3.org/2001/XMLSchema
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
  スキーマの記述
</xs:schema>
※XML Schema文書中で「xs」という名前空間接頭語(プレフィックス)が付いている要素などの指定は、XML Schemaの名前空間に属することを示す。

データ型定義

  • 要素内容や属性値は必ず「型」として定義する
  • 組み込みデータ型か、独自に定義
  • 単純型と複合型がある

単純型
要素内容に文字データしか持たない(DTDの#PCDATAに相当)→組み込みデータ型。ただし、要素内容が文字データのみで属性を持つ場合は複合型。

タグ:

+ タグ編集
  • タグ:
最近更新されたスレッド
ウィキ募集バナー