...
The only thing that needs to be answered is what will happen if both specificationFilter and ldapFilter exist. We need to agree on a conflict resoution scheme here. For example we may just ignore specficationFilter if ldapFilter exists or we may try to "merge" both. In order to make things clearer the following syntax which can no longer converted to ASN.1 can be used:
No Format |
---|
SubtreeSpecification = "{" [ sp ss-base ]
[ sep sp ss-specificExclusions ]
[ sep sp ss-minimum ]
[ sep sp ss-maximum ]
[ sep sp (ss-specificationFilter / sp ss-ldapFilter) ]; >>> The new element <<<
sp "}"
ss-base = "base" msp LocalName
ss-specificExclusions = "specificExclusions" msp SpecificExclusions
ss-minimum = "minimum" msp BaseDistance
ss-maximum = "maximum" msp BaseDistance
ss-specificationFilter = "specificationFilter" msp Refinement
ss-ldapFilter = "ldapFilter" msp LdapFilter; http://tools.ietf.org/html/rfc4515#section-3
SpecificExclusions = "{" [ sp SpecificExclusion
*( "," sp SpecificExclusion ) ] sp "}"
SpecificExclusion = chopBefore / chopAfter
chopBefore = "chopBefore" ":" LocalName
chopAfter = "chopAfter" ":" LocalName
|