OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

xacml-comment message

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


Subject: AttributeValueType in context schema


AttributeValueType in the context schema is a mixed content, like:

	<xs:element name="AttributeValue"
type="xacml-context:AttributeValueType"/>
	<xs:complexType name="AttributeValueType" mixed="true">
		<xs:sequence>
			<xs:any namespace="##any" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
		</xs:sequence>
		<xs:anyAttribute namespace="##any"
processContents="lax"/>
	</xs:complexType>

I was thinking about changing this definition so that the schema would
include explicit list of standard types in the Attribute value type
somehow. This way the types could be validated by a parser using the
schema. Also, the code generators would be able to make a better code
based on only schema.

So far I couldn't figure out how to do it. Any ideas?

At this moment all I could do was to change the Request xml this way:

        <Attribute
 
AttributeId="urn:oasis:names:tc:xacml:1.0:subject:subject-id"
              DataType="http://www.w3.org/2001/XMLSchema#string";>
            <StringAttributeValue>Julius Hibbert</StringAttributeValue>
        </Attribute>
Or 

        <Attribute
 
AttributeId="urn:oasis:names:tc:xacml:1.0:subject:subject-id"
              DataType="myCustomSchema:myCustomDataType">
            <ExtensionAttributeValue>Julius
Hibbert</ExtensionAttributeValue>
        </Attribute>

Instead of current:

        <Attribute
 
AttributeId="urn:oasis:names:tc:xacml:1.0:subject:subject-id"
              DataType="http://www.w3.org/2001/XMLSchema#string";>
            <AttributeValue>Julius Hibbert</AttributeValue>
        </Attribute>

The schema would be like this:

	<xs:element name="AttributeValue"
type="xacml-context:AttributeValueType"/>
    <xs:complexType name="AttributeValueType" >
            <xs:choice>
                <xs:element name="IntegerAttributeValue"
type="xs:integer"/>
                <xs:element name="StringAttributeValue"
type="xs:string"/>
                <xs:element ref="xacml-context:ExtensionAttributeValue"
maxOccurs="unbounded"/>
            </xs:choice>
    </xs:complexType>

    <xs:element name="ExtensionAttributeValue"
type="xacml-context:ExtensionAttributeValueType"/>
    <xs:complexType name="ExtensionAttributeValueType" mixed="true">
        <xs:sequence>
            <xs:any namespace="##any" processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
        <xs:anyAttribute namespace="##any" processContents="lax"/>
    </xs:complexType>

Thanks
argyn


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