モジュール化のために xinclude を使用して他の xml ファイルを含める XML ドキュメントのスタイルを設定しようとしています。変換を視覚化するためのツールとして Firefox を使用しています。(すべてのファイルは同じフォルダーにあります) 現時点では、次の xsl を構成しています。
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:xi="http://www.w3.org/2001/XInclude"
exclude-result-prefixes='xsl xi'>
<xsl:template match="/interfaces">
<html>
<head>
<meta charset="UTF-8" content="text/html" http-equiv="Content-Type"/>
<title>Messages</title>
</head>
<body>
<xsl:apply-templates select="message"/>
</body>
</html>
</xsl:template>
<xsl:template match="message">
<xsl:value-of select="@name"/><br/>
<xsl:apply-templates select="xi:include[@href][@parse='xml' or not(@parse)]" />
</xsl:template>
<xsl:template match="xi:include">
Should be outputed...<xsl:apply-templates select="document(@href)" />
</xsl:template>
</xsl:stylesheet
次の xml を処理するには:
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type='text/xsl' href='messages-xsl.xml'?>
<interfaces>
<message name="some_message">
<xi:include href="some_message.xml" xmlns:xi="http://www.w3.org/2003/XInclude"/>
</message>
</interfaces>
stackoverflow に関するいくつかの投稿で同様の質問が寄せられていることは知っていますが、これまでのところ問題を解決できませんでした。前もって感謝します。