【问题标题】:cvc-pattern-valid: Value 'A' is not facet-valid with respect to pattern '^[A-Za-z]?$' for type 'whatever'cvc-pattern-valid:值 'A' 对于模式 '^[A-Za-z]?$' 对于类型 'whatever' 不是 facet-valid
【发布时间】:2012-03-08 18:30:59
【问题描述】:

这是验证失败的特定 XML 标记:

<MiddleName>A</MiddleName>

该标签的 XSD:

<xsd:element name="MiddleName" type="MiddleInitial" />

<xsd:simpleType name="MiddleInitial">
    <xsd:restriction base="xsd:string">
        <xsd:pattern value="^[A-Za-z]?$" />
    </xsd:restriction>
</xsd:simpleType>

我得到的错误:

cvc-pattern-valid: Value 'A' is not facet-valid with respect to pattern '^[A-Za-z]?$' for type 'MiddleInitial'.

我正在使用的验证器:

http://tools.decisionsoft.com/schemaValidate/

正则表达式看起来不错。 ^ 匹配开始、$、结束、?是字母 A-Z 或 a-z 的零或一倍。

有什么想法吗?

【问题讨论】:

    标签: xml regex xsd


    【解决方案1】:

    来自 w3 规范 Regular Expressions (Appendix D):

    ...表达式与整个词法表示相匹配 而不是用户范围的词汇表示,例如 line 和 段落。因此,表达式语言不包含 元字符 ^ 和 $,虽然 ^ 用于表示异常, 例如[^0-9]x

    即取出^$

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-12-11
      • 1970-01-01
      • 1970-01-01
      • 2019-03-11
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多