Я думаю, что источники должны выглядеть следующим образом (со ссылкой на DTD или схему, а не на таблицу стилей):
map.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE map PUBLIC "-//OASIS//DTD DITA Map//EN" "map.dtd">
<map title="DITA Topic Map">
<topicref href="client.xml"/>
</map>
client.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE concept PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd">
<concept id="client.xml">
<title>Client Rights</title>
<conbody>
<p>Part of your job as a healthcare provider.</p>
</conbody>
</concept>
Предложение Дэвида верное, оно дает вам следующий результат:
Part of your job as a healthcare provider.
Чтобы уточнить это: Чтобы использовать функцию специализации DITA, вы бы предпочли использовать что-то вроде этого:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="2.0">
<xsl:output omit-xml-declaration="yes"/>
<xsl:template match="*[contains(@class, ' map/topicref ') and @href]">
<xsl:variable name="topic" select="document(@href, .)"/>
<xsl:value-of select="$topic//*[contains(@class, ' topic/p ')]"/>
</xsl:template>
</xsl:stylesheet>
С данными выборки это приводит к тому же результату. Но если бы у вас был специализированный элемент параграфа , полученный из
, вы все равно могли бы использовать то же преобразование для нового элемента.