>サイトトップへ >このカテゴリの一覧へ

X 0138-1:2004 (ISO/IEC 15475-1:2002)

(1) 

まえがき

この規格は,工業標準化法に基づき,日本工業標準調査会の審議を経て,経済産業大臣が制定した日本

工業規格である。

制定に当たっては,日本工業規格と国際規格との対比,国際規格に一致した日本工業規格の作成及び日

本工業規格を基礎にした国際規格原案の提案を容易にするため,ISO/IEC 15475-1:2002,Information

technology-CDIF transfer format-Part 1: General rules for syntaxes and encodings を基礎として用いた。この

規格の一部が,技術的性質をもつ特許権,出願公開後の特許出願,実用新案権,又は出願公開後の実用新

案登録出願に抵触する可能性があることに注意を喚起する。経済産業大臣及び日本工業標準調査会は,こ

のような技術的性質をもつ特許権,出願公開後の特許出願,実用新案権,又は出願公開後の実用新案登録

出願にかかわる確認について,責任はもたない。

JIS X 0138-1 には,次に示す附属書がある。

    附属書 A(規定)  転送ヘッダ形式文法

    附属書 B(参考)  SQL BNF 規則

JIS X 0138 の規格群は,次に示す部編成からなる。

JIS X 0138-1  第 1 部:構文及び符号化の一般規則

JIS X 0138-2  第 2 部:構文 SYNTAX.1

JIS X 0138-3  第 3 部:符号化 ENCODING.1


X 0138-1:2004 (ISO/IEC 15475-1:2002)

(2) 

目  次

ページ

序文

1

1.  適用範囲

1

2.  適合性

2

3.  引用規格

3

4.  定義

3

4.1  他の規格からの定義

3

4.1.1  JIS X 0137-1 からの定義

3

4.1.2  ISO/IEC 13238-1 からの定義

4

4.2  (削除)

4

5.  記号

4

5.1  命名法及び図式記法

4

5.2  BNF の規則

4

5.3  略語

5

6.  CDIF 転送の概念及び機能

5

6.1  構文及び符号化の分離

5

6.2  アーキテクチャ構成要素の独立性

5

6.3  データ型

5

6.4  文字集合

5

7.  CDIF 転送の一般構造

6

7.1  導入

6

7.2  転送ヘッダ

6

7.2.1  導入

6

7.2.2  CDIF 署名

7

7.2.3  構文識別子

7

7.2.4  符号化識別子

7

7.2.5  文字集合識別子

8

7.2.6  転送ヘッダの例

8

7.3  転送内容

8

7.3.1  導入

8

7.3.2  ヘッダ部

8

7.3.3  メタモデル部

9

7.3.4  モデル部

10

附属書 A(規定)転送ヘッダ形式文法

11

附属書 B(参考)SQL BNF 規則

13


     

日本工業規格

JIS

 X

0138-1

:2004

(ISO/IEC 15475-1

:2002

)

CASE データ交換形式-CDIF 転送形式-

第 1 部:構文及び符号化の一般規則

CASE data interchange format-CDIF transfer format-

Part 1: General rules for syntaxes and encodings

序文  この規格は,2002 年に第 1 版として発行された ISO/IEC 15475-1:2002, Information technology-

CDIF transfer format―Part 1: General rules for syntaxes and encodings を翻訳し,技術的内容及び規格票の様式

を変更することなく作成した日本工業規格である。

なお,この規格で点線の下線を施してある“参考”は,原国際規格にはない事項である。

1.

適用範囲  CDIF 規格群は,主としてモデル化ツール間の情報転送のための機構を記述するように設

計された。CDIF を用いれば,移入側と移出側との双方のツールの開発者が,CDIF に適合するという合意

以外には何も共有しないときでも,容易に転送を成功させる。転送形式を規定するための言語は,リポジ

トリの移入/移出のための一般言語として用いることもできる。モデル化ツールを規定するための CDIF

意味メタモデルは,リポジトリで用いられる標準記述の基礎として利用できる。

完全な CDIF 規格を構成する規格群は,JIS X 0137-1(CASE データ交換形式-CDIF フレームワーク-

第 1 部:概要)に示されている。これらの規格群は全体的なフレームワーク,転送形式及び CDIF 意味メ

