/
679.txt
90 lines (70 loc) · 5.02 KB
/
679.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
[1] 仕様書:
- [[XML 1]]
-- [CSECTION@en[4.4 XML Processor Treatment of Entities and References]]
<IW:XML1:"#entproc">
[2]
:[[内容]]中の[[参照]]:
[[要素]]の[[開始タグ]]の後で、[[終了タグ]]の前
([[非終端記号]][CODE@en[[[content]]]]に相当) にある[[参照]]として。
:[[属性値]]中の[[参照]]:
[[開始タグ]]中の[[属性]]の値、または[[属性宣言]]中の[[既定値]]のいずれか
([[非終端記号]][CODE@en[[[AttVal]]]]に相当) の中にある[[参照]]として。
([[空要素タグ]]は??)
:[[属性値]]として出現:
[CODE(XML)@en[[[ENTITY]]]]型として[[宣言]]された[[属性]]の値として、
または[CODE(XML)@en[[[ENTITIES]]]]型として[[宣言]]された[[属性]]の値中の[[間隔]]で分離された[[字句]]の1つとしてのいずれかにより
([[参照]]ではなく) [CODE@en[[[Name]]]]として。
:[[実体値]]中の[[参照]]:
[[内部実体]]の[[実体宣言]]中の[[表記実体値]]
([[非終端記号]][CODE@en[[[EntityValue]]]]に相当)
中の[[参照]]として。
:[[DTD]]中の[[参照]]:
[[DTD]]の[[内部部分集合]]または[[外部部分集合]]のいずれかの内であって、
[CODE@en[[[EntityValue]]]], [CODE@en[[[AttValue]]]],
[CODE@en[[[PI]]]], [CODE@en[[[Comment]]]], [CODE@en[[[SystemLiteral]]]],
[CODE@en[[[PubidLiteral]]]], または[[無視]]される[[条件区間]]の[[内容]]の外側にある[[参照]]として。
[3]
,,[[実体]],==,==,==,[[文字]]
,,[[引数実体]],[[内部一般実体]],[[外部解析対象一般実体]],[[非解析対象実体]],
,[[内容]]中の[[参照]],[ABBR[‐][認識しない]],[ABBR[○[SUB[1]]][取込む]],[ABBR[△[SUB[1]]][検証処理器なら取込む]],[ABBR[×][禁止]],[ABBR[○[SUB[1]]][取込む]]
,[[属性値]]中の[[参照]],[ABBR[‐][認識しない]],[ABBR[○[SUB[2]]][表記中で取込む]],[ABBR[×][禁止]],[ABBR[×][禁止]],[ABBR[○[SUB[1]]][取込む]]
,[[属性値]]として出現,[ABBR[‐][認識しない]],[ABBR[×][禁止]],[ABBR[×][禁止]],通知,[ABBR[‐][認識しない]]
,[[実体値]]中の[[参照]],[ABBR[○[SUB[2]]][表記中で取込む]],[ABBR[→][素通し]],[ABBR[→][素通し]],[ABBR[?][誤り]],[ABBR[○[SUB[1]]][取込む]]
,[[DTD]]中の[[参照]],[ABBR[△[SUB[2]]][引数実体として取込む]],[ABBR[×][禁止]],[ABBR[×][禁止]],[ABBR[×][禁止]],[ABBR[×][禁止]]
[5] '''○[SUB[1]] 取込む'''
- [[実体]]を[DFN[[RUBYB[取込む]@en[include]]]]とは、
[[置換文]]を得て、[[参照]]のある場所において、
その[[置換文]]がその場所にあったかのように処理することをいいます。
- [[文字参照]]を[DFN[[RUBYB[取込む]@en[include]]]]とは、
[[参照]]の場所に示された[[文字]]があるものとして処理することをいいます。
[8] '''○[SUB[2]] 表記中で取込む'''
[[属性値表記]]中の[[一般実体参照]]や[[表記実体値]]中の[[引数実体参照]]は、
[[置換文]]が[[参照]]の場所にあったかのように処理しますが、
[[属性値表記]]または[[実体値]]を終わらせる[[区切子]]は認識せずに通常の[[データ文字]]として扱います。
[6] '''△[SUB[1]] 検証なら取込む'''
- [[外部実体]]であって[[処理器]]が[[妥当性検証]]しないなら、
取込んでも取込まなくても'''構いません'''。
- 取込まない場合、[[実体]]を認識したものの読まなかったことを[[応用]]に通知しなければ'''なりません'''。
[11] '''△[SUB[2]] 引数実体として取込む'''
-[[外部解析対象実体]]同様に、検証するなら取込みます (>>6)。
-[[置換文]]の前後に1つずつ[CODE(charname)@en[[[SPACE]]]]を挿入します。
[9] '''通知'''
[[検証処理器]]は、[[実体属性]]で[[非解析実体参照]]の[[名前]]が現れた場合、
[[応用]]に[[実体]]と[[記法]]に関する情報を通知しなければ'''なりません'''。
[10] '''→ 素通し'''
[[実体値]]中の[[一般実体参照]]はそのまま素通しさせなければ'''なりません'''。
[12] '''? 誤り'''
[[実体値]]中に[[非解析対象実体]]への[[参照]]が現れるのは[[誤り]]です。
[7] '''× 禁止'''
違反した場合[[致命的誤り]]となります。
- [[非解析対象実体]]への[[実体参照]] ([[実体値]]中 (>>12) を除きます。)
([[解析対象実体]][[整形式制約]])
- [[DTD]]中の[[文字参照]]や[[一般実体参照]]
([[実体値]]中と[[属性値表記]]中を除きます。)
([[生成規則]]不一致により非[[整形式]])
- [[属性値]]中の[[外部実体参照]] ([[外部実体参照]]なし[[整形式制約]])
[4] '''‐ 認識しない'''
- [[DTD]]の''外''では[[引数実体参照]]は使用できません。
[CODE(XML)[%]]は特別な意味を持ちません。
- [[非解析対象実体]]の[[名前]]は[[実体属性]]以外では認識されません。
-- 仕様書の誤り?? (禁止のはず。)