Subject: functionally explicit conditions and actions

From: "Larry S. Bartz" <[email-masked]>
Date: Thu, 29 Mar 2001 09:05:26 -0500

I've refactored the OCs and ATs I described a couple of weeks ago
in http://atm.tut.fi/list-archive/policy/msg00402.html

I've changed the naming scheme so it makes more sense from a Policy
POV,  from selector/setter to comparator/assignor.

As I said before, these may be simply local implementation, an
extension of draft-ietf-policy-core-schema-09.txt which conforms
to rfc3060.

OTOH, they might be interesting beyond the local scope.

##### policy condition stuff

objectclass ( oid-oc.94
 NAME 'ComparatorPolicyConditionAssociation'
 DESC 'ComparatorPolicyConditionAssociation is AUXed by subtypes of
 ComparatorPolicyConditionAux.'
 SUP policyRuleConditionAssociation
 STRUCTURAL
 MUST cn
 )

attributetype ( oid-at.92
 NAME 'comparedAttributeOID'
 DESC 'Value(s) of this attribute of the candidate object are evaluated
 for selection.'
 SYNTAX 1.3.6.1.4.1.1466.115.121.1.38
 EQUALITY objectIdentifierMatch
 SINGLE-VALUE
 USAGE userApplications
 )

attributetype ( oid-at.93
 NAME 'comparedPropertyName'
 DESC 'Value(s) of this property of the application environment are
 evaluated for selection.'
 SYNTAX 1.3.6.1.4.1.1466.115.121.1.15
 EQUALITY caseIgnoreMatch
 SUBSTR caseIgnoreSubstringsMatch
 SINGLE-VALUE
 USAGE userApplications
 )

objectclass ( oid-oc.95
 NAME 'ComparatorPolicyConditionAux'
 DESC 'Several subtypes of this are used to implement explicit comparison
 semantics by comparing the value of a candidate attribute/value pair
 or property/value pair to the value of comparison criteria. Instances
 of this SHALL include either comparedAttributeOID attribute/value pair
 or comparedPropertyName attribute/value pair, but NEVER BOTH.'
 SUP policyConditionAuxClass
 AUXILIARY
 MAY ( comparedAttributeOID $ comparedPropertyName )
 )

attributetype ( oid-at.94
 NAME 'comparisonValue'
 DESC 'Candidate value of comparedAttributeOID or comparedPropertyName
 is evaluated for comparison against the value of this, which constitutes
 the comparison criteria.'
 SYNTAX 1.3.6.1.4.1.1466.115.121.1.15
 EQUALITY caseIgnoreMatch
 SUBSTR caseIgnoreSubstringsMatch
 USAGE userApplications
 )

objectclass ( oid-oc.96
 NAME 'ExplicitComparisonOperationPolicyConditionAux'
 DESC 'subtypes of this support various explicit semantics for evaluating
 a candidate value against comparison criteria. Never create instances
 of this. ONLY create instances of subtypes of this.'
 SUP ComparatorPolicyConditionAux
 AUXILIARY
 MUST comparisonValue
 )

objectclass ( oid-oc.97
 NAME 'equalComparator'
 DESC 'Represents comparison according to the semantic of "equal". The
 candidate value is tested for "equal" with respect to the comparison
 criteria.'
 SUP ExplicitComparisonOperationPolicyConditionAux
 AUXILIARY
 )

objectclass ( oid-oc.98
 NAME 'greaterThanComparator'
 DESC 'Represents comparison according to the semantic of
 "greaterThan". The candidate value is tested for "greaterThan" with
 respect to the comparison criteria.'
 SUP ExplicitComparisonOperationPolicyConditionAux
 AUXILIARY
 )

objectclass ( oid-oc.99
 NAME 'lessThanComparator'
 DESC 'Represents comparison according to the semantic of "lessThan". The
 candidate value is tested for "lessThan" with respect to the comparison
 criteria.'
 SUP ExplicitComparisonOperationPolicyConditionAux
 AUXILIARY
 )

