2013-06-30 7 views
0

Я хочу удалить определенное пространство имен для своего xml с помощью XSLT.удалить определенное пространство имен с помощью XSLT

, например

<?xml version="1.0" encoding="UTF-8" standalone="yes"?> 
<root xmlns="http://test.com" xmlns:ns2="http://test2.com"> 
    <ns2:element1>hello</ns2:element1> 
    <ns2:element2>hello</ns2:element2> 
</root> 

Как придумать в XSLT для удаления http://test.com пространства имен?

Благодаря

+1

Знаете ли вы, что удаление объявления пространства имен изменит семантику файла? Как бы то ни было, 'root' находится в пространстве имен' http: // test.com', потому что это пространство имен по умолчанию в этой точке. Когда вы удаляете 'xmlns =" ​​http://test.com ",' root' больше не будет в этом пространстве имен, и это повлияет на проверку схемы и сопоставление имени XSLT для этого элемента. – Dabbler

ответ

0

Try что-то вроде

<xsl:template match="ns2:*"> 
    <xsl:element name="local-name()"> 
     <xsl:copy-of select="*"> 
    </xsl:element> 
</xsl:template> 
+1

Лучше использовать ''. – Tomalak

Смежные вопросы