具象構文

具象構文

[1]SGML】 特定の区切子文字, , マーク宣言名などを抽象構文に結合する構文。 Concrete syntax。 (JISX4151‐1992 定義 (68))

[2] SGML宣言の具象構文の指定を SGML 引数形式と ABNF の混成で表現すると :

-- 具象構文 (182) --
SYNTAX
  (
   -- 公開具象構文 (183) --
     PUBLIC "公開識別子"
     [
        -- マーク文字の切替え --
        SWITCHES 1*(  
                    文字番号  -- 実現値中の1番目の文字を、
                    文字番号           2番目の文字で代替 --
                    -- Digit, LC Letter, UC Letter
                       であってはならない --
                   )
     ]
  /
   -- 完全な記述 --
     -- 回避文字番号指定 (184) --
     SHUNCHAR (
                 NONE       -- 回避文字なし --
              /
                 CONTROLS   -- システム文字集合の制御文字
                               + 図形文字以外全て --
                *文字番号
              /
               1*文字番号
              )
     -- 構文参照文字集合 (185) --
       -- 文字集合記述 (173) --
       BASESET "公開識別子"
       DESCSET
         1*( -- 文字記述 (176)--
             先頭文字番号 文字個数 (
                                     基本文字集合番号
                                   / 最小表記
                                   / UNUSED
                                   )
             -- SGML 側の --       -- 文字集合側 --
             -- 文字番号  --       -- の文字番号 --
           )
       -- 全ての重要な SGML 文字の
          固有のビット組合せの符号化表現の記述。 --
     -- 機能文字指定 (186) --
       FUNCTION
            RE               文字番号
            RS               文字番号
            SPACE            文字番号
         *(
            追加機能 機能種別 文字番号
           -- 名前 --
                  -- FUNCHAR ;; 休止機能文字
                   / MSICHAR ;; マーク認知開始文字
                   / MSOCHAR ;; マーク認知終了文字
                   / MSSCHAR ;; マーク認知抑制文字
                   / SEPCHAR ;; 分離子文字 --
          )
     命名規則 -- (189) --
     -- 区切子集合 (190) --
       DELIM
         -- 一般区切子 (191) --
         GENERAL
                    SGMLREF
                 *( 区切子名 "引数表記" )
         -- 短縮参照区切子 (192) --
         SHORTREF (
                    SGMLREF
                  /
                    NONE
                  )
                 *( "引数表記" )
     -- 予約名使用 (193) --
       NAMES
                    SGMLREF
                 *( 規格参照予約名 名前 )
     -- 量集合 (194) --
       QUANTITY
               ( -- 有限値 --
                    SGMLREF
                 *( 量名           数 )
               / -- 無限値 (Web SGML) --
                    NONE
               )
   [ 定義済みデータ文字実体 ] -- [194.1] (Web SGML) --
  ) 

(JIS X 4151‐1992 12.4, WebSGML K.3.4 参照。)

[3] 量集合で NONE を指定しても、処理するシステムでそのシステム宣言の値を超える量に対応することを要求することにはなりません。 (K.3.4.1 参照。)