タモデルを網羅する。

CDIF 意味メタモデル (ISO/IEC 15476)

CDIF フレームワーク  (JIS X 0137) 

第 1 部:概要  (JIS X 0137-1)

第 2 部:モデル化及び拡張性

(JIS X 0137-2)

第 1 部:基盤 (ISO/IEC 15476-1) 
第 2 部:共通 (ISO/IEC 15476-2)

第 3 部:データ定義

(ISO/IEC 15476-3)

第 4 部:データモデル

(ISO/IEC 15476-4)

第 5 部:データ流れモデル

(ISO/IEC 15476-5)

第 6 部:状態事象モデル

(ISO/IEC 15476-6)

CDIF 転送形式  (JIS X 0138) 

第 1 部:構文及び符号化の一般規則

(JIS X 0138-1)

第 2 部:構文 SYNTAX.1

(JIS X 0138-2)

第 3 部:符号化 ENCODING.1

(JIS X 0138-3)

  1  CDIF 規格群


2

X 0138-1:2004 (ISO/IEC 15475-1:2002)

     

図 は,CDIF 規格群を構成する種々の規格を示す。網掛け部分は,この規格の CDIF 規格群の中での位

置を示す。

この規格は,CDIF メタモデルが転送において具体的に記述する方法及び CDIF が複数の交換構文と複数

の交換符号化とを支援する方法を規定する。この規格は,特定の交換構文又は交換符号化を規定しない。

JIS X 0138-2(CASE データ交換形式-CDIF 転送形式-第 2 部:構文 SYNTAX.1)と JIS X 0138-3(CASE

データ交換形式-CDIF 転送形式-第 3 部:符号化 ENCODING.1)とが特定の CDIF 構文と CDIF 符号化と

をそれぞれ規定している。

この規格は,CDIF を理解し及び/又は使用したいと希望する人に使われることを意図している。この

規格は,CDIF 転送規格群全体への導入部を提供し,次の人々の利用に適している。

- CDIF を評価する人

- CDIF 転送の概念及び原理を理解したいと希望する人

- CDIF 移入ツール及び CDIF 移出ツールを開発する人

JIS X 0137-1 及び JIS X 0137-2(CASE データ交換形式-CDIF フレームワーク-第 2 部:モデル化及び拡

張性)は,CDIF 規格群を最初に調査するとき,他の CDIF 規格を読む前に最初に読むことが望ましい。

この規格を読むに当たっては,特定の前提知識を必要としないが,次の各事項を理解することが読者の

助けになる。

-  実体関係属性モデル化(Entity-Relationship-Attribute modelling)

-  モデル化(CASE)ツール

-  情報リポジトリ

-  データ辞書

-  多重メタ階層モデル化

-  形式文法

-  転送形式

備考  この規格の対応国際規格を,次に示す。

なお,対応の程度を表す記号は,ISO/IEC Guide 21 に基づき,IDT(一致している),MOD

(修正している),NEQ(同等でない)とする。

ISO/IEC 15475-1:2002,Information technology-CDIF transfer format-Part 1: General rules for

syntaxes and encodings (IDT)

2.

適合性  ある製品がこの規格の附属書 に示すすべての規定及び規則に従い,JIS X 0137-1 の 2.で規

定する CDIF アーキテクチャに適合する場合に限り,その製品は,CDIF 転送形式一般規則の規格に適合す

る。製品は,転送形式一般規則の規格への適合性あり又は適合性なしのいずれかとなる。CDIF 転送形式

一般規則の一部を規定する規格に対する部分規格適合は,規定しない。

ある製品が JIS X 0138-3 の附属書 に規格適合し,かつ,JIS X 0138-2 にも適合する場合に限り,その

製品は,CDIF 符号化規格に規格適合する。ある製品が JIS X 0138-2 の附属書 に適合する場合に限り,

その製品は,CDIF 構文規格に適合する。


3

X 0138-1:2004 (ISO/IEC 15475-1:2002)

     

3.

引用規格  次に掲げる規格は,この規格に引用されることによって,この規格の規定の一部を構成す

