blob: 120de436144142c3626f6dbdbebaf74dc98331fa [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<Policy xmlns="urn:oasis:names:tc:xacml:3.0:core:schema:wd-17"
xmlns:md="http://www.medico.com/schemas/record"
xmlns:xacml-context="urn:oasis:names:tc:xacml:3.0:context:schema:os"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
PolicyId="urn:oasis:names:tc:xacml:2.0:conformance-test:IIIG006:policy"
RuleCombiningAlgId="urn:oasis:names:tc:xacml:1.0:rule-combining-algorithm:deny-overrides"
Version="1.0"
xsi:schemaLocation="urn:oasis:names:tc:xacml:3.0:policy:schema:os access_control-xacml-2.0-policy-schema-os.xsd">
<Description>
Policy for Conformance Test IIIG006d. Copy of IIG006 using Deprecated XPath functions.
See https://www.oasis-open.org/committees/xacml/ConformanceTests/ConformanceTests.html
and https://www.oasis-open.org/committees/download.php/14877/ConformanceTests.html
Purpose - Non-mandatory Functions: Case: Relative XPath expressions in XPath-based functions DEPRECATED
OPTIONAL test - function may or may not be implemented. See the Response file.
</Description>
<PolicyDefaults>
<XPathVersion>http://www.w3.org/TR/1999/Rec-xpath-19991116</XPathVersion>
</PolicyDefaults>
<Target/>
<Rule Effect="Permit" RuleId="urn:oasis:names:tc:xacml:2.0:conformance-test:IIIG006d:rule">
<Condition>
<Apply FunctionId="urn:oasis:names:tc:xacml:1.0:function:and">
<Apply FunctionId="urn:oasis:names:tc:xacml:1.0:function:integer-equal">
<Apply FunctionId="urn:oasis:names:tc:xacml:1.0:function:xpath-node-count">
<AttributeValue DataType="http://www.w3.org/2001/XMLSchema#string"
XPathCategory="urn:oasis:names:tc:xacml:3.0:attribute-category:resource" >
//md:name
</AttributeValue>
</Apply>
<AttributeValue DataType="http://www.w3.org/2001/XMLSchema#integer">2</AttributeValue>
</Apply>
<!-- Testing for equality of one out of a list is a better test than checking that one thing is same as the same thing selected a different way -->
<Apply FunctionId="urn:oasis:names:tc:xacml:1.0:function:xpath-node-equal">
<AttributeValue DataType="http://www.w3.org/2001/XMLSchema#string"
XPathCategory="urn:oasis:names:tc:xacml:3.0:attribute-category:resource" >
//md:name
</AttributeValue>
<AttributeValue DataType="http://www.w3.org/2001/XMLSchema#string"
XPathCategory="urn:oasis:names:tc:xacml:3.0:attribute-category:resource" >
//md:name[text()='Bart Simpson']
</AttributeValue>
</Apply>
<!-- Test that looks for child node within the first node is more interesting than matching a node with itself -->
<Apply FunctionId="urn:oasis:names:tc:xacml:1.0:function:xpath-node-match">
<AttributeValue DataType="http://www.w3.org/2001/XMLSchema#string"
XPathCategory="urn:oasis:names:tc:xacml:3.0:attribute-category:resource" >
.
</AttributeValue>
<AttributeValue DataType="http://www.w3.org/2001/XMLSchema#string"
XPathCategory="urn:oasis:names:tc:xacml:3.0:attribute-category:resource" >
//md:name[text()='Bart Simpson']
</AttributeValue>
</Apply>
</Apply>
</Condition>
</Rule>
</Policy>