I think the primary problems in using reg-exp are that URL's
contain case-sensitive segments and case-insensitive segments.
HTTP or http or Http or ... will work. sun.com or Sun.COM or
SUN.com, etc. will work. "http://eastmail2bur.East.Sun.COM/" or
"http://129.148.13.40" will work.
There is also the issue that there are optimized functions
available on some systems for this type of matching. People
don't want to be forced to use reg-exp.
If it is easy to write a reg-exp for the URL-matching functions,
then it should be easy for you to implement the URL-matching
functions using that reg-exp pattern, if you choose.
Anne
On 23 June, Bill Parducci writes: Re: [xacml] URI-match function proposal
> Pattern: ^/a[^/]*$
> MATCHES /a
> MATCHES /ab
> NO MATCH /a/
> NO MATCH /ac/
> NO MATCH /a/b/c
> MATCHES /askfjl28746.82347
>
> Pattern: ^a[^:]*$
> MATCHES a
> NO MATCH a:
> NO MATCH a:b
> MATCHES abc
> NO MATCH abc
> MATCHES abc/d
>
> Pattern: ^http:\/\/a\.b[^/]*$
> MATCHES http://a.b
> MATCHES http://a.bclkjdslkj
> NO MATCH http://a.b/
> NO MATCH http://a.bkljlk/
> NO MATCH http://a.b/d
>
> Pattern: ^/a.*\/..*\.html[^/]*$
> NO MATCH /a
> MATCHES /a.html
> MATCHES /a/y.html
> MATCHES /a1/y1.html
> NO MATCH /a1/y1.html/
>
> Pattern: ^http:\/\/a\.b\/x\/.*$
> NO MATCH http:/a
> NO MATCH http://a
> NO MATCH http://a.b
> NO MATCH http://a.b/x
> MATCHES http://a.b/x/
> MATCHES http://a.b/x/kjlkj
> MATCHES http://a.b/x/kjlkj/klj
>
> is it me, or is this pretty straightforward? as far as i know, the expressions
> above conform with the XPath/XQuery use of regex.
>
> b
>
> Michiharu Kudoh wrote:
>
> > Of course this is not complete but I believe that this covers several
> > peoples' requirements including me.
> >
> > The basic idea is the following:
> > - Match function that works on URI syntax (including URL and URN)
> > - Pattern match character includes "*", "?", and "**" (maybe more)
> > + "*" is used for single-node match.
> > + "**" is used for sub-tree match (from Ant).
> > + "?" is used for one-character match.
> > - Hierarchical separators are "/" and ":" (or more).
>
> [...]
>
> > One problem I had in the above example is that there is no simple syntax
> > that matches both the indicated node and its sub-tree. For example, if we
> > need to specify a policy that matches to /a and the sub-tree, we need to
> > specify two patterns i.e. /a and /a/**. JSR115 uses /a:/a** where ':'
> > indicates 'or' combination of two patterns that conflicts with patterns for
> > the urn cases above.
> >
> > So the following is one of the solution for this problem:
> > - Introduce "***" for representing both the indicated node and its
> > sub-tree. For example, /a/*** is a shorthand of /a and /a/**. Thus /a/***
> > matches /a, /a/b, /a/b/c etc.
>
> To unsubscribe from this mailing list (and be removed from the roster of the OASIS TC), go to http://www.oasis-open.org/apps/org/workgroup/xacml/members/leave_workgroup.php.
>
--
Anne H. Anderson Email:
Sun Microsystems Laboratories
1 Network Drive,UBUR02-311 Tel: 781/442-0928
Burlington, MA 01803-0902 USA Fax: 781/442-1692