る。これらの引用規格は,発効年又は発行年を付記してあるものは,記載の年の版だけがこの規格を構成

するものであって,その後の改正版・追補には適用しない。発効年を付記していない引用規格は,その最新

版を適用する。

JIS X 0137-1:2003  CASE データ交換形式-CDIF フレームワーク-第 1 部:概要

備考  ISO/IEC 15474-1:2002  Information technology-CDIF framework-Part 1:Overview  が,この規

格と一致している。

JIS X 0137-2:2003  CASE データ交換形式-CDIF フレームワーク-第 2 部:モデル化及び拡張性

備考  ISO/IEC 15474-2:2002   Information technology - CDIF framework - Part 2:Modelling and

extensibility  が,この規格と一致している。

ISO/IEC 9075:1992, Information technology-Database languages-SQL

備考  JIS X 3005-1:1995  データベース言語 SQL  第 1 部:枠組(SQL/Framework)データベース言

語 SQL  が,この規格と一致しているが,IS 及び JIS ともに新しい版が出版済みである。

ISO/IEC 10646-1:1993/Amd.2:1996, Information technology-Universal Multiple-Octet Coded Character

Set(UCS)-Part 1:Architecture and Basic Multilingual Plane.Amendment 2:UCS Transformation Format

8(UTF-8)

備考  JIS X 0221-1:1995  国際符号化文字集合(UCS)

-第 1 部:体系及び基本多言語面が,この規

格と一致しているが,IS 及び JIS ともに新しい版が出版済みである。

ISO/IEC 13238-1

  Information technology - Data management export/import facilities - Part 1:

Standardization framework

*

この規格は,国際の場で現在審議中である。

4.

定義  この規格で用いる主な用語の定義は,次による。

4.1

他の規格からの定義

4.1.1

JIS X 0137-1 からの定義  この規格は,JIS X 0137-1 で定義された次の用語を使用する。

CDIF (CASE Data Interchange Format)

CDIF 規格群  (CASE family of standards)

CDIF 図記法 (CDIF graphical notation)

CDIF 識別子 (CDIF identifier)

CDIF 意味メタモデル  (CDIF semantic metamodel)

CDIF メタメタモデル (CDIF meta-metamodel)

CDIF 転送 (CDIF transfer)

CDIF 転送ファイル  (CDIF transfer file)

CDIF 転送形式  (CDIF transfer format)

文字集合 (character set)

符号化 (encoding)

ENCODING.1 (ENCODING.1)

インスタンス (instance)

メタ属性 (meta-attribute)

メタ実体 (meta-entity)


4

X 0138-1:2004 (ISO/IEC 15475-1:2002)

     

メタモデル (metamodel)

メタオブジェクト (meta-object)

メタ関係 (meta-relationship)

モデル (model)

非終端記号 (non-terminal symbol)

生成規則 (production rule)

対象分野 (subject area)

構文 (syntax)

SYNTAX.1 (SYNTAX.1)

終端記号 (terminal symbol)

転送 (transfer)

転送形式 (transfer format)

4.1.2

ISO/IEC 13238-1 からの定義  この規格は,ISO/IEC 13238-1 で定義された次の用語を使用する。

転送ファイル (transfer file)

移出者 (exporter)

移入者 (importer)

4.2  (削除)

参考  原国際規格では,この規格に対する新規用語をここで定義すると規定しているが,この規格で

は新規用語を定義していないので,この項目を削除した。

5.

記号

5.1

命名法及び図式記法  CDIF におけるすべてのメタオブジェクト及びメタメタオブジェクトの名称

は,メタオブジェクト及びメタメタオブジェクトを構成する単語をつなげたものとする。そして,各単語

の最初の文字を大文字と

,残りの文字を小文字とする(例えば,MetaAttribute,AttributeDerivation,

IsDrawnUsing,IsOptional)

参考  この命名記法は,次期国際規格見直し時に,多バイト文字に対応する修正を実施する予定であ

る。

メタモデル及びメタメタモデルで用いられる CDIF 図記法は,フレームワーク規格(JIS X 0137-2)で規

定する。

5.2

BNF の規則  転送ファイル内のデータの構造を規定し,データの並びを規定するため,拡張バッカ

