[prev in list] [next in list] [prev in thread] [next in thread] 

List:       xmlbeans-dev
Subject:    [jira] Commented: (XMLBEANS-412) CLONE -Pattern facet regex
From:       "Peter Keller (JIRA)" <xmlbeans-dev () xml ! apache ! org>
Date:       2010-06-04 10:06:57
Message-ID: 33318461.180221275646017739.JavaMail.jira () thor
[Download RAW message or body]


    [ https://issues.apache.org/jira/browse/XMLBEANS-412?page=com.atlassian.jira.plugi \
n.system.issuetabpanels:comment-tabpanel&focusedCommentId=12875549#action_12875549 ] 

Peter Keller commented on XMLBEANS-412:
---------------------------------------

For additional clarity (I hope):

A positive char group is:

posCharGroup	   ::=   	 ( charRange  | charClassEsc  )+ 

and '\-' is a valid charClassEsc, so using '\-' is valid via the charClassEsc branch. \
The following four positive character groups are all valid and equivalent:

  [A-F0-9.+-]      ('-' is a valid charRange here)
  [-A-F0-9.+]      ('-' is a valid charRange here)
  [A-F0-9.+\-]     ('\-' is a valid charClassEsc)
  [\-A-F0-9.+]     ('\-' is a valid charClassEsc)

The following two negative character groups are valid and equivalent:

  [^A-F0-9.+\-]    ('\-' is a valid charClassEsc)
  [^\-A-F0-9.+]    ('\-' is a valid charClassEsc)

and the following two are invalid:

  [^A-F0-9.+-]    ('-' is not a valid charRange here)
  [^-A-F0-9.+]    ('-' is not a valid charRange here)


> CLONE -Pattern facet regex requires dash - to be escaped
> --------------------------------------------------------
> 
> Key: XMLBEANS-412
> URL: https://issues.apache.org/jira/browse/XMLBEANS-412
> Project: XMLBeans
> Issue Type: Bug
> Components: Validator
> Affects Versions: Version 2, Version 2.1, Version 2.2, Version 2.2.1,  Version 2.3, \
>                 Version 2.3.1
> Environment: Win 2000, JDK1.5
> Reporter: Radosław Ceszkiel
> Fix For: Version 2
> 
> 
> Given the following xsd  that should allow only a valid email address pattern:
> <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
> <xsd:element name="Email" type="EmailType" />
> <xsd:simpleType name="EmailType" >
> <xsd:restriction base="xsd:token">
> <xsd:pattern value="([\.a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(([a-zA-Z0-9_-])*\.([a-zA-Z0-9_-])+)+"/>
>  </xsd:restriction>
> </xsd:simpleType>
> </xsd:schema>
> Using the following simple xml instance:
> <Email>test@test.com</Email>
> Running:
> validate sample.xsd sample.xml
> generates:
> Schema invalid:
> D:\sample.xsd:7: error: pattern-regex: The regular expression \
> '([\.a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(([a-zA-Z0-9_-])*\.([a-zA-Z0-9_-])+)+' is \
> malformed: '-' is an invalid character range. Write '\-'. A dash at the end or at \
> the beginning of a character range does not have to be escaped (see \
> http://www.w3.org/TR/2004/REC-xmlschema-2-20041028/datatypes.html#nt-charRange "The \
> - character is a valid character range only at the beginning or end of a - positive \
> character group- .")  The regular expression in the email example is a valid xsd \
> regexp and should be accepted by the XmlBeans validator.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@xmlbeans.apache.org
For additional commands, e-mail: dev-help@xmlbeans.apache.org


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic