RE: FW: I-D ACTION:draft-reyes-policy-core-ext-schema-04 .txt

[email protected] Thu, 25 Mar 2004 20:59:28 -0600
Newsgroups gmane.ietf.policy
Message-ID <[email protected]>
This message is in MIME format. Since your mail reader does not understand
this format, some or all of this message may not be legible.

------_=_NextPart_001_01C412DE.5A872524
Content-Type: text/plain;
	charset="iso-8859-1"

John,

I have reviewed your comments in detail and made several changes to the
PCELS text (to be submitted in a few days) to address these issues. While
for the most part I understand your concerns, there are a few items that I
would like to discuss in more detail. See my comments below marked
<mircea></mircea>.

Thank You,
Mircea.

-----Original Message-----
From: John Strassner [mailto:[email protected]]
Sent: Friday, February 13, 2004 9:32 PM
To: '[email protected]'; '[email protected]'
Subject: RE: [Policy] FW: I-D ACTION:draft-reyes-policy-core-ext-schema-04
.txt


First, I support Kurt's comments on LDAP, and will reply to those in a
separate email. 
<mircea>Kurt's recommendations will be addressed in the next revision.
</mircea>

Second, I list below a set of additional comments on this draft.

Third, the lack of an overall diagram makes it very difficult to evaluate
the correctness of this model. This draft is not complete enough to
construct such a model.
<mircea>Can you be more specific. The document includes several diagrams and
tables. What is it missing?
</mircea> 

Fourth, a cursory scan revealed that there is no pcelsPolicyGroup class.
This is strange, since PolicyGroup is listed as a subclass of PolicySet in
RFC 3460. Why is this?
<mircea>pcelsGroup will be added in the new revision.
</mircea> 

Fifth, why is there a pcelsRule and a pcimRule class?
<mircea>I do not understand the issue.
</mircea> 

Sixth, why is there no pcelsRuleValidityAssociation subclass? At this point,
<mircea>I do not understand the issue. PCELS reuses
pcimRuleValidityAssociation that is defined in PCLS
</mircea> 

I started to go through the document in detail with my developers to try and
implement it. We couldn't. We give you inconsistencies that we noticed
(grammatical and otherwise) through page 31).

Finally, I was surprised to see a lack of an Acknowledgments section,
especially given the amount of feedback that several people on this list
gave the authors. That's in poor form.
<mircea>Acknowledgments will be added in the new revision.
</mircea> 

Comments are as follows:

  - s/RFC zzzz/RFC 3703
<mircea>Fixed.
</mircea>
 
  - page 3. You write: "...the combined class hierarchy for the LDAP 
    object classes defined in [PCLS] and in this document". You should
    include concepts from 3460 that you mapped into new classes, and
    add that you defined new classes not in 3460 or 3703.
<mircea>Fixed.
</mircea>

  - page 4-7, class diagram - this diagram has no caption. Please add
    one. In addition, I find the diagram inpenetrable, in that the
    reader has no idea where these classes came from. I think you need
    a simpler introduction saying 3060 provided this, 3460 did this, and
    thus we came up with this. Take this key and show, for any class 
    that isn't new in this document, where it came from.
<mircea>Fixed.
</mircea>

  - page 4 - why is your class named pcelsFilerEntry, when 3460 names
    its class FilterEntryBase?
  - page 4 - why is your class named pcelsIPHeaders, when 3460 names
    its class IPHeadersFilter? The Filter part is important! 
  - page 4 - why is your class named pcels8021Headers, when 3460 names
    its class 8021Filter? The Filter part is important!
  - page 4 - why is your class named pcelsCompoundFilterAuxClass, when 
    a more consistent name would be pcelsCompoundFilterConditionAuxClass?
    The Condition part is important!
<mircea>All renamed.
</mircea>

   - general reflections on the class diagram: part of the problem is that
    you are building a schema from three different sources: (1) RFC 3703,
    (2) RFC 3460, and (3) your own additions. I see no discussion on how
    these relate to each other, which would have been helpful.
<mircea>The new revision will indicate all these sources explicitly.
</mircea>

   - page 7 - you didn't state whether this is for all associations. This
    is exacerbated by you saying: "...might need to implement the 
    association..." - which implies a single association. In addition,
    this is a terse description - the naive reader won't understand why
    aux classes are being used - you need a reference or a couple of
    sentences explaining this.
