XML データ構造の概要

[データベース設定ウィザード] を使用してサンプル XML ファイルに接続すると、XML スキーマがスキャンされます。この XML スキーマは XML ファイル自体の中で参照されることがあります。スキーマが XML ファイルにない場合、スキーマファイル (存在する場合) を指定するよう求められます。次に、マスター要素、そして含める親要素および子要素を選択するよう求められます。ウィザードを正常に完了すると、データは、一貫したフィールド名構文を使用するテーブルに変換されます。その後、データベースフィールドをドキュメントのデータソースとして使用できます。

Closedスキーマファイル

[スキーマファイル」は、XML ファイルに関する情報 (その特定の XML ファイルには表示されず、同じスキーマのその他の XML ファイルに表示されることのあるオプションの要素または属性など) を提供する XSD (XML スキーマ定義) または DTD (文書型定義) ファイルです。スキーマファイルは、特定の要素が 1 回だけ表示されるか複数回表示されるかも指定します。

XML サンプルファイル自体あるいは個別の XSD または DTD ファイル内でスキーマ情報を提供しない場合、ウィザードではサンプル XML ファイルのスキーマが前提として使用されます。これには、サンプル XML ファイルに含まれるのが要素の 1 つのインスタンスだけでも、要素が反復する可能性があるという前提が含まれます。さらに、スキーマ情報がない場合、すべての要素のデータ型は既定で「テキスト」に設定されます。(データ型は [データベースの設定] ダイアログで変更できます。)

XML スキーマは必須ではありませんが、サンプル XML には含まれていないオプションのフィールドを使用するには XML スキーマが必要です。

Closedマスター要素

BarTender では、「マスター要素」は、データベースレコードを定義する XML 要素です。一般的に、マスター要素として 1 つの要素が選択されますが、種類 (ローカル名および名前空間) が同じであれば、高度な設定を使用して、スキーマ内のさまざまな場所から 1 つの要素の複数の発生を選択できます。

[データベース設定ウィザード] では、XML ファイルで発生数が最も多いスキーマ要素に基づいて既定のマスター要素が自動的に決定されます。しかし、このウィザードでの設定はユーザーによる変更が可能です。マスター要素として選択できるのは、属性ではなく要素ノードだけです。

マスター要素の各インスタンスは、データベーステーブル内の 1 つの行になります。フィールド値 (列) は、設定に応じてマスター要素およびその親要素と子要素から取得されます。

たとえば、次の XML ファイルを使用する場合を考えてみます。

マスター要素として <owl> が選択されている場合、結果のデータベースは次のようになります。サンプル XML ファイルには、この要素の 2 つのインスタンスがあるので、次に示すように、データベースには 2 つのレコードがあります。


Closed親要素と子要素

マスター要素の親要素と子要素、およびその属性は、各データベースレコードのフィールドデータとして使用されます。

たとえば、次の XML ファイルを使用する場合を考えてみます。

この XML ファイルでは、マスター要素 <owl> の子要素は、<species>、<name>、および <region> です。結果のデータベースは次のようになります。


使用する親要素と子要素を [データベース設定ウィザード] で選択し、それらの要素を [データベースの設定] ダイアログで設定できます。

Closed属性

要素の属性は、要素のプロパティを定義します。たとえば、XML ファイルに <Employee> 要素が含まれる場合、その要素の属性には、データベースに含める必要のある情報に応じて、"ID"、"LastName"、"Department" などが含まれることがあります。

たとえば、次の XML ファイルを使用する場合を考えてみます。

この XML ファイルでは、<owl> 要素の属性は <id> です。結果のデータベースは次のようになります。


各要素で使用する属性は [データベース設定ウィザード] で選択し、それらの属性を [データベースの設定] ダイアログで使用します。

関連トピック