SEWB+/CONSTRUCTION アプリケーション開発ガイド

[目次][用語][索引][前へ][次へ]

付録H.2 データ定義情報のXML形式ファイルへの出力

<この項の構成>
(1) ファイルフォーマット
(2) DTD(Document Type Definiton)

(1) ファイルフォーマット

データ定義をXML形式ファイルに出力するときのファイルフォーマットを,次に示します。

表H-1 データ定義ファイル(.cse)のファイルフォーマット

タグ種
含まれるタグ 要素型名 タグ出現回数 設定可能値 説明 備考
データ定義パッケージ:Construction
データ定義ファイル情報 File 1    
データ定義情報 Data 1    
データ定義ファイル情報:File
ID ID 1 "P-2651-8324" PP型名  
種別 Type 1 "DATADEFINITION" データ定義ファイルのファイル種別  
バージョン Version 1 "01" ファイルバージョン  
ステータス Status 1 文字列 ファイルステータス  
データ定義情報:Data
データ定義名称 Name 0または1 文字列 名称([サイン]タブ)の内容  
作成者 Author 0または1 文字列 作成者([サイン]タブ)の内容  
概要 Outline 0または1 文字列(改行を含む) 概要([サイン]タブ)の内容  
種別 Type 1 "FILE":ファイル
"RDB":RDB
"DAM":DAM
"TAM":TAM
"RPCIN":RPC入力パラメタ
"RPCREPLY":RPC応答領域
"MESSAGE":メッセージ
"USERJOURNAL":ユーザジャナル
"MESSAGELOG":メッセージログ
"WORK":ワーク
定義種別(定義種別選択ダイアログで選択)  
結合項目数 ItemNum 1 文字列 結合項目(レコード定義)の数  
レベル開始値 InitialLevel 1 文字列 生成時のレベル番号開始の値  
レベル増分値 IncrementLevel 1 文字列 生成時のレベル番号増分の値  
初期値生成 InitValue 1 "TRUE":する
"FALSE":しない
生成時の初期値展開の値  
COBOLソースパス CobolSourcePath 1 文字列 生成先パス(生成ダイアログ オプションがCOBOL)の値  
Cソースパス CSourcePath 1 文字列 生成先パス(生成ダイアログ オプションがC)の値  
ファイル名 FileName 1 文字列 ファイル名([ファイル]タブ)の内容 ファイル情報
ファイル種別 FileType 1 "SEQUENTIAL":順編成
"RELATIVE":相対編成
"INDEX":索引編成
"INDEXEDSEQUENTIAL":索引順編成
"TEXT":テキスト編成
"CSV":CSV編成
ファイル編成([ファイル]タブ)の内容 ファイル情報
レコード形成 FlRecForm 1 "FIXED":固定長
"VARIABLE":可変長
レコード形式([ファイル]タブ)の内容  
キー名 FlKeyName 1 文字列 キー([ファイル]タブ)の内容  
キー名OID FlKeyObjectId 1 文字列 キー([ファイル]タブ)のOID  
キー名日付 FlKeyUpdateTime 1 文字列 キー([ファイル]タブ)の日付  
長さ設定エリア AreaName 1 文字列    
EXTERNAL External 1 文字列    
テーブル名 TableName 1 文字列 表名称([RDB]タブ)の内容 RDB情報
DAMファイル名 DamFailName 1 文字列 ファイル名([DAM]タブ)の内容 DAM情報
プロックサイズ BlockSize 1 文字列 プロックサイズ([DAM]タブ)の内容 DAM情報
TAMテーブル名 TamTableName 1 文字列 テーブル名称([TAM]タブ)の内容 TAM情報
キー項目名 KeyName 1 文字列 キー([TAM]タブ)の内容 TAM情報
キー項目OID KeyObjectId 1 文字列 キー(データ項目)のOID TAM情報
キー項目更新日付 KeyUpdateTime 1 文字列 テーブル名称([TAM]タブ)の内容 TAM情報
ユーザジャーナルコード UserJournalCode 1 文字列 コード([ユーザジャーナル]タブ)の内容 ユーザジャーナル情報
定義種別 DefinitionType 1 "0":結合項目名称
"1":レコード定義名称
結合項目名称,またはレコード定義名称の区分  
最上位結合項目名称 HighOrderKeyName 1 文字列 最上位結合項目(レコード定義)の名称  
最上位結合項目OID HighOrderKeyObjectId 1 文字列 最上位結合項目のOID  
最上位結合項目更新日時 HighOrderKeyUpdateTime 1 文字列 最上位結合項目(レコード定義)の更新日時  
パス使用有無 UsePath 1 "USE":利用する
"NOUSE":利用しない
   
