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

 


Help: OASIS Mailing Lists Help | MarkMail Help

xacml message

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


Subject: attribute data types: schema or identifier?


Hal,

I agreed to send the SSTC my explanation for why using a schema
to define the data type of an attribute is not sufficient.  But I
don't think that was ever an issue for the SSTC - it certainly is
not captured in the notes I made at the SAML F2F.

For anyone who is interested, some XML-based systems do not
include a DataType for what corresponds to an AttributeValue in
XACML.  Instead, the attribute value effectively is a "string"
that is parsed as an XML schema instance.  The schema-specified
syntax is the specification of the data type of the attribute.

There are good reasons not to use this approach in XACML or any
system where attribute values must be manipulated, rather than
simply passed around.  An XACML PDP must know not only the syntax
of an attribute value, but also the semantics for how to handle
it in functions (compare it for greater or less than, add it to
another value, etc.).

If attribute values were defined as schema instances, then not
only would the PDP have to locate and process the schema
associated with each attribute, but the PDP would also have to be
augmented with code that understands the semantics of the
schema-defined information.  This means no "standard" language
processor would be able to deal with attribute values in general.
Some set of attribute value schemas and semantics could be
defined as part of the standard, but the value of the
"extensibility" gained would be questionable.  The languages
would be easily "extensible" in syntax, but not so easily
extensible in semantics.  It also means that companies could
define proprietary schemas for AttributeValues, hindering
interoperability.

XACML, by contrast, has chosen to define a rich set of DataTypes
that are explicitly supported by all conforming PDP's.  Most
useful attributes can be defined in terms of these DataTypes and
thus can supported by any standard XACML PDP.  No new code
modules are required except where a new DataType is defined.

XACML does support using an XML schema as the "DataType" for an
attribute: use the schema namespace and element name as the URI
of the DataType.  This allows XACML to support Attributes that
are defined using schemas as well as any other system.  But the
only operation on such DataTypes that could be standardized and
supported in all PDPs is a byte-string comparison for equality
between two instances of the AttributeValue (after
canonicalization).  It is probably just as easy to define the
DataType for such a value as "string" and require operationally
that the AttributeValue be the output of canonicalizing the
schema instance.

Anne
-- 
Anne H. Anderson             Email: Anne.Anderson@Sun.COM
Sun Microsystems Laboratories
1 Network Drive,UBUR02-311     Tel: 781/442-0928
Burlington, MA 01803-0902 USA  Fax: 781/442-1692



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