问题标签 [xsd-1.0]
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.
xml - 如何在 XSD v1.0 中拥有同名但不同类型的不同元素
我有一个相对较大的代码库,其中包含两种类型的 XML:
或者
但是,我希望以下内容无法验证,因为在我们的情况下它是模棱两可的。
我看到在 v1.1 中可以使用替代方案,但是有人对 XSD 1.0 有破解吗?
xml - XSD 1.0 中的属性可以为 nillable 吗?
我有一个属性是1)不需要的情况,2)使用时可以采用.i)null或空或.ii)将使用正则表达式验证(我希望)的版本字符串。
关于 2.i,如何创建可空属性?在我使用 xml 和 xsds 的短暂时间里,我还没有看到这个
编辑:添加我正在谈论的示例,其中“attribute_1”对应于我的情况
xml - 所有 XML Schema 1.0 数据类型的 [名称] 是否都有 XML Schema 1.0 数据类型?
XML Schema 数据类型是指可以在模式的模式中找到的任何数据类型。
有人知道这种类型吗?[即,接受 XSD 1.0 数据类型名称的类型,仅此而已。]
编辑:示例:
XML:
所以目标是验证type
element 的属性column
。理想情况下,type 属性只验证有效的 XML 数据类型,例如 int、boolean 或 string。
xml - 限制其他命名空间中的类型元素
我认为我需要做的是 XSD 1.0 不可能,但无论如何我会问......我有complexType
一个文件,比如说a.xsd
. 原则上,我不能碰这个文件。特别是,我无法更改其targetNamespace
. 一个例子是:
我有第二个文件 ,b.xsd
在其中我扩展了 中定义的类型a.xsd
,并使用 重新定义了之前定义的a.xsd
元素substitutionGroup
。现在一切都很好,下面的例子似乎没问题:
问题来了:原来的一个字段complexType
是可选的(minOccurs=0
)。现在,我需要重新定义此类型,以便该字段是必需的 ( minOccurs=1
)。我猜想这可以通过 来实现xsd:redefine
,所以我尝试了以下方法:
但我收到以下消息:
老实说,我不太了解这些消息,但经过一番调查,似乎实际问题是重新定义的字段必须与重新定义属于同一个命名空间。在我的情况下,我尝试将字段限制orig:fieldA
在命名空间内http://myns.original
,在 targetNamespace="http://myns.myns" 的文件中。当然,如果c.xsd
像我在中那样继续扩展类型b.xsd
,那没有问题,因为我不会尝试从不同的命名空间修改任何内容。
有谁知道这是否可以实现?一种解决方案是将要修改的定义复制到不同的文件中a_2.xsd
,并使用targetNamespace
. 但对于复杂系统来说,这是一个非常不受欢迎且不可维护的解决方案。
xml - 有没有替代方案在 XML 模式 1.0 中
我在下面有一个 XSD 文档片段。当 XML 文件针对此模式进行验证时,我希望确保mm:Depot
和mm:Customer/mm:County
中的值相同并且仅限于Location
类型中的项目。
这可以使用<assert>
标记在 XML Schema 1.1 中完成,但我必须针对 XML Schema 1.0 进行验证。是否有一些巧妙的技巧可以在 1.0 中进行这项工作?
我想要实现的是这样的......
请注意,该值OverThere
出现两次。
xsd - 元素对兄弟元素值的依赖
我需要在 XML Schema 1.0 下定义一个验证规则,该规则允许一个元素在一组兄弟元素中出现(一次),前提是另一个特定的兄弟元素具有特定值。
例如,给定实例 XML 文档片段,
我希望规则仅在所需的 child1 元素的值为“B”时才允许 child2 元素出现,否则,child1 元素应该在给定的父元素下自行出现。
这在 XML Schema 1.1 下使用 xs:assert 很容易实现,但 1.0 版下的解决方案却避开了我。
任何见解都非常感谢。
xml - 如何在不指定 XML Schema 中的顺序的情况下验证子元素是否存在?
我正在尝试开发一个 XML Schema 文件来验证一个Person
元素。我们的应用程序要求一个人有一个FirstName
并且LastName
不关心他们进入的顺序。它还允许将其他元素放在Person
元素下。所以以下是有效的:
但是,以下内容无效,因为它没有firstName
:
我尝试创建一个像这样的复杂类型:
但显然any
是不允许进去all
的。是否可以让 XML Schema 进行此验证?如果有怎么办?
xml - 如何在 XML Schema 中指定 fractionDigits 限制的最小值?
我有以下 XML 架构:
是否有任何选项可以指定最小xsd:fractionDigits
到 2 的数量?因为我对薪水有以下限制:positive number with 2 decimal places precision, e.g. 10000.50
并且验证应该在 or 之类的输入上失败,而且在输入1000.5452
or上也应该失败。14582.0001
1000.5
10000
PS:使用 XML Schema 1.0
regex - XSD 模式限制中日期格式本身的正则表达式
我正在尝试为 XSD 1.0 模式限制中的日期格式制作正则表达式。
我想检查日期“格式”是否无效,而不是日期值。
我要检查的日期格式是;
例如,以下值是有效的;
以下无效;
我做了一个正则表达式,但有问题。它检查'YYYY-MM-YYYY'
为有效(重复 YYYY)
如何使正则表达式检查是否只有一个YYYY|YY|M|..D|DD?
XML 模式 1.0 / Xercers-J