スナウア形式(Backus Naur Form)(BNF)を使用する。

次に示す記号及び空白類文字は,JIS X 3005-1 の 6.1 で規定するとおりに使用する。

シンボル

< >

::=

[ ]

{ }

|

...

!!


5

X 0138-1:2004 (ISO/IEC 15475-1:2002)

     

                            (空白)

参考  空白類文字は,JIS X 0138-3  の 6.3  で規定するように,空白,水平タブ,垂直タブ,復帰,改

行及び頁送りがあり,ここで決められたものだけを対象とする。

次に示す規則は,この規格に限定する。

<TokenName>

非 終 端 記 号 を 表 す 。 太 字 を 使 用 し , 山 括 弧 で 囲 ま れ た 任 意 の 文 字 列 ( こ こ で は

TokenName)は,構文要素であり,構文の中で規定されていない BNF 非終端記号を表す。

この構文要素の詳細な表現は,符号化で規定する。

Terminal

終端記号を表す。太字を使用し,山括弧で囲まれていない任意の文字列(ここでは

Terminal)は,リテラル値(すなわち,文字列そのものを表現する。)とする。

x .. y

範囲演算子を表す。x から y までの範囲の任意の記号を参照する。例えば,0..255 は,0

以上 255 以下のすべての整数を参照する。

5.3

略語  この規格で用いる略語を次に示す。

BNF

バッカスナウア形式  (Backus Naur Form)

CDIF CASE データ交換形式  (CASE Data Interchange Format)

6.

CDIF 転送の概念及び機能

6.1

構文及び符号化の分離  CDIF 転送は,異なる伝送機構(例えば,ファイル,プロセス間リンクなど)

によって扱われることを意図しているので,転送形式の構文の規定と構文の符号化との規定を分離する。

構文は,文法及び交換形式の構造を規定する。符号化は,構文を物理的にどのように表現するかを示す記

述とする。この分離は,共通の構文の使用を許すとともに,使用する伝送機構に対して最適な符号化の選

択を許す。構文と符号化との境界は,任意性が存在するため,一方の設計が他方の設計に影響を与えても

よい。

6.2

アーキテクチャ構成要素の独立性  CDIF 規格群は,各転送形式が一つの構文とそれに対応する符号

化からなる多重転送形式の概念を支援する。一つの転送構文に対して,複数の符号化を使用できる。意味

(すなわち,メタモデル)は,転送形式の規定から完全に分離されている。メタモデルは,メタメタモデ

ル内で規定した概念を使用することによってだけ規定する。一般的に,メタメタモデルによって規定する

モデル化の概念のすべてを表現することができる任意の転送形式は,メタモデル内で規定するすべての情

報を交換することができ,メタモデルに適合する任意のモデルを転送できる。

CDIF 規格群は,少なくとも一つの転送構文とその構文に対する一つの符号化とを与える。この規格は,

ある CDIF 転送に対して規定され得る任意の構文と符号化のための一般規則とを規定する。

6.3

データ型  メタ属性は,与えられたデータ型の値をもつ。関係するメタ実体又はメタ関係のメタモ

デル記述は,そのメタ属性各々に対するデータ型を規定する。

CDIF 内にはメタ属性データ型のある決められた集合が存在する。これらの型は,JIS X 0137-2 の中で規

定する。CDIF 転送を支援する任意の構文及び符号化は,これらのデータ型の各々が転送中にいかに現わ

れるかに対する規定を与える。

6.4

文字集合  任意の構文解析系で解釈可能とするため,転送ヘッダ(後述する 7.2 で規定する構文要素

<TransferHeader>)は,JIS X 0221-1 の表 に示す文字だけを含む。個々の構文は,ある転送の中の文字

列又はテキストメタ属性の値に対して,転送ヘッダ内で指定された文字集合(CODESET)に含まれる文字

の使用を支援する。転送ヘッダ内に文字集合の規定がない場合は,JIS X 0221-1 の基本多言語面(BMP)

の使用を前提とし,JIS X 0221-1 の UCS-2 符号化を文字コードとして用いる。


6

X 0138-1:2004 (ISO/IEC 15475-1:2002)

     

7.

CDIF 転送の一般構造

