JIS X 3005-1:2014 データベース言語SQL 第1部:枠組(SQL/Framework) | ページ 10

40
X 3005-1 : 2014 (ISO/IEC 9075-1 : 2011)
いう句によって各適合性規則の最初で示すように,選択される適合性規則の緩和によって規定する。適用
業務は,適用業務が必要とするSQL機能の集合を指定する。すなわち,適用業務のSQL言語は,必要な
機能に対して陽に緩和された制限を除いて,全ての適合性規則の制限を守らなければならない。逆に言え
ば,規格に適合するSQL処理系は,そのSQL処理系がSQLのどの機能を提供するかを特定しなければな
らない。SQL処理系は,必要な機能がSQL処理系の提供する機能の部分集合であるどんな適用業務も処
理しなければならない。
機能FEAT1は,別の機能FEAT2を前提としてもよい。FEAT1を提供することを主張するSQL処理系
は,FEAT1の前提である各機能FEAT2も提供しなければならない。逆に言えば,適用業務は,FEAT1を
必要とすることを示すだけでよく,これが FEAT1の前提である各機能FEAT2も含むことを仮定してもよ
い。別の機能の前提となる機能の一覧は,JIS X 3005 (ISO/IEC 9075) 規格群の各規格の“適合性”と名付
けられた箇条で“···の前提機能の関係”と名付けた表で示す。幾つかの機能が複数の別の機能を前提とす
ること,及び幾つかの機能が別の規格で規定する機能を前提とすることに注意する。JIS X 3005 (ISO/IEC
9075) 規格群の選択機能への適合性のどの主張も,機能を規定する適合性規則が存在しないかのように,
適合性を主張する全ての規格の適合性の要件を満たさなければならない。
構文規則及び一般規則は,あるSQL構文を別の構文を用いて定義してもよい。そのような変換は,変換
される構文の意味を定義するために用いられ,変換を定義する構文規則で特に注記されていない限り,適
用可能な適合性規則を検査した後に,実効的に実行される。変換は,別のSQL機能を定義するために,あ
るSQL機能のSQL構文を用いてもよい。これらの変換は,構文の振る舞いを定義するのに役立ち,変換
を定義する構文規則で特に注記されていない限り,そのように定義された機能によって許される又は禁じ
られるという機能構文に対するどんな意味ももたない。規格に適合するSQL処理系は,SQL処理系が提
供することを主張する機能の集合に対して適用可能な適合性規則によって定義される変換されない構文
を,変換によって想定される意味で処理するだけでよい。

8.4 拡張及び選択機能

  SQL処理系は,JIS X 3005 (ISO/IEC 9075) 規格群が規定する機能に対する付加的な処理系定義の機能を
提供してもよく,予約語をリストに追加してもよい。
注記19 予約語が追加されるならば,適合するSQL文が正しく処理されないかもしれない可能性があ
る。
SQLフラグ機能が処理系定義の機能をフラグ付けするかどうかは,処理系定義とする。
注記20 SQLフラグ機能は,この規格群で定義していない任意の機能IDを用いて処理系定義の機能
をフラグ付けしてもよい。しかし,この規格群の将来の版が,そのような機能IDを規格定
義機能に対して用いないという保証はない。
注記21 SQLフラグ機能によってフラグ付けする処理系定義の機能は,二つ以上のSQL処理系からの
処理系定義の機能を識別してもよい。
注記22 処理系定義の機能への機能IDの割当ては,SQLフラグ機能間で異なってもよい。
注記23 SQL処理系は,情報スキーマのSQLFEATURESビューを通して処理系定義の機能を可視化
することを選択してもよいが,要求はされない。
SQL処理系は,付加的な処理系定義のSQL呼出しルーチン,又はSQL呼出しルーチンに対する処理系
定義の引数値を提供してもよい。
SQL処理系は,規格に適合しないSQL文又はルーチン呼出しを処理するための利用者選択肢を提供し
てもよい。SQL処理系は,JIS X 3005 (ISO/IEC 9075) 規格群の規格で規定する結果と異なる結果を生成す

――――― [JIS X 3005-1 pdf 46] ―――――

                                                                                             41
X 3005-1 : 2014 (ISO/IEC 9075-1 : 2011)
るために,SQL文又はルーチン呼出しを処理する利用者選択肢を提供してもよい。
それは,利用者選択肢によって陽に要求されるときだけ,そのような結果を生成しなければならない。
JIS X 3005 (ISO/IEC 9075) 規格群の追加規格で付加的な拡張及び選択機能を規定してもよい。

