[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: Re: [xacml] URI-match function proposal
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: Anne.Anderson@Sun.COM Sun Microsystems Laboratories 1 Network Drive,UBUR02-311 Tel: 781/442-0928 Burlington, MA 01803-0902 USA Fax: 781/442-1692
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]