<mircea>Added example in support of the generic text. Please note that the
reader is not going to be that naive. Section 2. ("Relationship to other
Policy Framework Documents") will also indicate that "These three documents
([PCIM], [PCIM_EXT] and [PCLS]) are a prerequisite for reading and
understanding this document."
</mircea>

  - page 7 - you state: "The LDAP object classes defined in this document
    are a direct mapping from the corresponding classes and, in some 
    cases, the associations defined in [PCIM_EXT] ". Not strictly true, 
    as you are also seeking to update RFC 3703 (e.g., where is 
    pcimSubtreesPtrAuxClass defined in RFC 3460?).
<mircea>The text in section 4.1 will be revised for a better description of
the mapping techniques utilised by PCELS. However, I do not understand 
your reference to pcimSubtreesPtrAuxClass. That class is not defined in
PCELS.
<mircea>

  - pages 8-11: your table has no caption
<mircea>Fixed.
</mircea>

  - pages 8-11: Where are classes like pcimSubtreesPtrAuxClass? They
    aren't listed in this table, and better be, if you are "updating"
    RFC 3703.
<mircea>The two tables list PCIM_EXT classes mapped by PCELS. Why should the
tables include PCLS classes?
</mircea>

  - once again, I see lots of irksome naming issues. The LDAP schema
    shouldn't change the name of a class defined in another RFC. Why
    have you done this?
<mircea>All are going to be renamed to follow the *exact* PCIM_EXT names,
but I fail to see where is the problem with the old names.
</mircea>

  - page 8, 4th row. How can you give two different mappings to a single
    object class? And how can a RULE (i.e., pcelsRule) map to a GROUP?
<mircea>pcelsGroup will be added in the new revision.
</mircea> 

  - page 10, 1st row. How can a single info model association map to
    two different associations? And do you mean "and" in this row? This
    would mean that I would have to instantiate both pcelsPolicySet
    and pcelsPolicySetAssociation, which is clearly wrong. This comment
    also applies for the other rows on this page where you have "and".
<mircea> ...means that the PolicySetComponent aggregation is realised by a
pcelsPolicySetComponentList value in the aggregating pcelsPolicySet. This
attribute value is a DN reference to a pcelsPolicySetAsociation entry. The
pcelsPolicySetAsociation entry includes a pcelsPolicySetDN attribute value
that is a reference to the aggregated pcelsPolicySet. The details are in
section 5. The table only gives an overview of the mapping.
</mircea>

  - page 10 - it is of no help to say "see PolicySetInSystem" in this
    table for the 3rd and 4th rows - that only confuses the reader.
    Please spell out what you mean here.
<mircea>Fixed. Details are in section 5.
</mircea>

  - Page 11 - the reader will wonder why ReusablePolicy and 
    PolicyRoleCollectionInSystem are only implementable via DIT 
    containment, when every other association has an association defined
    (independent of whether DIT containment could be used).
<mircea>I fail to see the issue.
</mircea>

  - Section 4.2, line 3, you write: "The concept of an ordered set of
    policies...". LDAP doesn't have ordered sets. How are you going to
    implement this?
<mircea>replaced "ordered" with "coherent" (from PCIM_EXT)
</mircea>

  - Page 13, Section 4.3, second paragraph - s/deprecates/deprecate
<mircea>Fixed.
</mircea>

  - Page 13, Note - actually, PCLS does NOT have anything to do with
    PCIMe, so this note needs to be reworded
<mircea>Fixed.
</mircea>

  - Page 14, Section 4.5
    - s/an other/another (and other places)
    - s/"rule /group"/"rule/group" (5 places) (and other places)
<mircea>Fixed.
</mircea>

  - Page 16, section 4.6, 
    - s/CompoundPolicyActionclasses/CompoundPolicyAction classes 
    - conditions /actions/"conditions/actions" (and other places)
<mircea>Fixed.
</mircea>

  - Page 22. How are you going to enforce an "ordered set of 
    rules /groups"? That is, how can you guarantee that the DSA stores
    your rules/groups [sic] in the order that you want, and where is
    that order specified? What if a DSA doesn't have ordering controls?
  - Same section as above - you say that the "association entries enable 
    relative ordering of the aggregated pcelsPolicySet instances within 
    the scope of the aggregating pcelsPolicySet" - how is this 
    accomplished with a plain, vanilla LDAP server with no controls?
<mircea>Text revised and note added to indicate that applications must not
expect the LDAP data store to implement sorting and ordering.
</mircea>

  - Page 23 - the DESC for pcelsPolicySetList should say that it
    contains an UNORDERED list of DN references.
<mircea>Fixed.
</mircea>

  - Page 23, note above Section 5.2, is slightly incorrect. Only those
    implementations that WANT TO BE COMPATIBLE WITH PCELS should use
    this aggregation mechanism instead of those defined by PCLS. Not
    every implementation mechanism is going to want to change.
<mircea>Revised. The section defining pcelsRule for example will include the
following compatibility note:

   "Note 2: PCELS implementations SHOULD support pcelsRule and its two
   subclasses and MAY also support pcimRule and its two subclasses
   [PCLS]. Applications that choose to support pcelsRule and its two
   subclasses MUST use the aggregation mechanism provided by
   pcelsPolicySetAssociation for aggregating policy groups or policy
   rules in policy rules represented as instances of pcelsRule.
   Applications that intend to be compatible with [PCIM_EXT] MUST
   support pcelsRule and its two subclasses."

</mircea>

  - Page 23, Section 5.2, says "The pcelsPolicySetAssociation class is 
    used to aggregate instances of pcelsPolicySet into other entries."
    This is incorrect, as pcelsPolicySet is abstract and thus cannot be
    instantiated.
<mircea> I fail to see a problem with "instance of <abstract_class>". It is
obvious that it means "instance of non-abstract subclass of
<abstract_class>". The "non-abstract subclass of" is superfluous and has
been omitted in order to improve the text readabilitiy. PCLS, for instance,
uses such expressions on several occasions. E.g.: (PCLS page 50 first
paragraph) "instances of pcimRules". Note that "pcimRules" is not a class
name.
</mircea>

  - Same section, you write: "...realizes a (subclass of)
    PolicySetComponent aggregation [sic]. When subordinated to (subclass 
    of) dlm1System...realizes a PolicySetInSystem association [sic]".
    How can the same element realize an aggregation in one usage and an
    association in another usage? This is semantically inconsistent.
<mircea>I fail to see the issue. The semantics of pcelsPolicySetAssociation
are context sensitive.
</mircea>

  - Next paragraph says: "A non-reusable instance of (subclass of)
    pcelsPolicySet is attached as auxiliary class directly to the 
    pcelsPolicySetAssociation entry." Subclasses of pcelsPolicySet that
    are not abstract are pcelsRuleAuxClass and pcelsRuleInstance. The
    above sentence only makes sense for pcelsRuleAuxClass.
<mircea>The new specification will include pcelsGroup as well. As result,
the current text will make more sense.
</mircea>

  - Next paragraph doesn't make sense. First, you clearly mean a non-
    abstract subclass of pcelsPolicySet. Second, you are recommending
    that an ERROR be ignored? Why don't you stop operation?
<mircea>Revised text:

   "When reading a pcelsPolicySetAssociation instance that has a
   pcelsPolicySet attached, the attribute pcelsPolicySetDN MUST
   be ignored. Applications SHOULD remove the pcelsPolicySetDN value
   from a pcelsPolicySetAssociation upon attachment of a pcelsPolicySet
   to the entry."

This gives applications some flexibility.
</mircea>

  - Page 24, DESC of pcelsPriority is insufficient, as "0" has special
    semantics that you haven't mentioned. This should, of course, also
    be present in accompanying prose, as Kurt points out.
<mircea>The PCIM_EXT property and the attribute value restrictions going to
be described in more detail (in prose). However I fail to find the meaning
of "0" in PCIM_EXT. Can you help me locate the text?
</mircea>

  - Page 24, DESC of pcelsPolicySetDN should state that this is an
    UNORDERED list of DNs.
<mircea>Fixed.
</mircea>

  - Page 24, Section 5.3, s/The Three Classes pcelsRule/The pcelsRule
    Class and Its Subclasses
<mircea>Fixed.
</mircea>

<note: at this point I'm not going to correct any remaining grammar
 errors, such as the next line ("The pcelsRule is...") because there
 are too many of them.>
  - Page 24, Section 5.3, you say: "The pcelsRule is the base class
    representing policy rules." Does this mean that an implementation
    can NOT use the subclasses of pcimRule anymore?
<mircea>I fail to see the issue.
</mircea>

  - Page 24, next paragraph, you say: "This class shares the 
    Condition/Action aggregation methods with the
    pcelsCompoundConditionAuxClass and pcelsCompoundActionAuxClass
    object classes.". Why does it also not share the
    pcelsSimpleConditionAuxClass and pcelsSimpleActionAuxClass
    object classes as well?
<mircea>Revised text. It was actually trying to say that:

"   Like pcelsRule, instances of pcelsCompoundConditionAuxClass use
   pcelsConditionList values and subordinated pcelsConditionAssociation
   entries to aggregate policy conditions."
and
"   Like pcelsRule, instances of pcelsCompoundActionAuxClass use
   pcelsActionList values and subordinated pcelsActionAssociation
   entries to aggregate policy actions."
</mircea>

  - Page 25, top paragraph, again says that the implementer should ignore
    an error condition. This isn't a good idea.
  - Page 25, next paragraph has the same problem.
<mircea>Already discussed
</mircea>

  - Page 26, the pcelsConditionListType attribute has a constraint. No
    text is provided that instructs the implementer what to do, aside
    from Note 5 on page 21, which says: "Text has been added to instruct
    servers and applications what to do if a value outside of this range
    is encountered" - which is exactly the problem - no text is here.
Note that this is a systemic problem with any constrained attribute
defined in this draft. Thus, I will only mention this once.
<mircea>All Fixed.
</mircea>

  - Page 27, WHY isn't a PolicyGroup class implemented? You give no
    reason for not doing this. Note also that Note 2 talks about ORDERED
    policy rules - I don't see how you can construct those.
<mircea>Already discussed
</mircea>

  - Page 27, section 5.4, again you say "pcelsRule" instead of "non-
    abstract subclasses of pcelsRule".
<mircea>Already discussed
</mircea>

  - Page 28, top paragraph, another error that you are recommending 
    should be ignored
<mircea>Already discussed
</mircea>

  - Page 28, DESC for pcelsConditionAssociation is wrong; you say that
    it can be used for a pcelsRule instead of a non-abstract subclass of
    pcelsRule
<mircea>Already discussed
</mircea>

  - Page 28, section 5.5, again you say "pcelsRule" instead of "non-
    abstract subclasses of pcelsRule".
<mircea>Already discussed
</mircea>

   - Page 28, last paragraph, another error that you are recommending
    should be ignored.
<mircea>Already discussed
</mircea>

   - Page 29, DESC for pcelsActionAssociation is wrong; you say that 
    it can be used for a pcelsRule instead of a non-abstract subclass of
    pcelsRule
<mircea>Already discussed
</mircea>

   - Page 29, last paragraph above Section 5.6, another error that you are
    recommending should be ignored.
<mircea>Already discussed
</mircea>

   - Page 29, Section 5.6, last two paragraphs are errors that you are
    recommending should be ignored.
<At this point, I'm going to stop listing these, as it is a systemic problem
that should be fixed in the next release>
<mircea>Already discussed
</mircea>

   - Page 29, last paragraph above Section 5.6, another error that you are
    recommending should be ignored.
<mircea>Already discussed
</mircea>

   - Page 30, the DESC for pcelsVariableDN is wrong. You say that it is a
    "DN reference to a pcelsVariable entry", when it should be a DN
    reference to a subclass of either pcelsExplicitVariableAuxClass or
    pcelsImplicitVariableAuxClass or pcelsVendorVariableAuxClass
<mircea>Already discussed
</mircea>

   - Page 30, the DESC for pcelsValueDN is wrong - it should be a subclass
    of pcelsValueDN.
<mircea>Already discussed
</mircea>

 

regards,
John 
John C. Strassner 
Chief Strategy Officer 
Intelliden Inc. 
90 South Cascade Avenue 
Colorado Springs, CO  80906  USA 
phone:  +1.719.785.0648 
  fax:     +1.719.785.0644 
email:    [email protected]

------_=_NextPart_001_01C412DE.5A872524
Content-Type: text/html;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV=3D"Content-Type" CONTENT=3D"text/html; =
charset=3Diso-8859-1">
<META NAME=3D"Generator" CONTENT=3D"MS Exchange Server version =
5.5.2657.73">
<TITLE>RE: [Policy] FW: I-D =
ACTION:draft-reyes-policy-core-ext-schema-04 .txt</TITLE>
</HEAD>
<BODY>

<P><FONT SIZE=3D2>John,</FONT>
</P>

<P><FONT SIZE=3D2>I have reviewed your comments in detail and made =
several changes to the PCELS text (to be submitted in a few days) to =
address these issues. While for the most part I understand your =
concerns, there are a few items that I would like to discuss in more =
detail. See my comments below marked =
&lt;mircea&gt;&lt;/mircea&gt;.</FONT></P>

<P><FONT SIZE=3D2>Thank You,</FONT>
<BR><FONT SIZE=3D2>Mircea.</FONT>
</P>

<P><FONT SIZE=3D2>-----Original Message-----</FONT>
<BR><FONT SIZE=3D2>From: John Strassner [<A =
HREF=3D"mailto:[email protected]">mailto:John.Strassner@inte=
lliden.com</A>]</FONT>
<BR><FONT SIZE=3D2>Sent: Friday, February 13, 2004 9:32 PM</FONT>
<BR><FONT SIZE=3D2>To: '[email protected]'; '[email protected]'</FONT>
<BR><FONT SIZE=3D2>Subject: RE: [Policy] FW: I-D =
ACTION:draft-reyes-policy-core-ext-schema-04 .txt</FONT>
</P>
<BR>

<P><FONT SIZE=3D2>First, I support Kurt's comments on LDAP, and will =
reply to those in a separate email. </FONT>
<BR><FONT SIZE=3D2>&lt;mircea&gt;Kurt's recommendations will be =
addressed in the next revision.</FONT>
<BR><FONT SIZE=3D2>&lt;/mircea&gt;</FONT>
</P>

<P><FONT SIZE=3D2>Second, I list below a set of additional comments on =
this draft.</FONT>
</P>

<P><FONT SIZE=3D2>Third, the lack of an overall diagram makes it very =
difficult to evaluate the correctness of this model. This draft is not =
complete enough to construct such a model.</FONT></P>

<P><FONT SIZE=3D2>&lt;mircea&gt;Can you be more specific. The document =
includes several diagrams and tables. What is it missing?</FONT>
<BR><FONT SIZE=3D2>&lt;/mircea&gt; </FONT>
</P>

<P><FONT SIZE=3D2>Fourth, a cursory scan revealed that there is no =
pcelsPolicyGroup class. This is strange, since PolicyGroup is listed as =
a subclass of PolicySet in RFC 3460. Why is this?</FONT></P>

<P><FONT SIZE=3D2>&lt;mircea&gt;pcelsGroup will be added in the new =
revision.</FONT>
<BR><FONT SIZE=3D2>&lt;/mircea&gt; </FONT>
</P>

<P><FONT SIZE=3D2>Fifth, why is there a pcelsRule and a pcimRule =
class?</FONT>
<BR><FONT SIZE=3D2>&lt;mircea&gt;I do not understand the issue.</FONT>
<BR><FONT SIZE=3D2>&lt;/mircea&gt; </FONT>
</P>

<P><FONT SIZE=3D2>Sixth, why is there no pcelsRuleValidityAssociation =
subclass? At this point, &lt;mircea&gt;I do not understand the issue. =
PCELS reuses pcimRuleValidityAssociation that is defined in =
PCLS</FONT></P>

<P><FONT SIZE=3D2>&lt;/mircea&gt; </FONT>
</P>

<P><FONT SIZE=3D2>I started to go through the document in detail with =
my developers to try and implement it. We couldn't. We give you =
inconsistencies that we noticed (grammatical and otherwise) through =
page 31).</FONT></P>