8.5 SQLフラグ機能

  SQLフラグ機能は,処理系提供の機能とし,それは,規格に適合するSQL処理系が提供してもよいSQL
言語の拡張又はSQL処理の別の代替手段を識別することができる(“8.4 拡張及び選択機能”参照)。
SQLフラグ機能は,規格に適合するSQL処理系で,この規格群の異なる水準下で動作する異なるSQL
処理系の間で,可搬で,かつ,相互運用可能なSQL言語の生成の助けとなることを意図している。
SQLフラグ機能は,SQL言語の静的検査に効果をあげることを意図している。一般規則が評価されるま
でに決定できない拡張を検出することは要求されない。
SQL処理系は,その処理系に関する限り,誤りにならないSQL言語をフラグ付けするだけでよい。
注記24 誤りを含むSQL言語をシステムが処理するならば,何が誤りで,何が拡張であるかを単一の
文内で決定することが非常に難しいかもしれない。一つの可能性として,処理系は,2段階,
すなわち,最初は,通常の構文解析機能で,2番目は,SQLフラグ機能で,SQL言語を検査
することを選択してもよい。最初の段階では,処理系が処理できない又は認識できない規格
外のSQL言語に対して誤りのメッセージを生成する。第2段階では,その処理系に関係する
限り,誤りを含まないSQL言語を処理する。すなわち,その処理系によって処理することが
できる規格外の全てのSQL言語を一度に検出し,フラグ付けする。このようなどの2段階の
処理も,末端の利用者に対して透過的にするのがよい。
SQLフラグ機能は,規格に適合するSQL処理系が提供する代替処理環境で異なって実行されてもよい
適合するSQL言語識別を助ける。それは,適合しないSQL処理環境から適合するSQL処理環境にSQL
言語を移動するときに修正しなければならないかもしれないSQLの要素を識別するツールも提供する。
SQLフラグ機能は,次の“フラグ付け水準 (level of flagging)”選択肢のうちの一つ以上を提供する。
− 中核SQLフラグ付け (Core SQL Flagging)
− 各部SQLフラグ付け (Part SQL Flagging)
これらの選択肢の一つを提供するSQLフラグ機能は,SQL言語の指定された部分集合に違反するSQL
言語の構成要素を識別できなければならない。“中核SQLフラグ付け”で用いるSQL言語の部分集合は,
中核SQLとする。“各部SQLフラグ付け”で用いるSQL言語の部分集合は,中核SQLに加えて,JIS X 3005
(ISO/IEC 9075) 規格群の指定された一つ又は複数の規格への適合性のために必要な機能とする。
SQLフラグ機能は,“SQL機能フラグ付け (SQL Feature Flagging)”も提供してもよい。“SQL機能フラグ
付け”は,SQL言語の指定された部分集合に加えて,SQL言語の構成要素を適合させるためにどの選択機
能が必要であるかを示す。
SQLフラグ機能は,次の“検査の範囲 (extent of checking)”選択肢のうちの一つ以上を提供する。
− 構文だけ (Syntax Only)
− カタログ調査 (Catalog Lookup)
構文だけの選択肢の下では,SQLフラグ機能は,指定されたSQL言語だけを解析する。すなわち,そ
れは,情報スキーマをアクセスしないで決定することができる構文規則の違反に対して検査する。構文要
素のデータ型に依存する違反が構文だけから原理的に推測できるとしても,SQLフラグ機能は,そのよう

――――― [JIS X 3005-1 pdf 47] ―――――

42
X 3005-1 : 2014 (ISO/IEC 9075-1 : 2011)
な違反を必ずしも検出しない。
注記25 詳細は,[ISO9075-2] の“附属書F SQLの機能の分類”,[ISO9075-3] の“附属書F SQL
の機能の分類”,[ISO9075-4] の“附属書F SQLの機能の分類”,[ISO9075-9] の“附属書F
SQLの機能の分類”,[ISO9075-10] の“附属書F SQLの機能の分類”,[ISO9075-11] の“附
属書F SQLの機能の分類”,[ISO9075-13] の“附属書F SQLの機能の分類”及び
[ISO9075-14] の“附属書F SQLの機能の分類”参照。
カタログ調査の選択肢の下では,SQLフラグ機能は,定義スキーマ情報を利用できることを仮定し,全
ての構文規則の違反を検査する。例えば,幾つかの構文規則は,データ型を制限する。フラグ機能のこの
選択肢は,そのような制限を緩和する拡張を識別することもある。安全保護違反を避けるために,この選
択肢は,特定の情報スキーマを通じてだけ定義スキーマを見て調べなければならない。フラグ機能は,ど
の<SQLスキーマ定義文>又は<SQLスキーマ操作文>も,必ずしも実行又は実行の模擬をしない。

