W3C home > Mailing lists > Public > public-ws-policy@w3.org > July 2006

NEW ISSUE: Require assertions to be distinguished from parameter elements

From: Frederick Hirsch <frederick.hirsch@nokia.com>
Date: Wed, 12 Jul 2006 07:14:25 -0500
Message-Id: <AD4DA4F8-F573-4398-B290-0887B0A8A578@nokia.com>
Cc: Frederick Hirsch <frederick.hirsch@nokia.com>
To: public-ws-policy@w3.org

Title - Require assertions to be distinguished from parameter elements

Description - A generic policy processor cannot distinguish from an  
XML element by itself whether it is an assertion or a parameter, yet  
they are treated differently in intersection operations. For this  
reason the Framework specification must distinguish the two.

Justification -

A generic policy processor should be able to perform generic  
intersection operations on policy without knowledge of every possible  
policy domain. This allows extensibility. In addition, the  
normalization algorithm needs to explicitly account for passing  
through parameter elements.

Target - WS-Policy Framework [1]

Proposal - add requirement statement to Framework document, and  
update examples correspondingly: "Every assertion must be the direct  
child of a wsp:Policy element, and every parameter element must not  
be a direct child of a wsp:Policy element."

Change step 3.2 of 4.2 normalization procedure to be:
"2. If the Element Information Item C is a child of a Policy element;  
normalize C per Sections 4.3.1 Optional Policy Assertions and 4.3.2  
Policy Assertion Nesting. Otherwise, copy Element C to the output."

Test1:

The following two assertions should match:

<wsp:Policy
   xmlns:ex="http://www.example.com/example"
   xmlns:foo="http://www.example.com/parameter"
   xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy" >
	<ex:Example >
	  <foo:Something />
	</ex:Example>
</wsp:Policy>


<wsp:Policy
   xmlns:ex="http://www.example.com/example"
   xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy" >
	<ex:Example >
	</ex:Example>
</wsp:Policy>


Test2:

If it is known that foo:Something is an assertion, then a processor  
that is able to perform validity checking should flag an error. This  
may require an implementation that accepts a list of known assertions  
as an input for validity checking.


regards, Frederick

Frederick Hirsch
Nokia

[1] http://www.w3.org/Submission/WS-Policy/
Received on Wednesday, 12 July 2006 12:14:46 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Tuesday, 8 January 2008 14:20:40 GMT