objectclass ( oid-oc.100
 NAME 'greaterThanOrEqualComparator'
 DESC 'Represents comparison according to the semantic of
 "greaterThanOrEqual". The candidate value is tested for
 "greaterThanOrEqual" with respect to the comparison criteria.'
 SUP ExplicitComparisonOperationPolicyConditionAux
 AUXILIARY
 )

objectclass ( oid-oc.101
 NAME 'lessThanOrEqualComparator'
 DESC 'Represents comparison according to the semantic of
 "lessThanOrEqual". The candidate value is tested for "lessThanOrEqual"
 with respect to the comparison criteria.'
 SUP ExplicitComparisonOperationPolicyConditionAux
 AUXILIARY
 )

objectclass ( oid-oc.102
 NAME 'beginsWithComparator'
 DESC 'Represents comparison according to the semantic of
 "beginsWith". The candidate value is tested for "beginsWith" with
 respect to the comparison criteria.'
 SUP ExplicitComparisonOperationPolicyConditionAux
 AUXILIARY
 )

objectclass ( oid-oc.103
 NAME 'endsWithComparator'
 DESC 'Represents comparison according to the semantic of "endsWith". The
 candidate value is tested for "endsWith" with respect to the comparison
 criteria.'
 SUP ExplicitComparisonOperationPolicyConditionAux
 AUXILIARY
 )

objectclass ( oid-oc.104
 NAME 'containsComparator'
 DESC 'Represents comparison according to the semantic of "contains". The
 candidate value is tested for "contains" with respect to the comparison
 criteria.'
 SUP ExplicitComparisonOperationPolicyConditionAux
 AUXILIARY
 )

objectclass ( oid-oc.105
 NAME 'existsComparator'
 DESC 'Represents comparison according to the semantic of "exists". The
 candidate value is tested for "exists". The comparison criteria is
 superfluous in this comparison.'
 SUP ExplicitComparisonOperationPolicyConditionAux
 AUXILIARY
 )

objectclass ( oid-oc.106
 NAME 'bitwiseANDComparator'
 DESC 'Represents comparison according to the semantic of
 "bitwiseAND". The candidate value is tested for "bitwiseAND" with
 respect to the comparison criteria.'
 SUP ExplicitComparisonOperationPolicyConditionAux
 AUXILIARY
 )

objectclass ( oid-oc.107
 NAME 'bitwiseINclusiveORComparator'
 DESC 'Represents comparison according to the semantic of
 "bitwiseINclusiveOR". The candidate value is tested for
 "bitwiseINclusiveOR" with respect to the comparison criteria.'
 SUP ExplicitComparisonOperationPolicyConditionAux
 AUXILIARY
 )

objectclass ( oid-oc.108
 NAME 'bitwiseEXclusiveORComparator'
 DESC 'Represents comparison according to the semantic of
 "bitwiseEXclusiveOR". The candidate value is tested for
 "bitwiseEXclusiveOR" with respect to the comparison criteria.'
 SUP ExplicitComparisonOperationPolicyConditionAux
 AUXILIARY
 )

objectclass ( oid-oc.109
 NAME 'onesComplementComparator'
 DESC 'Represents comparison according to the semantic of
 "onesComplement". The candidate value is tested for "onesComplement". The
 comparison criteria is superfluous in this comparison.'
 SUP ExplicitComparisonOperationPolicyConditionAux
 AUXILIARY
 )

attributetype ( oid-at.95
 NAME 'comparisonEcma262RegExp'
 DESC 'Candidate value of comparedAttributeOID or comparedPropertyName
 is evaluated for comparison against the ecma262 regular expression
 which is the value of this. The ecma262 scripting language
 is also known as JavaScript, JScript, and by ISO 16262. See
 http://www.ecma.ch/ecma1/stand/ecma-262.htm'
 SYNTAX 1.3.6.1.4.1.1466.115.121.1.15
 EQUALITY caseIgnoreMatch
 SUBSTR caseIgnoreSubstringsMatch
 USAGE userApplications
 )

