スキーマ言語 【schema language】

概要

スキーマ言語(schema language)とは、XMLSGMLなどのマークアップ言語を用いる際に、要素や属性の定義をうための言語。特定の目的のための具体的な仕様を持つマークアップ言語を定義・作成することができる。

XMLなどの言語はマークアップ言語の基本的な記法などを定めた「メタ言語」であり、それ自体は具体的な要素名や属性名などはほとんど定義していない。これでは具体的な目的のためにマークアップうことができないため、スキーマ言語によってどのような要素(タグ)が存在するかを定義し、要素間の関連や要素中で用いることができる属性名や属性値の範囲なども定めていく。

例えば、HTMLはもともとSGMLからDTDDocument Type Definition)というスキーマ言語によって定義された、ハイパーテキスト記述用のSGML応用言語だった(現在は独立した規格として定義されている)。同様に、XMLからは数式記述用のMathMLベクター画像記述用のSVGなど、様々な対象や分野向けの応用言語が定義されている。

XMLでもDTDが利用できるが、属性値のデータ型が定義できないなどの限界から、新たなスキーマ言語を定義する動きが生じた。Web技術の標準化W3CXML向けのスキーマ言語として「XML Schema」を定義しているほか、ISO/IECでは包括的なスキーマ定義フレームワークのDSDL(Document Schema Definition Languages)を策定し、その中でRELAX NGなどのスキーマ言語を標準化している。

RELAX NG (RELAX Next Generation/リラクシング)

XML文書の構造を定義するスキーマ言語の一つで、文書形式の標準などを策定するOASISが勧告し、ISO/IECによって標準化されたもの。

XML Schemaと多くの特徴を共有しており、RELAX NG自身がXML記法で記述され、多くのデータ型を使用でき、名前空間正規表現によるパターン定義に対応している。また、XML記法に準拠しない独自のプログラミング言語風の短縮構文が利用でき、定義を簡潔に記述することもできる。全体的にXML Schemaより仕様が簡素・軽量である点が多くの開発者の支持を得ている。

村田真らのRELAX(Regular Language description for XML)とジェームズ・クラーク(James Clark)らのTREX(Tree Regular Expressions for XML)を統合して定義されたもので、2001年にOASISOrganization for the Advancement of Structured Information Standards)によって、2003年にはISO/IECによって、DSDL(ISO/IEC 19757)の第2章として標準化された。

(2018.10.8更新)

他の辞典による解説 (外部サイト)

この記事の著者 : (株)インセプト IT用語辞典 e-Words 編集部
1997年8月より「IT用語辞典 e-Words」を執筆・編集しています。累計公開記事数は1万ページ以上、累計サイト訪問者数は1億人以上です。学術論文や官公庁の資料などへも多数の記事が引用・参照されています。
ホーム画面への追加方法
1.ブラウザの 共有ボタンのアイコン 共有ボタンをタップ
2.メニューの「ホーム画面に追加」をタップ
閉じる