I Я знаю, что вы ищете. В духе помощи, ниже - это решение и некоторые объяснения. I высоко рекомендую вам забрать хорошую книгу на XSLT и изучить основы с нуля.
Когда XSLT:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output omit-xml-declaration="yes" indent="yes"/>
<xsl:strip-space elements="*"/>
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
</xsl:copy>
</xsl:template>
<xsl:template match="ContentItem">
<xsl:apply-templates select="DataContent/*"/>
</xsl:template>
</xsl:stylesheet>
... применяется к исходному XML (скорректированного быть хорошо сформированы):
<ContentItem>
<DataContent>
<media media-type="image" style="leftSide">
<media-reference data-location="#photo0" mime-type=""/>
</media>
<p>p1</p>
<p>p2</p>
<p>p3</p>
</DataContent>
</ContentItem>
... разыскиваемый результат (Я думаю,):
<media media-type="image" style="leftSide">
<media-reference data-location="#photo0" mime-type=""/>
</media>
<p>p1</p>
<p>p2</p>
<p>p3</p>
Ваше решение выводит текст, потому что <xsl:value-of>
по определению возвращает строковое значение выбранных узлов/атрибутов.
Как выглядит ваш XSLT? – ABach
-1, как вы ожидаете получения информации о своем коде, когда вы не публикуете код? –
Извините, у меня нет большого опыта в этом – Carlos