objectclass ( oid-oc.110
 NAME 'ECMA262RegExpComparator'
 DESC 'ECMA262RegExpComparator supports the semantic of evaluating a
 candidate value against an ecma262 regular expression.'
 SUP ComparatorPolicyConditionAux
 AUXILIARY
 MUST comparisonEcma262RegExp
 )

# policy action stuff

objectclass ( oid-oc.111
 NAME 'AssignorPolicyActionAssociation'
 DESC 'AssignorPolicyActionAssociation is AUXed by subtypes of
 AssignorPolicyActionAux.'
 SUP policyRuleActionAssociation
 STRUCTURAL
 MUST cn
 )

attributetype ( oid-at.96
 NAME 'assignedVariable'
 DESC 'Value of this property of the application environment is set or
 modified by the action.'
 SYNTAX 1.3.6.1.4.1.1466.115.121.1.15
 EQUALITY caseIgnoreMatch
 SUBSTR caseIgnoreSubstringsMatch
 USAGE userApplications
 )

attributetype ( oid-at.97
 NAME 'assignmentValue'
 DESC 'The value of a property of the application environment is set to
 or modified by the value of this, which constitutes the value setting
 criteria.'
 SYNTAX 1.3.6.1.4.1.1466.115.121.1.15
 EQUALITY caseIgnoreMatch
 SUBSTR caseIgnoreSubstringsMatch
 USAGE userApplications
 )

objectclass ( oid-oc.112
 NAME 'AssignorPolicyActionAux'
 DESC 'subtypes of this implement explicit semantics for setting or
 modifying the value of an application-defined, application-dependent
 property.'
 SUP policyActionAuxClass
 AUXILIARY
 MUST assignedVariable
 )

objectclass ( oid-oc.113
 NAME 'ExplicitAssignmentOperationPolicyActionAux'
 DESC 'several subtypes of this implement explicit semantics for setting
 or modifying the value of an application-defined, application-dependent
 property.'
 SUP AssignorPolicyActionAux
 AUXILIARY
 MUST assignmentValue
 )

objectclass ( oid-oc.114
 NAME 'EqualAssignor'
 DESC 'Represents value assignment according to the semantic of
 "Equal". The value of the candidate property is assigned or modified by
 "Equal" with respect to the value setting criteria.'
 SUP ExplicitAssignmentOperationPolicyActionAux
 AUXILIARY
 )

objectclass ( oid-oc.115
 NAME 'PlusEqualAssignor'
 DESC 'Represents value assignment according to the semantic of
 "PlusEqual". The value of the candidate property is assigned or modified
 by "PlusEqual" with respect to the value setting criteria.'
 SUP ExplicitAssignmentOperationPolicyActionAux
 AUXILIARY
 )

objectclass ( oid-oc.116
 NAME 'MinusEqualAssignor'
 DESC 'Represents value assignment according to the semantic of
 "MinusEqual". The value of the candidate property is assigned or modified
 by "MinusEqual" with respect to the value setting criteria.'
 SUP ExplicitAssignmentOperationPolicyActionAux
 AUXILIARY
 )

objectclass ( oid-oc.117
 NAME 'MultEqualAssignor'
 DESC 'Represents value assignment according to the semantic of
 "MultEqual". The value of the candidate property is assigned or modified
 by "MultEqual" with respect to the value setting criteria.'
 SUP ExplicitAssignmentOperationPolicyActionAux
 AUXILIARY
 )

objectclass ( oid-oc.118
 NAME 'DivEqualAssignor'
 DESC 'Represents value assignment according to the semantic of
 "DivEqual". The value of the candidate property is assigned or modified
 by "DivEqual" with respect to the value setting criteria.'
 SUP ExplicitAssignmentOperationPolicyActionAux
 AUXILIARY
 )