7.1

導入  CDIF 転送は,次に示す項目の転送を支援することを目的とする。

-  転送で使用する CDIF 対象分野に対する参照

-  転送で使用する CDIF メタモデルに対する拡張

-  転送のメタモデル部の中で規定するメタ実体,メタ関係及びメタ属性

すべての転送は,一つの構文及び一つの符号化を使用して表現する。

図 にすべての CDIF 転送(CDIF transfers)の一般構造を示す。CDIF 転送(CDIF transfer)は,次に示

すとおりに転送ヘッダ及び転送内容からなる。

転送ヘッダ 
転送内容 

ヘッダ部

メタモデル部

モデル部

CDIF

転送

  2  CDIF 転送の一般構造

CDIF 転送の一般構文を次に示す。

<CDIFTransfer> ::=

<TransferHeader>

<TransferContents>

7.2

転送ヘッダ

7.2.1

導入  転送ヘッダは,CDIF 署名,構文識別子,符号化識別子及び任意選択の文字集合識別子から

なる。転送ヘッダの構文を次に示す。

<TransferHeader> ::=

<CDIFSignature> <TransferHeaderComma> <SyntaxIdentifier>

<TransferHeaderComma> <EncodingIdentifier>

[ <TransferHeaderComma> <CharacterSetIdentifier> ]

転送ヘッダは,CDIF 転送構文,符号化及び文字集合のすべての組合せに対して全く同一の形式をもつ

唯一の部分とする。転送ヘッダは,転送の残りの部分の中で使われる構文,符号化及び文字集合を識別す

るために使用する。転送ヘッダの形式は,例えば,転送ヘッダの中のいかなるところにも空白類文字を置

くことが許されないというように規定され,制限されている。転送ヘッダの形式を図 に示す。


7

X 0138-1:2004 (ISO/IEC 15475-1:2002)

     

CDIF 署名 

転送ヘッダ

構文識別子 

符号化識別子 

文字集合識別子 

  3  転送ヘッダ

7.2.2

CDIF 署名  CDIF 署名は,その転送が CDIF 転送であることを識別するための目印とする。CDIF

署名の構文を次に示す。

<CDIFSignature> ::=

CDIF

7.2.3

構文識別子  構文識別子の構文を次に示す。

<SyntaxIdentifier> ::=

SYNTAX <TransferHeaderSpace> <SyntaxID> <TransferHeaderSpace>

<SyntaxVersion>

<SyntaxID> ::=

<TransferHeaderString>

<SyntaxVersion> ::=

<TransferHeaderString>

<TransferHeaderString> ::= <TransferHeaderSingleQuote>

[ <TransferHeaderPrintableCharacter> ] ...

<TransferHeaderSingleQuote>

<TransferHeaderComma> ::= ,

!! A comma character defined in ISO 10646-1 Table 1 as row C column 002.

<TransferHeaderSpace> ::=

!! A space character defined in ISO 10646-1 Table 1 as row 0 column 002.

<TransferHeaderSingleQuote> ::=

'

!! A single quote defined in ISO 10646-1 Table 1 as row 7 column 002.

<TransferHeaderPrintableCharacter> ::=

0|1|2|3|4|5|6|7|8|9|-|.|:

|A|B|C|D|E|F|G|H|I|J|K|L|M|N|O|P|Q|R|S|T|U|V|W|X|Y|Z

!! These characters are as defined in ISO 10646-1 Table 1.

構文識別子の例を次に示す。

SYNTAX 'SYNTAX.1' '15475-2:2002'

7.2.4

符号化識別子  符号化識別子の構文を次に示す。

<EncodingIdentifier> ::= ENCODING <TransferHeaderSpace> <EncodingID>


8

X 0138-1:2004 (ISO/IEC 15475-1:2002)

     

<TransferHeaderSpace> <EncodingVersion>

<EncodingID> ::=

<TransferHeaderString>

<EncodingVersion> ::=

<TransferHeaderString>

符号化識別子の例を次に示す。

ENCODING 'ENCODING.1' '15475-3:2002'

7.2.5

文字集合識別子  文字集合識別子の構文を次に示す。

<CharacterSetIdentifier> ::= CODESET <TransferHeaderSpace> <CharacterSetID>

