首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将模式位置和XSI动态添加到XML文件

如何将模式位置和XSI动态添加到XML文件
EN

Stack Overflow用户
提问于 2011-12-16 15:17:26
回答 2查看 5.7K关注 0票数 1

大家好,我正在创建一个动态生成XML文件的应用程序。在这里,我想将schemalocationXSI添加到XML Root中,我该如何做到这一点。我想补充以下几点

代码语言:javascript
复制
xmlns="http://www.irs.gov/efile"

xsi:SchemaLocation="http://www.irs.goc/efile ReturnData941.xsd"

代码语言:javascript
复制
xmlns:xsi="http://www.w3.org/2001/XMLSchema-Instance"

这是我动态生成的样例XML代码

代码语言:javascript
复制
XmlDocument doc = new XmlDocument();
XmlNode docNode = doc.CreateXmlDeclaration("1.0", "UTF-8", null);

doc.AppendChild(docNode);

XmlNode returnData = doc.CreateElement("ReturnData");
XmlAttribute documnetCount = doc.CreateAttribute("documentCount"); // after this i would like to add that schema
returnData.Attributes.Append(documnetCount);

所以我应该像下面这样得到我的XML

代码语言:javascript
复制
<?xml version="1.0" encoding="UTF-8"?>
<ReturnData documentCount=""  xsi:SchemaLocation="http://www.irs.goc/efile ReturnData941.xsd" xmlns="http://www.irs.gov/efile" xmlns:xsi="http://www.w3.org/2001/XMLSchema-Instance" />
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-12-16 15:57:07

我认为您只需要添加一个属性,比如

代码语言:javascript
复制
        XmlAttribute attr = doc.CreateAttribute("xsi", "schemaLocation", " ");
        attr.Value = "http://www.irs.goc/efile ReturnData941.xsd";
        returnData.Attributes.Append(attr);
票数 3
EN

Stack Overflow用户

发布于 2011-12-16 18:45:30

我想知道这是不是处理事情的最好方法?许多验证API允许您单独指定模式位置和实例文档位置,这可能比将模式位置存储在实例中更有效。

总之,我对xsi:schemaLocation持怀疑态度。如果要验证实例,通常是因为您不信任它,如果不信任它,为什么要信任它的xsi:schemaLocation呢?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8530993

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档