objectclass ( oid-oc.119
 NAME 'ModuloEqualAssignor'
 DESC 'Represents value assignment according to the semantic of
 "ModuloEqual". The value of the candidate property is assigned or
 modified by "ModuloEqual" with respect to the value setting criteria.'
 SUP ExplicitAssignmentOperationPolicyActionAux
 AUXILIARY
 )

objectclass ( oid-oc.120
 NAME 'ShiftLeftByAssignor'
 DESC 'Represents value assignment according to the semantic of
 "ShiftLeftBy". The value of the candidate property is assigned or
 modified by "ShiftLeftBy" with respect to the value setting criteria.'
 SUP ExplicitAssignmentOperationPolicyActionAux
 AUXILIARY
 )

objectclass ( oid-oc.121
 NAME 'ShiftRightByAssignor'
 DESC 'Represents value assignment according to the semantic of
 "ShiftRightBy". The value of the candidate property is assigned or
 modified by "ShiftRightBy" with respect to the value setting criteria.'
 SUP ExplicitAssignmentOperationPolicyActionAux
 AUXILIARY
 )

objectclass ( oid-oc.122
 NAME 'BitwiseANDwithAssignor'
 DESC 'Represents value assignment according to the semantic of
 "BitwiseANDwith". The value of the candidate property is assigned or
 modified by "BitwiseANDwith" with respect to the value setting criteria.'
 SUP ExplicitAssignmentOperationPolicyActionAux
 AUXILIARY
 )

objectclass ( oid-oc.123
 NAME 'BitwiseINclusiveORwithAssignor'
 DESC 'Represents value assignment according to the semantic of
 "BitwiseINclusiveORwith". The value of the candidate property is
 assigned or modified by "BitwiseINclusiveORwith" with respect to the
 value setting criteria.'
 SUP ExplicitAssignmentOperationPolicyActionAux
 AUXILIARY
 )

objectclass ( oid-oc.124
 NAME 'BitwiseEXclusiveORwithAssignor'
 DESC 'Represents value assignment according to the semantic of
 "BitwiseEXclusiveORwith". The value of the candidate property is
 assigned or modified by "BitwiseEXclusiveORwith" with respect to the
 value setting criteria.'
 SUP ExplicitAssignmentOperationPolicyActionAux
 AUXILIARY
 )

objectclass ( oid-oc.125
 NAME 'OnesComplementAssignor'
 DESC 'Represents value assignment according to the semantic of
 "OnesComplement". The value of the candidate property is assigned or
 modified by "OnesComplement". The value setting criteria is superfluous
 in this operation.'
 SUP ExplicitAssignmentOperationPolicyActionAux
 AUXILIARY
 )

attributetype ( oid-at.98
 NAME 'assignmentEcma262regExp'
 DESC 'The value of a property of the application environment
 is set or modified according to an evaluation of this
 ecma262 regular expression. The ecma262 scripting language
 is also known as JavaScript, JScript, and by ISO 16262. See
 http://www.ecma.ch/ecma1/stand/ecma-262.htm'
 SYNTAX 1.3.6.1.4.1.1466.115.121.1.15
 EQUALITY caseIgnoreMatch
 SUBSTR caseIgnoreSubstringsMatch
 USAGE userApplications
 )

objectclass ( oid-oc.126
 NAME 'Ecma262regExpAssignor'
 DESC 'Ecma262regExpAssignor supports the semantic of setting a candidate
 value according to the evaluation an ecma262 regular expression.'
 SUP AssignorPolicyActionAux
 AUXILIARY
 MUST assignmentEcma262regExp
 )

--
#::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::|
# Larry Bartz                           |                              |
#  [email-masked]      | Ooo, ooo,                    |
#                                       | Ooo, ooo, oooooo!            |
#                                       | I've got a gnu attitude!     |
#  voice (317) 226-7060                 |                              |
#  FAX   (317) 226-6378                 |                              |
#::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::|