<CharacterSetID> ::=

<TransferHeaderString>

文字集合識別子の例を次に示す。

CODESET 'ISO-8859-1'

CODESET 'ISO-2022-JP'

転送ヘッダに続く転送内容は,指定した構文,符号化及び文字集合に従って符号化する。各転送構文は,

複数の符号化をもつことができる。符号化は,転送ヘッダ中の符号化識別子と文字集合識別子とによって

一意に決定する。転送構文と符号化との対は,複数の文字集合をもつことができる。

7.2.6

転送ヘッダの例  ここまでで規定した構文規則を使った完全なヘッダ記述の例を,次に示す。

CDIF,SYNTAX 'SYNTAX.1' '15475-2:2002',ENCODING 'ENCODING.1' '15475-3:2002',CODESET 'ISO-2022-JP'

参考  転送ヘッダは,一行で記述しなければならない(改行してはならない。)。また,構文に示すと

おりに必要な箇所には空白(<TransferHeaderSpace>)を挿入する(SYNTAX と'SYNTAX.1'との

間,'SYNTAX.1'と'15475-2:2002'との間など)

7.3

転送内容

7.3.1

導入

ヘ ッ ダ 部  

転 送 内 容

メ タ モ デ ル 部  

モ デ ル 部  

  4  転送内容

転送内容は,ヘッダ部,メタモデル部及びモデル部からなる。図 に転送内容を示す。転送内容の構文

は,すべての構文規定に対して同一でなければならない。

<TransferContents> ::=

<HeaderSectionClause>

<MetaModelSectionClause>

[ <ModelSectionClause> ]

7.3.2

ヘッダ部  ヘッダ部は,転送についての情報を含む。たとえ次の情報を転送することが必す(須)

ではなくても,すべての構文規定は,少なくとも次の情報を表現するための機構を備えなければならない。

- CDIF 移出ツールを識別する名称及び版


9

X 0138-1:2004 (ISO/IEC 15475-1:2002)

     

-  最少でも発行者及び移出日時を含む構成管理情報

各構文規定は,CDIF 移出ツールが上記のタイプの付加情報を表現できるようにしなければならない。

CDIF 規格群は,  例えば,JIS X 0138-2 のような,少なくとも一つの転送構文を提供する。図 に転送内

容のヘッダ部を示す。

ヘッダ部 

転送内容

メタモデル部 

モデル部 

要約 

  5  転送内容のヘッダ部

7.3.3

メタモデル部

7.3.3.1

導入  メタモデル部は,転送で使用するメタモデルを規定する。メタモデル部は,転送で使用す

る規格化された CDIF 対象分野に対する参照を含む。また,メタモデル部は,CDIF 意味メタモデルに対す

る拡張を含んでよい。CDIF 規格群は, JIS X 0138-2 という少なくとも一つの転送構文を提供する。メタ

モデル部の一般構造を図 に示す。

ヘッダ部 

転送内容

メタモデル部 

モデル部 

CDIF 対象分野参照 

メタモデル拡張 

  6  転送内容のメタモデル部

7.3.3.2

CDIF 対象分野参照  この部分は,モデルデータを解釈する際に移入者によって使用する規格化

された CDIF 対象分野を特定する。また,(関連する対象分野規格,ISO/IEC 15476 の一部で規定している

ように)これらの各対象分野の適切な版を特定する。

7.3.3.3  メタモデル拡張  この部分は,モデルデータの前に移入者に伝達するメタモデル拡張情報とする。

移入者及び移出者が規格化された CDIF 対象分野だけを使用する場合,この部分は,空でなければならな

い。


10

X 0138-1:2004 (ISO/IEC 15475-1:2002)

     

移出者が規格化された CDIF メタモデルを拡張する必要がある場合又は移出者自身のメタモデル規定を

与える場合,移出者は,これらの拡張をこの部分に配置する。すべての構文は,拡張のための機構を与え

なければならない。

支援すべき拡張性の形態及び各メタオブジェクト規定について伝達すべき詳細な情報を CDIF メタメタ

モデルによって規定する。この情報の完全な記述については,JIS X 0137-2 を参照する。

