Как я могу опустить все пространства имен XML из xslt в выводе html?
Мой XSL начинается с:
<?xml version="1.0" encoding="UTF-8"?><xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:fn="http://www.w3.org/2005/xpath-functions">
и мой код для преобразования XML выглядит следующим образом
StringBuilder sb = new StringBuilder(600);
XslCompiledTransform xslTrans = new XslCompiledTransform();
xslTrans.Load(XslDoc);//loads the XSL
XmlWriterSettings writerSettings = new XmlWriterSettings();
writerSettings.OmitXmlDeclaration = true;
writerSettings.ConformanceLevel = ConformanceLevel.Auto;
writerSettings.NamespaceHandling = NamespaceHandling.OmitDuplicates;
using (XmlWriter stringWriter = XmlWriter.Create(sb, writerSettings))
{
xslTrans.Transform(XmlDoc, xslArguments, stringWriter);
}
return sb.ToString();
Но в сгенерированном html-выводе появляются пространства имен следующим образом:
<div class="newsFeed" xmlnsxs="http://www.w3.org/2001/XMLSchema" xmlnsfn="http://www.w3.org/2005/xpath-functions" >
Как я могу опустить все пространства имен в сгенерированном выводе?
Было бы здорово, если бы я мог сделать это, изменив XSL, чтобы пользователь мог изменить свой XSL для встраивания своего пространства имен, но по умолчанию это будет чистый HTML-код без xmlns.