Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
用于验证NMTOKENS属性列表中每个值的XML架构_Xml_Xsd_Relaxng - Fatal编程技术网

用于验证NMTOKENS属性列表中每个值的XML架构

用于验证NMTOKENS属性列表中每个值的XML架构,xml,xsd,relaxng,Xml,Xsd,Relaxng,给定此XML文件: …是否可以创建XSD键/keyref样式验证,以确保列表中的每个值与现有的用户名匹配 如果这在XSD中不可能,那么在RelaxNG中也可能吗?不,在XSD 1.0中也不可能。当然,在XSD 1.1中,使用断言非常简单: 唯一性(如果在用户元素级别定义): 引用完整性(如果在users元素级别定义): 类似地,是否有一种方法可以强制实现唯一性,即防止foweld=“phrogz phrogz phrogz”?:)在RELAXNG语法中不可能,但可以使用嵌入式schem

给定此XML文件:


…是否可以创建XSD
/
keyref
样式验证,以确保
列表中的每个值与现有的
用户名
匹配


如果这在XSD中不可能,那么在RelaxNG中也可能吗?

不,在XSD 1.0中也不可能。当然,在XSD 1.1中,使用断言非常简单:

唯一性(如果在用户元素级别定义):


引用完整性(如果在users元素级别定义):



类似地,是否有一种方法可以强制实现唯一性,即防止
foweld=“phrogz phrogz phrogz”
?:)在RELAXNG语法中不可能,但可以使用嵌入式schematron规则完成。感谢您的专业知识和帮助。我真的为你能帮助我感到荣幸。:)
<xsl:assert test="count(@blessed) = count(distinct-values(@blessed))"/>
<xsl:assert test="every $t in data(@blessed) satisfies $t = user/@name"/>