一つの転送のメタモデル拡張部における前方参照は,認めない。これは,参照するすべてのメタモデル

オブジェクトが規格化された対象分野,又はその転送内のこれまでの拡張の中で規定する必要があること

を意味する。

メタモデル部内で出現するすべてのメタ実体,メタ属性及びメタ関係は,単独の転送の中で一意に識別

する。この識別は,転送内のすべてのメタオブジェクトに対して CDIF メタ識別子という一意な識別子を

与えることで達成される。各々の識別子自体に移出者から移入者へ伝達する特定の意味をもたせてはなら

ない。したがって,移入者は,これらの識別子を変更することもできる。数字で始まるメタ識別子は,衝

突を避けるために CDIF 意味メタモデル内の使用に対して予約している。

7.3.4

モデル部  メタモデル部で規定するように,モデル部は,関連するメタ属性とともにメタ実体及び

メタ関係のインスタンスを含む。CDIF 規格群は,JIS X 0138-2 という少なくとも一つの転送構文を与える。

図 に転送内容のモデル部の構造を示す。

ヘッダ部 

転送内容

メタモデル部 

モデル部 

メタ実体及びメタ
関係インスタンス 

  7  転送内容のモデル部

モデル部内で出現するすべてのメタ実体及びメタ関係のインスタンスは,単独の転送の中で一意に識別

する。この識別は,転送内のすべてのメタ実体及びメタ関係のインスタンスに対して CDIF 識別子という

一意な識別子を与えることで達成される。各々の識別子自体に移出者から移入者へ伝達する特定の意味を

もたせてはならない。したがって,移入者は,これらの識別子を変更することもできる。

モデル部には暗黙又は明示の前方参照は,存在してはならない。CDIF 転送のモデル部は,メタモデル

情報だけを転送する場合,省略してもよい。メタ属性値は,値がヌルでないときに限り転送の中で存在す

る。


11

X 0138-1:2004 (ISO/IEC 15475-1:2002)

     

附属書 A(規定)転送ヘッダ形式文法

ここでは,本体 7.で示す構文をまとめて規定している。転送ヘッダ内の情報の正確な表現を次に示す文

法で記述する。

<CDIFTransfer> ::=

<TransferHeader>

<TransferContents>

<TransferContents> ::=

<HeaderSectionClause>

<MetaModelSectionClause>

[ <ModelSectionClause> ]

<TransferHeader> ::=

<CDIFSignature> <TransferHeaderComma> <SyntaxIdentifier>

<TransferHeaderComma> <EncodingIdentifier>

[ <TransferHeaderComma> <CharacterSetIdentifier> ]

<CDIFSignature> ::=

CDIF

<SyntaxIdentifier> ::=

SYNTAX <TransferHeaderSpace> <SyntaxID> <TransferHeaderSpace>

<SyntaxVersion>

<EncodingIdentifier> ::= ENCODING <TransferHeaderSpace> <EncodingID>

<TransferHeaderSpace> <EncodingVersion>

<CharacterSetIdentifier> ::= CODESET <TransferHeaderSpace> <CharacterSetID>

<SyntaxID> ::=

<TransferHeaderString>

<SyntaxVersion> ::=

<TransferHeaderString>

<EncodingID> ::=

<TransferHeaderString>

<EncodingVersion> ::=

<TransferHeaderString>

<CharacterSetID> ::=

<TransferHeaderString>

<TransferHeaderString> ::= <TransferHeaderSingleQuote>

[ <TransferHeaderPrintableCharacter> ] ...

<TransferHeaderSingleQuote>

<TransferHeaderComma> ::= ,

!! A comma character defined in ISO 10646-1 Table 1 as row C

column 002.

<TransferHeaderSpace> ::=

!! A space character defined in ISO 10646-1 Table 1 as row 0

column 002.

<TransferHeaderSingleQuote> ::=

'

!! A single quote defined in ISO 10646-1 Table 1 as row 7 column

   002.

<TransferHeaderPrintableCharacter> ::=

0|1|2|3|4|5|6|7|8|9|-|.|:


12

X 0138-1:2004 (ISO/IEC 15475-1:2002)

     

