问题标签 [xmlschema]

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 回答
323 浏览

python - 解析 XML 文件并针对 xsd 模式进行验证

这是我需要针对模式 xsd 文件解析和验证的 XML 输出示例。

此文件本身不是有效的 XML,因为没有单个标签包装所有其他标签。但是每条记录(即,SCHOOL 和 STUDENTEXP)都是有效的 XML,它根据模式(school.xsd、studentexp.xsd)进行验证。

我从来没有使用过这种格式,也不确定一些事情,比如如何以编程方式解析这样的文件?通常使用 lxml,我们可以验证每条记录是否在单独的文件中:

提取“记录”并分别验证它们的正确方法是什么?

0 投票
1 回答
232 浏览

xml - XML 文件的 XML 架构定义 (XSD)

如何检查 XML 文件是否使用 XML 架构定义 (XSD)?例如,如果您解压缩一个签名的 odt 文件(LibreOffice 或 OpenOffice 文本文档),则 META-INF 目录中的签名文件是documentsignatures.xml。在这个文件中,属性xmlns定义了元素的默认命名空间<Signature><document-signatures>. 该属性既没有xmlns:xsi对 XML 模式实例 (XSI) 名称空间的引用,也没有对 XML 模式文件"http://www.w3.org/2001/XMLSchema-instance"的属性引用。因此,不应在任何方案下验证 documentsignatures.xml 文件的全部内容。那是对的吗?xsi:schemaLocationxmldsig-core-schema.xsd

以下是相应 XML 文档documentsignatures.xml的第一行:

问候

卡伦

0 投票
0 回答
21 浏览

xml - 元素作为子元素

我不明白。这个 XSD 到底是什么意思?:

我是这样理解的:

  • 元素下面的所有元素<sequence>都可以根据需要经常出现,但至少出现一次(因为minOccurs未设置属性minOccurs,默认值为 1)。

  • 但是元素下面的一个<choice>元素只能出现一次(因为没有设置minOccursmaxOccurs设置)。

但是,既然<choice>元素在元素之下<sequence>,那么其他列出的元素还能出现吗?那你为什么不定义<sequence>元素下的所有东西而不是定义另一个<choice>元素呢?

这是我的 XML 文档的一部分:

它是有效的,为什么?<X509IssuerSerial><X509Certificate>同时发生。

0 投票
3 回答
470 浏览

xml - 限制 XML Schema 中的字符串长度

我是 XML 和 JAXB 的新手,我正在尝试将 AdditionalDataDeposit 字段添加到我的 XML 架构中,这样我就可以使用 Maven 生成 POJO。当我尝试在 Maven 中构建它时出现错误:

我的代码:

在 AdditionalData 复杂类型下:

然后:

我不太了解 XML Schema,但我们将不胜感激。

0 投票
1 回答
649 浏览

xml - 使用 Apache Camel 针对 XSD 验证 XML

我的目标是读取 CSV 文件,将其转换为 XML 并针对 XSD 进行验证。下面是代码:

错误:

线程“主”org.apache.camel.FailedToCreateRouteException 中的异常:无法在以下位置创建路由 route1:>>> To[validator:src/main/resources?fileName=SampleXMLStructure.xsd] <<< 在路由中:Route(route1) [来自[file:src/main/resources?fileName=data-sam... 因为无法解析端点:验证器://src/main/resources?fileName=SampleXMLStructure.xsd 由于:无法解析端点:验证器://src/main/resources?fileName=SampleXMLStructure.xsd 由于:无法在端点上设置 1 个参数。如果参数拼写正确并且它们是端点的属性,请检查 uri。未知参数=[{fileName=SampleXMLStructure.xsd}]

另外,如果 XML 对给定的 XSD 无效,我想配置是否发生一些异常。我们如何配置它?

请帮助。

0 投票
1 回答
186 浏览

python - 从 XSD 架构中选择元素以填充到 Flask 应用程序中

最终,我想在 Flask 应用程序中基于 XSD 模式构建一个示例 xml 文件,然后将输入导出为有效的 xml 文件。

我也在使用 xmlschema 包。

我有一个烧瓶应用程序和页面的基本结构,其中包含一个显示 XSD 元素的下拉菜单。

但是,我正在努力获取/理解如何使其仅显示来自主 xsd 的元素(模式 file.xsd,如下所述) - 从下拉菜单中选择该元素时,它应该显示相关的子元素/ 来自其他 xsd 文件(schema_types.xsd,如下所述)的属性作为标签,旁边有一个文本字段,允许用户输入一个值。

架构由多个架构组成

schema_file.xsd 是主模式,描述了 xml 文件的结构

并且 schema_types.xsd 文件包含元素的结构

任何方向/指导将不胜感激

0 投票
0 回答
315 浏览

xml - 嵌套 XML 和 XML - 模式定义

我想为购物订单数据的 XML 表示定义 XML 模式。

请参阅以下要求

  • 订单的 XML 表示应包含订单 ID、描述、请求日期和许多订单项
  • 每个行项目元素应包含书籍、数量和价格。价格(即每本书的价格)应限制为大于 0 的值
  • 每本书都应包含书名、书名、流派、出版日期和许多作者。应限制类型,使其仅包含以下值{科幻、神秘、惊悚、戏剧}
  • 每个作者应包含简历、姓氏、名字和可选的笔名。

评价标准

  • 允许许多订单项
  • 允许许多作者写一本书并有一个可选的笔名
  • 允许指定价格并限制为大于 0 的值
  • 允许指定流派,但将值列表限制为完全符合上述状态。请有人帮我弄清楚这种嵌套需求的 XML 定义。

这是我的代码

XML

XSD

建议我如果我的方法有效?并建议我如果我遗漏了什么?

0 投票
1 回答
905 浏览

json - JSON 和 YAML 是否有等效于 DTD 或 XML 模式的方法?

DTD 和 XML Schema 通常用于定义标签和属性,这些标签和属性应该用于正确编写 XML 文件。因此,使用它们,不仅可以根据严格的 XML 语言语法验证 XML 文件的内容,还可以查看每个标签的内容。

对于 JSON 和 YAML 等其他语言,是否有与此等价的功能?

0 投票
1 回答
48 浏览

xml - XML 文件中的 XML 模式声明破坏了 XSLT 转换

我有一个 XSD、XML 和 XSLT 文件。

(简化)XML:

在我的 XSLT 中,我需要为<project>使用<xsl:for-each标签中的每个元素执行转换。但是只有当xmlns, xmlns:xsixsi:schemaLocation<project>. (我当然在没有这些属性的情况下对其进行了测试,并且效果很好。)

这是错误的结果:

这是我的 xslt 文件:

我的 xsd 文件的最上面几行:

0 投票
0 回答
24 浏览

xml - XML-Schema 基于其他元素的子元素强制元素的存在

XML-Schema 应该验证每个“问题”都有一个“语言”中定义的语言的“文本”条目。使用 keyref 可以验证 Text.lang 属性是否具有已定义的语言名称。

在上面的示例中,验证应该失败,因为问题 1 缺少属性为 lang="de" 的“Text”元素。