-
Notifications
You must be signed in to change notification settings - Fork 4
/
746.txt
97 lines (72 loc) · 4.57 KB
/
746.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
[1] [[一般体系]]から[[派生]]した[[体系]]や[[文書型]]を作成する時は、
その [[DTD]] に[DFN[[RUBYB[一般体系宣言][General Architecture declaration]]]]を記述します。
といっても[[一般体系]]は[[体系]]の一種なので、
一般体系宣言とは単なる[[体系支援宣言]]です。
[2] 仕様書:
-[[ISO/IEC 10744]]:1997
--[CSECTION[A.5.1 General Architecture Declaration Template]]
<http://www.y12.doe.gov/sgml/wg8/docs/n1920/html/clause-A.5.1.html>
--[CSECTION[A.5.8.1.1 Minimal General Architecture document]] <http://www.y12.doe.gov/sgml/wg8/docs/n1920/html/clause-A.5.8.html#clause-A.5.8.1.1>
[[#comment]]
* 属性
[6] [[体系支援属性]]として、通常のものの他に[[体系選択肢]]属性が
2種類、独自の属性が1種類あります。
[7] '''共通要素属性の選択肢''':
[DFN[[RUBYB[[[共通要素属性選択肢]]][common element attribute options]] ([CODE(SGMLa)[[[commatts]]]]) [[体系選択肢]]属性]]は、
[[共通要素属性]]に関する選択肢の有効・無効を制御します。
[[属性型]]は [CODE(SGML)[[[CDATA]]]] で、
[[字句型]]は [CODE(SGML)[[[csname]]+]]
(制約: [[体系DTD]]内の[[引数実体]]の[[名前]]の[[並び]]) です。
指定された名前の[[引数実体]]の値が [CODE(SGML)[[[INCLUDE]]]]
に設定されます。
指定できる値は
[CODE(SGML)[[[dafe]]]], [CODE(SGML)[[[dvlist]]]],
[CODE(SGML)[[[ireftype]]]], [CODE(SGML)[[[HyLex]]]],
[CODE(SGML)[[[HyOrd]]]], [CODE(SGML)[[[lextype]]]],
[CODE(SGML)[[[opacity]]]], [CODE(SGML)[[[REGEX]]]]
です。元々[[一般体系]]の[[体系DTD]] では [CODE(SGML)[[[IGNORE]]]]
になっているので、指定すれば有効、指定しなければ無効となります。
[7] '''共通データ属性の選択肢''':
[DFN[[RUBYB[[[共通データ属性選択肢]]][common data attribute options]] ([CODE(SGMLa)[[[dcnatts]]]]) [[体系選択肢]]属性]]は、
[[共通データ属性]]に関する選択肢の有効・無効を制御します。
[[属性型]]は [CODE(SGML)[[[CDATA]]]] で、
[[字句型]]は [CODE(SGML)[[[csname]]+]]
(制約: [[体系DTD]]内の[[引数実体]]の[[名前]]の[[並び]]) です。
指定された名前の[[引数実体]]の値が [CODE(SGML)[[[INCLUDE]]]]
に設定されます。
指定できる値は
[CODE(SGML)[[[altreps]]]], [CODE(SGML)[[[included]]]],
[CODE(SGML)[[[superdcn]]]]
です。元々[[一般体系]]の[[体系DTD]] では [CODE(SGML)[[[IGNORE]]]]
になっているので、指定すれば有効、指定しなければ無効となります。
[8] '''複雑な模型群の使用''':
[[ID即時参照要素型]] ([CODE(SGMLa)[[[ireftype]]]])
[[属性]]では [[SGML]] の[[模型群]]を使いますが、
簡単なものだけが使える場合と完全な [[SGML]]
の[[模型群]]で可能なものが使える場合が設けられています。
どちらのモードかを指定するのが[DFN[[RUBYB[[[ID即時参照要素型SGML模型群]]][SGML model groups for ireftype]] ([CODE(SGMLa)[[[irefmodl]]]]) [[体系支援属性]]]]です。
属性の値は[[列挙型]]で [CODE(SGML)[[[SGMLmdl]]]]
(完全な [[SGML]] の[[模型群]]が使用可能) と
[CODE(SGML)[[[nSGMLmdl]]]] (簡単な[[模型群]]のみ使用可能)
です。[[既定値]]は [CODE(SGML)[[[nSGMLmdl]]]] です。
[[#comment]]
*関連
[9] [[一般体系]]を実装した[[体系機関]]は[[一般体系システム宣言]]を用意することになっていますが、
[WEAK[[[SGML宣言]]と[[システム宣言]]の関係のように]]一般体系宣言に丁度対応するもので、
ほとんど同じことを記述します。
[[#comment]]
* 例
[3] 一般体系宣言の雛形が仕様書 [SRC[ISO/IEC 10744:1997 A.5.1]]
にあります。
[4] また、[[最小適合一般体系文書]]用の一般体系宣言の例
[SRC[ISO/IEC 10744:1997 A.5.8.1.1]] もあります。
実際には例示されているものに加えて[[体系実体宣言]]が必要です。
[5] [CITE[ISO/IEC 10744 - C.2 HyTime Meta-Declarations]]
<http://www.y12.doe.gov/sgml/wg8/docs/n1920/html/clause-C.2.html>
[[一般体系]]から[[派生]]した [[HyTime]] の[[体系DTD]]
です。
でもこれ、[[属性値指定]]の中で[[引数実体参照]]らしきものが使われているという非常に怪しい代物です。
[[一般体系]]側の選択肢を [[HyTime]] [[体系DTD]]
を参照する側から制御可能にするために[[引数実体]]を使っているのだと思いますが・・・。
[[#comment]]
* メモ