<P><FONT SIZE=3D2>Finally, I was surprised to see a lack of an =
Acknowledgments section, especially given the amount of feedback that =
several people on this list gave the authors. That's in poor =
form.</FONT></P>

<P><FONT SIZE=3D2>&lt;mircea&gt;Acknowledgments will be added in the =
new revision.</FONT>
<BR><FONT SIZE=3D2>&lt;/mircea&gt; </FONT>
</P>

<P><FONT SIZE=3D2>Comments are as follows:</FONT>
</P>

<P><FONT SIZE=3D2>&nbsp; - s/RFC zzzz/RFC 3703</FONT>
<BR><FONT SIZE=3D2>&lt;mircea&gt;Fixed.</FONT>
<BR><FONT SIZE=3D2>&lt;/mircea&gt;</FONT>
<BR><FONT SIZE=3D2>&nbsp;</FONT>
<BR><FONT SIZE=3D2>&nbsp; - page 3. You write: &quot;...the combined =
class hierarchy for the LDAP </FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; object classes defined in [PCLS] =
and in this document&quot;. You should</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; include concepts from 3460 that =
you mapped into new classes, and</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; add that you defined new classes =
not in 3460 or 3703.</FONT>
<BR><FONT SIZE=3D2>&lt;mircea&gt;Fixed.</FONT>
<BR><FONT SIZE=3D2>&lt;/mircea&gt;</FONT>
</P>

