[Date Prev][Date Next] [Chronological] [Thread] [Top]

Re: RFC 2596 questions



Getting back to this:
 
The example David gives below shows a subtype inheriting from multiple supertypes. As of yet, I believe that this is illegal in X.500/LDAP and as such might cause problems with existing servers.
 
I don't have a good feeling of closure on this subject. We need to revise 4.1.5 of RFC 2251 to say one of the following:
 
1) "An AttributeDescription with one or more options is treated as a direct subtype of the attribute type without any options" (inserted direct)
 
or
 
2) "An AttributeDescription with one option is treated as a direct subtype of the attribute type without any options. An AttributeDescription with more than one option is treated as a direct subtype of all the possible AttributeDescriptions that could be made up of all lesser combinations the options"
 
That description is pretty ugly and could be fixed. It says that cn;a;b;c;d is in a direct subtype of:
cn;a
cn;a;b
cn;a;c
cn;a;d
cn;a;b;c
cn;a;b;d
cn;a;c;d
cn;b
cn;b;c
cn;b;d
cn;b;c;d
cn;c
cn;c;d
cn;d
 
This also tells me that attribute subtype inheritance is at most two levels, but infinitely wide (leaf can multiply inherit from any number of supertypes)
 
or
 
"An AttributeDescription with one option is treated as a direct subtype of the attribute type without any options. An AttributeDescription with more than one option is treated as a direct subtype of all the possible AttributeDescriptions that could be made up of all combinations the options sans one option"
 
Using the former example, this produces:
cn;a (direct subtype of cn)
cn;b (direct subtype of cn)
cn;c (direct subtype of cn)
cn;d (direct subtype of cn)
cn;a;b (direct subtype of cn;a and cn;b)
cn;a;c (direct subtype of cn;a and cn;c)
cn;a;d (direct subtype of cn;a and cn;d)
cn;b;c (direct subtype of cn;b and cn;c)
cn;b;d (direct subtype of cn;b and cn;d)
cn;c;d (direct subtype of cn;c and cn;d)
cn;a;b;c (direct subtype of cn;a;b and cn;a;c and cn;b;c)
cn;a;b;d (direct subtype of cn;a;b and cn;a;d and cn;b;d)
cn;a;c;d (direct subtype of cn;a;c and cn;a;d and cn;c;d)
cn;b;c;d (direct subtype of cn;b;c and cn;b;d and cn;c;d)
cn;a;b;c;d (direct subtype of cn;a;b;c and cn;a;b;d and cn;a;c;d)

 
In the context of language tags, the implications might be benign, but when combining disparate options some combinations might cause problems.
 
I personally prefer 1). Though it may be less flexible, It's simpler to understand and fits well with the current subtyping model.
 
Jim
 

>>> "David Chadwick" <d.w.chadwick@salford.ac.uk> 9/23/00 5:11:55 AM >>>

> Yes, I'm reading "direct" into the 2251 statement. David has argued
> that: cn;lang-en-US;lang-ja is a direct subtype of cn;lang-en-US,
> which in turn is a direct subtype of cn. Does this also mean that it's
> also a subtype of cn;lang-ja,

Yes, I would say so. The new dual language subtype is a subtype
of both single language subtypes. The order does not matter. We
have

               supertype
             /                  \
subtype 1                    subtype 2
              \                 /
              subtype1-2

David

>or is it strictly a right to left thing?
> If r to l, then the attribute type option ordering restriction will
> get in people's way.
>
> Jim
>


***************************************************

David Chadwick
IS Institute, University of Salford, Salford M5 4WT
Tel +44 161 295 5351  Fax +44 161 745 8169
Mobile +44 790 167 0359
Email D.W.Chadwick@salford.ac.uk
Home Page  http://www.salford.ac.uk/its024/chadwick.htm
Understanding X.500  http://www.salford.ac.uk/its024/X500.htm
X.500/LDAP Seminars http://www.salford.ac.uk/its024/seminars.htm
Entrust key validation string MLJ9-DU5T-HV8J

***************************************************