レコードファイル名フルパス RecFullName 1 文字列    
キー名使用有無 KeyUse 1 "1":利用する
"0":利用しない
   
生成キーワード情報 GenerateKeyword 1    
結合項目下位情報 Record 1 辞書(レコード定義)の情報  
生成キーワード情報:GenerateKeyword
英数字項目 CobolX 1 文字列   辞書情報
数字編集項目 CobolZ 1 文字列   辞書情報
漢字項目 CobolN 1 文字列   辞書情報
符号なし外部10進項目 Cobol9 1 文字列   辞書情報
符号付き外部10進項目 CobolS 1 文字列   辞書情報
符号なし内部10進項目 CobolU 1 文字列   辞書情報
符号付き内部10進項目 CobolP 1 文字列   辞書情報
符号なし2進項目 CobolBU 1 文字列   辞書情報
符号付き2進項目 CobolB 1 文字列   辞書情報
外部浮動小数点項目 CobolE 1 文字列   辞書情報
内部浮動小数点項目 CobolD 1 文字列   辞書情報
内部ブール項目 Cobol1 1 文字列   辞書情報
外部ブール項目 Cobol8 1 文字列   辞書情報
時刻項目 CobolXT 1 文字列   辞書情報
日付項目 CobolXD 1 文字列   辞書情報
アドレスデータ項目 CobolT 1 文字列   辞書情報
フリー定義 CobolFree 1 文字列   辞書情報
文字型 Cchar 1 文字列   辞書情報
文字型(ポインタ) Cpchar 1 文字列   辞書情報
符号付き短整数型 Cshort 1 文字列   辞書情報
符号なし短整数型 Cushort 1 文字列   辞書情報
符号付き整数型 Cint 1 文字列   辞書情報
符号なし整数型 Cuint 1 文字列   辞書情報
符号付き長整数型 Clong 1 文字列   辞書情報
符号なし長整数型 Culong 1 文字列   辞書情報
単精度浮動小数点型 Cfloat 1 文字列   辞書情報
倍精度浮動小数点型 Cdouble 1 文字列   辞書情報
拡張精度浮動小数点型 ClongDouble 1 文字列   辞書情報
時刻型 Cchart 1 文字列   辞書情報
日付型 Cchard 1 文字列   辞書情報
フリー定義 Cfree 1 文字列   辞書情報
ユーザ定義型 UserCustomType 0以上 文字列   辞書情報
結合項目下位情報:Record
結合項目OID ObjectId 1 文字列   辞書情報
データ項目数 DataItemNum 1 文字列   辞書情報
データ項目情報 DataItem 1    
データ項目情報:DataItem
データ項目名 Nname 1 文字列   辞書情報
データ項目OID ObjectId 1 文字列   辞書情報
データ項目種別 Kind 1 文字列   辞書情報
データ項目レベル番号 Level 1 文字列   辞書情報
標準名称 StandardName 4 文字列 標準名称 辞書情報
フリガナ Kana 4 文字列   辞書情報
コメント Comment 4 文字列   辞書情報
フィールド Field 20 文字列   辞書情報
分類 TypeGroup 1 文字列   辞書情報
分類文字数 TypeGroupString 1 文字列   辞書情報
けた数 Total 1 文字列   辞書情報
小数部けた数 DecimalPart 1 文字列   辞書情報
反復回数 Repeat 1 文字列   辞書情報
辞書参照状態 DictStatus 1 文字列    
データ項目更新日付 Date 1 文字列    
辞書情報 Dict 12 辞書(レコード定義)の情報  
生成キーワード Keyword 2    
レコード属性 RecordAttribute 2    
辞書情報:Dict
言語区分 Lang 0または1 文字列   辞書情報
データ項目名 Name 0または1 文字列   辞書情報
タイプ Type 0または1 文字列   辞書情報
タイプ文字列 TypeString 0または1 文字列   辞書情報
フリー定義文字列 FreeString 0または1 文字列   辞書情報
編集文字列 EditString 0または1 文字列   辞書情報
初期値 InitValue 0または1 文字列   辞書情報
フィールド Field 0または1 文字列   辞書情報
生成キーワード:Keyword
@DATAITEM DataItem 0または1 文字列   辞書情報
@LEN Len 0または1 文字列   辞書情報
@PLEN Plen 0または1 文字列   辞書情報
@ILEN Ilen 0または1 文字列   辞書情報
@DLEN Dlen 0または1 文字列   辞書情報
@VALUE Value 0または1 文字列   辞書情報
@OCCURS Occurs 0または1 文字列   辞書情報
@EDITCAHR Editchar 0または1 文字列   辞書情報
@COMP Comp 0または1 文字列   辞書情報
@FREE Free 0または1 文字列   辞書情報
レコード属性:RecordAttribute
CHARCTER TYPE CharType 0または1 文字列    
CHARCTER TYPE値 CharTypeVal 0または1 文字列    
指標名 Index 0または1 文字列    
可変反復回数項目名 ValOccursName 0または1 文字列    
可変反復回数最小値 ValOccursMini 0または1 文字列    
アドレス名 Address 0または1 文字列    
再定義名 Redefine 0または1 文字列    
EXTERNAL句 External 0または1 文字列    
SYNC句 Sync 0または1 文字列    
JUST句 Just 0または1 文字列    
BRANK ZERO句 BrankZero 0または1 文字列    