<P><FONT SIZE=3D2>&nbsp; - page 4-7, class diagram - this diagram has =
no caption. Please add</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; one. In addition, I find the =
diagram inpenetrable, in that the</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; reader has no idea where these =
classes came from. I think you need</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; a simpler introduction saying =
3060 provided this, 3460 did this, and</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; thus we came up with this. Take =
this key and show, for any class </FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; that isn't new in this document, =
where it came from.</FONT>
<BR><FONT SIZE=3D2>&lt;mircea&gt;Fixed.</FONT>
<BR><FONT SIZE=3D2>&lt;/mircea&gt;</FONT>
</P>

<P><FONT SIZE=3D2>&nbsp; - page 4 - why is your class named =
pcelsFilerEntry, when 3460 names</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; its class FilterEntryBase?</FONT>
<BR><FONT SIZE=3D2>&nbsp; - page 4 - why is your class named =
pcelsIPHeaders, when 3460 names</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; its class IPHeadersFilter? The =
Filter part is important! </FONT>
<BR><FONT SIZE=3D2>&nbsp; - page 4 - why is your class named =
pcels8021Headers, when 3460 names</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; its class 8021Filter? The Filter =
part is important!</FONT>
<BR><FONT SIZE=3D2>&nbsp; - page 4 - why is your class named =
pcelsCompoundFilterAuxClass, when </FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; a more consistent name would be =
pcelsCompoundFilterConditionAuxClass?</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; The Condition part is =
important!</FONT>
<BR><FONT SIZE=3D2>&lt;mircea&gt;All renamed.</FONT>
<BR><FONT SIZE=3D2>&lt;/mircea&gt;</FONT>
</P>

<P><FONT SIZE=3D2>&nbsp;&nbsp; - general reflections on the class =
diagram: part of the problem is that</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; you are building a schema from =
three different sources: (1) RFC 3703,</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; (2) RFC 3460, and (3) your own =
additions. I see no discussion on how</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; these relate to each other, which =
would have been helpful.</FONT>
<BR><FONT SIZE=3D2>&lt;mircea&gt;The new revision will indicate all =
these sources explicitly.</FONT>
<BR><FONT SIZE=3D2>&lt;/mircea&gt;</FONT>
</P>

