[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: Support for the xpathExpression Data-type in the JSON Profile
Here, for the consideration of the TC, are my suggested changes to the JSON profile
to include support for the xpathExpression data-type.
Section 3.4.1 - Add a row to the table for the xpathExpression data-type.
XACML data-type-identifier -> urn:oasis:names:tc:xacml:3.0:data-type:xpathExpression
JSON shorthand code -> xpathExpression
Javascript data-type -> None – inference must fail
Rename section 3.4.2 to "The xpathExpression Datatype" and replace the text with
the following:
Values of the xpathExpression data-type are represented as JSON objects. Each
such object contains the following properties:
+---------------+----------------------+--------------------+---------------+
| Attribute | Type | Mandatory/Optional | Default value |
+---------------+----------------------+--------------------+---------------+
| XPathCategory | URI | Mandatory | None |
+---------------+----------------------+--------------------+---------------+
| Namespaces | Array of | Optional | None |
| | NamespaceDeclaration | | |
+---------------+----------------------+--------------------+---------------+
| XPath | String | Mandatory | None |
+---------------+----------------------+--------------------+---------------+
The XPath property contains the XPath expression [XPATH] from the XACML value. The
Namespaces property contains namespace declarations for interpreting qualified
names [NAMESPACES] in the XPath expression.
A NamespaceDeclaration object contains the following properties:
+-----------+--------+--------------------+---------------+
| Attribute | Type | Mandatory/Optional | Default value |
+-----------+--------+--------------------+---------------+
| Prefix | String | Optional | None |
+-----------+--------+--------------------+---------------+
| Namespace | URI | Mandatory | None |
+-----------+--------+--------------------+---------------+
Each NamespaceDeclaration object describes a single XML namespace declaration
[NAMESPACES]. The Prefix property contains the namespace prefix and the Namespace
property contains the namespace name. In the case of a namespace declaration for
the default namespace the Prefix property SHALL be absent.
The Namespaces array MUST contain a NamespaceDeclaration object for each of the
namespace prefixes used by the XPath expression. The Namespaces array MAY contain
additional NamespaceDeclaration objects for namespace prefixes that are not used
by the XPath expression. There SHALL NOT be two or more NamespaceDeclaration
objects for the same namespace prefix.
3.4.2.1 Example
{Non-normative}
This example shows the XML representation of an XACML attribute with a value of
the xpathExpression data-type and its corresponding representation in JSON.
As XML:
<Attribute xmlns="urn:oasis:names:tc:xacml:3.0:core:schema:wd-17"
AttributeId="urn:oasis:names:tc:xacml:3.0:content-selector">
<AttributeValue xmlns:md="urn:example:med:schemas:record"
XPathCategory="urn:oasis:names:tc:xacml:3.0:attribute-category:resource"
DataType=" urn:oasis:names:tc:xacml:3.0:data-type:xpathExpression"
>md:record/md:patient/md:patientDoB</AttributeValue>
</Attribute>
As JSON:
"Attribute": {
"Id" : "urn:oasis:names:tc:xacml:3.0:content-selector",
"DataType" : "xpathExpression",
"Value" : {
"XPathCategory" : "urn:oasis:names:tc:xacml:3.0:attribute-category:resource",
"Namespaces" : [{
"Namespace" : "urn:oasis:names:tc:xacml:3.0:core:schema:wd-17"
},
{
"Prefix" : "md",
"Namespace" : "urn:example:med:schemas:record"
}],
"XPath" : "md:record/md:patient/md:patientDoB"
}
}
Section 4.2.5 - Add "object" and "Array of object" to the Type for the Value property.
In the normative references add these:
[NAMESPACES] Bray, Tim, et.al. eds, Namespaces in XML 1.0 (Third Edition),
W3C Recommendation 8 December 2009, available at
http://www.w3.org/TR/2009/REC-xml-names-20091208/
[XPATH] James Clark and Steve DeRose, XML Path Language (XPath), Version 1.0,
W3C Recommendation 16 November 1999. Available at: http://www.w3.org/TR/xpath
Regards,
Steven
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]