OASIS eXtensible Access Control Markup Language (XACML) TC

 View Only

Proposal: Expression, Variable Definition/Reference Text (Firstcrack)

  • 1.  Proposal: Expression, Variable Definition/Reference Text (Firstcrack)

    Posted 02-10-2004 20:41
     MHonArc v2.5.0b2 -->
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    

    xacml message

    [Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


    Subject: Proposal: Expression, Variable Definition/Reference Text (Firstcrack)


    
    We probably have to clean this description up a bit before we give it to
    Tim.
    
    Cheers,
    -Polar
    
    6.x Element Expression
    
    The Expression element is not used directly in a policy. The Expression
    element signifies that an element that extends the ExpressionType SHALL
    appear in its place.
    
      <xs:element name="Expression" type="xacml:ExpressionType" abstract="true"/>
      <xs:complexType name="ExpressionType" abstract="true"/>
    
    6.x Element VariableDefinition
    
    The VariableDefinition element SHALL be used to define a value that can be
    referenced by a VariableReference element. The name supplied for its
    VariableId attribute SHALL NOT occur in the VariableId attribute of any
    other VariableDefinition element within the encompassing policy.
    
     <xs:element name="VariableDefinition"  type="xacml:VariableDefinitionType"/>
        <xs:complexType name="VariableDefinitionType">
           <xs:sequence>
              <xs:element ref="xacml:Expression"/>
           </xs:sequence>
        <xs:attribute name="VariableId" type="xs:string" use="required"/>
     </xs:complexType>
    
    The VariableDefinition is of VariableDefinitionType:
    
    The VariableDefinition has the following attributes and elements:
    
    VariableId [Required]
    
    The name of the variable.
    
    <Expression>
    
    The Expression is any element that is of the ExpressionType.
    
    
    6.x Element VariableReference
    
    The VariableReference is used to reference a value defined within the same
    encompassing policy. The VariableReference element SHALL refer to the
    VariableDefinition element by string equality on the value of their
    respective VariableId attributes. There SHALL exist one and only one
    VariableDefinition within the same encompassing policy for which the
    VariableReference refers. There MAY be zero or more VariableReference
    elements that refer to the same VariableDefinition element.
    
      <xs:element name="VariableReference" type="xacml:VariableReferenceType" substitutionGroup="xacml:Expression"/>
        <xs:complexType name="VariableReferenceType">
          <xs:complexContent>
            <xs:extension base="xacml:ExpressionType">
    	  <xs:attribute name="VariableId" type="xs:string" use="required"/>
            </xs:extension>
        </xs:complexContent>
      </xs:complexType>
    
    The VariableReference is of the VariableReferenceType, which is of the
    ExpressionType. The VariableReference element may appear any place an
    Expression element is listed in the schema.
    
    The VariableReference has the following attributes:
    
    VariableId [Required]
    
    The name used to refer to the value defined for the named variable in a
    VariableDefinition element.
    
    
    13.x Variable Reference Evaluation
    
    The VariableReference element references a single VariableDefinition
    element contained within the same policy. A VariableReference that does
    not reference a particular VariableDefinition element within the
    encompassing policy is called an undefined reference. Policies with
    undefined references are invalid.
    
    In any place where a VariableReference occurs, it has the effect as if the
    text of the Expression defined in the VariableDefinition replaces the
    VariableReference. However, any evaluation scheme that preserves this
    semantics is acceptable. For instance, the expression in the
    VariableDefinition may be evaluated to a particular value and cached for
    multiple references without consequence. This charateristic is one of the
    benefits of XACML being a declarative language.
    
    ====
    NOTE: For all other elements that are now extensions of ExpressionType, we
    should probably add the note that usually follows the schema fragments in
    Section 6:
    
    The XXXX element is of the XXXXType, which is of the ExpressionType. The
    XXXX element may appear any place the Expression element is listed in the
    schema.
    =====
    
    Cheers,
    -Polar
    


    [Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]