4.9.5 定義情報ファイルの記述例(VariableArray型のプロパティを追加する場合)

プロパティの基本単位がVariableArray型であるプロパティを追加する場合の定義情報ファイルについて,例題に沿って説明します。

<この項の構成>
(1) 使用する例題
(2) 記述例

(1) 使用する例題

プロパティは,データ型に従った値を1個持つか複数個持つかが決められています。これを基本単位といいます。プロパティの基本単位がVariableArray型のプロパティとは,そのプロパティが配列の要素を保持するプロパティです。

VariableArray型のプロパティとして定義するプロパティは,edmClass_Structクラスのインスタンスをリファレンスとして保持します。VariableArray型のプロパティを定義するための例題を次に示します。

(例)
管理する文書として「文書リスト」を定義します。この文書は,書籍の著者に関する情報を管理します。この「文書リスト」について,サブクラスを追加して必要な付加情報を追加します。追加するサブクラスとそのスーパークラスを次の表に示します。

表4-15 追加するサブクラスとそのスーパークラス

管理する情報追加するサブクラススーパークラス
文書リストusrClass_DocListedmClass_IndependentPersistence
著者の情報usrClass_WriterInfoedmClass_Struct

「文書リスト」は,書籍の著者に関する情報を管理する文書で,edmClass_IndependentPersistenceクラスのサブクラスとして,「usrClass_DocListクラス」を定義します。「著者の情報」は,著者の情報を管理する文書であり,edmClass_Structクラスのサブクラスとして「usrClass_WriterInfoクラス」を定義します。

「文書リスト」には付加情報としてプロパティを追加します。付加情報に対応するプロパティを次の表に示します。

表4-16 usrClass_DocListクラスの構造

クラス名付加情報プロパティ名
(VariableArray型のプロパティ)
データ型
usrClass_DocList文書名uP_DocNameString型
著者の情報uP_WriterInfoVariableArray型

「uP_WriterInfoプロパティ」は,VariableArray型のプロパティです。表4-17に,「uP_WriterInfoプロパティ」に定義するプロパティを示します。「uP_WriterInfoプロパティ」は,配列の要素としてプロパティを管理します。VariableArray型の「uP_WriterInfoプロパティ」の要素を管理する「usrClass_WriterInfoクラス」に格納されているプロパティを説明します。

表4-17 VariableArray型の「uP_WriterInfoプロパティ」の要素となるクラスの構造

クラス名
(VariableArray型のプロパティの要素)
付加情報プロパティ名
(VariableArray型のプロパティ要素の構成)
データ型
usrClass_WriterInfo著者名uP_WriterNameString型
著者の紹介uP_CommentString型

VariableArray型の「uP_WriterInfoプロパティ」の構造を次の図に示します。

図4-2 VariableArray型の「uP_WriterInfoプロパティ」の構造

[図データ]

配列の要素として管理されるこれらのプロパティは,edmClass_Structクラスのプロパティとして追加します。

(2) 記述例

addclass.csv

,usrClass_DocList,edmClass_IndependentPersistence
,usrClass_WriterInfo,edmClass_Struct

addclassprop.csv

usrClass_DocList,uP_DocName,
usrClass_DocList,uP_WriterInfo,
usrClass_WriterInfo,uP_WriterName,
usrClass_WriterInfo,uP_Comment,

addprop.csv

,uP_DocName,String,,64,,
,uP_WriterInfo,VariableArray,,,usrClass_WriterInfo,100
,uP_WriterName,String,,64,,
,uP_Comment,String,,64,,