ブックマークの内容を見れば一目瞭然かと思うけど、ここのところ少しXMLを弄り始めたので、ここに覚え書きみたいな感じで知ってる人にとっては何を今更と思うような内容のメモを、あくまで個人用に残しておく。とりあえず、複数のxmlを一ページに表示する方法でつまずいたのでその辺の調べた結果を。


<!DOCTYPE test
[
<!ENTITY test1 SYSTEM "test1.xml">
]>

<document>
&test1;
</document>

基本的にはこんな感じでXMLにエンティティーを追加すればいいという解説が多いわけだけど、このコードはMicrosoft拡張機能なのか書き方が悪いのか、Firefoxでは期待したとおりには動かない。&test1;は完全に無視されてしまう。そこで代替手段を探した結果、xslの変換時に読み込む方法を見つけた。読み込むXMLはこんな感じに記述する。

<module src="test.xml"/>
XSLの方はこんな感じ。

<xsl:template match="module">
<xsl:apply-templates select="document(@src)"/>
</xsl:template>
これでFirefoxでもIEでも同じ結果が得られる。個人的には、後者はコード量が増えるので前者の書き方をFirefoxでも使用したいのだけれど。ちなみに、Firefoxで<A NAME="TOP">に<A HREF="#TOP">で飛ぼうとしてもできない。今まで普通にしてきたけどこの書き方って標準じゃないのだろうか。HTML/XML分野に関してはまだまだ勉強不足だ。