< 前へ | 次へ >

演習 1.3: XML スキーマの編集および妥当性検査

この演習を始める前に、 演習 1.2: スキーマ・コンポーネントの追加を終了しておく必要があります。

変更の実行、およびリファクタリングの動作方法の確認

スキーマがより大きく、複雑になるにつれ、型定義とそれらの型への参照も増えることになります。 それでは、型を定義し、それに対して 10 個の参照を作成した後で、型の名前を変更する必要が生じた場合にはどのようにすればよいでしょう。 XML スキーマ・エディターには、 リファクタリング・メカニズムが組み込まれています。 これにより、加えられた変更は自動的に伝搬されるため、 ユーザーが手動で更新を行う必要はありません。 以下のステップでは、この機能を説明します。

ご使用の University.xsd ファイルに Faculties と呼ばれる単純型を定義したものとします。 Student 複合型には、この型に対する参照があります。 次の手順で、単純型の名前を Faculty に変更することにします。

  1. 「設計」ビューで、Faculties 単純型を右クリックし、 「リファクタリング」 > 「名前 変更」と選択します。
  2. 「新しい名前」フィールドに Faculty と入力し、 「OK」をクリックします。
  3. 「ソース」ビューに切り替えます (このビューで、ご使用のソース・コードを見ることができます)。 要素 major の型が、自動的に tns:Faculty に変更されます。

名前空間接頭部およびターゲット名前空間を変更する。

名前空間は、要素または属性の抽出元を識別する方法を提供します。

University.xsd スキーマ内のターゲット名前空間は、http://www.example.org/University です。 これは、スキーマ要素内の targetNamespace 属性によって示されます。 つまり、このスキーマによって定義される型はすべて、ターゲット名前空間 http://www.example.org/University に属していることになります。

スキーマ要素内の次の行は、このターゲット名前空間の接頭部 tns を定義しています。
xmlns:tns="http://www.example.org/University"
このスキーマで定義されている型を参照するには、この定義済み接頭部を使用する必要があります。 「ソース」ビューを見て、major 要素と student 要素が次のようにして型を参照することに注意してください。
<element name="major" type="tns:Faculty"/>
<element name="student" type="tns:Student"/>

スキーマの名前空間接頭部 またはターゲット名前空間を変更する必要がある場合は、 「設計」ビューを使用します。 以下のステップに従ってください。

  1. 「設計」ビューで、University スキーマを選択します。
  2. 「プロパティー」ビューに進んで、「接頭部」を univ に変更します。
  3. 「ターゲット名前空間」を http://www.utoronto.ca に変更します。
  4. 「ソース」ビューを見てください。 スキーマ要素の属性と型のすべての接頭部が自動的にユーザーの指定どおりに変更されていることに注意してください。
コードは、次のようになっているはずです。
「ソース」ビュー

スキーマの妥当性検査

XML スキーマ・エディターのもう 1 つの便利な機能はインクリメンタル妥当性検査機能です。 XML スキーマ・ファイルを保管した後に、 それを「ナビゲーター」ビューで右クリックし、 「妥当性検査」をクリックします。 検証エラーはいずれも「問題」ビュー内に報告されますが、「ソース」ビューの該当行に赤いマーカーがつけられています。

演習のチェックポイント

XML スキーマ・エディターは、単一ステップで、複数の依存関 係に影響する変更を簡単に行うツールを提供します。 さらに、このエディターは、名前空間の詳細を 指定し、ファイル構文を検査するシンプルなメソッドを提供します。

この演習では、次のことを学習しました。
  • 変更を加え、リファクタリングの動作方法を確認する。
  • 名前空間接頭部およびターゲット名前空間を変更する。
  • XML スキーマの妥当性検査を行う。
< 前へ | 次へ >