我有原始的xml,它有以下结构:
<Root xmlns="http://xyz.com/2006/root" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xyz.com/2006/root.xsd">
要创建新的xml,我使用以下代码:
XNamespace ns = "http://xyz.com/2006/root";
XNamespace xsiNs = "http://www.w3.org/2001/XMLSchema-instance";
XDocument doc = new XDocument(
new XDeclaration("1.0", "UTF-8", null),
new XElement(ns + "root",
new XAttribute(XNamespace.Xmlns + "xsi", xsiNs),
new XAttribute(xsiNs + "schemaLocation",
"http://xyz.com/2006/root.xsd"),
));
结果是:
<root xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xyz.com/2006/root.xsd" xmlns="http://xyz.com/2006/root">
我们怎么看,原来xmls是第一个属性,xmls:xsi是第二个,xsi:schemalocation是最后一个。在新的xml中,顺序是不同的。
我想知道订单是否重要。
但是,要了解有关xml的更多信息,我想知道是否有任何方法可以订购属性。
感谢。
答案 0 :(得分:2)
XML中的属性顺序(包括名称空间声明属性)没有意义。保留原始订单不需要XML处理工具。