<P><FONT SIZE=3D2>&nbsp;&nbsp; - page 7 - you didn't state whether this =
is for all associations. This</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; is exacerbated by you saying: =
&quot;...might need to implement the </FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; association...&quot; - which =
implies a single association. In addition,</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; this is a terse description - the =
naive reader won't understand why</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; aux classes are being used - you =
need a reference or a couple of</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; sentences explaining this.</FONT>
<BR><FONT SIZE=3D2>&lt;mircea&gt;Added example in support of the =
generic text. Please note that the reader is not going to be that =
naive. Section 2. (&quot;Relationship to other Policy Framework =
Documents&quot;) will also indicate that &quot;These three documents =
([PCIM], [PCIM_EXT] and [PCLS]) are a prerequisite for reading and =
understanding this document.&quot;</FONT></P>

<P><FONT SIZE=3D2>&lt;/mircea&gt;</FONT>
</P>

<P><FONT SIZE=3D2>&nbsp; - page 7 - you state: &quot;The LDAP object =
classes defined in this document</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; are a direct mapping from the =
corresponding classes and, in some </FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; cases, the associations defined =
in [PCIM_EXT] &quot;. Not strictly true, </FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; as you are also seeking to update =
RFC 3703 (e.g., where is </FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; pcimSubtreesPtrAuxClass defined =
in RFC 3460?).</FONT>
<BR><FONT SIZE=3D2>&lt;mircea&gt;The text in section 4.1 will be =
revised for a better description of the mapping techniques utilised by =
PCELS. However, I do not understand </FONT></P>

<P><FONT SIZE=3D2>your reference to pcimSubtreesPtrAuxClass. That class =
is not defined in PCELS.</FONT>
<BR><FONT SIZE=3D2>&lt;mircea&gt;</FONT>
</P>

<P><FONT SIZE=3D2>&nbsp; - pages 8-11: your table has no caption</FONT>
<BR><FONT SIZE=3D2>&lt;mircea&gt;Fixed.</FONT>
<BR><FONT SIZE=3D2>&lt;/mircea&gt;</FONT>
</P>

<P><FONT SIZE=3D2>&nbsp; - pages 8-11: Where are classes like =
pcimSubtreesPtrAuxClass? They</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; aren't listed in this table, and =
better be, if you are &quot;updating&quot;</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; RFC 3703.</FONT>
<BR><FONT SIZE=3D2>&lt;mircea&gt;The two tables list PCIM_EXT classes =
mapped by PCELS. Why should the tables include PCLS classes?</FONT>
<BR><FONT SIZE=3D2>&lt;/mircea&gt;</FONT>
</P>

<P><FONT SIZE=3D2>&nbsp; - once again, I see lots of irksome naming =
issues. The LDAP schema</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; shouldn't change the name of a =
class defined in another RFC. Why</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; have you done this?</FONT>
<BR><FONT SIZE=3D2>&lt;mircea&gt;All are going to be renamed to follow =
the *exact* PCIM_EXT names, but I fail to see where is the problem with =
the old names.</FONT></P>

<P><FONT SIZE=3D2>&lt;/mircea&gt;</FONT>
</P>

<P><FONT SIZE=3D2>&nbsp; - page 8, 4th row. How can you give two =
different mappings to a single</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; object class? And how can a RULE =
(i.e., pcelsRule) map to a GROUP?</FONT>
<BR><FONT SIZE=3D2>&lt;mircea&gt;pcelsGroup will be added in the new =
revision.</FONT>
<BR><FONT SIZE=3D2>&lt;/mircea&gt; </FONT>
</P>

<P><FONT SIZE=3D2>&nbsp; - page 10, 1st row. How can a single info =
model association map to</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; two different associations? And =
do you mean &quot;and&quot; in this row? This</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; would mean that I would have to =
instantiate both pcelsPolicySet</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; and pcelsPolicySetAssociation, =
which is clearly wrong. This comment</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; also applies for the other rows =
on this page where you have &quot;and&quot;.</FONT>
<BR><FONT SIZE=3D2>&lt;mircea&gt; ...means that the PolicySetComponent =
aggregation is realised by a pcelsPolicySetComponentList value in the =
aggregating pcelsPolicySet. This attribute value is a DN reference to a =
pcelsPolicySetAsociation entry. The pcelsPolicySetAsociation entry =
includes a pcelsPolicySetDN attribute value that is a reference to the =
aggregated pcelsPolicySet. The details are in section 5. The table only =
gives an overview of the mapping.</FONT></P>

<P><FONT SIZE=3D2>&lt;/mircea&gt;</FONT>
</P>

<P><FONT SIZE=3D2>&nbsp; - page 10 - it is of no help to say &quot;see =
PolicySetInSystem&quot; in this</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; table for the 3rd and 4th rows - =
that only confuses the reader.</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; Please spell out what you mean =
here.</FONT>
<BR><FONT SIZE=3D2>&lt;mircea&gt;Fixed. Details are in section =
5.</FONT>
<BR><FONT SIZE=3D2>&lt;/mircea&gt;</FONT>
</P>

<P><FONT SIZE=3D2>&nbsp; - Page 11 - the reader will wonder why =
ReusablePolicy and </FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; PolicyRoleCollectionInSystem are =
only implementable via DIT </FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; containment, when every other =
association has an association defined</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; (independent of whether DIT =
containment could be used).</FONT>
<BR><FONT SIZE=3D2>&lt;mircea&gt;I fail to see the issue.</FONT>
<BR><FONT SIZE=3D2>&lt;/mircea&gt;</FONT>
</P>

<P><FONT SIZE=3D2>&nbsp; - Section 4.2, line 3, you write: &quot;The =
concept of an ordered set of</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; policies...&quot;. LDAP doesn't =
have ordered sets. How are you going to</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; implement this?</FONT>
<BR><FONT SIZE=3D2>&lt;mircea&gt;replaced &quot;ordered&quot; with =
&quot;coherent&quot; (from PCIM_EXT)</FONT>
<BR><FONT SIZE=3D2>&lt;/mircea&gt;</FONT>
</P>

<P><FONT SIZE=3D2>&nbsp; - Page 13, Section 4.3, second paragraph - =
s/deprecates/deprecate</FONT>
<BR><FONT SIZE=3D2>&lt;mircea&gt;Fixed.</FONT>
<BR><FONT SIZE=3D2>&lt;/mircea&gt;</FONT>
</P>

