XML Schema

[cover photo]
TOPICS
Programming , Web
発行年月日
PRINT LENGTH
432
ISBN
4-87311-120-X
原書
XML Schema
FORMAT
Print
5,060円
この商品は品切れ再入荷未定です

本書は、XML用スキーマ言語“W3C XML Schema”の解説書です。XML SchemaはSOAPやWSDLと同じくWebサービスの重要な構成要素の1つであり、XMLの語彙を正確に記述するW3C標準のテクノロジーです。しかし、XML SchemaはDTDに比べて表現力が高いぶん、非常に複雑な仕様を持ち、その仕様書が長くて読みにくいことでも知られています。本書では豊富な例題を使って、この複雑なスキーマ言語を丁寧に、そしてわかりやすく解説します。著者独自の視点から、XML Schemaが持つ潜在的な落し穴も指摘されており、客観的で時には批判的な意見を述べられているので、仕様書には書かれていない(ワーキンググループの)「気持ち」も理解できるでしょう。

目次

日本語版に寄せて
まえがき

1章 スキーマの利用と開発
        1.1 スキーマがXMLのために何をしてくれるか
                1.1.1 妥当性検証
                1.1.2 文書化
                1.1.3 問い合わせサポート
                1.1.4 データバインディング
                1.1.5 ガイド付き編集
        1.2 W3C XML Schema

2章 最初のスキーマ
        2.1 インスタンス文書
        2.2 最初のスキーマ
        2.3 まずわかること
                2.3.1 W3C XML Schemaにはモジュール性がある
                2.3.2 W3C XML Schemaは構造とデータ型の両方を記述する
                2.3.3 フラットな設計、大域コンポーネント

3章 スキーマの階層化
        3.1 インスタンス文書の構造から作業を始める
        3.2 新しく学んだこと
                3.2.1 階層対モジュール性?
                3.2.2 ロシア人形とオブジェクト指向設計
                3.2.3 要素のほうはどこへ行ってしまったのか?

4章 既定義単純型
        4.1 字句空間と値空間
        4.2 空白の処理
        4.3 文字列データ型
                4.3.1 空白置換なし
                4.3.2 正規化文字列
                4.3.3 空白縮小が適用された文字列
        4.4 数値データ型
                4.4.1 10進数データ型
                4.4.2 浮動小数点データ型
                4.4.3 xs:boolean
        4.5 日付と時刻のデータ型
                4.5.1 ISO 8601
                4.5.2 データ型
        4.6 リスト型
        4.7 anySimpleTypeとは?
        4.8 図書目録スキーマの再検討

5章 単純型の作成
        5.1 制限による派生
                5.1.1 ファセット
                5.1.2 複数の制限とfixed属性
        5.2 リストによる派生
                5.2.1 リストデータ型
        5.3 結合による派生
        5.4 単純型定義の注意点
                5.4.1 順番に注意
                5.4.2 長さのファセットの挙動を変えてしまうリスト化
        5.5 図書目録スキーマの再検討

6章 単純型と正規表現
        6.1 スイスアーミーナイフ
        6.2 可能な値を指定するだけのパターン
        6.3 数量の指定
        6.4 さまざまなアトム
                6.4.1 特殊文字
                6.4.2 ワイルドカード
                6.4.3 文字クラス
                6.4.4 選択とグループ化
        6.5 よく使われるパターン
                6.5.1 文字列データ型
                6.5.2   数値と浮動小数点型
                6.5.3 日付と時刻
        6.6 図書目録スキーマの再検討

7章 複合型の作成
        7.1 単純型と複合型
        7.2 複数の手順
                7.2.1 内容モデル
                7.2.2 名前付き型と匿名型
                7.2.3 新規作成と派生
        7.3 単純内容モデル
                7.3.1 単純内容モデルの作成
                7.3.2 単純内容モデルの派生
        7.4 複合内容モデル
                7.4.1 複合内容モデルの作成
                7.4.2 複合内容モデルの派生
        7.5 混在内容モデル
                7.5.1 混在内容モデルの作成
                7.5.2 混在内容モデルの派生
        7.6 空内容モデル
                7.6.1 空内容モデルの作成
                7.6.2 空内容モデルの派生
                7.6.3 単純内容モデルか、複合内容モデルか
        7.7 図書目録スキーマの再検討
        7.8 派生を用いない記述