注1

斜体で表記している要素型名の設定可能値については,対応するタグ種を参照してください。

注2

属性値に含まれる「<」「&」「"」,および内容(文字データ)に含まれる「<」「&」は,それぞれ次のように置換します。

注※

備考に「辞書情報」と記載しているタグ情報でも,レコード定義ファイルを使用している場合には,レコード定義の内容によってレコード定義情報が設定されます。


(2) DTD(Document Type Definiton)

データ定義ファイルのDTDを次に示します。

<?xml version="1.0" encoding="Shift_JIS"?>
<!DOCTYPE XMI [
<!ELEMENT XMI.content (Construction.File,Construction.Data)>
<!ELEMENT Construction.File (Construction.File.ID,Construction.File.Type,Construction.File.Version,Construction.File.Status)>
<!ELEMENT Construction.File.ID (#PCDATA)>
<!ELEMENT Construction.File.Type (#PCDATA)>
<!ELEMENT Construction.File.Version (#PCDATA)>
<!ELEMENT Construction.File.Status (#PCDATA)>
<!ELEMENT Construction.Data (Construction.Data.Name?,Construction.Data.Author?,
                             Construction.Data.Outline?,Construction.Data.Type,
                             Construction.Data.ItemNum,Construction.Data.InitialLevel,
                             Construction.Data.IncrementLevel,Construction.Data.InitValue,
                             Construction.Data.CobolSourcePath,Construction.Data.CSourcePath,
                             Construction.Data.FileName,Construction.Data.FileType,
                             Construction.Data.FlKeyName,Construction.Data.FlKeyObjectId,
                             Construction.Data.FlKeyUpdateTime,Construction.Data.AreaName,
                             Construction.Data.External,Construction.Data.TableName,
                             Construction.Data.DamFileName,Construction.Data.BlockSize,
                             Construction.Data.TamTableName,Construction.Data.KeyName,
                             Construction.Data.KeyObjectID,Construction.Data.KeyUpdateTime,
                             Construction.Data.UserJournalCode,Construction.Data.HighOrderKeyName*,
                             Construction.Data.HighOrderKeyObjectID*,Construction.Data.HighOrderKeyUpdateTime*,
                             Construction.Data.generatekeyword,Construction.Data.record*)>
<!ELEMENT Construction.Data.Name (#PCDATA)>
<!ELEMENT Construction.Data.Author (#PCDATA)>
<!ELEMENT Construction.Data.Outline (#PCDATA)>
<!ELEMENT Construction.Data.Type (#PCDATA)>
<!ELEMENT Construction.Data.ItemNum (#PCDATA)>
<!ELEMENT Construction.Data.InitialLevel (#PCDATA)>
<!ELEMENT Construction.Data.IncrementLevel (#PCDATA)>
<!ELEMENT Construction.Data.InitValue (#PCDATA)>
<!ELEMENT Construction.Data.CobolSourcePath (#PCDATA)>
<!ELEMENT Construction.Data.CSourcePath (#PCDATA)>
<!ELEMENT Construction.Data.FileName (#PCDATA)>
<!ELEMENT Construction.Data.FileType (#PCDATA)>
<!ELEMENT Construction.Data.TableName (#PCDATA)>
<!ELEMENT Construction.Data.DamFileName (#PCDATA)>
<!ELEMENT Construction.Data.BlockSize (#PCDATA)>
<!ELEMENT Construction.Data.TamTableName (#PCDATA)>
<!ELEMENT Construction.Data.KeyName (#PCDATA)>
<!ELEMENT Construction.Data.KeyObjectID (#PCDATA)>
<!ELEMENT Construction.Data.KeyUpdateTime (#PCDATA)>
<!ELEMENT Construction.Data.UserJournalCode (#PCDATA)>
<!ELEMENT Construction.Data.DefinitionType (#PCDATA)>
<!ELEMENT Construction.Data.HighOrderKeyName (#PCDATA)>
<!ELEMENT Construction.Data.HighOrderKeyObjectID (#PCDATA)>
<!ELEMENT Construction.Data.HighOrderKeyUpdateTime (#PCDATA)>
<!ELEMENT Construction.Data.UsePath (#PCDATA)>
<!ELEMENT Construction.Data.RecFlName (#PCDATA)>
<!ELEMENT Construction.Data.KeyUse (#PCDATA)>
<!ELEMENT Construction.Data.generatekeyword (Construction.GenerateKeyword)>
<!ELEMENT Construction.GenerateKeyword (Construction.GenerateKeyword.CobolX,Construction.GenerateKeyword.CobolZ,
                                        Construction.GenerateKeyword.CobolN,Construction.GenerateKeyword.Cobol9,
                                        Construction.GenerateKeyword.CobolS,Construction.GenerateKeyword.CobolU,
                                        Construction.GenerateKeyword.CobolP,Construction.GenerateKeyword.CobolBU,
                                        Construction.GenerateKeyword.CobolB,Construction.GenerateKeyword.CobolE,
                                        Construction.GenerateKeyword.CobolD,Construction.GenerateKeyword.Cobol1,
                                        Construction.GenerateKeyword.Cobol8,Construction.GenerateKeyword.CobolXT,
                                        Construction.GenerateKeyword.CobolXD,Construction.GenerateKeyword.CobolT,
                                        Construction.GenerateKeyword.CobolFree,Construction.GenerateKeyword.CChar,
                                        Construction.GenerateKeyword.CPChar,Construction.GenerateKeyword.CShort,
                                        Construction.GenerateKeyword.CUShort,Construction.GenerateKeyword.CInt,
                                        Construction.GenerateKeyword.CUInt,Construction.GenerateKeyword.CLong,
                                        Construction.GenerateKeyword.CULong,Construction.GenerateKeyword.CFloat,
                                        Construction.GenerateKeyword.CDouble,Construction.GenerateKeyword.CLongDouble,
                                        Construction.GenerateKeyword.CCharT,Construction.GenerateKeyword.CCharD,
                                        Construction.GenerateKeyword.CFree,Construction.GenerateKeyword.UserCustomType*)>
<!ELEMENT Construction.GenerateKeyword.CobolX (#PCDATA)>
<!ELEMENT Construction.GenerateKeyword.CobolZ (#PCDATA)>
<!ELEMENT Construction.GenerateKeyword.CobolN (#PCDATA)>
<!ELEMENT Construction.GenerateKeyword.Cobol9 (#PCDATA)>
<!ELEMENT Construction.GenerateKeyword.CobolS (#PCDATA)>
<!ELEMENT Construction.GenerateKeyword.CobolU (#PCDATA)>
<!ELEMENT Construction.GenerateKeyword.CobolP (#PCDATA)>
<!ELEMENT Construction.GenerateKeyword.CobolBU (#PCDATA)>
<!ELEMENT Construction.GenerateKeyword.CobolB (#PCDATA)>
<!ELEMENT Construction.GenerateKeyword.CobolE (#PCDATA)>
<!ELEMENT Construction.GenerateKeyword.CobolD (#PCDATA)>
<!ELEMENT Construction.GenerateKeyword.Cobol1 (#PCDATA)>
<!ELEMENT Construction.GenerateKeyword.Cobol8 (#PCDATA)>
<!ELEMENT Construction.GenerateKeyword.CobolXT (#PCDATA)>
<!ELEMENT Construction.GenerateKeyword.CobolXD (#PCDATA)>
<!ELEMENT Construction.GenerateKeyword.CobolT (#PCDATA)>
<!ELEMENT Construction.GenerateKeyword.CobolFree (#PCDATA)>
<!ELEMENT Construction.GenerateKeyword.CChar (#PCDATA)>
<!ELEMENT Construction.GenerateKeyword.CPChar (#PCDATA)>
<!ELEMENT Construction.GenerateKeyword.CShort (#PCDATA)>
<!ELEMENT Construction.GenerateKeyword.CUShort (#PCDATA)>
<!ELEMENT Construction.GenerateKeyword.CInt (#PCDATA)>
<!ELEMENT Construction.GenerateKeyword.CUInt (#PCDATA)>
<!ELEMENT Construction.GenerateKeyword.CLong (#PCDATA)>
<!ELEMENT Construction.GenerateKeyword.CULong (#PCDATA)>
<!ELEMENT Construction.GenerateKeyword.CFloat (#PCDATA)>
<!ELEMENT Construction.GenerateKeyword.CDouble (#PCDATA)>
<!ELEMENT Construction.GenerateKeyword.CLongDouble (#PCDATA)>
<!ELEMENT Construction.GenerateKeyword.CCharT (#PCDATA)>
<!ELEMENT Construction.GenerateKeyword.CCharD (#PCDATA)>
<!ELEMENT Construction.GenerateKeyword.CFree (#PCDATA)>
<!ELEMENT Construction.GenerateKeyword.UserCustomType (#PCDATA)>
<!ELEMENT Construction.Data.record (Construction.Record)>
<!ELEMENT Construction.Record (Construction.Record.ObjectID,Construction.Record.DataItemNum,Construction.Record.dataitem)>
<!ELEMENT Construction.Record.ObjectID (#PCDATA)>
<!ELEMENT Construction.Record.DataItemNum (#PCDATA)>
<!ELEMENT Construction.Record.dataitem (Construction.DataItem+)>
<!ELEMENT Construction.DataItem (Construction.DataItem.Name,Construction.DataItem.ObjectID,
                                        Construction.DataItem.Kind,Construction.DataItem.Level,
                                        Construction.DataItem.StandardName+,Construction.DataItem.Kana+,
                                        Construction.DataItem.Comment+,Construction.DataItem.Field+,
                                        Construction.DataItem.TypeGroup,Construction.DataItem.TypeGroupString,
                                        Construction.DataItem.Total,Construction.DataItem.DecimalPart,
                                        Construction.DataItem.Repeat,Construction.DataItem.RepeatSet,
                                        Construction.DataItem.dictstate,Construction.DataItem.date,
                                        Construction.DataItem.dict,Construction.DataItem.keyword,
                                        Construction.DataItem.recordattribute)>
<!ELEMENT Construction.DataItem.Name (#PCDATA)>
<!ELEMENT Construction.DataItem.ObjectID (#PCDATA)>
<!ELEMENT Construction.DataItem.Kind (#PCDATA)>
<!ELEMENT Construction.DataItem.Level (#PCDATA)>
<!ELEMENT Construction.DataItem.StandardName (#PCDATA)>
<!ELEMENT Construction.DataItem.Kana (#PCDATA)>
<!ELEMENT Construction.DataItem.Comment (#PCDATA)>
<!ELEMENT Construction.DataItem.Field (#PCDATA)>
<!ELEMENT Construction.DataItem.TypeGroup (#PCDATA)>
<!ELEMENT Construction.DataItem.TypeGroupString (#PCDATA)>
<!ELEMENT Construction.DataItem.Total (#PCDATA)>
<!ELEMENT Construction.DataItem.DecimalPart (#PCDATA)>
<!ELEMENT Construction.DataItem.Repeat (#PCDATA)>
<!ELEMENT Construction.DataItem.RepeatSet (#PCDATA)>
<!ELEMENT Construction.DataItem.DictState (#PCDATA)>
<!ELEMENT Construction.DataItem.Date (#PCDATA)>
<!ELEMENT Construction.DataItem.dict (Construction.Dict)>       
<!ELEMENT Construction.Dict (Construction.Dict.Lang,Construction.Dict.Name?,
                             Construction.Dict.Type?,Construction.Dict.TypeString?,
                             Construction.Dict.FreeString?,Construction.Dict.EditString?,
                             Construction.Dict.InitValue?,Construction.Dict.Field?)*>
<!ELEMENT Construction.Dict.Lang (#PCDATA)>
<!ELEMENT Construction.Dict.Name (#PCDATA)>
<!ELEMENT Construction.Dict.Type (#PCDATA)>
<!ELEMENT Construction.Dict.TypeString (#PCDATA)>
<!ELEMENT Construction.Dict.FreeString (#PCDATA)>
<!ELEMENT Construction.Dict.EditString (#PCDATA)>
<!ELEMENT Construction.Dict.InitValue (#PCDATA)>
<!ELEMENT Construction.Dict.Field (#PCDATA)>
<!ELEMENT Construction.DataItem.keyword (Construction.Keyword)>
<!ELEMENT Construction.Keyword (Construction.Keyword.DataItem,
                                Construction.Keyword.Len?,
                                Construction.Keyword.PLen?,
                                Construction.Keyword.ILen?,
                                Construction.Keyword.DLen?,
                                Construction.Keyword.Value?,
                                Construction.Keyword.Occurs?,
                                Construction.Keyword.Editchar?,
                                Construction.Keyword.Comp?,
                                Construction.Keyword.Free?)*>
<!ELEMENT Construction.DataItem.recordattribute (Construction.RecordAttribute)>
<!ELEMENT Construction.RecordAttribute (Construction.RecordAttribute.CharType?,
                                Construction.RecordAttribute.CharTypeVal?,
                                Construction.RecordAttribute.Index?,
                                Construction.RecordAttribute.ValOccursName?,
                                Construction.RecordAttribute.ValOccursMini?,
                                Construction.RecordAttribute.Address?,
                                Construction.RecordAttribute.Redefine?,
                                Construction.RecordAttribute.External,
                                Construction.RecordAttribute.Sync,
                                Construction.RecordAttribute.Just,
                                Construction.RecordAttribute.BrankZero)*>
<!ELEMENT Construction.Keyword.DataItem (#PCDATA)>
<!ELEMENT Construction.Keyword.Len (#PCDATA)>
<!ELEMENT Construction.Keyword.PLen (#PCDATA)>
<!ELEMENT Construction.Keyword.ILen (#PCDATA)>
<!ELEMENT Construction.Keyword.DLen (#PCDATA)>
<!ELEMENT Construction.Keyword.Value (#PCDATA)>
<!ELEMENT Construction.Keyword.Occurs (#PCDATA)>
<!ELEMENT Construction.Keyword.Editchar (#PCDATA)>
<!ELEMENT Construction.Keyword.Comp (#PCDATA)>
<!ELEMENT Construction.Keyword.Free (#PCDATA)>
]>