<P><FONT SIZE=3D2>&nbsp; - Page 13, Note - actually, PCLS does NOT have =
anything to do with</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; PCIMe, so this note needs to be =
reworded</FONT>
<BR><FONT SIZE=3D2>&lt;mircea&gt;Fixed.</FONT>
<BR><FONT SIZE=3D2>&lt;/mircea&gt;</FONT>
</P>

<P><FONT SIZE=3D2>&nbsp; - Page 14, Section 4.5</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; - s/an other/another (and other =
places)</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; - s/&quot;rule =
/group&quot;/&quot;rule/group&quot; (5 places) (and other =
places)</FONT>
<BR><FONT SIZE=3D2>&lt;mircea&gt;Fixed.</FONT>
<BR><FONT SIZE=3D2>&lt;/mircea&gt;</FONT>
</P>

<P><FONT SIZE=3D2>&nbsp; - Page 16, section 4.6, </FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; - =
s/CompoundPolicyActionclasses/CompoundPolicyAction classes </FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; - conditions =
/actions/&quot;conditions/actions&quot; (and other places)</FONT>
<BR><FONT SIZE=3D2>&lt;mircea&gt;Fixed.</FONT>
<BR><FONT SIZE=3D2>&lt;/mircea&gt;</FONT>
</P>

<P><FONT SIZE=3D2>&nbsp; - Page 22. How are you going to enforce an =
&quot;ordered set of </FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; rules /groups&quot;? That is, how =
can you guarantee that the DSA stores</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; your rules/groups [sic] in the =
order that you want, and where is</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; that order specified? What if a =
DSA doesn't have ordering controls?</FONT>
<BR><FONT SIZE=3D2>&nbsp; - Same section as above - you say that the =
&quot;association entries enable </FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; relative ordering of the =
aggregated pcelsPolicySet instances within </FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; the scope of the aggregating =
pcelsPolicySet&quot; - how is this </FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; accomplished with a plain, =
vanilla LDAP server with no controls?</FONT>
<BR><FONT SIZE=3D2>&lt;mircea&gt;Text revised and note added to =
indicate that applications must not expect the LDAP data store to =
implement sorting and ordering.</FONT></P>

<P><FONT SIZE=3D2>&lt;/mircea&gt;</FONT>
</P>

<P><FONT SIZE=3D2>&nbsp; - Page 23 - the DESC for pcelsPolicySetList =
should say that it</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; contains an UNORDERED list of DN =
references.</FONT>
<BR><FONT SIZE=3D2>&lt;mircea&gt;Fixed.</FONT>
<BR><FONT SIZE=3D2>&lt;/mircea&gt;</FONT>
</P>

<P><FONT SIZE=3D2>&nbsp; - Page 23, note above Section 5.2, is slightly =
incorrect. Only those</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; implementations that WANT TO BE =
COMPATIBLE WITH PCELS should use</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; this aggregation mechanism =
instead of those defined by PCLS. Not</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; every implementation mechanism is =
going to want to change.</FONT>
<BR><FONT SIZE=3D2>&lt;mircea&gt;Revised. The section defining =
pcelsRule for example will include the following compatibility =
note:</FONT>
</P>

<P><FONT SIZE=3D2>&nbsp;&nbsp; &quot;Note 2: PCELS implementations =
SHOULD support pcelsRule and its two</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp; subclasses and MAY also support =
pcimRule and its two subclasses</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp; [PCLS]. Applications that choose to =
support pcelsRule and its two</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp; subclasses MUST use the aggregation =
mechanism provided by</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp; pcelsPolicySetAssociation for =
aggregating policy groups or policy</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp; rules in policy rules represented as =
instances of pcelsRule.</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp; Applications that intend to be =
compatible with [PCIM_EXT] MUST</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp; support pcelsRule and its two =
subclasses.&quot;</FONT>
</P>

<P><FONT SIZE=3D2>&lt;/mircea&gt;</FONT>
</P>

<P><FONT SIZE=3D2>&nbsp; - Page 23, Section 5.2, says &quot;The =
pcelsPolicySetAssociation class is </FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; used to aggregate instances of =
pcelsPolicySet into other entries.&quot;</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; This is incorrect, as =
pcelsPolicySet is abstract and thus cannot be</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; instantiated.</FONT>
<BR><FONT SIZE=3D2>&lt;mircea&gt; I fail to see a problem with =
&quot;instance of &lt;abstract_class&gt;&quot;. It is obvious that it =
means &quot;instance of non-abstract subclass of =
&lt;abstract_class&gt;&quot;. The &quot;non-abstract subclass of&quot; =
is superfluous and has been omitted in order to improve the text =
readabilitiy. PCLS, for instance, uses such expressions on several =
occasions. E.g.: (PCLS page 50 first paragraph) &quot;instances of =
pcimRules&quot;. Note that &quot;pcimRules&quot; is not a class =
name.</FONT></P>

<P><FONT SIZE=3D2>&lt;/mircea&gt;</FONT>
</P>

<P><FONT SIZE=3D2>&nbsp; - Same section, you write: &quot;...realizes a =
(subclass of)</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; PolicySetComponent aggregation =
[sic]. When subordinated to (subclass </FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; of) dlm1System...realizes a =
PolicySetInSystem association [sic]&quot;.</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; How can the same element realize =
an aggregation in one usage and an</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; association in another usage? =
This is semantically inconsistent.</FONT>
<BR><FONT SIZE=3D2>&lt;mircea&gt;I fail to see the issue. The semantics =
of pcelsPolicySetAssociation are context sensitive.</FONT>
<BR><FONT SIZE=3D2>&lt;/mircea&gt;</FONT>
</P>

<P><FONT SIZE=3D2>&nbsp; - Next paragraph says: &quot;A non-reusable =
instance of (subclass of)</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; pcelsPolicySet is attached as =
auxiliary class directly to the </FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; pcelsPolicySetAssociation =
entry.&quot; Subclasses of pcelsPolicySet that</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; are not abstract are =
pcelsRuleAuxClass and pcelsRuleInstance. The</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; above sentence only makes sense =
for pcelsRuleAuxClass.</FONT>
<BR><FONT SIZE=3D2>&lt;mircea&gt;The new specification will include =
pcelsGroup as well. As result, the current text will make more =
sense.</FONT>
<BR><FONT SIZE=3D2>&lt;/mircea&gt;</FONT>
</P>

