Как вытащить содержимое xml с помощью document() при условии что у xml

Есть xml вида:

<!DOCTYPE RDname
  SYSTEM "RDname.dtd">
<RDname 
xmlns:ditaarch="http://dita.oasis-open.org/architecture/2005/" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xmlns:atirds="http://www.arbortext.com/namespace/dita/rdstyle"
 xmlns:ch="http://www.arbortext.com/namespace/chunker" atirds:dynamicDoctype="true" 
atirds:RDSVersion="RDS-2.0" atirds:sourceMapId="253" atirds:bufferMode="Memory" 
atirds:MapComments="false" atirds:Print="Disabled" atirds:UseDataMerge="off" 
atirds:UseReferencePathHook="off" atirds:AddDMPAttrs="false" atirds:TopicComments="false"
 atirds:DefaultXmlLang="ru" atirds:TopicAsMap="off" atirds:CompType="_rdstyle" 
atirds:ditaTraceLevel="0">
<text>hello</text>
</RDname>

С большим содержимом внутри, не привожу его полностью но в главном теге много разных пространств имен и атрибутов

я использую:

 <xsl:value-of select="document('myxml.xml')/RDname/text" />

если удалить

<!DOCTYPE RDname  SYSTEM "RDname.dtd">

то все работает отлично, но в случае с ним, не пойму что нужно изменить с пространством имен или с чем еще, чтобы можно было вытащить нужное содержимое.

Как с помощью функции document() прочесть xml с DOCTYPE на схему


Ответы (0 шт):