<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="1" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[1]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">RFC 4287</anchor> (<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Atom 1.0</anchor>) や <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">RFC 5023</anchor> (<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">AtomPub</anchor>) の <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">RELAX NG</anchor> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">スキーマ</anchor>
(<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">参考</anchor>) では、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URL</anchor> を値とする<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">要素</anchor>や<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">属性</anchor>の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">データ型</anchor>を
<dfn><code class="XML" xml:lang="en">atomUri</code></dfn> (<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">RFC 4287</anchor>) または <dfn><code class="XML" xml:lang="en">atomURI</code></dfn> 
(<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">RFC 5023</anchor>) としています。</p><section><h1>仕様書</h1><refs xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:"><ul xmlns="http://www.w3.org/1999/xhtml"><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="7" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[7]</anchor-end> <cite xml:lang="en">RFC 4287 - The Atom Syndication Format</cite> (<time>2008-08-30 23:12:03 +09:00</time> 版) <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://tools.ietf.org/html/rfc4287#page-41">http://tools.ietf.org/html/rfc4287#page-41</anchor-external></li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="9" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[9]</anchor-end> <cite xml:lang="en">RFC 5023 - The Atom Publishing Protocol</cite> (<time>2008-11-20 21:09:16 +09:00</time> 版) <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://tools.ietf.org/html/rfc5023#appendix-B">http://tools.ietf.org/html/rfc5023#appendix-B</anchor-external></li></ul></refs></section><section><h1>定義</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="4" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[4]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">スキーマ</anchor>上は実は <code class="XML" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">atomURI</anchor></code> は
<code class="XML" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">text</anchor></code> として定義されています。ただし、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">RFC 4287</anchor> には次のような注釈が付されています。</p><blockquote><p>Unconstrained; it's not entirely clear how IRI fit into
xsd:anyURI so let's not try to constrain it here</p></blockquote><p>(制約なし: <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">IRI</anchor> が <code class="XML" xml:lang="en">xsd:<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">anyURI</anchor></code> にどう合わさるか不透明なため、
ここでは制約しないことにします。)</p><comment-p xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">RFC 5023</anchor> にはありません。</comment-p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="8" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[8]</anchor-end> 実際に <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Atom 1.0</anchor> で <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URL</anchor> を値とする<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">要素</anchor>や<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">属性</anchor>を定義する段では、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">RFC 3987</anchor> を引用して「<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">IRI</anchor>」や「<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">IRI参照</anchor>」という用語を用いています。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="5" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[5]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Atom 1.0</anchor> の <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">IRI</anchor> 中には<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">空白</anchor>を含めては<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:"><strong xmlns="http://www.w3.org/1999/xhtml">なりません</strong></anchor>
<src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Atom 1.0</anchor> 3.</src>。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="6" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[6]</anchor-end> そもそも <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">IRI</anchor> には<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">空白</anchor>を含めることができないのですが、
既存の <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">XML</anchor> 実装の中には<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">単純型</anchor>的なものにも誤って<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">空白</anchor>を勝手に挿入するものがあるらしく、
それで敢えて <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Date construct</anchor> や <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">IRI</anchor> には<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">空白</anchor>を含められないと明記しているようです。
でも実は <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Atom 1.0</anchor> は<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">複合型</anchor>的なものであっても<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">要素間空白</anchor>を挿入してもいいとはどこにも規定されていないのですけどね。</p></section><section><h1>URL の定義の整合性</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="2" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[2]</anchor-end> <code class="XML" xml:lang="en">atomURI</code> とされたものには <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Atom 1.0</anchor> や <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">AtomPub</anchor> の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">要素</anchor>や<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">属性</anchor>だけではなく、
<code class="XMLa" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">xml:base</anchor></code> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">属性</anchor>も含まれます。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="3" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[3]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Atom 1.0</anchor> や <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">AtomPub</anchor> は <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">RFC 3987</anchor> の定義を採用していますから、
<code class="XML" xml:lang="en">atomURI</code> が <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">RFC 3987</anchor> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">IRI参照</anchor>を表すとすると
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">RFC 2396</anchor> に基づく <code class="XMLa" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">xml:base</anchor></code> とは厳密には一致しないことになります。</p><comment-p xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:">規定部分では <code xmlns="http://www.w3.org/1999/xhtml" class="XM&lt;a" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">xml:base</anchor></code> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">属性値</anchor>には言及されていません。</comment-p></section><section><h1>現実</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="10" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[10]</anchor-end> 実際には、 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URI</anchor> や <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">IRI</anchor> ではなく、 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URL</anchor> と解釈するべきものです。</p></section></body></html>