[1] > :[RUBYB[HyTime 境界内物体集合]@en[HyTime BOS]]]]: [[HyTime]] [[境界内物体集合]]は [[HyTime]] [[ハブ文書]]中の[[実体宣言]]やその他の[[指定]]により ([[直接]][[及び/又は]][[間接]]に) [[指定]]される[[実体]]の[[木]]です。 > 注意36. [[HyTime]] [[境界内物体集合]]は [[HyTime機関]]により自動的に決定できます。 [[実体木]]の[[根]]は[[ハブ文書]]の[[SGML文書実体]]です。 [2] 仕様書: -[HyTime] [[ISO/IEC 10744]]:1997 --3.51 --[CSECTION@en[6.2.4 Bounded object set (BOS)]] [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 の方法により[[ハブ文書]]で[[宣言]]された[[外部文書]]、 [[部分文書]]、[[データ実体]]が[[実体木]]に含まれます。 [[マーク宣言]]で[[外部識別子]][[引数]]を使って[[宣言]]した[[実体]]だけが発見されますから、 [[データ内容記法]]独自の方法で[[参照]]した[[実体]]は別途[[実体宣言]]を用意しない限り含まれません。