将正则表达式添加到文本元素

时间:2012-06-22 19:52:19

标签: xml relaxng

有没有办法获取一个“anyURI”元素并添加其他约束,例如require“://”?或者我是否必须定义新的数据类型以及如何在新数据类型中实际保留“xsd:anyURI”的规则?

1 个答案:

答案 0 :(得分:1)

这是一个解决方案:

<grammar xmlns="http://relaxng.org/ns/structure/1.0"
datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
 <start>
  <ref name="root"/>
 </start>
 <define name="root">
    <element name="root">
        <data type="anyURI" >
            <param name="pattern">.*://.*</param>
        </data>
    </element>
 </define>
</grammar>

您可以使用param属性添加XML Schema facets。