-
Notifications
You must be signed in to change notification settings - Fork 4
/
636.txt
108 lines (93 loc) · 6.22 KB
/
636.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
98
99
100
101
102
103
104
105
106
107
108
* 包含子蓄積域管理器記法形式 (SGML 公式システム識別子)
[1] [[SGML]] [[公式システム識別子]]の[DFN[[RUBYB[包含子蓄積域管理器][container storage manager]] ([CODE(SGML)[[[contnrsm]]]]) [[記法形式]]]]は、
他の[[実体]]を包含する[[蓄積域管理器]]に使用します。
[2] 仕様書:
-[[ISO/IEC 10744]]:1997
--[CSECTION[A.6.3 Containers]]
<http://www.y12.doe.gov/sgml/wg8/docs/n1920/html/clause-A.6.3.html>
--[CSECTION[A.6.7.6 Container storage manager notation form]]
<http://www.y12.doe.gov/sgml/wg8/docs/n1920/html/clause-A.6.7.html#clause-A.6.7.6>
[7]
:[[完全名]]:[RUBYB[包含子蓄積域管理器][container storage manager]]
:[[参照具象構文名]]:[CODE(SGML)[[[contnrsm]]]]
:[[公式公開識別子]]:[CODE(SGML)[[[ISO/IEC 10744:1997//NOTATION FSISM GLOBAL Container Storage Manager//EN]]]]
:[[蓄積域物体識別子]]:派生[[蓄積域管理器]]に依存。
:[[属性]]:
,[[包含子内]] ([CODE(SGMLa)[[[in]]]])
,[CODE(SGMLa)[[[FSIBase]]]],[CODE(SGML)[[[globalsm]]]] 固定
,[[共通蓄積域管理器属性]] ([CODE(SGML)[[[smcommon]]]]) [[属性形式]],==
[4] 包含子蓄積域管理器を使うと、 [[TAR]] や [[MIME]]
の [CODE(MIME)[[[multipart/[VAR[*]]]]]]
のような[[物体]]の中に入れ子に[[物体]]が含まれている構造を[[公式システム識別子]]で扱うことができます。
入れ子は何重にも再帰的になっている可能性がありますから、
[[公式システム識別子]]はこの階層構造を一つの識別子で扱うことを諦めて、
階層構造の数だけの[[実体]]を外部 [WEAK[([[SGML]] の[[実体宣言]])]]
で[[宣言]]して、それを[[参照]]する形を採っています。
つまり、ある[[実体]] [VAR[E]]
の[[宣言]]における[[公式システム識別子]]で包含子 [VAR[A]]
に含まれる物体 [VAR[B]] を参照したい時は、
2つの[[実体宣言]]が必要です。
- '''包含子の実体 [VAR[C]]''': 包含子 [VAR[A]]
を参照する[[公式システム識別子]]を指定しておきます。
- '''目的の実体 [VAR[E]]''': 適当な[[包含子蓄積域管理器]]を使い、
[VAR[C]] の中で [VAR[E]] を識別するような[[蓄積域物体指定]]
([[SOS]]) を記述します。[[包含子内]] ([CODE(SGMLa)[[[in]]]])
[[属性]]の値として [VAR[C]] を指定しておきます。
[3] '''可搬性''':
包含子蓄積域管理器の[[蓄積域物体指定]] ([[SOS]])
が可搬かどうかは、その中に[[ファイル名]]などシステム依存の情報が含まれるかどうかによります。
[[TAR]] ([[POSIXテープ保管庫]]) はこの意味で可搬ではありませんが、
[[標準弁当蓄積域管理器]]は可搬です。なお、
[[包含子]]である[[実体]] [WEAK[([CODE(SGMLa)[[[in]]]] で参照されるもの)]]
自体の[[蓄積域管理器]]が可搬かどうかはその管理器の側の話で、
また別な問題です。
[SRC[ISO/IEC 10744:1997 A.6.7.6]]
[5] '''包含子内属性''':
[[SGML]] [[公式システム識別子]]の[RUBYB[包含子蓄積域管理器][container storage manager]]
([CODE(SGML)[[[contnrsm]]) [[記法形式]]の[DFN[[RUBYB[包含子内][in container]] ([CODE(SGMLa)[[[in]]]]) [[属性]]]]は、
[[指定蓄積域物体]] (包含された物体) が含まれている[[包含子実体]]を識別します。
値は[[包含子実体]]を識別する[[実体名]]または[[公式システム識別子]]です。
[[実体名]]の場合、その[[実体]]は[[参照]]する
[WEAK[([[公式システム識別子]]が含まれる)]]
[[実体宣言]]よりも前に[[宣言]]されていなければなりません。
[[公式システム識別子]]による指定は、
[[命令行]]など[[実体宣言]]を自由に使えない場所でのみ使うべきです。
[SRC[ISO/IEC 10744:1997 A.6.7.6]]
[8]
:[[完全名]]:[RUBYB[包含子内][in container]]
:[[参照具象構文名]]:[CODE(SGMLa)[[[in]]]]
:所属[[記法形式]]:[RUBYB[[[包含子蓄積域管理器]]][container storage manager]]
([CODE(SGML)[[[contnrsm]]) および[[包含子蓄積域管理器]]から派生した
[[POSIXテープ保管庫]] ([CODE(SGML)[[[tar]]]]),
[[MIME蓄積域管理器]] ([CODE(SGML)[[[mime]]]]),
[[標準弁当蓄積域管理器]] ([CODE(SGML)[[[sbento]]]])
:[[属性型]]:[CODE(SGML)[[[CDATA]]]]
:[[字句型]]:[CODE(SGML)[[[ENTITY]] | [[fsi]]]]
(制約: [[実体名]]は先に[[宣言]]されていなければなりません。)
:[[既定値]]:(必須)
[6] '''包含子前員属性''':
[[SGML]] [[公式システム識別子]]の[RUBYB[包含子蓄積域管理器][container storage manager]]
([CODE(SGML)[[[contnrsm]]]]) [[記法形式]]の[DFN[[RUBYB[包含子前員][previous member of container]] ([CODE(SGMLa)[[[after]]]]) [[属性]]]]は、
[[包含子]]内で[[現在実体]]の前にある[[実体]]を指定します。
この[[属性]]は、[[実体]]の位置を相対的に識別する[[包含子]]で使うことが想定されています。
この属性を指定しない時には[[蓄積域物体指定]] ([[SOS]])
の他の指定で[[実体]]が十分識別可能でなければなりません。
[SRC[ISO/IEC 10744:1997 A.6.7.6]]
[9]
:[[完全名]]:[RUBYB[包含子前員][previous member of container]]
:[[参照具象構文名]]:[CODE(SGMLa)[[[after]]]]
:所属[[記法形式]]:[RUBYB[[[包含子蓄積域管理器]]][container storage manager]]
([CODE(SGML)[[[contnrsm]]) および[[包含子蓄積域管理器]]から派生した
[[標準弁当蓄積域管理器]] ([CODE(SGML)[[[sbento]]]])
:[[属性型]]:[CODE(SGML)[[[CDATA]]]]
:[[字句型]]:[CODE(SGML)[[[ENTITY]] | [[fsi]]]]
:[[既定値]]:[[蓄積域物体指定]]によって指定される位置、
またはこの[[実体]]が一番最初
[10] 値は[[包含子内]] ([CODE(SGMLa)[[[in]]]])
[[属性]]と同じく[[実体名]]または[[公式システム識別子]]ですが、
[[実体名]]の時その[[実体]]が先に[[宣言]]されていること、
という制約がこちらの[[属性]]ではありません。
想定される実装方法を考えると、
当然こちらの属性でも先に[[宣言]]されていなければならないはずですが...
[[#comment]]
* メモ