-
Notifications
You must be signed in to change notification settings - Fork 4
/
434.txt
78 lines (73 loc) · 4.53 KB
/
434.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
[1]
>
:[RUBYB[HyTime 境界内物体集合]@en[HyTime BOS]]]]:
[[HyTime]] [[境界内物体集合]]は [[HyTime]]
[[ハブ文書]]中の[[実体宣言]]やその他の[[指定]]により
([[直接]][[及び/又は]][[間接]]に) [[指定]]される[[実体]]の[[木]]です。
> 注意36. [[HyTime]] [[境界内物体集合]]は [[HyTime機関]]により自動的に決定できます。
[[実体木]]の[[根]]は[[ハブ文書]]の[[SGML文書実体]]です。
[2]
仕様書:
-[HyTime] [[ISO/IEC 10744]]:1997
--3.51
<http://www.y12.doe.gov/sgml/wg8/docs/n1920/html/clause-3.html#def-3.51>
--[CSECTION@en[6.2.4 Bounded object set (BOS)]]
<http://y12web2.y12.doe.gov/sgml/wg8/docs/n1920/html/clause-6.2.html#clause-6.2.1>
[3]
'''HyTime 境界内物体集合の決定''' [SRC@en[HyTime 6.2.4]]
[DFN[HyTime 境界内物体集合]] ([DFN@en[HyTime BOS]])
は、 [[HyTimeシステム]]が[[ハブ文書]]の [[SGML]]
[[文書実体]]から[DFN[[[実体木]]]]を構成することで自動的に決定できます。
= [DFN[[RUBY[未調整][みちょうせい]@en[unajusted]] HyTime 境界内物体集合]]
を決定します。
==[CODE(SGMLa)@en[[[subhub]]]] [[属性値]]が [CODE(SGML)@en[[[subhub]]]]
な[[ハブ文書]]の[[文書実体]]で[[宣言]]されている各[[実体]]に対して、
[[ハブ文書]]に対してと同じ方法で再帰的に
[[HyTime境界内物体集合]]を作ります。
[CODE(SGML)@en[[[subhub]]]] [[文書実体]]の
[[HyTime境界内物体集合]]は[[親文書実体]]の仮
[[HyTime境界内物体集合]]に追加します。
なお、[[親]]が[[ハブ]]か [CODE(SGML)@en[[[subhub]]]]
で無いなら、その[[実体]]は [CODE(SGML)@en[[[subhub]]]]
としては扱いません。
== [[ハブ]]または [CODE(SGML)@en[[[subhub]]]] の
[[SGML文書実体]]を[[根]]とした[[実体木]]の発見作業を行い、
各[[実体]]を仮 [[HyTime境界内物体集合]]に加えて行きます。
--- [CODE(SGMLa)@en[[[subhub]]]] [[属性値]]が [CODE(SGML)@en[[[subhub]]]]
の[[実体]]は、その[[親実体]]が[[ハブ]]でも [CODE(SGML)@en[[[subhub]]]]
でも''ない''場合を''除き''、 [WEAK[(既に追加済みなので)]] 無視します。
--- 再帰は、次の数を超しません。
---- [[ハブ]]または [CODE(SGML)@en[[[subhub]]]] [[文書要素]]の
[CODE(SGMLa)@en[[[maxbos]]]] [[属性]]の
[CODE(SGMLa)@en[[[maxbos]]]] [[属性値]]、または
---- [[ハブ文書実体]]中の対応する[[実体宣言]]の
[CODE(SGMLa)@en[[[boslevel]]]] [[共通データ属性]]の[[属性値]]
(その[[既定値]]は[[ハブ]]または [CODE(SGML)@en[[[subhub]]]] [[文書要素]]の
[CODE(SGMLa)@en[[[boslevel]]]] [[属性]]の
[CODE(SGMLa)@en[[[boslevel]]]] [[属性値]])
--- [[実体宣言]]の [CODE(SGMLa)@en[[[inbos]]]]
[[属性値]]が [CODE(SGML)@en[[[inbos]]]] であれば、
[CODE(SGMLa)@en[[[maxbos]]]] や関係する [CODE(SGMLa)@en[[[boslevel]]]]
の指定を超えていても、仮 [[HyTime境界内物体集合]]にその[[実体]]を含めます。
= [CODE(SGMLa)@en[[[inbos]]]] [[属性値]]があって
[CODE(SGML)@en[[[notinbos]]]] では''ない''[[ハブ]]か
[CODE(SGML)@en[[[subhub]]]] の[[文書]]の[[文書要素]]の
[CODE(SGMLa)@en[[[bosspec]]]] [[属性]]で[[参照]]されている
[CODE(SGML)@en[[[bosspec]]]] で指定された調整を行います。
-- 更に[[実体木]]発見処理が必要かもしれません。
-- [CODE(SGML)@en[[[bosspec]]]] の [CODE(SGMLa)@en[[[inbos]]]]
[[属性値]]が [CODE(SGML)@en[[[inbos]]]]
なら、 [CODE(SGMLa)@en[[[bosspec]]]] の[[内容]]と
[CODE(SGMLa)@en[[[boslevel]]]] [[属性]]で[[番地付け]]される[[物体]]すべてを仮
[[HyTime境界内物体集合]]に加えます。
= [CODE(SGMLa)@en[[[inbos]]]] [[属性値]]があって
[CODE(SGML)@en[[[notinbos]]]] で''ある''[[ハブ]]か
[CODE(SGML)@en[[[subhub]]]] の[[文書]]の[[文書要素]]の
[CODE(SGMLa)@en[[[bosspec]]]] [[属性]]で[[参照]]されている
[CODE(SGML)@en[[[bosspec]]]] で指定された調整を行います。
= 以上で得られた[[物体]]群が [[HyTime境界内物体集合]]です。
[4]
>>3 の方法により[[ハブ文書]]で[[宣言]]された[[外部文書]]、
[[部分文書]]、[[データ実体]]が[[実体木]]に含まれます。
[[マーク宣言]]で[[外部識別子]][[引数]]を使って[[宣言]]した[[実体]]だけが発見されますから、
[[データ内容記法]]独自の方法で[[参照]]した[[実体]]は別途[[実体宣言]]を用意しない限り含まれません。