<P><FONT SIZE=3D2>&nbsp; - Next paragraph doesn't make sense. First, =
you clearly mean a non-</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; abstract subclass of =
pcelsPolicySet. Second, you are recommending</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; that an ERROR be ignored? Why =
don't you stop operation?</FONT>
<BR><FONT SIZE=3D2>&lt;mircea&gt;Revised text:</FONT>
</P>

<P><FONT SIZE=3D2>&nbsp;&nbsp; &quot;When reading a =
pcelsPolicySetAssociation instance that has a</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp; pcelsPolicySet attached, the attribute =
pcelsPolicySetDN MUST</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp; be ignored. Applications SHOULD remove =
the pcelsPolicySetDN value</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp; from a pcelsPolicySetAssociation upon =
attachment of a pcelsPolicySet</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp; to the entry.&quot;</FONT>
</P>

<P><FONT SIZE=3D2>This gives applications some flexibility.</FONT>
<BR><FONT SIZE=3D2>&lt;/mircea&gt;</FONT>
</P>

<P><FONT SIZE=3D2>&nbsp; - Page 24, DESC of pcelsPriority is =
insufficient, as &quot;0&quot; has special</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; semantics that you haven't =
mentioned. This should, of course, also</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; be present in accompanying prose, =
as Kurt points out.</FONT>
<BR><FONT SIZE=3D2>&lt;mircea&gt;The PCIM_EXT property and the =
attribute value restrictions going to be described in more detail (in =
prose). However I fail to find the meaning of &quot;0&quot; in =
PCIM_EXT. Can you help me locate the text?</FONT></P>

<P><FONT SIZE=3D2>&lt;/mircea&gt;</FONT>
</P>

<P><FONT SIZE=3D2>&nbsp; - Page 24, DESC of pcelsPolicySetDN should =
state that this is an</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; UNORDERED list of DNs.</FONT>
<BR><FONT SIZE=3D2>&lt;mircea&gt;Fixed.</FONT>
<BR><FONT SIZE=3D2>&lt;/mircea&gt;</FONT>
</P>

<P><FONT SIZE=3D2>&nbsp; - Page 24, Section 5.3, s/The Three Classes =
pcelsRule/The pcelsRule</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; Class and Its Subclasses</FONT>
<BR><FONT SIZE=3D2>&lt;mircea&gt;Fixed.</FONT>
<BR><FONT SIZE=3D2>&lt;/mircea&gt;</FONT>
</P>

<P><FONT SIZE=3D2>&lt;note: at this point I'm not going to correct any =
remaining grammar</FONT>
<BR><FONT SIZE=3D2>&nbsp;errors, such as the next line (&quot;The =
pcelsRule is...&quot;) because there</FONT>
<BR><FONT SIZE=3D2>&nbsp;are too many of them.&gt;</FONT>
<BR><FONT SIZE=3D2>&nbsp; - Page 24, Section 5.3, you say: &quot;The =
pcelsRule is the base class</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; representing policy rules.&quot; =
Does this mean that an implementation</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; can NOT use the subclasses of =
pcimRule anymore?</FONT>
<BR><FONT SIZE=3D2>&lt;mircea&gt;I fail to see the issue.</FONT>
<BR><FONT SIZE=3D2>&lt;/mircea&gt;</FONT>
</P>

<P><FONT SIZE=3D2>&nbsp; - Page 24, next paragraph, you say: &quot;This =
class shares the </FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; Condition/Action aggregation =
methods with the</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; pcelsCompoundConditionAuxClass =
and pcelsCompoundActionAuxClass</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; object classes.&quot;. Why does =
it also not share the</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; pcelsSimpleConditionAuxClass and =
pcelsSimpleActionAuxClass</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; object classes as well?</FONT>
<BR><FONT SIZE=3D2>&lt;mircea&gt;Revised text. It was actually trying =
to say that:</FONT>
</P>

<P><FONT SIZE=3D2>&quot;&nbsp;&nbsp; Like pcelsRule, instances of =
pcelsCompoundConditionAuxClass use</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp; pcelsConditionList values and =
subordinated pcelsConditionAssociation</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp; entries to aggregate policy =
conditions.&quot;</FONT>
<BR><FONT SIZE=3D2>and</FONT>
<BR><FONT SIZE=3D2>&quot;&nbsp;&nbsp; Like pcelsRule, instances of =
pcelsCompoundActionAuxClass use</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp; pcelsActionList values and subordinated =
pcelsActionAssociation</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp; entries to aggregate policy =
actions.&quot;</FONT>
<BR><FONT SIZE=3D2>&lt;/mircea&gt;</FONT>
</P>

<P><FONT SIZE=3D2>&nbsp; - Page 25, top paragraph, again says that the =
implementer should ignore</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; an error condition. This isn't a =
good idea.</FONT>
<BR><FONT SIZE=3D2>&nbsp; - Page 25, next paragraph has the same =
problem.</FONT>
<BR><FONT SIZE=3D2>&lt;mircea&gt;Already discussed</FONT>
<BR><FONT SIZE=3D2>&lt;/mircea&gt;</FONT>
</P>

<P><FONT SIZE=3D2>&nbsp; - Page 26, the pcelsConditionListType =
attribute has a constraint. No</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; text is provided that instructs =
the implementer what to do, aside</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; from Note 5 on page 21, which =
says: &quot;Text has been added to instruct</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; servers and applications what to =
do if a value outside of this range</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; is encountered&quot; - which is =
exactly the problem - no text is here.</FONT>
<BR><FONT SIZE=3D2>Note that this is a systemic problem with any =
constrained attribute</FONT>
<BR><FONT SIZE=3D2>defined in this draft. Thus, I will only mention =
this once.</FONT>
<BR><FONT SIZE=3D2>&lt;mircea&gt;All Fixed.</FONT>
<BR><FONT SIZE=3D2>&lt;/mircea&gt;</FONT>
</P>