8.6 適合性の主張

  JIS X 3005 (ISO/IEC 9075) 規格群に対する適合性の主張は,次の全ての適合性を主張しなければならな
い。
1) 最小適合性の主張。
2) 追加規格に対する0個以上の適合性の主張。
3) 選択機能に対する0個以上の適合性の主張。
注記26 この箇条8の要件に加えて,JIS X 3005 (ISO/IEC 9075) 規格群の各規格では,その規格に対
する適合性の主張で表明しなければならないことを規定する。

8.6.1 SQL適用業務に対する要件

  “SQL適用業務 (SQL application)”という用語は,ここでは,次の一つ以上を含む翻訳単位の集まりの
意味で用いる。
− SQL文。
− SQL/CLIルーチンの呼出し。
− 外部呼出し手続の呼出し。
規格に適合するSQL適用業務は,次の全てを満たすという条件で,構文誤りなしで処理されなければな
らない。
− どのSQL文又はSQL呼出しも,JIS X 3005 (ISO/IEC 9075) 規格群に従って,構文的に正しい。
− スキーマの内容がSQL適用業務の要件を満たす。
− SQLデータがスキーマの内容に適合する。
− 利用者が,構文的に正しくないSQL文の即時実行を行っていない。
規格に適合するSQL適用業務は,追加機能,又は主張する適合性の水準を超える機能を用いてはならな
い。
SQL適用業務による適合性の主張では,次のことも表明しなければならない。
− 正しく動くために,どんな処理系定義の要素及び動作が必要か。
− どんなスキーマの内容を利用者が供給する必要があるか。

8.6.2 SQL処理系に対する要件

  規格に適合するSQL処理系は,関連する一般規則,定義及び記述に従って,適合するSQL言語を処理

――――― [JIS X 3005-1 pdf 48] ―――――

                                                                                             43
X 3005-1 : 2014 (ISO/IEC 9075-1 : 2011)
しなければならない。
規格に適合するSQL処理系は,関連する定義及び一般規則に従って,適合するルーチン呼出しを処理し
なければならない。
SQL処理系による適合性の主張では,次のことも表明しなければならない。
− 主張の範囲内で,JIS X 3005 (ISO/IEC 9075) 規格群が処理系定義と規定する全ての要素及び動作の定
義。
規格に適合するSQL処理系で,追加機能,又は“中核 (Core)”として規定している機能を超える機能を
提供するSQL処理系は,SQLフラグ機能を提供しなければならない。

――――― [JIS X 3005-1 pdf 49] ―――――

44
X 3005-1 : 2014 (ISO/IEC 9075-1 : 2011)
附属書A
(参考)
SQLの保守及び解釈
ISO/IEC JTC1は,JTC1規格の改正,保守及び解釈についての公式な手続を与える。JTC1専門業務用
指針 (JTC1 Directives) の“14 国際規格の保守 (Maintenance of International Standards)”では,“欠陥報告
(defect report)”の作成及び処理のための手続を規定している。欠陥報告は,既存の国際規格に対する技術
的正誤票 (technical corrigenda),追補 (amendments),解釈書 (interpretations) 又はその他の説明書
(commentary) になることもある。
ISO/IEC 9075規格群の仕様に関する今後の新規質問事項又は新規欠陥報告に関しては,次の宛先に連絡
することが望ましい。
Secretariat, ISO/IEC JTC1/SC32
American National Standards Institute
11 West 42nd Street
New York, NT 10036
USA

――――― [JIS X 3005-1 pdf 50] ―――――

次のページ PDF 51

JIS X 3005-1:2014の引用国際規格 ISO 一覧

  • ISO/IEC 9075-1:2011(IDT)

JIS X 3005-1:2014の国際規格 ICS 分類一覧

JIS X 3005-1:2014の関連規格と引用規格一覧