将XSD架构内容添加到架构集时出错

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了将XSD架构内容添加到架构集时出错相关的知识,希望对你有一定的参考价值。

我有一个XSD架构,根文档是:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<xs:schema xmlns="urn:iso:std:iso:20022:tech:xsd:camt.054.001.02" xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="urn:iso:std:iso:20022:tech:xsd:camt.054.001.02">
</xs:schema>

我将架构加载到schemaset中,如下所示:

var schemas = new XmlSchemaSet();
using (var reader = new XmlTextReader(new StringReader(content)))
{
    schemas.Add(null, reader);
}

但是,我得到以下异常:

W3C XML Schema的根元素应该是,它的名称空间应该是'http://www.w3.org/2001/XMLSchema'。

我错过了什么?

答案

我不知道你对“根文档”的意思,但你向我们展示的只是XML声明,这与问题无关。

错误消息是模式文档的最外层元素(紧跟XML声明之后)应该是<xs:schema xmlns="http://www.w3.org/2001/XMLSchema">,而事实并非如此。

以上是关于将XSD架构内容添加到架构集时出错的主要内容,如果未能解决你的问题,请参考以下文章

如何使用自定义 XSD 架构编写 XML?

修改 XSD 架构 - 添加新元素显示为灰色

修改XSD架构 - 添加新元素是灰色的

如何将 XSD 类型导入根架构?

如何定义XSD并在XML中使用XSD

使用 xsd.exe 命令工具将 xsd 架构生成 类(CS) 文件