directory-api mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Emmanuel Lécharny <elecha...@gmail.com>
Subject Re: caseIgnoreIA5Match and normalizers
Date Thu, 20 Oct 2016 16:53:14 GMT


Le 20/10/16 à 17:57, Radovan Semancik a écrit :
> Hi,
>
> I'm a bit puzzled about the matching rules and normalizers. I have
> ordinary RFC4519 attribute, let's say it is 'dn':
'dc' not 'dn'..
>
> attributetype ( 0.9.2342.19200300.100.1.25 NAME ( 'dc'
> 'domainComponent' )
>         DESC 'RFC1274/2247: domain component'
>         EQUALITY caseIgnoreIA5Match
>         SUBSTR caseIgnoreIA5SubstringsMatch
>         SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
>         SINGLE-VALUE
>         USAGE userApplications )
>
> Now when I parse that schema and look at quality matching rule and its
> normalizer it is this:
>
> NORMALIZER ( 1.3.6.1.4.1.1466.109
> .114.2
>  FQCN
>  )

The caseIgnoreIA5MatchMR definition is :

version: 1
dn: m-oid=1.3.6.1.4.1.1466.109.114.2,ou=matchingRules,cn=system,ou=schema
m-oid: 1.3.6.1.4.1.1466.109.114.2
m-obsolete: FALSE
m-syntax: 1.3.6.1.4.1.1466.115.121.1.26
objectclass: metaMatchingRule
objectclass: metaTop
objectclass: top
m-name: caseIgnoreIA5Match
creatorsname: uid=admin,ou=system


and the associated comparator is :

version: 1
dn: m-oid=1.3.6.1.4.1.1466.109.114.2,ou=comparators,cn=system,ou=schema
m-oid: 1.3.6.1.4.1.1466.109.114.2
m-fqcn:
org.apache.directory.api.ldap.model.schema.comparators.DeepTrimToLowerCachingNormalizingComparator
objectclass: metaComparator
objectclass: metaTop
objectclass: top
creatorsname: uid=admin,ou=system


so the DeepTrimToLowerCachingNormalizingComparator class will be used.
The normalizer to be used is the DeepTrimToLowerNormalizer one, not the
NoOp normalizer.

>
> ... and it is an instance of NoOpNormalizer class. As this is is
> case-ignore attribute I would expect normalizer that will convert the
> value case. Am I right? Or is there really reason for NoOpNormalizer?
>
> The NoOpNormalizer causes that the values in the DN are not
> normalized. And therefore DNs such as dc=EXAMPLE,dc=COM and
> dc=example,dc=com are considered to be different.


-- 
Emmanuel Lecharny

Symas.com
directory.apache.org


Mime
View raw message