问题标签 [xsd-validation]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
4740 浏览

xml - Eclipse 中的 XSD 验证:“无语法约束”警告?

我在 Eclipse 中创建了一个新项目,只是为了验证一个 xml,这要归功于相应的 xsd。我写了 xsds 和 xml 文件。

主要的 XSD 是这样的:

位于other_xsd.xsd同一目录中,如下所示:

它主要包含complexType主要xsd中使用的s

xml 示例文件也位于同一目录中,如下所示:

所有这三个文件都已加载到我的 Eclipse 项目的同一目录中。然而我一直有这个警告:

未检测到文档的语法约束(DTD 或 XML 模式)。example.xml XMLValidation/Test line 1 XML 问题

我的 xml 或 xsd 中缺少什么以便我可以验证我的 xml 文件?

0 投票
1 回答
2580 浏览

xml - XSD 验证错误:“cvc-elt.1:找不到元素‘xs:schema’的声明”

我正在尝试使用 Maven XML 插件来针对模式验证我的 xml,但我一直收到错误消息:

cvc-elt.1:找不到元素“xs:schema”的声明。

我想它必须处理我的命名空间声明,所以它们是:

在我的 XSD 中:

在我的 XML 中:

这些声明有什么问题?我需要修改什么?

谢谢你的帮助。

0 投票
1 回答
2515 浏览

c# - 使用 Saxon API 进行 XSD 验证

我正在尝试使用 Saxon 测试 Xsd 验证。当我进行实际验证时,仅捕获第一个错误,因为 validator.Run() 在遇到第一个错误时会引发异常,之后不会继续。当您有一个包含许多错误的 xml 文件时,这显然不是您想要的。有没有办法在抛出异常后继续验证,或者是否有另一种使用 Saxon 的验证方法?

此代码基于 Saxon 在其文档的示例文件夹中的一个验证示例,这是运行验证的部分。

0 投票
1 回答
262 浏览

.net-4.0 - 将 PSVI GetSchemaInfo 与 XSD 验证错误 ValidationEventArgs.Message 相关联

我对 Microsoft 的.Net 框架 4.0的Extenstions.GetSchemaInfo 方法 (XElement)的 MSDN 文档有疑问。

我想知道是否有办法从内部

获取无效节点的 ValidationEventArgs.Message 的代码。当您像示例中那样对 XML 节点进行编号时,此示例可以正常工作:GrandChild1、GrandChild2。您可以按站点判断哪个无效节点正在产生验证错误。但是当你有没有编号节点的 XML 时,例如

你会得到如下所示的输出:

我想要一种方法来告诉第 (7) 行引用了第 (2) 行中的 ErrorMessage。

我有一个 XML 文档,我正在针对该文档运行 XSD 验证,如本文所示,我想将 ValidationEventArgs.Message 解析为对复杂数据类型更用户友好的消息。我想在 DumpInvalidNodes() 方法中执行此操作,因为我可以访问无效节点,并且可以从节点获取其他信息(如 ID),用户可以使用这些信息来查找和修复验证问题。

0 投票
1 回答
3061 浏览

xsd - Nested sequence in XSD

I would like to validate this XML:

I wrote that.

But that does not validate my example. Without 'house' or 'flat', and only meta, that worked.

Where could be my problem ?

0 投票
4 回答
4447 浏览

c# - 同步 XML 模式验证?.NET 3.5

我知道我可以使用如下回调方法针对模式验证 xml,但是有没有一种方法可以同步而不是事件驱动?

我想到的一种方法是设置一个类成员布尔标志 IsValidated=false,然后
调用 xml.Validate(ValidationEventHandler)。一旦完成,事件处理程序将设置 IsValidated=true。同时,进行循环检查,直到标志设置为真,然后继续。

这适用于 .Net 3.5。

好的,我已经做了一个测试,看起来 xml.validate 实际上是等到回调完成后才执行新代码。

在以下示例中,MessageBox.Show("After Validate"); 总是在执行 myValidationEventHandler 之后发生。

我还单步执行了代码来验证这一点。

所以我想这使我的问题不再是问题。

0 投票
1 回答
1654 浏览

xml - XML targetNamespace 和元素的非限定声明

targetNamespace对于 XML 模式中的属性如何影响元素的命名,我有些困惑。我收到验证以下内容的错误:

XMLSpy 正在说明它Cannot resolve the unqualified declaration or definition 'testSubType'.我该如何解决这个问题?我需要将targetNamespace属性保留在那里。我已经尝试在各个领域进行更改testSubTypetest:testSubType但这似乎不起作用。

0 投票
1 回答
330 浏览

xml - 我应该在这个 XSD 架构中在哪里添加复杂类型元素

我正在研究 XSD 架构,我被要求在概念节点上添加一个新的复杂类型,它看起来像这样:

XSD 的这一部分验证 XML 的以下片段

所以我想做的是添加一个新元素,所以xml看起来像这样:

如您所见,我想为每个 Concepto添加一个新元素(optDetail),其中 minOccurs = 0 和 maxOccurs= unbouded。这与 InformacionAduanera 节点几乎相同(我不明白在这里显示定义的意义这种类型)但是,InformacionAduanera 受到选择限制,.

所以我所做的是我首先定义了我的类型

我试图添加到 XSD,但没有成功,我得到了错误,比如元素节点错位或元素标签出现次数过多,所以问题是我应该把它放在哪里来验证我上面显示的 xml?

谢谢!!

0 投票
1 回答
4875 浏览

regex - xsd:simpleType: xsd:pattern 和 xsd:maxLength 可以一起工作吗?

假设我正在处理一个 xsd:simpleType 它是一个字符串,需要具有特定的字符集和特定的最大长度,类似于下面的代码:

所以我的 xsd 类型将是一个只有数字和最多 36 个字符的字符串。我的问题是 xsd:pattern 和 xsd:maxLength(或任何其他类似的标签,如 minLength)是否可以一起工作。我的直觉是没有;仅在 xsd:restriction 中的模式或基于长度的 xsd 元素。因此,我必须在模式中添加最大长度限制。

请注意,我确实通过在 Java 上解组 xml 进行了测试,但验证失败。无论如何,我正在寻找的是两种信息,即模式和 maxLength 如何以及是否可以一起工作。

0 投票
1 回答
834 浏览

c# - XmlDocument.Validate() 在架构中的 targetNamespace 和 XML 中的命名空间被设置时抱怨

在 C# 中,我将以下 XML 文件加载到XmlDocument

我使用这个模式来验证它:

它在NoticeEventArgs.Message

命名空间“http://www.example.com”中的元素“shiporder”在命名空间“http://www.example.com”中具有无效的子元素“orderperson”。预期的可能元素列表:'orderperson'。

但是,如果我删除 XML 文件和targetNamespaceXSD 文件中的命名空间,它就会通过验证。如何以及如何解决它?谢谢!