|A|B|C|D|E|F|G|H|I|J|K|L|M|N|O|P|Q|R|S|T|U|V|W|X|Y|Z

!! These characters are as defined in ISO 10646-1 Table 1.

ヘッダは,厳格な形式とし,余分な空白類の使用を認めない。


13

X 0138-1:2004 (ISO/IEC 15475-1:2002)

   

附属書 B(参考)SQL BNF 規則

ISO/IEC 9075:1992  の  3.2 表記法からの引用を参考として次に記述する。

参考  ISO/IEC 9075:1992 は,ISO/IEC 9075:1999 Information technology-Database languages-SQL-が

1999-12-16 に発行されたことによって廃止された。これに伴い,JIS X 3005:1995 も,JIS X 

3005:2002(データベース言語 SQL)が 2002-10-20 に制定されたことによって廃止された。し

かし,JIS X 3005:2002 は要約 JIS のため,JIS X 3005:1995 の 3.2  表記法に対応する箇条が日本

語訳されていない。このため,次に附属書 をそのまま記述する。

Text from Clause 3.2 Notation of ISO/IEC 9075:1992, given for reference.

The syntactic notation used in this International Standard is an extended version of BNF ("Backus Normal

Form" or "Backus Naur Form").

In BNF, each syntactic element of the language is defined by means of a production rule. This defines the

element in terms of a formula consisting of the characters, character strings, and syntactic elements that can be

used to form an instance of it.

The version of BNF used in this International Standard makes use of the following symbols:

Symbol                            Meaning

< >                             

Angle brackets delimit character strings that are the names of syntactic

                     elements, the non-terminal symbols of the SQL language.

::=                             

The definition operator. This is used in a production rule to separate the

                                          element defined by the rule from its definition.

                     The element being defined appears to the left of the operator and the

                     formula that defines the element appears to the right.

[ ]                               

Square brackets indicate optional elements in a formula. The portion of the

                     formula within the brackets may be explicitly specified or may be omitted.

{ }                               

Braces group elements in a formula. The portion of the formula within the

                                            braces must be explicitly specified.

|                                   

The alternative operator. The vertical bar indicates that the portion of the

                      formula following the bar is an alternative to the portion preceding the bar.If

                      the vertical bar appears at a position where it is not enclosed in braces or

                      square brackets, it specifies a complete alternative for the element defined

                      by the production rule. If the vertical bar appears in a portion of a formula

                      enclosed in braces or square brackets, it specifies alternatives for the

                      contents of the innermost pair of such braces or brackets.

                             

The ellipsis indicates that the element to which it applies in a formula may be


14

X 0138-1:2004 (ISO/IEC 15475-1:2002)

     

                     repeated any number of times. If the ellipsis appears immediately after a

                     closing brace "}", then it applies to the portion of the formula enclosed

                     between that closing brace and the corresponding opening brace "{".

                     If an ellipsis appears after any other element, then it applies only to that

                                          element.

!!                                 

Introduces normal English text. This is used when the definition of a

                      syntactic element is not expressed in BNF.

                      Spaces are used to separate syntactic elements. Multiple spaces and line

                      breaks are treated as a single space. Apart from those symbols to which

                     special functions were given above, other characters and character strings in

                     a formula stand for themselves. In addition, if the symbols to the right of the

                     definition operator in a production consist entirely of BNF symbols, then

                     those symbols stand for themselves and do not take on their special

                                          meaning.

Pairs of braces and square brackets may be nested to any depth, and the alternative operator may appear at

any depth within such a nest.

A character string that forms an instance of any syntactic element may be generated from the BNF definition of

that syntactic element by application of the following steps:

a) Select any one option from those defined in the right hand side of a production rule for the

    element, and replace the element with this option.

b) Replace each ellipsis and the object to which it applies with one or more instances of that object.

c) For every portion of the string enclosed in square brackets, either delete the brackets and their

    contents or change the brackets to braces.

d) For every portion of the string enclosed in braces, apply steps a) through e) to the substring

    between the braces, then remove the braces.

e) Apply steps a) through e) to any non-terminal syntactic element (i.e., name enclosed in angle

    brackets) that remains in the string.

The expansion or production is complete when no further non-terminal symbols remain in the character string.