OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

 


 

   Re: [xml-dev] regular expressions

[ Lists Home | Date Index | Thread Index ]

 > Why isn't it done?

Good question. It should be. Of course, the notation suggests to most 
compsci people that recursion will be permitted, i.e., that this is a 
context-free instead of regular grammar, and that's probably not what 
you intended.

Bob Foster
http://xmlbuddy.com/

David Tolpin wrote:
> Some schema languages use string regular expressions to check lexical space of 
> attributes and character data. The regex strings often become uncomprehensible,
> such as
> 
> (([a-zA-Z][0-9a-zA-Z+\-\.]*:)?/{0,2}[0-9a-zA-Z;/?:@&=+$\.\-_!~*'()%]+)?(#[0-9a-zA-Z;/?:@&=+$\.\-_!~*'()%]+)?
> 
> for any URI. 
> 
> Providing a structured syntax, similar to that for XML, would help reading and debugging
> them, for example,
> 
>     s-pattern="""
>       comment = "\(([^\(\)\\]|\\.)*\)"
>       atom = "[a-zA-Z0-9!#$%&'*+\-/=?\^_`{|}~]+"
>       atoms = atom "(\." atom ")*"
>       person = "\"([^\"\\]|\\.)*\""
>       location = "\[([^\[\]\\]|\\.)*\]"
>       local-part = "(" atoms "|" person ")"
>       domain = "(" atoms "|" location ")"
>       start = "(" comment " )?" local-part "@" domain "( " comment ")?"
>     """
> 
> instead of 
> 
>     pattern=
>       "(\(([^\(\)\\]|\\.)*\) )?"
>     ~ """([a-zA-Z0-9!#$%&'*+\-/=?\^_`{|}~]+(\.[a-zA-Z0-9!#$%&'*+\-/=?\^_`{|}~]+)*|"([^"\\]|\\.)*")"""
>     ~ "@" 
>     ~ "([a-zA-Z0-9!#$%&'*+\-/=?\^_`{|}~]+(\.[a-zA-Z0-9!#$%&'*+\-/=?\^_`{|}~]+)*|\[([^\[\]\\]|\\.)*\])"
>     ~ "( \(([^\(\)\\]|\\.)*\))?"
> 
> Why isn't it done?
> 
> David
> 
> -----------------------------------------------------------------
> The xml-dev list is sponsored by XML.org <http://www.xml.org>, an
> initiative of OASIS <http://www.oasis-open.org>
> 
> The list archives are at http://lists.xml.org/archives/xml-dev/
> 
> To subscribe or unsubscribe from this list use the subscription
> manager: <http://lists.xml.org/ob/adm.pl>
> 
> 






 

News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 2001 XML.org. This site is hosted by OASIS