8章 構成要素の再利用
        8.1 スキーマのインクルード
        8.2 スキーマの再定義を伴うインクルード
                8.2.1 単純型と複合型の再定義
                8.2.2 要素グループや属性グループに対する再定義
        8.3 その他の選択肢
                8.3.1 外部解析対象実体
                8.3.2 XInclude
        8.4 図書目録スキーマのリファクタリング

9章 一意性、キー、キー参照の定義
        9.1 xs:IDとxs:IDREF
        9.2 XPathベースの識別性検査
                9.2.1 一意性
                9.2.2 複合フィールド
                9.2.3 キー
                9.2.4 キー参照
                9.2.5 使ってもよいXPath表現
        9.3 ID/IDREFとxs:key/xs:keyrefの比較
        9.4 共起制約としてのxs:keyとxs:uniqueの利用

10章 名前空間の制御
        10.1 名前空間へのスキーマ言語の2つの挑戦
        10.2 名前空間宣言
        10.3 修飾すべきか否か?
        10.4 混乱を引き起こす属性
        10.5 名前空間とXPath表現
        10.6 他の名前空間の参照
        10.7 XML、XML Base、XLink用のスキーマ
                10.7.1 XML属性
                10.7.2 XLink属性
        10.8 インポートされたコンポーネントの名前空間の挙動
        10.9 名前空間のないスキーマのインポート
        10.10 カメレオン設計
        10.11 特定の名前空間から任意の要素や属性を使用する

11章 XML文書中のスキーマとスキーマデータ型の参照
        11.1 スキーマとインスタンス文書の対応付け
        11.2 要素型の定義付け
                11.2.1 単純型の定義付け
                11.2.2 複合型の定義付け
        11.3 ニル値(ナル値)の定義付け
        11.4 これらの機能の侵襲的な性質にご注意

12章 オブジェクト指向による構成部品の作成
        12.1 代替グループ
                12.1.1 「伝統的」なグループの使用
                12.1.2 代替グループ
                12.1.3 従来の宣言と代替グループのどちらを使うべきか
                12.1.4 W3C勧告の曖昧な部分
        12.2 派生の制限
                12.2.1 属性
                12.2.2 要素
                12.2.3 複合型
                12.2.4 単純型
                12.2.5 その他のコンポーネントと再定義

13章 拡張可能なスキーマの作成
        13.1 拡張可能なスキーマ
                13.1.1 大域コンポーネント
                13.1.2 final属性とfixed属性
                13.1.3 スキーマコンポーネントの分割
        13.2 オープンスキーマの必要性
                13.2.1 xsi:type
                13.2.2 ワイルドカード
                13.2.3 代替グループと拡張性

14章 スキーマの文書化
        14.1 スタイルの問題
                14.1.1 単純化する
                14.1.2 広い視野で考える
                14.1.3 類似性を表現する
        14.2 W3C XML Schema注釈要素
        14.3 外部属性
        14.4 XML 1.0のコメント
        14.5 どの方法をいつ使うべきか

15章 リファレンスガイド―― 要素編

16章 リファレンスガイド―― データ型編

付録A その他のXML用スキーマ言語
        A.1 XML用スキーマ言語とは
        A.2 XML用スキーマ言語の分類
        A.3 XML用スキーマ言語小史
        A.4 アプリケーションの例
        A.5 XML DTD
        A.6 W3C XML Schema
        A.7 RELAX NG
        A.8 Schematron
        A.9 Examplotron
        A.10 XML用スキーマ言語の選択

付録B 進行中のプロジェクト
        B.1 W3Cプロジェクト
        B.2 ISO:DSDL
        B.3 その他

用語集

索引