- [2] ''ISO/IEC JTC1/SC34 N0029'' ([[ISO8879]] TC2 = [[WebSGML]]) - [4] ''intro-ISO-HTML,Latest updated 1997.11.12'' - [5] ''Miura Jun(SGML,XML,...)'' - [6] ''SGML: A Technology for Fulltext Database (Part 1)'' : ちょっと不正確なところもあるし古いけど悪くはない。 SGML とは何ぞや? という人におすすめかも。 - [7] ''第2章 「CALS」の理解'' : [[CALS]], SGML, [[DSSSL]], [[SPDL]], [[HyTime]] 辺りの概観みたいな感じの文書。 - [8] ''SGML用語辞典'' : SGML そのものに加えて、周辺規格や主要応用までカバーした用語集 (の日本語訳)。 (但し SGML 関連規格用語集だと思っちゃ駄目! あくまで SGML 用語が主。) - [9] ちなみに >>8 の原文が ''SGML Dictionary'' 。 [10] ''ISO 8879 Review: ISO WG8 N1035'' [[ISO 8879]] を改訂するとしたらの変更予定。もう随分古いものですが。 ([[名無しさん]]) [11] >>10 1990年1月19日だって。 ([[名無しさん]]) [12] ''English-Chinese Glossary of XML and SGML Terms'' [13] [Q[SGML]] とか [Q[XML]] とかでぐぐると (日本語)、胡散臭そうなのがいっぱい上位にごろごろ並んでるなあ。 ([[名無しさん]] [WEAK[2004-12-14 12:00:22 +00:00]]) [14] [CITE[Designing document type definition (DTD) in SGML/XML]] ([[名無しさん]]) [25] ''The Roots of SGML -- A Personal Recollection'' ([[名無しさん]]) [26] ''A Brief History of the Development of SGML'' ([[名無しさん]]) [[#comment]] * (HTML, XML を主眼とする) SGML の解説 - [1] ''水無月ばけらのマニアックな文法論議'' - [3] ''SGML から XMLへ - マークの付けかた'' [[#comment]] * SGML の構文の部分集合 [15] SGML 文書の[[マーク]]の表現は[[具象構文]]によってある程度制御できますが、 逆に言えばある程度以上の制御はできません。しかし、 場合によっては完全な SGML でない、構文の部分集合のようなものが使われることがあります。 :SGML:基本となる SGML の構文です。 :[[正準グローブ表現]]:正準グローブ表現に必要な範囲で、 単純な文字列としての比較が可能な書式です。 :[[XML]]:使用できる機能と構文を制限した[Q[簡略版]] SGML です。 [[XML 1.0]] と [[XML 1.1]] があります。 :[[XML名前空間]]:XML に[[名前空間]]機能を導入するため、更に構文に制限が課されています。 [[XML名前空間 1.0]] と [[XML名前空間 1.1]] があります。 :[[正準XML]]:[[署名]]などのために構文と機能を制限した、 XML の一つの書式です。 [[XML 1.0]] の部分集合になっています。 [24] [CITE[Formal Grammar for the TEI-Interchange-Format Subset of SGML]] ([[名無しさん]]) [27] :[[XMLK]]:[[XML 1.0]]から[[文書型宣言]]を除去したものです。 [[SOAP]]でも同じものが採用されています。 ([[名無しさん]] [sage]) [[#comment]] * SGML 記法 [16] [DFN[[CODE(SGML)[SGML]] [[記法]]]]は、 [[SGML文書]]から他の [[SGML文書]]を[[参照]]する時に使う[[記法]]です。 注意: 普通 [[SGML文書実体]]内で他の [[SGML文実体]]を[[参照]]する時は、 わざわざ[[記法]]を指定する必要はありません [WEAK[(というより指定してはいけません)]]。この記法は[[ハイパーリンク]]などの目的で[[外部非解析対象実体]]として [[SGML文書]]を扱う時に使います。 [17] 仕様書: - [[ISO/IEC 10744]]:1997 -- [CSECTION[A.7.1 SGML Notation]] [18] :記法形式名:[CODE(SGML)[SGML]] :[[公式公開識別子]]:[CODE(SGML)[[[ISO 8879:1986//NOTATION Standard Generalized Markup Language//EN]]]] :[[属性]]: ,属性名 ,属性値 ,既定値 ,説明 ,[[活性DTD又はLPD]] ([CODE(SGMLa)[[[active]]]]) [[属性]] ,[[文書型名]]か[[連結型名]] ,[[基底DTD]] ,[[活性]]にする[[文書型]]・[[連結型]] ,[[活性体系]] ([CODE(SGMLa)[[[arch]]]]) ,[[体系]]名 ,(なし) ,[[活性]]にする[[体系]] ,[[代替表現]] ([CODE(SGML)[[[altreps]]]]) [[属性形式]] ,== ,== ,([[共通データ属性]]より) ,[[取込み実体]] ([CODE(SGML)[[[included]]]]) [[属性形式]] ,== ,== ,([[共通データ属性]]より) ,[[記法派生源]] ([CODE(SGML)[[[superdcn]]]]) [[属性形式]] ,== ,== ,([[共通データ属性]]より) [19] '''活性 DTD 又は LPD 属性''': [CODE(SGML)[[[SGML]]]] [[記法]]の[DFN[[RUBYB[活性 DTD 又は LPD] [active DTDs or LPDs]] ([CODE(SGMLa)[[[active]]]]) [[データ属性]]]]は、 [[文書実体]]を[[構文解析]]するに当たって使用する[[文書型]][[及び/又は]][[連結型]]の名前を指定します。 :[[完全名]]:[RUBYB[活性 DTD 又は LPD] [active DTDs or LPDs]] :[[参照具象構文名]]:[CODE(SGMLa)[[[active]]]] :所属[[記法形式]]:[CODE(SGML)[[[SGML]]]] :[[属性型]]:[CODE(SGML)[[[CDATA]]]] (制約: [[DTD]] や [[LPD]] の名前をいくつか) :[[既定値]]:[[基底DTD]] 複数の値の指定の仕方は [[ISO/IEC 10744]] に明記されていませんが、他の[[属性]]と同じく[[空白]]区切りでしょう。 [[活性文書型]]を複数指定すると、 [[文書]]は各文書型それぞれについて[[構文解析]]して[[グローブ]]を別個に作成します。 [[活性連結型]]を複数指定すると、各 [[DTD]] に対して全ての [[LPD]] を適用します。 [SRC[ISO/IEC 10744:1997 A.7.1 NOTE 534]] [20] '''活性体系属性''': [CODE(SGML)[[[SGML]]]] [[記法]]の[DFN[[RUBYB[活性体系] [active architecture]] ([CODE(SGMLa)[[[arch]]]]) [[データ属性]]]]は、 [[文書]]を処理する時に使用する[[体系]]の名前を指定します。 :[[完全名]]:[RUBYB[活性体系] [active architecture]] :[[参照具象構文名]]:[CODE(SGMLa)[[[arch]]]] :所属[[記法形式]]:[CODE(SGML)[[[SGML]]]] :[[属性型]]:[CODE(SGML)[[[CDATA]]]] (制約: [[体系]]の名前 ([[体系記法名]])) :[[既定値]]:体系処理なし [[属性値]]には[[体系]]の名前を指定します。 派生元をたどると[[体系]]が幾重にも連なっている場合、 [[クライアント文書]]の[[基底体系]]から順に[[体系記法名]]を指定していきます。 (と本文に書いてありますが、 [[DTD]] の[[注釈]]は [Q[name]] と単数形になっています。本当に複数指定していいのでしょうか。) [SRC[ISO/IEC 10744:1997 A.7.1]] [[体系]]を指定すると、[[参照]]されるのが[[文書]]自体ではなく、 [[文書]]から得た[[体系的実現値]]の[[グローブ]]になります。 [[#comment]] * SGML 特性集合 [21] [DFN[SGML 特性集合]]は、 [[SGML文書]]が持っている情報の[[特性集合]]です。 [[ISO/IEC 10744]] で規定されています。その規定の [[XML]] 形式のものや人間可読な [[HTML]] 形式なものも入手できます [SRC[HyUG]]。 - [[ISO/IEC 10744]]:1997 -- [CSECTION[A.7.2 SGML property set]] - [HyUG] [CITE[HyTime Materials]] [22] SGML 特性集合の定義文書の[[公式公開識別子]]: [CODE(SGML)[[[ISO/IEC 10744:1997//DOCUMENT SGML Property Set//EN]]]]。 [23] SGML 特性集合で定義されている[[級]]や[[特性]]は、 - 抽象的なものか、物理的なもの (SGML 文書文字列 ([[SDS]])) か - [[SGML宣言]]に関するもの、[[文書]]の[[前書き]]に関するもの、 [[文書実現値]]に関するもの - [[SGML]] の必須の機能に関するもの、 [[データ・タグ]]や[[公式システム識別子]]など任意選択の機能に関するもの で分類できます。 [[#comment]] * メモ [28] [CITE[SGMLやXML:メモランダム]] ([CODE[2007-06-28 03:28:06 +09:00]] 版) ([[名無しさん]] [WEAK[2007-06-29 13:25:35 +00:00]]) [29] >>28 [[HTML 4]] の仕様書はかなり例外的でしょう。 それにしても [[SGML]] の仕様書は難しく、 その難しさは [[SGML]] 自体の難しさに起因しているのではないかと。 ;; 仕様書そのものよりも [CITE@en[[[The SGML Handbook]]]] を読む方がいいかも。[[英語版]]しかありませんが。 ([[名無しさん]] [WEAK[2007-06-29 13:30:01 +00:00]]) [30] [CITE[Re: Freezing the HTML spec Re: Comments in HTML ?]] ( ([TIME[2003-08-18 06:01:38 +09:00]] 版))