<P><FONT SIZE=3D2>&nbsp; - Page 27, WHY isn't a PolicyGroup class =
implemented? You give no</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; reason for not doing this. Note =
also that Note 2 talks about ORDERED</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; policy rules - I don't see how =
you can construct those.</FONT>
<BR><FONT SIZE=3D2>&lt;mircea&gt;Already discussed</FONT>
<BR><FONT SIZE=3D2>&lt;/mircea&gt;</FONT>
</P>

<P><FONT SIZE=3D2>&nbsp; - Page 27, section 5.4, again you say =
&quot;pcelsRule&quot; instead of &quot;non-</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; abstract subclasses of =
pcelsRule&quot;.</FONT>
<BR><FONT SIZE=3D2>&lt;mircea&gt;Already discussed</FONT>
<BR><FONT SIZE=3D2>&lt;/mircea&gt;</FONT>
</P>

<P><FONT SIZE=3D2>&nbsp; - Page 28, top paragraph, another error that =
you are recommending </FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; should be ignored</FONT>
<BR><FONT SIZE=3D2>&lt;mircea&gt;Already discussed</FONT>
<BR><FONT SIZE=3D2>&lt;/mircea&gt;</FONT>
</P>

<P><FONT SIZE=3D2>&nbsp; - Page 28, DESC for pcelsConditionAssociation =
is wrong; you say that</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; it can be used for a pcelsRule =
instead of a non-abstract subclass of</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; pcelsRule</FONT>
<BR><FONT SIZE=3D2>&lt;mircea&gt;Already discussed</FONT>
<BR><FONT SIZE=3D2>&lt;/mircea&gt;</FONT>
</P>

<P><FONT SIZE=3D2>&nbsp; - Page 28, section 5.5, again you say =
&quot;pcelsRule&quot; instead of &quot;non-</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; abstract subclasses of =
pcelsRule&quot;.</FONT>
<BR><FONT SIZE=3D2>&lt;mircea&gt;Already discussed</FONT>
<BR><FONT SIZE=3D2>&lt;/mircea&gt;</FONT>
</P>

<P><FONT SIZE=3D2>&nbsp;&nbsp; - Page 28, last paragraph, another error =
that you are recommending</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; should be ignored.</FONT>
<BR><FONT SIZE=3D2>&lt;mircea&gt;Already discussed</FONT>
<BR><FONT SIZE=3D2>&lt;/mircea&gt;</FONT>
</P>

<P><FONT SIZE=3D2>&nbsp;&nbsp; - Page 29, DESC for =
pcelsActionAssociation is wrong; you say that </FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; it can be used for a pcelsRule =
instead of a non-abstract subclass of</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; pcelsRule</FONT>
<BR><FONT SIZE=3D2>&lt;mircea&gt;Already discussed</FONT>
<BR><FONT SIZE=3D2>&lt;/mircea&gt;</FONT>
</P>

<P><FONT SIZE=3D2>&nbsp;&nbsp; - Page 29, last paragraph above Section =
5.6, another error that you are</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; recommending should be =
ignored.</FONT>
<BR><FONT SIZE=3D2>&lt;mircea&gt;Already discussed</FONT>
<BR><FONT SIZE=3D2>&lt;/mircea&gt;</FONT>
</P>

<P><FONT SIZE=3D2>&nbsp;&nbsp; - Page 29, Section 5.6, last two =
paragraphs are errors that you are</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; recommending should be =
ignored.</FONT>
<BR><FONT SIZE=3D2>&lt;At this point, I'm going to stop listing these, =
as it is a systemic problem that should be fixed in the next =
release&gt;</FONT>
<BR><FONT SIZE=3D2>&lt;mircea&gt;Already discussed</FONT>
<BR><FONT SIZE=3D2>&lt;/mircea&gt;</FONT>
</P>

<P><FONT SIZE=3D2>&nbsp;&nbsp; - Page 29, last paragraph above Section =
5.6, another error that you are</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; recommending should be =
ignored.</FONT>
<BR><FONT SIZE=3D2>&lt;mircea&gt;Already discussed</FONT>
<BR><FONT SIZE=3D2>&lt;/mircea&gt;</FONT>
</P>

<P><FONT SIZE=3D2>&nbsp;&nbsp; - Page 30, the DESC for pcelsVariableDN =
is wrong. You say that it is a</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; &quot;DN reference to a =
pcelsVariable entry&quot;, when it should be a DN</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; reference to a subclass of either =
pcelsExplicitVariableAuxClass or</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; pcelsImplicitVariableAuxClass or =
pcelsVendorVariableAuxClass</FONT>
<BR><FONT SIZE=3D2>&lt;mircea&gt;Already discussed</FONT>
<BR><FONT SIZE=3D2>&lt;/mircea&gt;</FONT>
</P>

<P><FONT SIZE=3D2>&nbsp;&nbsp; - Page 30, the DESC for pcelsValueDN is =
wrong - it should be a subclass</FONT>
<BR><FONT SIZE=3D2>&nbsp;&nbsp;&nbsp; of pcelsValueDN.</FONT>
<BR><FONT SIZE=3D2>&lt;mircea&gt;Already discussed</FONT>
<BR><FONT SIZE=3D2>&lt;/mircea&gt;</FONT>
</P>

<P><FONT SIZE=3D2>&nbsp;</FONT>
</P>

<P><FONT SIZE=3D2>regards,</FONT>
<BR><FONT SIZE=3D2>John </FONT>
<BR><FONT SIZE=3D2>John C. Strassner </FONT>
<BR><FONT SIZE=3D2>Chief Strategy Officer </FONT>
<BR><FONT SIZE=3D2>Intelliden Inc. </FONT>
<BR><FONT SIZE=3D2>90 South Cascade Avenue </FONT>
<BR><FONT SIZE=3D2>Colorado Springs, CO&nbsp; 80906&nbsp; USA </FONT>
<BR><FONT SIZE=3D2>phone:&nbsp; +1.719.785.0648 </FONT>
<BR><FONT SIZE=3D2>&nbsp; fax:&nbsp;&nbsp;&nbsp;&nbsp; +1.719.785.0644 =
</FONT>
<BR><FONT SIZE=3D2>email:&nbsp;&nbsp;&nbsp; =
[email protected]</FONT>
</P>

</BODY>
</HTML>
------_=_NextPart_001_01C412DE.5A872524--