/[suikacvs]/test/sw/ids/0/161.txt
Suika

Contents of /test/sw/ids/0/161.txt

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.1 - (hide annotations) (download)
Mon Nov 10 09:57:29 2008 UTC (16 years, 7 months ago) by wakaba
Branch: MAIN
CVS Tags: HEAD
File MIME type: text/plain
converted from SuikaWiki3 <http://suika.fam.cx/gate/cvs/suikawiki/wikidata/page/B4F0C4EC555249.txt>

1 wakaba 1.1
2     [1]
3     [DFN[[RUBYB[基底] [Base]] URI]]
4     は、[[相対URI参照]]を解決するときに[[基底]]となる
5     [[URI]] です。
6    
7     [2]
8     [Q[基底 URI 参照]]ではなく単に[Q[基底 URI]] とだけ言った場合でも、実は URI ではなく URI 参照であることも少なくありません。
9     相対 URI の解決では、素片識別子の有無は結果に影響しません。
10     ですが、あえて素片識別子つき URI 参照を除外する必要も普通はないので、
11     基底 URI と言ったときには URI 参照も含まれていたりするのでしょう。
12    
13     [3] 基底 URI (参照) は、普通は絶対 URI 参照です。
14     [CODE(XMLa)[[[xml]]:[[base]]]] 属性のように、指定する基底 URI
15     が相対 URI でもよいことがありますが、
16     そのような場合は絶対 URI 参照を得るために更に上位の情報を入手する必要があります。
17     ([[名無しさん]])
18    
19     [4]
20    
21     @@ [[基底URI]]が純粋に[[相対参照]]を[[解決]]するため''だけ''の[[文脈]]情報として用いられている場合と、
22     [[文書]]自体の[[URI]]を上書きするものとして用いられているらしき場合があります。
23    
24     [[#comment]]
25    
26    
27     * [CODE(InfoProp)[XML基底]]特性 (XML情報集合)
28    
29     [5] [[XML情報集合]]の[DFN[[CODE(InfoProp)[[RUBYB[基底URI] @en[base URI]]]]]][[特性]]は、
30     その[[情報項目]]の[[基底URI]]を値として保持します。
31     この[[特性]]は、
32     - [[文書情報項目]]
33     - [[要素情報項目]]
34     - [[処理指令情報項目]]
35    
36     で定義されています。
37    
38     [6] '''仕様書'''
39     - [[XML情報集合]]
40     -- [CSECTION@en[Base URIs]]
41     <IW:Infoset:"#intro.baseURIs">
42     -- [CSECTION@en[2.1. The Document Information Item]]
43     <IW:Infoset:"#infoitem.document">
44     -- [CSECTION@en[2.2. Element Information Items]]
45     <IW:Infoset:"#infoitem.element">
46     -- [CSECTION@en[2.4. Processing Instruction Information Items]]
47     <IW:Infoset:"#infoitem.pi">
48     - [[XML基底]] <IW:XMLBase:"">
49    
50     [[#comment]]
51    
52    
53     ** 特性値
54    
55     [7] '''文書情報項目の場合'''
56    
57     = [[文書実体]]の[[基底URI]]です。 [SRC[XML情報集合 2.1]]
58     = [[XML基底]]仕様に従います。 [SRC[XML情報集合 1]]
59     = [[RFC 2396]]に従います。 [SRC[XML基底 4]]
60    
61     [[XML基底]]の仕様書の内容には多少曖昧な点もありますが、
62     [[RFC 2396]]の規定と矛盾する規定を行う意図はなさそうなので、
63     = [[転送プロトコル]]によってもたらされた[[基底URI]]
64     = [[文書実体]]の[[取出し]]に用いた[[URI]]
65     ([[リダイレクト]]がある場合は、最終的な[[URI]])
66     = [[応用]]の文脈に依存した[[URI]]
67    
68     の順で決定するものと思われます。
69    
70     [8] '''要素情報項目の場合'''
71    
72     = [[要素]]の[[基底URI]]です。 [SRC[XML情報集合 2.2]]
73     = [[XML基底]]仕様に従います。 [SRC[XML情報集合 1]]
74     = [CODE(XMLa)@en[[[xml]]:[[base]]]][[属性]]の項を参照。
75    
76     [9] '''処理指令情報項目の場合'''
77    
78     = [[処理指令]]の[[基底URI]]です。 [SRC[XML情報集合 2.4]]
79     = [[XML基底]]仕様に従います。 [SRC[XML情報集合 1]]
80     = [CODE(XMLa)@en[[[xml]]:[[base]]]][[属性]]の項を参照。
81    
82     [16] '''逃避'''
83    
84     [CODE(XMLa)@en[[[xml]]:[[base]]]][[属性]]の[[値]]を[[URI参照]]として使うためには[[逃避]]が必要です
85     [WEAK[([CODE(XMLa)@en[[[xml]]:[[base]]]][[属性]]の項を参照してください。)]]
86     が、[[特性値]]はその''前''のものです。
87     [SRC[XML情報集合 1]]
88    
89     [14] '''応用依存'''
90    
91     [[XML基底]]仕様で[[基底URI]]が[[応用]]依存になる場合に関して、
92     [[XML情報集合]]仕様は[CODE(InfoProp)[[[基底URI]]]]の値を規定しません。
93     [SRC[XML情報集合 1]]
94    
95     ;;
96     [15]
97     [[DTD]]を[[処理]]するか否かによって結果が異なり得る[[特性]]では[[値]]が[[無値]]や[[未知]]になることもありますが、
98     [CODE(InfoProp)[[[基底URI]]]]ではそれは無いようです。
99     [[DTD]]を[[処理]]しない場合に関しても[[XML基底]]仕様で[[基底URI]]が明確に定義されているためでしょうか。
100     (実際[[DTD]]を[[処理]]していないからといって[[無値]]や[[未知]]にされては役に立ちませんしw)
101    
102     [[#comment]]
103    
104    
105     ** 関連
106    
107     [13] '''合成情報集合'''
108    
109     [[合成情報集合]] ([[XML]][[文書]]から生成してすぐの[[情報集合]]''以外'')
110     では、[CODE(InfoProp)[[[基底URI]]]]と[CODE(XMLa)@en[[[xml]]:[[base]]]][[属性]][[情報項目]]に齟齬が生じていることもあります。
111     [SRC[XML情報集合 1]]
112    
113     [10] '''処理指令情報項目の直列化'''
114    
115     [[外部実体]]の直下に[[処理指令]]がある場合、
116     その[[外部実体]]の[[基底URI]]が[[処理指令]]の[[基底URI]]になりますが、
117     [[処理指令]][[情報項目]]を含む[[情報集合]]を[[直列化]]する時にその[[基底URI]]の情報は保存する方法がありません。
118     [SRC[XML情報集合 2.4]]
119    
120     [11] '''[CODE(InfoProp)[宣言基底URI]]'''
121    
122     [[非解析対象実体]][[情報項目]]や[[記法]][[情報項目]]には、
123     [CODE(InfoProp)[[[宣言基底URI]]]]という[[特性]]が定義されています。
124    
125     [12] '''DOM特性'''
126    
127     [[DOM]]の[CODE(DOMa)@en[[[baseURI]]]][[特性]]は[CODE(InfoProp)[[[基底URI]]]]ではなく、
128     [CODE(XMLa)@en[[[xml]]:[[base]]]][[属性]]に基づき定義されています。
129    
130     [17]
131     [[XInclude]]では[[基底URI]]を保存するために[CODE(XMLa)@en[[[xml]]:[[base]]]][[属性]]を追加して整合性を維持することがあります。
132     ([[名無しさん]])
133    
134     [18]
135     [CODE(InfoProp)[[[基底URI]]]]と[CODE(XMLa)@en[[[xml]]:[[base]]]][[属性]]では、
136     [CODE(InfoProp)[[[基底URI]]]]の方を優先して[[相対参照]]の[[解決]]に使うべきとされています。
137     [SRC[XML情報集合 1]]
138    
139     [19] '''[CODE@en[base-uri]] アクセス子'''
140    
141     [[RDF/XML]][[構文]]を定義する[[事象]]モデルでは、
142     [[根]][[事象]]と[[要素]][[事象]]に[CODE@en[[[base-uri]]]][[アクセス子]]があり、
143     共に[CODE(InfoProp)[[[基底URI]]]][[特性]]から値を得ることとされています。
144    
145     [20] '''XSLTデータ・モデル'''
146    
147     [[XPath 1.0]]の[[データ・モデル]]には、
148     [CODE(InfoProp)[[[基底URI]]]]に相当するものがありません。
149    
150     [[XSLT 1]]の[[データ・モデル]]における[CODE(InfoProp)[[[基底URI]]]]相当のものに関しては、
151     >>26 を参照してください。
152     [[#comment]]
153    
154    
155     ** メモ
156    
157     [[#comment]]
158    
159    
160     * 基底URI (XSLTデータ・モデル)
161    
162     [26]
163    
164     [[XPath 1.0]]の[[データ・モデル]]では[[基底URI]]は扱われていません。
165    
166     [[XSLT 1.0]]の[[データ・モデル]]は[[基底URI]]を各[[節点]]に対して規定していますが、
167     [[XML基底]]よりも前に作られた仕様なので、[CODE(XMLa)@en[[[xml]]:[[base]]]][[属性]]が反映されません。
168    
169     [[XSLT 1.1]]の[[データ・モデル]]は基本的に[[XML基底]]に基づいています。
170    
171     [25] '''仕様書'''
172     - [[XSLT 1]]
173     -- [CSECTION@en[3.2 Base URI]] <IW:XSLT1:"#base-uri">
174     -- [CSECTION@en[3.3 Unparsed Entities]] <IW:XSLT1:"#unparsed-entities">
175     -- [CITE@en[Errata in REC-xslt-19991116]]
176     <http://www.w3.org/1999/11/REC-xslt-19991116-errata/#E5>
177    
178     [24]
179     , ,[[XSLT 1.0]] ,[[XSLT 1.1]]
180     ,[[文書節点]] ,[[文書実体]]の[[URI]] ,(規定なし)
181     ,[[根節点]] ,(規定なし) ,[[文書実体]]の[[URI]]
182     ,[[要素節点]] ,[[外部実体]]中なら[[外部実体]]の[[URI]]、そうでなければ[[文書]]の[[基底URI]] ,[[XML基底]]による
183     ,[[処理指令節点]] ,[[外部実体]]中なら[[外部実体]]の[[URI]]、そうでなければ[[文書]]の[[基底URI]] ,[[XML基底]]による
184     ,"[[文節点]], [[注釈節点]], [[属性節点]]" ,[[親節点]]の[[基底URI]] ,==
185     ,[[名前空間節点]] ,[[親節点]]の[[基底URI]] ,実装依存
186     ,[[非解析対象実体]]の[[システム識別子]] ,[[実体宣言]]を含む[[資源]]の[[基底URI]] ,==
187    
188     ;; - [21] [Q[[[文書実体]]・[[外部実体]]の[[基底URI]]]]では''なく''て[Q[[[文書実体]]・[[外部実体]]の[[URI]]]]なのがちょっと・・・。
189     - [22] それでいて[Q[そうでなければ[[文書]]の[[基底URI]]]]とは何事か。
190     [[文書実体]]や[[文書節点]]ではなく、[[文書]]の[[基底URI]]なのか?
191     - [23] そもそも[[文書節点]]という語も、
192     ここ1箇所でしか出てこない ([[根節点]]の誤りか)。
193    
194     [[#comment]]
195    
196    
197     * メモ
198    
199     [27]
200    
201     @@ [[RFC 4722]] [CODE(XMLa)@en[[[baseurl]]]]
202     ([[名無しさん]] [WEAK[2006-11-18 03:19:09 +00:00]])
203    

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24