[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]