Test Assertions for the SCA Policy Framework 1.1 Specification
Committee Draft 01
26 April 2010
Specification URIs:
This Version:
http://docs.oasis-open.org/opencsa/sca-policy/sca-policy-1.1-test-assertions-CD01.html
http://docs.oasis-open.org/opencsa/sca-policy/sca-policy-1.1-test-assertions-CD01.doc
http://docs.oasis-open.org/opencsa/sca-policy/sca-policy-1.1-test-assertions-CD01.pdf (Authoritative)
Previous
Version:
N/A
Latest Version:
http://docs.oasis-open.org/opencsa/sca-policy/sca-policy-1.1-test-assertions.html
http://docs.oasis-open.org/opencsa/sca-policy/sca-policy-1.1-test-assertions.doc
http://docs.oasis-open.org/opencsa/sca-policy/sca-policy-1.1-test-assertions.pdf (Authoritative)
Technical Committee:
OASIS Service Component Architecture Policy (SCA-Policy) TC
Chair(s):
David Booz, IBM
Ashok Malhotra,
Editor(s):
David Booz, IBM
Mike Edwards,
Ashok Malhotra,
Related Work:
This document is related to:
· Service Component Architecture Policy Framework Specification Version 1.1
http://docs.oasis-open.org/opencsa/sca-policy/sca-policy-1.1.pdf
Declared XML Namespace(s):
None
Abstract:
This
document defines the Test Assertions for the SCA Policy Framework
specification.
The Test Assertions represent the testable items relating to the normative
statements made in the SCA Policy Framework specification. The Test Assertions
provide a bridge between the normative statements in the specification and the
conformance TestCases that are designed to check that an SCA runtime conforms
to the requirements of the specification.
Status:
This document was last revised or approved by
the OASIS Service Component Architecture Policy (SCA-Policy) TC on the above
date. The level of approval is also listed above. Check the “Latest Version” or
“Latest Approved Version” location noted above for possible later revisions of
this document.
Technical Committee members should send comments on this specification to the
Technical Committee’s email list. Others should send comments to the Technical
Committee by using the “Send A Comment” button on the Technical Committee’s web
page at http://www.oasis-open.org/committees/sca-policy/.
For information on whether any patents have
been disclosed that may be essential to implementing this specification, and
any offers of patent licensing terms, please refer to the Intellectual Property
Rights section of the Technical Committee web page (http://www.oasis-open.org/committees/sca-policy/ipr.php.
The non-normative errata page for this specification is located at http://www.oasis-open.org/committees/sca-policy/
Notices
Copyright © OASIS® 2010.
All Rights Reserved.
All capitalized terms in the following text
have the meanings assigned to them in the OASIS Intellectual Property Rights
Policy (the "OASIS IPR Policy"). The full Policy may be found at the
OASIS website.
This document and translations of it may be
copied and furnished to others, and derivative works that comment on or
otherwise explain it or assist in its implementation may be prepared, copied,
published, and distributed, in whole or in part, without restriction of any
kind, provided that the above copyright notice and this section are included on
all such copies and derivative works. However, this document itself may not be
modified in any way, including by removing the copyright notice or references
to OASIS, except as needed for the purpose of developing any document or
deliverable produced by an OASIS Technical Committee (in which case the rules
applicable to copyrights, as set forth in the OASIS IPR Policy, must be
followed) or as required to translate it into languages other than English.
The limited permissions granted above are
perpetual and will not be revoked by OASIS or its successors or assigns.
This document and the information contained
herein is provided on an "AS IS" basis and OASIS DISCLAIMS ALL
WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT
THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY OWNERSHIP RIGHTS OR ANY
IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
OASIS requests that any OASIS Party or any
other party that believes it has patent claims that would necessarily be
infringed by implementations of this OASIS Committee Specification or OASIS
Standard, to notify OASIS TC Administrator and provide an indication of its
willingness to grant patent licenses to such patent claims in a manner
consistent with the IPR Mode of the OASIS Technical Committee that produced
this specification.
OASIS invites any party to contact the OASIS
TC Administrator if it is aware of a claim of ownership of any patent claims
that would necessarily be infringed by implementations of this specification by
a patent holder that is not willing to provide a license to such patent claims
in a manner consistent with the IPR Mode of the OASIS Technical Committee that
produced this specification. OASIS may include such claims on its website, but
disclaims any obligation to do so.
OASIS takes no position regarding the
validity or scope of any intellectual property or other rights that might be
claimed to pertain to the implementation or use of the technology described in
this document or the extent to which any license under such rights might or
might not be available; neither does it represent that it has made any effort
to identify any such rights. Information on OASIS' procedures with respect to
rights in any document or deliverable produced by an OASIS Technical Committee
can be found on the OASIS website. Copies of claims of rights made available
for publication and any assurances of licenses to be made available, or the
result of an attempt made to obtain a general license or permission for the use
of such proprietary rights by implementers or users of this OASIS Committee
Specification or OASIS Standard, can be obtained from the OASIS TC
Administrator. OASIS makes no representation that any information or list of
intellectual property rights will at any time be complete, or that any claims
in such list are, in fact, Essential Claims.
The name "OASIS" is a trademark of OASIS, the owner and developer of this
specification, and should be used only to refer to the organization and its
official outputs. OASIS welcomes reference to, and implementation and use of,
specifications, while reserving the right to enforce its marks against
misleading uses. Please see http://www.oasis-open.org/who/trademark.php
for above guidance.
A Cross
Mapping of Conformance Statements to Assertions
This
document defines Test Assertions for the SCA Policy specification:
http://docs.oasis-open.org/opencsa/sca-policy/sca-policy-1.1.pdf
The test
assertions in this document follow the format defined in the OASIS Test
Assertion Guidelines specification:
Test assertions are presented in a tabular format with rows corresponding to the entry types defined in the OASIS Test Assertions Guidelines
Assertion ID |
POL-TA-nnnnn |
|
[POLnnnnn] |
Target |
<xyuvbghs/> element of composite file |
Prerequisites |
The [<xyuvbghs/> element] has a @foobar attribute |
Predicate |
The @foobar attribute of [the <xyuvbghs/> element] is a URI that references a foobar element in the SCA Domain- |
Prescription Level |
Mandatory |
Tags |
foobar references |
Assertion ID: Is a unique ID for the test assertion. Its format starts with a 3 letter string that identifies the specification to which it relates - "POL" is for the SCA Policy specification. This is followed by "-TA-" to indicate that this identifier is for a test assertion. This is then followed by a unique 4 digit number
Source: Is the identifier(s) of the normative
statement(s) in the specification to which this assertion relates.
Target: Identifies the target which is addressed by
this assertion. This is typically some
SCA document element, but possibly could identify an SCA runtime and its
behaviour.
Prerequisites: Defines any prerequisites for this test
assertion. The prerequisites may be
defined in terms of one or more other test assertions that must be true.
Predicate: The meat of the assertion - something that
should evaluate to true or false for the given target.
Prescription Level: Mandatory (for MUST requirements) or Preferred
(for SHOULD requirements) or Permitted (for MAY requirements).
Tags: Zero or more labels that may be attached to
this test assertion - these tags can be used to group sets of assertions.
The keywords "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this specification are to be interpreted as described in IETF RFC 2119 [RFC 2119].
[RFC 2119] S. Bradner. Key words for use in
RFCs to Indicate Requirement Levels. IETF RFC 2119, March 1997.
http://www.ietf.org/rfc/rfc2119.txt.
[TA-GUIDE] OASIS Draft, “Test Assertion Guidelines Draft 0.9.9.6”, 16 November, 2008.
[JAVACAA] OASIS Committee Draft 04, “SCA Java
Common Annotations and APIs Specification Version 1.1”, February 2010.
http://docs.oasis-open.org/opencsa/sca-j/sca-javacaa-1.1-spec.pdf
None
Assertion ID |
POL-TA-30001 |
Source |
[POL30001] |
Target |
<binding/> element with @requires attribute containing one intent |
Prerequisites |
Configuration of the <binding/> conflicts with the intent |
Predicate |
SCA
runtime raises an error |
Prescription Level |
Mandatory |
Tags |
“intents”, “bindingInstance”, "conflict" |
Comment |
Testing note: WS binding which points to a
non-SOAP WSDL binding, where the reference/service @requires the SOAP intent. |
Assertion ID |
POL-TA-30002 |
Source |
[POL30001] |
Target |
<binding> element |
Prerequisites |
1) <binding/> element has a policySet either directly or externally attached. 2) Configuration of the <binding/> conflicts with the policySet |
Predicate |
SCA
runtime raises an error |
Prescription Level |
Mandatory |
Tags |
“intents”, “bindingInstance”, "conflict" |
Assertion ID |
POL-TA-30003 |
Source |
[POL30002] |
Target |
QName of <intent> element |
Prerequisites |
More than one <intent> elements are defined in the SCA Domain |
Predicate |
The QName of an <intent> element is unique amongst the set of all intents in the SCA domain |
Prescription Level |
Mandatory |
Tags |
“intent”, “definitions.xml”, "QName" |
Assertion ID |
POL-TA-30004 |
Source |
[POL30004] |
Target |
The @default attribute of <qualifier> child elements of an <intent> |
Prerequisites |
<intent> element has more than one <qualifier> child elements |
Predicate |
Only one <qualifier> element for an <intent> has a @default attribute value of “true” |
Prescription Level |
Mandatory |
Tags |
“intent”, “definitions.xml” |
Assertion ID |
POL-TA-30005 |
Source |
[POL30005] |
Target |
The @name attribute of <qualifier> child element of an <intent> |
Prerequisites |
<intent> element has more than one <qualifier> child element |
Predicate |
The @name attribute of the qualifier is unique within all <qualifier> child elements for the <intent> |
Prescription Level |
Mandatory |
Tags |
“intent”, “definitions.xml” |
Assertion ID |
POL-TA-30006 |
Source |
[POL30006] |
Target |
The @name attribute of a profile intent |
Prerequisites |
|
Predicate |
The @name attribute of a profile <intent> does not contain a “.” character |
Prescription Level |
Mandatory |
Tags |
“intent”, “definitions.xml”, "@name" |
Assertion ID |
POL-TA-30007 |
Source |
[POL30007] |
Target |
SCDL element with a profile intent attached to it. |
Prerequisites |
|
Predicate |
Each intent required by the profile intent is satisfied. |
Prescription Level |
Mandatory |
Tags |
“profileIntent” |
Assertion ID |
POL-TA-30008 |
Source |
[POL30008] |
Target |
@provides attribute of <intentMap/> subelement of a <policySet> element |
Prerequisites |
|
Predicate |
Value of the @provides attribute of the <intentMap> corresponds to an unqualified intent listed in the @provides attribute of the parent <policySet> element |
Prescription Level |
Mandatory |
Tags |
“policySet”, “intentMap”, “definitions.xml”, "@provides" |
Assertion ID |
POL-TA-30010 |
Source |
[POL30010] |
Target |
<policySet/> element that has a qualifiable intent listed in its @provides attribute |
Prerequisites |
|
Predicate |
<policySet/> contains at most one <intentMap/> subelement with a @provides attribute set to the the unqualified form of the qualifiable intent |
Prescription Level |
Mandatory |
Tags |
“policySet”, “intentMap”, “definitions.xml”, "'@provides" |
Assertion ID |
POL-TA-30011 |
Source |
[POL30011] |
Target |
<policySet/> with policies defined using wsp:PolicyAttachment elements or extension elements |
Prerequisites |
<policySet/> has a @provides attribute containing one or more intents |
Predicate |
The set of policies specified by the child elements satisfies all the intents listed in the @provides attribute |
Prescription Level |
Mandatory |
Tags |
“policySet”, “definitions.xml” |
Assertion ID |
POL-TA-30013 |
Source |
[POL30013] |
Target |
<policySet/> containing a reference to a second <policySet> by means of a <policySetReference/> |
Prerequisites |
<policySet/> has a @provides attribute containing a first set of intents Referenced <policySet/> has a @provides attribute containing a second set of intents |
Predicate |
The second set of intents is a subset of the first set of intents |
Prescription Level |
Mandatory |
Tags |
“policySet”, “definitions.xml”, "@provides", "policySetReference" |
Assertion ID |
POL-TA-30015 |
Source |
[POL30015] |
Target |
QName listed in the @requires attribute of an <intent> element |
Prerequisites |
|
Predicate |
QName is the QName of an intent in the SCA Domain. |
Prescription Level |
Mandatory |
Tags |
“intent”,
“definitions.xml”, "@requires", "QNname" |
Assertion ID |
POL-TA-30016 |
Source |
[POL30016] |
Target |
QName listed in the @excludes attribute of an <intent> element |
Prerequisites |
|
Predicate |
QName is the QName of an intent in the SCA Domain. |
Prescription Level |
Mandatory |
Tags |
“intent”,
“definitions.xml”, "@excludes", "QName" |
Assertion ID |
POL-TA-30017 |
Source |
[POL30017] |
Target |
The QName of <policySet> element |
Prerequisites |
More than one <policySet> element is defined in the SCA Domain |
Predicate |
QName of a <policySet> element is unique amongst all the <policySet> elements in the SCA Domain. |
Prescription Level |
Mandatory |
Tags |
“policySet”, “definitions.xml” |
Assertion ID |
POL-TA-30018 |
Source |
[POL30018] |
Target |
@appliesTo attribute of a <policySet> element |
Prerequisites |
|
Predicate |
The contents of the @appliesTo attribute is a valid XPath 1.0 production expr. |
Prescription Level |
Mandatory |
Tags |
“policySet”, “definitions.xml”, "@appliesTo", "XPath" |
Assertion ID |
POL-TA-30019 |
Source |
[POL30019] |
Target |
@attachTo attribute of a <policySet> element |
Prerequisites |
|
Predicate |
The contents of the @attachTo attribute is a valid XPath 1.0 production expr. |
Prescription Level |
Mandatory |
Tags |
“policySet”, “definitions.xml”, "@attachTo", "XPath" |
Assertion ID |
POL-TA-30020 |
Source |
[POL30020] |
Target |
<intentMap> child element of <policySet> |
Prerequisites |
<intentMap/> @provides attribute specifies a qualifiable intent |
Predicate |
<intentMap> element specifies all possible qualifiers for the qualified intent specified in the @provides attribute |
Prescription Level |
Mandatory |
Tags |
“policySet”, “intentMap”, “definitions.xml” |
Assertion ID |
POL-TA-30021 |
Source |
[POL30021] |
Target |
<policySet/> element with an <intentMap/> subelement |
Prerequisites |
<intentMap/> element has an @provides attribute with one or more intent |
Predicate |
<policySet/> has an @provides attribute which contains all of the intents specified in the @provides attribute of the <intentMap/> |
Prescription Level |
Mandatory |
Tags |
“policySet”, “intentMap”, “definitions.xml”, “@provides" |
Assertion ID |
POL-TA-30025 |
Source |
[POL30024] |
Target |
SCA Domain |
Prerequisites |
|
Predicate |
The set of intent definitions contained in the Policy_Intents_Definitions.xml described in the Appendix “Intent Definitions” of the SCA Policy Framework specification are in the SCA Domain. |
Prescription Level |
Mandatory |
Tags |
“intent”, "Policy_Intents_Definitions.xml” "SCA Domain" |
Assertion ID |
POL-TA-30026 |
Source |
[POL30025] |
Target |
<intent> element |
Prerequisites |
The qualifier is used as the default qualifier
|
Predicate |
The qualifier definition has @default=true |
Prescription Level |
Mandatory |
Tags |
“intent”, “qualifier” |
Assertion ID |
POL-TA-40001 |
Source |
[POL40001,POL40010] |
Target |
SCDL Element |
Prerequisites |
a) An SCA implementation that supports both Direct Attachment and
External Attachment mechanisms b) The SCDL element has a directly attached policySet c) There is a policySet using external attachment pointing to the same SCDL element |
Predicate |
The directly attached policySet is ignored and the externally attached
policySet is applied |
Prescription Level |
Mandatory |
Tags |
“policySets”, “externalAttachment”, “directAttachment” |
Assertion ID |
POL-TA-40002 |
Source |
[POL40001, POL40010] |
Target |
SCDL Element |
Prerequisites |
a) An SCA implementation that supports both Direct Attachment and
External Attachment mechanisms b) The SCDL element has only a directly attached policySet |
Predicate |
The directly attached policySet is applied. |
Prescription Level |
Mandatory |
Tags |
“policySets”, “externalAttachment”, “directAttachment” |
Assertion ID |
POL-TA-40003 |
Source |
[POL40001,POL40010] |
Target |
SCDL Element |
Prerequisites |
a) An SCA implementation that supports both Direct Attachment and
External Attachment mechanisms b) There is only a policySet applied to the SCDL element using external attachment |
Predicate |
The externally attached policySet is applied. |
Prescription Level |
Mandatory |
Tags |
“policySets”, “externalAttachment”, “directAttachment” |
Assertion ID |
POL-TA-40004 |
Source |
[POL40004] |
Target |
<component> element |
Prerequisites |
a) A qualifiable intent expressed lower in the implementation
hierarchy b) A qualified intent expressed on the component |
Predicate |
The qualified intent applies to the component. |
Prescription Level |
Mandatory |
Tags |
“intent”, “attachment”, “implementationHierarchy” |
Assertion ID |
POL-TA-40005 |
Source |
[POL40004] |
Target |
<composite/> <service/> or <reference/> element which has a qualified intent expressed |
Prerequisites |
The unqualified form of the same qualifiable intent expressed on the <component/><service/> or <component/><reference/> element which is promoted by the <composite/><service/> or <composite/><reference/> element |
Predicate |
The qualified intent applies to the composite service or reference. |
Prescription Level |
Mandatory |
Tags |
“intent”, “attachment”, “implementationHierarchy” |
Assertion ID |
POL-TA-40006 |
Source |
[POL40005] |
Target |
SCDL element |
Prerequisites |
a) The element inherits a set of intents from higher in the structural hierarchy (S1) b) zero or more intents are applied directly to the element (S2) c) no intents in S1 are mutually exclusive to any intent in S2 d) the |
Predicate |
The |
Prescription Level |
Mandatory |
Tags |
“intent”, “attachment”, “structuralHierarchy” |
Assertion ID |
POL-TA-40007 |
Source |
[POL40005] |
Target |
SCDL element |
Prerequisites |
a) The element inherits a set of intents from higher in the structural hierarchy (S1) b) one or more intents are applied directly to the element (S2) c) some intents in S2 are mutually exclusive to some intents in S1 d) the |
Predicate |
The intents in S2 and the intents from S1 that are NOT mutually
exclusive with the intents in S2 are applied to the element |
Prescription Level |
Mandatory |
Tags |
“intent”, “attachment”, “structuralHierarchy” |
Comment |
There could be more than one mutually exclusive intent (Same as V1) |
Assertion ID |
POL-TA-40008 |
Source |
[POL40005] |
Target |
SCDL element |
Prerequisites |
a) The element inherits a set of intents from higher in the structural hierarchy (S1) b) zero or more intents are applied directly to the element (S2) c) no intents in S1 are mutually exclusive to any intent in S2 d) the |
Predicate |
All intents in S3 that are not the unqualified form of a qualifiable
intent that is also in S3 are applied to the element |
Prescription Level |
Mandatory |
Tags |
“intent”, “attachment”, “structuralHierarchy” |
Comment |
[POL40005] allows qualified intents from either source |
Assertion ID |
POL-TA-40009 |
Source |
[POL40006] |
Target |
<component> element |
Prerequisites |
a) A component has a policySet attached to it. b) The component’s componentType has a policySet attached to it. |
Predicate |
The policySet attached to the componentType is ignored. |
Prescription Level |
Mandatory |
Tags |
“intent”, “attachment”, “componentType” "component" |
Assertion ID |
POL-TA-40010 |
Source |
[POL40007] |
Target |
<reference> with a configured <binding> subelement |
Prerequisites |
a) A reference has a directly or externally attached policySet. b) The policySet uses WS-Policy syntax. c) The configured binding instance points to a service outside the SCA Domain. d) The target service is configured with WS-Policy based policies. |
Predicate |
WS-Policy compatibility of the reference with its target service is
assessed using strict WS-Policy intersection. |
Prescription Level |
Mandatory |
Tags |
"policyMatching" "intersection" "WS-Policy" "reference" |
Assertion ID |
POL-TA-40011 |
Source |
[POL40007] |
Target |
<service> with a configured <binding> subelement |
Prerequisites |
a) A service with directly or externally attached policySet. b) The policySet uses WS-Policy syntax. c) The configured binding instance enables access to clients outside the SCA Domain. d) An external client is configured with WS-Policy based policies. |
Predicate |
WS-Policy compatibility of the client with the service is assessed
using strict WS-Policy intersection. |
Prescription Level |
Mandatory |
Tags |
policyMatching |
Assertion ID |
POL-TA-40012 |
Source |
[POL40009] |
Target |
SCDL element with a set of 2 or more intents applied to it |
Prerequisites |
The intent set contains two mutually exclusive intents. [POL-TA-30023] |
Predicate |
The SCDL element is not valid. |
Prescription Level |
Mandatory |
Tags |
"policyMatching" "mutually exclusive" "intents" |
Assertion ID |
POL-TA-40013 |
Source |
[POL40010, POL40011] |
Target |
SCDL Element with a directly attached policySet |
Prerequisites |
The SCA runtime only supports external attachment |
Predicate |
The directly attached policySet is ignored |
Prescription Level |
Mandatory |
Tags |
“policySet”, “attachment”, “externalAttachment” |
Assertion ID |
POL-TA-40014 |
Source |
[POL40010, POL40011] |
Target |
SCDL Element with an externally attached policySet |
Prerequisites |
The SCA runtime only supports external attachment |
Predicate |
The externally attached policySet is applied |
Prescription Level |
Mandatory |
Tags |
“policySet”, “attachment”, “externalAttachment” |
Assertion ID |
POL-TA-40015 |
Source |
[POL40010, POL40011] |
Target |
SCDL Element with a directly attached policySet and a different externally attached policySet |
Prerequisites |
The SCA runtime only supports external attachment |
Predicate |
The directly attached policySet is ignored and the externally attached
policySet is applied. |
Prescription Level |
Mandatory |
Tags |
“policySet”, “attachment”, “externalAttachment” |
Assertion ID |
POL-TA-40016 |
Source |
[POL40010, POL40012] |
Target |
SCDL Element with an externally attached policySet |
Prerequisites |
The SCA runtime only supports direct attachment |
Predicate |
The externally attached policySet is ignored. |
Prescription Level |
Mandatory |
Tags |
“policySet”, “attachment”, “directAttachment” |
Assertion ID |
POL-TA-40017 |
Source |
[POL40010, POL40012] |
Target |
SCDL Element with a directly attached policySet |
Prerequisites |
The SCA runtime only supports direct attachment |
Predicate |
The directly attached policySet is applied. |
Prescription Level |
Mandatory |
Tags |
“policySet”, “attachment”, “directAttachment” |
Assertion ID |
POL-TA-40018 |
Source |
[POL40010, POL40012] |
Target |
SCDL Element with a directly attached policySet and a different externally attached policySet |
Prerequisites |
The SCA runtime only supports direct attachment |
Predicate |
The externally attached policySet is ignored and the directly attached
policySet is applied. |
Prescription Level |
Mandatory |
Tags |
“policySet”, “attachment”, “directAttachment” |
Assertion ID |
POL-TA-40020 |
Source |
[POL40014] |
Target |
SCDL element with one or more elements below it in its implementation hierarchy |
Prerequisites |
An intent is applied to an element in the implementation hierarchy. |
Predicate |
The intent applies to the element |
Prescription Level |
Mandatory |
Tags |
“intent” “attachment”, “implementationHierarchy” |
Assertion ID |
POL-TA-40021 |
Source |
[POL40015] |
Target |
SCDL Element |
Prerequisites |
a)
Unqualified form of a qualifiable intent is attached to a SCDL element in the
<componentType/> of an implementation. b) Qualified form of the same qualifiable intent is attached to the corresponding element in a component implemented by the implementation. |
Predicate |
The qualified intent applies to the
child elements of the SCDL Element |
Prescription Level |
Mandatory |
Tags |
“intent”, “attachment”, “implementationHierarchy”,
“structural hierarchy” |
Assertion ID |
POL-TA-40022 |
Source |
[POL40016] |
Target |
Component service |
Prerequisites |
a) service uses an interface with one or more intents attached or an <interface> element with one or more intents attached. b) a binding that is configured for the service |
Predicate |
Intents attached to interface apply to
the service and to the binding. |
Prescription Level |
Mandatory |
Tags |
“intent” “attachment”, “interface”, “binding” |
Assertion ID |
POL-TA-40023 |
Source |
[POL40016] |
Target |
Component reference |
Prerequisites |
a) reference uses an interface with one or more intents attached or an <interface> element with one or more intents attached. b) a binding that is configured for the reference |
Predicate |
Intents attached to interface apply to
the reference and to the binding. |
Prescription Level |
Mandatory |
Tags |
“intent” , “attachment”, “interface”, “binding” |
Assertion ID |
POL-TA-40024 |
Source |
[POL40016] |
Target |
Component service |
Prerequisites |
a) service uses an interface with one or more policySets attached or an <interface> element with one or more policySets attached. b) a binding that is configured for the service |
Predicate |
policySets attached to interface apply
to the service and the binding. |
Prescription Level |
Mandatory |
Tags |
“policySet”, “attachment”, “interface”, “binding” |
Assertion ID |
POL-TA-40025 |
Source |
[POL40016] |
Target |
Component reference |
Prerequisites |
a) reference uses an interface with one or more policySets attached or an <interface> element with one or more policySets attached. b) a binding that is configured for the reference |
Predicate |
policySets attached to interface apply to the
reference and to the binding. |
Prescription Level |
Mandatory |
Tags |
“policySet”, “attachment”, “interface”, “binding” |
Assertion ID |
POL-TA-40026 |
Source |
[POL40017] |
Target |
Composite document |
Prerequisites |
Required intent set for an element in the composite contains a pair of mutually exclusive intents. |
Predicate |
Composite document is rejected and the
SCA runtime raises an error |
Prescription Level |
Mandatory |
Tags |
“intent” “attachment” "mutually exclusive" |
Assertion ID |
POL-TA-40027 |
Source |
[POL40018] |
Target |
Component Service |
Prerequisites |
a) service has one or more intents in its required intent set b) zero or more bindings (SCA binding is used if no others are configured) c) zero or more policySets (attached directly and/or externally) |
Predicate |
All the intents in the required intent
set are provided by the set of bindings and policySets which apply to the service. |
Prescription Level |
Preferred |
Tags |
“intent” “policySets”, “service”, “binding” |
Assertion ID |
POL-TA-40028 |
Source |
[POL40018] |
Target |
Component Reference |
Prerequisites |
a) reference has one or more intents in its required intent set b) zero or more bindings c) zero or more policySets (attached directly and/or externally) |
Predicate |
All the intents in the required intent
set are provided by the set of bindings and policySets which apply to the
reference. |
Prescription Level |
Preferred |
Tags |
“intent” “policySets”, “reference”, “binding” |
Assertion ID |
POL-TA-40036 |
Source |
[POL40018] |
Target |
Component implementation |
Prerequisites |
a) implementation has one or more intents in its required intent set b) zero or more intents are provided by the implementationType c) zero or more policySets (attached directly and/or externally) |
Predicate |
All the intents in the required intent
set are provided by the combination of the implementationType and any
policySets which apply to the implementation. |
Prescription Level |
Preferred |
Tags |
“intent” “policySets”, “reference”, “binding” |
Assertion ID |
POL-TA-40037 |
Source |
[POL40019] |
Target |
<component/> <service/> |
Prerequisites |
a) <component/> has <implementation/> which has an <interface/> attached to the <service/> corresponding to the <component> <service/> b) <interface/> has an intent applied to it, either in the @requires attribute of the <interface/> element or in the declaration of the interface artifact |
Predicate |
The intent applies to the
<component/> <service/> |
Prescription Level |
Mandatory |
Tags |
“intent” “”, “attachment”, “interface”, “service” |
Assertion ID |
POL-TA-40038 |
Source |
[POL40019] |
Target |
<component/> <reference/> |
Prerequisites |
a) <component/> has <implementation/> which has an <interface/> attached to the <reference/> corresponding to the <component> <reference/> b) <interface/> has an intent applied to it, either in the @requires attribute of the <interface/> element or in the declaration of the interface artifact |
Predicate |
The intent applies to the
<component/> <reference/> |
Prescription Level |
Mandatory |
Tags |
“intent” “”, “attachment”, “interface”, “reference” |
Assertion ID |
POL-TA-40039 |
Source |
[POL40020] |
Target |
QName of bindingType element |
Prerequisites |
More than one bindingType is defined in the SCA Domain |
Predicate |
The QName of the bindingType is unique amongst the set of bindingTypes
in the SCA Domain. |
Prescription Level |
Mandatory |
Tags |
“bindingType” |
Assertion ID |
POL-TA-40040 |
Source |
[POL40021] |
Target |
Binding implementation |
Prerequisites |
a) the associated bindingType has one or more intents listed in the @alwaysProvides attribute b) the associated bindingType has one or more intents listed in the @mayProvides attribute |
Predicate |
The binding implementation implements
all the intents listed in its
@alwaysProvides and @mayProvides attributes. |
Prescription Level |
Mandatory |
Tags |
“intent”, “alwaysProvides”, “mayProvides”, “bindingType” |
Assertion ID |
POL-TA-40041 |
Source |
[POL40022, POL40025] |
Target |
A reference that is connected to a service (i.e. a wire) |
Prerequisites |
a) one or more policySets (using policy language X) applied to the reference b) one or more policySets (using policy language X) applied to the service |
Predicate |
The wire is valid if the policySets at each end of the wire are
compatible, using the compatibility rules of policy language X. |
Prescription Level |
Mandatory |
Tags |
“policySets” “compatibility” |
Assertion ID |
POL-TA-40042 |
Source |
[POL40023, POL40025] |
Target |
A reference that is connected to a service (i.e. a wire) |
Prerequisites |
a) one or more policySets (using policy language X) applied to the reference b) one or more policySets (using policy language Y) applied to the service |
Predicate |
The wire is not valid. |
Prescription Level |
Mandatory |
Tags |
“policySets” “compatibility” |
Assertion ID |
POL-TA-40043 |
Source |
[POL40024, POL40025] |
Target |
A reference that is connected to a service (i.e. a wire) |
Prerequisites |
a) one or more policySets (using WS-Policy language) applied to the reference b) one or more policySets (using WS-Policy language) applied to the service |
Predicate |
Wire is valid if the policySets are
compatible using WS-Policy strict intersection. |
Prescription Level |
Mandatory |
Tags |
“policySet”, “compatibility”, “WS-Policy” |
Assertion ID |
POL-TA-40049 |
Source |
[POL40002] |
Target |
<policySet> element with @attachTo attribute |
Prerequisites |
a) A component with a <property> element b) The policySet is deployed to the SCA Domain c) The component is deployed to the SCA Domain |
Predicate |
The @attachTo attribute does not resolve to the component property |
Prescription Level |
Mandatory |
Tags |
“policySet”, “attachment” |
Assertion ID |
POL-TA-40050 |
Source |
[POL40027] |
Target |
The required intent set for a component service or reference |
Prerequisites |
The service or reference interface definition contains attached intents |
Predicate |
The required intent set for the service or reference contains the
intents from the interface definition |
Prescription Level |
Mandatory |
Tags |
“intent”, “attachment”, “interface” |
Assertion ID |
POL-TA-40051 |
Source |
[POL40029,POL40030] |
Target |
Deployed component service |
Prerequisites |
a) The service has an intent attached to it (directly or externally) b) The service binding does not satisfy the intent c) There is a policySet externally attached to the service which satisfies the intent d) The policySet that satisfies the intent is removed from the SCA Domain by a deployment action |
Predicate |
Removal of the policySet fails and an error is raised. |
Prescription Level |
Mandatory |
Tags |
“intent”, “policySet”, “domain”, “redeployment” |
Assertion ID |
POL-TA-40052 |
Source |
[POL40029, POL40030] |
Target |
Deployed component service |
Prerequisites |
a) The service has an intent attached to it (directly or externally) b) The service binding does not satisfy the intent c) There is an externalAttachment element that attaches a policySet to the service which satisfies the intent d) The externalAttachment element is removed from the SCA Domain by a deployment action |
Predicate |
Removal of the externalAttachment element fails and an error is
raised. |
Prescription Level |
Mandatory |
Tags |
“intent”, “externalAttachment”, “policySet”, “domain”, “redeployment” |
Assertion ID |
POL-TA-40053 |
Source |
[POL40029, POL40030] |
Target |
Deployed profile intent |
Prerequisites |
a) The profile intent requires two non-profile intents b) One of the two non-profile intents is removed from the SCA Domain by a deployment action |
Predicate |
Removal of the intent fails and an error is raised. |
Prescription Level |
Mandatory |
Tags |
“intent”, “domain”, “redeployment” |
Assertion ID |
POL-TA-40054 |
Source |
[POL40032] |
Target |
Deployed Component |
Prerequisites |
a) Component has a service b) Component has a policySet externally attached to the service c) The policySet is removed from the SCA Domain by a deployment action |
Predicate |
All new runtime instances of the component execute without the
policySet. |
Prescription Level |
Mandatory |
Tags |
“redeployment”, “policySet”, “domain” |
Assertion ID |
POL-TA-40055 |
Source |
[POL40032] |
Target |
Deployed Component |
Prerequisites |
a) Component has a service b) Component has a first policySet attached to the service via an external attachment element c) The externalAttachment element is changed to point to a second policySet by a deployment action |
Predicate |
All new runtime instances of the component execute with the second
policySet. |
Prescription Level |
Mandatory |
Tags |
“redeployment”, “policySet”, “components” |
Assertion ID |
POL-TA-40056 |
Source |
[POL40032] |
Target |
Deployed Component |
Prerequisites |
a) Component has a service b) Component has a first intent attached to the service via an external attachment element c) There is a first policySet that externally attaches itself based on the presence of the first intent (using the IntentRefs XPath function) d) The externalAttachment element is changed to point to a different second intent e) There is a second policySet that externally attaches itself based on the presence of the second intent (using the IntentRefs XPath function) |
Predicate |
All new runtime instances of the component execute with the second policySet. |
Prescription Level |
Mandatory |
Tags |
“redeployment”, “policySet”, “intent”, “components” |
Assertion ID |
POL-TA-40057 |
Source |
[POL40034] |
Target |
Component service |
Prerequisites |
a) Component is contained within a composite which is
deployed into the SCA Domain b) Component service has no directly attached intents c) SCA Domain already contains an <externalAttachment/> element which references an intent and which has an @attachTo attribute which includes the component service as one of the places to which it attaches the intent d) Component service has no directly attached policySets e) SCA Domain already contains a policySet with an @attachTo attribute which targets component services which have the intent referenced by the <externalAttachment/> element |
Predicate |
The component service runs with the policies present in the policySet |
Prescription Level |
Mandatory |
Tags |
“intent”, “policySet”. “attachment”, “externalAttachment”, “domain” |
Assertion ID |
POL-TA-40058 |
Source |
[POL40035] |
Target |
@attachTo attribute of a <externalAttachment> element |
Prerequisites |
|
Predicate |
The contents of the @attachTo attribute is a valid XPath 1.0 production expr. |
Prescription Level |
Mandatory |
Tags |
“externalAttachment”, “definitions.xml”, "@attachTo", "XPath" |
Assertion ID |
POL-TA-40059 |
Source |
[POL40031] |
Target |
Deployed component service |
Prerequisites |
a) The service has an intent attached to it (directly or externally) b) The service binding does not satisfy the intent c) There is a policySet externally attached to the service which satisfies the intent d) The policySet that satisfies the intent is updated by a deployment action |
Predicate |
The deployed component immediately begins executing with the updated policy |
Prescription Level |
Optional |
Tags |
“intent”, “policySet”, “domain”, “redeployment” |
Assertion ID |
POL-TA-40060 |
Source |
[POL40033] |
Target |
Deployed component service |
Prerequisites |
a) The service has an intent attached to it (directly or externally) b) The service binding does not satisfy the intent c) There is a policySet externally attached to the service which satisfies the intent d) The policySet that satisfies the intent is updated by a deployment action |
Predicate |
The deployed component continues executing with the pre-update policy |
Prescription Level |
Optional |
Tags |
“intent”, “policySet”, “domain”, “redeployment” |
Assertion ID |
POL-TA-40061 |
Source |
[POL40033] |
Target |
Deployed component service |
Prerequisites |
a) The service has an intent attached to it (directly or externally) b) The service binding does not satisfy the intent c) There is a policySet externally attached to the service which satisfies the intent d) The policySet that satisfies the intent is updated by a deployment action |
Predicate |
The deployed component is stopped and instances are discarded |
Prescription Level |
Optional |
Tags |
“intent”, “policySet”, “domain”, “redeployment” |
Assertion ID |
POL-TA-50001 |
Source |
[POL50001] |
Target |
<implementationType/> @name attribute |
Prerequisites |
|
Predicate |
@name attribute value of the
implementationType element is the QName of an XSD global element for
<implementation.xxx> elements. . |
Prescription Level |
Mandatory |
Tags |
“implementationType” |
Assertion ID |
POL-TA-70001 |
Source |
[POL70001] |
Target |
SCA Runtime |
Prerequisites |
authorization intent is present on a wire. |
Predicate |
An authorization check is made during
invocation of the service. |
Prescription Level |
Mandatory |
Tags |
“authorization”, “intent” |
Assertion ID |
POL-TA-70002 |
Source |
[POL70009] |
Target |
SCA Runtime |
Prerequisites |
confidentiality intent is present on a wire. |
Predicate |
Messages exchanged over the wire are
only viewable the two parties that make up the wire. |
Prescription Level |
Mandatory |
Tags |
“confidentiality”, “intent” |
Assertion ID |
POL-TA-70003 |
Source |
[POL70010] |
Target |
SCA Runtime |
Prerequisites |
integrity intent is present on a wire. |
Predicate |
Messages exchanged over the wire are not
altered by a third party. |
Prescription Level |
Mandatory |
Tags |
“integrity”, “intent” |
Assertion ID |
POL-TA-70004 |
Source |
[POL70011] |
Target |
SCA Runtime |
Prerequisites |
a) A serverAuthentication, clientAuthentication, confidentiality.
or integrity intent is present on a wire. b) The intent is qualified by transport. |
Predicate |
The SCA runtime delegates the
corresponding functionality to the transport layer of the communications
protocol. |
Prescription Level |
Mandatory |
Tags |
“authentication”, “confidentiality”, “integrity”, “intent” |
Assertion ID |
POL-TA-70005 |
Source |
[POL70012] |
Target |
SCA Runtime |
Prerequisites |
a) A serverAuthentication, clientAuthentication, confidentiality.
or integrity intent is present on a wire. b) The intent is qualified by message. |
Predicate |
The SCA runtime delegates the
corresponding functionality to the message layer of the communications
protocol. |
Prescription Level |
Mandatory |
Tags |
“authentication”, “confidentiality”, “integrity”, “intent” |
Assertion ID |
POL-TA-70006 |
Source |
[POL70013] |
Target |
SCA Runtime |
Prerequisites |
The serverAuthentication intent is present on a wire. |
Predicate |
The SCA runtime authenticates the server
to the client. |
Prescription Level |
Mandatory |
Tags |
“authentication”, “intent” |
Assertion ID |
POL-TA-70007 |
Source |
[POL70014] |
Target |
SCA Runtime |
Prerequisites |
The clientAuthentication intent is present on a wire. |
Predicate |
The SCA runtime authenticates the client
to the server. |
Prescription Level |
Mandatory |
Tags |
“authentication”, “intent” |
Assertion ID |
POL-TA-80001 |
Source |
[POL80001] |
Target |
SCA Runtime |
Prerequisites |
The atLeastOnce intent is present on a wire. |
Predicate |
The SCA runtime delivers at least one
copy of the message to the destination service implementation. |
Prescription Level |
Mandatory |
Tags |
“atLeastOnce”, “intent” |
Assertion ID |
POL-TA-80002 |
Source |
[POL80002] |
Target |
SCA Runtime |
Prerequisites |
The atMostOnce intent is present on a wire. |
Predicate |
The SCA runtime delivers at most one
copy of the message to the destination service implementation. |
Prescription Level |
Mandatory |
Tags |
“atMostOnce”, “intent” |
Assertion ID |
POL-TA-80003 |
Source |
[POL80003] |
Target |
SCA Runtime |
Prerequisites |
The ordered intent is present on a wire. |
Predicate |
The SCA runtime delivers messages sent
by each client to the service in the order that the messages were sent by the
client. |
Prescription Level |
Mandatory |
Tags |
“ordered”, “intent” |
Assertion ID |
POL-TA-80004 |
Source |
[POL80004] |
Target |
SCA Runtime |
Prerequisites |
The exactlyOnce intent is present on a wire. |
Predicate |
The SCA runtime delivers one and only
one copy of the message to the destination service implementation. |
Prescription Level |
Mandatory |
Tags |
“exactlyOnce”, “intent” |
Assertion ID |
POL-TA-90003 |
Source |
[POL90003] |
Target |
Implementation of a component marked with managedTransaction.global intent. |
Prerequisites |
|
Predicate |
The implementation runs in a global
transaction. |
Prescription Level |
Mandatory |
Tags |
“managedTransaction.global”, “intent” |
Assertion ID |
POL-TA-90004 |
Source |
[POL90004] |
Target |
Implementation of a component marked with managedTransaction.local intent. |
Prerequisites |
|
Predicate |
The implementation runs in a local
transaction. |
Prescription Level |
Mandatory |
Tags |
“managedTransaction.local”, “intent”, “transactionContext” |
Assertion ID |
POL-TA-90006 |
Source |
[POL90006] |
Target |
A component marked with managedTransaction.local intent. |
Prerequisites |
The component invokes a remotable service. |
Predicate |
Local transaction context is not
propagated to the remotable service. |
Prescription Level |
Mandatory |
Tags |
“localTransaction”, “intent”, “transactionContext” |
Assertion ID |
POL-TA-90007 |
Source |
[POL90007] |
Target |
Implementation of a component marked with noManagedTransaction intent. |
Prerequisites |
a) A service of the component is invoked by a client. b) A transaction is propagated from the client with the service invocation. |
Predicate |
The component is not executed under the
propagated transaction. |
Prescription Level |
Mandatory |
Tags |
“noManagedTransaction”, “intent”, “transactionContext” |
Comment |
The client for a test based on this test
assertion is going to have to be a non-SCA client since the combination of
"propagatesTransaction" and "noManagedTransaction" would
result in an error in an SCA composite which attempted to model the
interaction implied by this assertion. |
Assertion ID |
POL-TA-90008 |
Source |
[POL90008] |
Target |
Component implementation
with a reference with @requires=”transactedOneWay”. |
Prerequisites |
a) Component runs under a global transaction. c) Reference is wired to Component B using a transaction aware binding that supports the transactedOneWay intent. d) Component invokes the reference using a one-way operation. e) Component A rolls back its transaction. |
Predicate |
Component B is not invoked. |
Prescription Level |
Mandatory |
Tags |
“transactedOneWay”, “intent” |
Assertion ID |
POL-TA-90009 |
Source |
[POL90009] |
Target |
<reference/> of component that is not configured to run under a global transaction. |
Prerequisites |
|
Predicate |
Reference is not marked with the transactedOneWay
intent. |
Prescription Level |
Mandatory |
Tags |
“transactedOneWay”, “intent” "reference" |
Assertion ID |
POL-TA-90010 |
Source |
[POL90009] |
Target |
<reference/> of component with a binding that does not support transactional message sending |
Prerequisites |
|
Predicate |
Rreference is not marked with the transactedOneWay
intent. |
Prescription Level |
Mandatory |
Tags |
“transactedOneWay”, “intent” |
Assertion ID |
POL-TA-90011 |
Source |
[POL90010] |
Target |
Component with a <service/> marked with @requires="transactedOneWay". |
Prerequisites |
a) Component runs under a global transaction. c) Client component is wired to the component using a transaction aware binding that supports the transactedOneWay intent. d) Client component invokes the component via a one-way operation. e) Client component rolls back its transaction. |
Predicate |
The component is not invoked. |
Prescription Level |
Mandatory |
Tags |
“transactedOneWay”, “intent”, “transactionContext” |
Assertion ID |
POL-TA-90012 |
Source |
[POL90011] |
Target |
<service/> of
component that is not configured to run under
a global transaction. |
Prerequisites |
|
Predicate |
service is not marked with the transactedOneWay
intent. |
Prescription Level |
Mandatory |
Tags |
“transactedOneWay”, “intent” |
Assertion ID |
POL-TA-90013 |
Source |
[POL90011] |
Target |
<service/> of component that has a <binding/> that does not support transactional message sending |
Prerequisites |
|
Predicate |
service is not marked with the transactedOneWay
intent. |
Prescription Level |
Mandatory |
Tags |
“transactedOneWay”, “intent” |
Assertion ID |
POL-TA-90016 |
Source |
[POL90012] |
Target |
Component <reference/> with @requires=”immediateOneWay” |
Prerequisites |
a) Component runs under a global transaction c) <reference/> is wired to target service using a transaction aware binding that supports the immediateOneWay intent d) Component invokes the reference via a one-way operation e) Component rolls back its transaction |
Predicate |
Target service is invoked once and only
once |
Prescription Level |
Mandatory |
Tags |
“immediateOneWay”, “intent” |
Assertion ID |
POL-TA-90017 |
Source |
[POL90013] |
Target |
Component <service/> with @requires="immediateOneWay" |
Prerequisites |
a) Client is wired to the <service/> using a transaction aware binding that supports the immediateOneWay intent b) Client runs under a global transaction d) Client invokes the <service/> via a one-way operation e) Client rolls back its transaction |
Predicate |
<service/> is invoked once and only
once |
Prescription Level |
Mandatory |
Tags |
“immediateOneWay”, “intent” "rollback" |
Assertion ID |
POL-TA-90018 |
Source |
[POL90015, POL90016, POL90020] |
Target |
Component <service/> marked with @requires=”propagatesTransaction” |
Prerequisites |
a) Client component has a
reference with @requires=”propagatesTransaction” b) Client component runs under a global transaction c) Client component is wired to the <service/> using a transaction aware binding that supports the propagatesTransaction intent d) Client component invokes the <service/> via a request/response operation |
Predicate |
<service/>
operation runs under the client component’s transaction. |
Prescription Level |
Mandatory |
Tags |
“propagatesTransaction”, “intent”, “transactionContext” |
Assertion ID |
POL-TA-90020 |
Source |
[POL90017, POL90022] |
Target |
Component <service/> marked with @requires=”suspendsTransaction” |
Prerequisites |
a) Client component has a
reference with @requires=”suspendsTransaction” b) Client component runs under a global transaction c) Client component is wired to <service/> using a transaction aware binding that supports the suspendsTransaction intent d) Client component invokes <service/> via a request/response operation |
Predicate |
<service/>
operation does not run under client component’s transaction. |
Prescription Level |
Mandatory |
Tags |
“suspendsTransaction”, “intent”, “transactionContext” |
Assertion ID |
POL-TA-90021 |
Source |
[POL90019] |
Target |
Component <service/> |
Prerequisites |
Component is marked with the managedTransaction.local intent |
Predicate |
<service/> is not marked with the propagatesTransaction
intent |
Prescription Level |
Mandatory |
Tags |
“propagatesTransaction”, “managedTransaction.local”, ”, “intent” |
Assertion ID |
POL-TA-90022 |
Source |
[POL90019] |
Target |
Component <service/> |
Prerequisites |
Component is marked with the noManagedTransaction intent |
Predicate |
<service/> is not marked with the propagatesTransaction
intent |
Prescription Level |
Mandatory |
Tags |
“propagatesTransaction”, “noManagedTransaction”, “intent” |
Assertion ID |
POL-TA-90025 |
Source |
[POL90023] |
Target |
Component <reference/> |
Prerequisites |
Component is marked with the managedTransaction.local intent |
Predicate |
<reference/> is not marked with
the propagatesTransaction intent |
Prescription Level |
Mandatory |
Tags |
“propagatesTransaction”, “managedTransaction.local”, ”, “intent” |
Assertion ID |
POL-TA-90026 |
Source |
[POL90023] |
Target |
Component <reference/> |
Prerequisites |
Component is marked with the noManageTransaction intent |
Predicate |
<reference/> is not marked with
the propagatesTransaction intent |
Prescription Level |
Mandatory |
Tags |
“propagatesTransaction”, “noManagedTransaction”, “intent” |
Assertion ID |
POL-TA-90027 |
Source |
[POL90024] |
Target |
Component reference with a one-way operation |
Prerequisites |
a) Component is marked to run under a transaction b) Component invokes a method of the reference marked @OneWay |
Predicate |
Transaction context is not propagated
with the message sent from the reference |
Prescription Level |
Mandatory |
Tags |
“transactionContext”, “intent” |
Assertion ID |
POL-TA-90028 |
Source |
[POL90025] |
Target |
Component reference with a one-way operation and also marked with propagatesTransaction intent. |
Prerequisites |
a) Component is marked to run under a transaction b) Component implementation invokes a method of the reference marked @OneWay |
Predicate |
Transaction context is not propagated
with the message sent from the reference |
Prescription Level |
Mandatory |
Tags |
“propagatesTransaction”, “intent” |
Assertion ID |
POL-TA-90030 |
Source |
[POL90027] |
Target |
<component/> <service/> |
Prerequisites |
<component/> <implementation/> marked with managedTransaction.local
intent |
Predicate |
<service/> is not marked with the transactedOneWay
intent |
Prescription Level |
Mandatory |
Tags |
“transactedOneWay”, “managedTransaction.local”, ,“intent” |
Assertion ID |
POL-TA-90031 |
Source |
[POL90027] |
Target |
<component/> <reference/> |
Prerequisites |
<component/> <implementation/> marked with managedTransaction.local intent |
Predicate |
<reference/> is not marked with
the transactedOneWay intent |
Prescription Level |
Mandatory |
Tags |
“transactedOneWay”, “noManagedTransaction”,“intent” |
Assertion ID |
POL-TA-90032 |
Source |
[POL90028] |
Target |
<component/> <interface/operation> |
Prerequisites |
<component/> <interface/operation> is a request-response operation |
Predicate |
<interface/operation> is not
marked with the transactedOneWay intent. |
Prescription Level |
Mandatory |
Tags |
“transactedOneWay”,“intent” |
Assertion ID |
POL-TA-90033 |
Source |
[POL90029] |
Target |
<component/> <interface/operation> |
Prerequisites |
<component/> <interface/operation> is a request-response operation |
Predicate |
<interface/operation> is not
marked with the immediateOneWay intent. |
Prescription Level |
Mandatory |
Tags |
“immediateOneWay”,“intent” |
Assertion ID |
POL-TA-90034 |
Source |
[POL90030] |
Target |
<component/> <reference/> |
Prerequisites |
<component/> <reference/> marked with the asynchInvocation intent |
Predicate |
<component/> <reference/> is
not marked with the propagatesTransaction
intent |
Prescription Level |
Mandatory |
Tags |
“asynchInvocation”, “propagatesTransaction”,“intent” |
Assertion ID |
POL-TA-90035 |
Source |
[POL90030] |
Target |
<component/> <service/> |
Prerequisites |
<component/> <service/> marked with the asynchInvocation intent |
Predicate |
<component/> <service/> is
not marked with the propagatesTransaction
intent |
Prescription Level |
Mandatory |
Tags |
“asynchInvocation”, “propagatesTransaction”,“intent” |
Assertion ID |
POL-TA-90036 |
Source |
[POL90031] |
Target |
<component/> <service/> marked with asynchInvocation intent |
Prerequisites |
a) Client component has a
reference with @requires=”propagatesTransaction” b) Client component runs under a global transaction c) Client component is wired to <service/> using a transaction aware binding that supports the propagatesTransaction intent d) Client component invokes <service/> via a request/response operation |
Predicate |
<service/> behaves as if it were
marked with the suspendsTtransaction intent |
Prescription Level |
Mandatory |
Tags |
“asynchInvocation”, “intent” |
Assertion ID |
POL-TA-100001 |
Source |
[POL100001] |
Target |
SOAP intent on a service and the reference it is wired to. |
Prerequisites |
|
Predicate |
The SCA runtime uses the SOAP
messaging model to deliver messages |
Prescription Level |
Mandatory |
Tags |
“SOAP”, “intent” |
Assertion ID |
POL-TA-100002 |
Source |
[POL100002] |
Target |
SOAP.v1_1 intent on a service and the reference it is wired to. |
Prerequisites |
|
Predicate |
The SCA runtime uses the SOAP.v1_1
messaging model to deliver messages |
Prescription Level |
Mandatory |
Tags |
“SOAP.v1_1”, “intent” |
Assertion ID |
POL-TA-100003 |
Source |
[POL100002] |
Target |
SOAP.v1_2 intent on a service and the reference it is wired to. |
Prerequisites |
|
Predicate |
The SCA runtime uses the SOAP.v1_2
messaging model to deliver messages |
Prescription Level |
Mandatory |
Tags |
“SOAP.v1_2”, “intent” |
Assertion ID |
POL-TA-100004 |
Source |
[POL100003] |
Target |
JMS intent on a service and the reference it is wired to. |
Prerequisites |
|
Predicate |
The SCA runtime ensures that the binding
used to send and receive messages supports the JMS API. |
Prescription Level |
Mandatory |
Tags |
“JMS”, “intent” |
Assertion ID |
POL-TA-100005 |
Source |
[POL100004] |
Target |
<component/> <service/> |
Prerequisites |
|
Predicate |
<service/> does not have the
noListener intent applied to it |
Prescription Level |
Mandatory |
Tags |
“noListener”, “intent” |
Assertion ID |
POL-TA-100006 |
Source |
[POL100005] |
Target |
<component/> <reference/> marked with noListener intent |
Prerequisites |
- <reference> has a callback interface |
Predicate |
No connection is created from the
service to a client |
Prescription Level |
Mandatory |
Tags |
“noListener”, “intent” |
Assertion ID |
POL-TA-100007 |
Source |
[POL100006] |
Target |
<component/> <service> marked with EJB intent |
Prerequisites |
- EJB client that can invoke the <service> |
Predicate |
The service is invoked using the EJB
API. |
Prescription Level |
Mandatory |
Tags |
“EJB”, “intent” |
Assertion ID |
POL-TA-100008 |
Source |
[POL100007] |
Target |
<component/> <reference> marked with EJB intent |
Prerequisites |
- EJB that can be invoked by the <reference> |
Predicate |
The <reference> is used to invoke
the EJB. |
Prescription Level |
Mandatory |
Tags |
“EJB”, “intent” |
Assertion ID |
POL-TA-110001 |
Source |
[POL110001] |
Target |
A composite file |
Prerequisites |
composite file does not conform to sca-policy-1.1.xsd schema |
Predicate |
SCA runtime rejects the composite file
and raises an error. |
Prescription Level |
Mandatory |
Tags |
“xmlSchema”, “schemaConformance” |
Conformance statement |
Test Assertion |
POL30001 |
POL-TA-30001, POL-TA-30002 |
POL30002 |
POL-TA-30003 |
POL30004 |
POL-TA-30004 |
POL30005 |
POL-TA-30005 |
POL30006 |
POL-TA-30006 |
POL30007 |
POL-TA-30007 |
POL30008 |
POL-TA-30008 |
POL30010 |
POL-TA-30010 |
POL30011 |
POL-TA-30011 |
POL30013 |
POL-TA-30013 |
POL30015 |
POL-TA-30015 |
POL30016 |
POL-TA-30016 |
POL30017 |
POL-TA-30017 |
POL30018 |
POL-TA-30018 |
POL30019 |
POL-TA-30019 |
POL30020 |
POL-TA-30020 |
POL30021 |
POL-TA-30021 |
POL30024 |
POL-TA-30025 |
POL30025 |
POL-TA-30026 |
POL40001 |
POL-TA-40001,
POL-TA-40002, POL-TA-40003 |
POL40002 |
POL-TA-40049 |
POL40004 |
POL-TA-40004, POL-TA-40005 |
POL40005 |
POL-TA-40006,
POL-TA-40007, POL-TA-40008 |
POL40006 |
POL-TA-40009 |
POL40007 |
POL-TA-40010, POL-TA-40011 |
POL40009 |
POL-TA-40012 |
POL40010 |
POL-TA-40001,
POL-TA-40002, POL-TA-40003, POL-TA-40013, POL-TA-40014, POL-TA-40015, POL-TA-40016,
POL-TA-40017, POL-TA-40018 |
POL40011 |
POL-TA-40013,
POL-TA-40014, POL-TA-40015 |
POL40012 |
POL-TA-40016,
POL-TA-40017, POL-TA-40018 |
POL40014 |
POL-TA-40020 |
POL40015 |
POL-TA-40021 |
POL40016 |
POL-TA-40022,
POL-TA-40023, POL-TA-40024, POL-TA-40025 |
POL40017 |
POL-TA-40026 |
POL40018 |
POL-TA-40027,
POL-TA-40028, POL-TA-40036 |
POL40019 |
POL-TA-40037, POL-TA-40038 |
POL40020 |
POL-TA-40039 |
POL40021 |
POL-TA-40040 |
POL40022 |
POL-TA-40041 |
POL40023 |
POL-TA-40042 |
POL40024 |
POL-TA-40043 |
POL40025 |
POL-TA-40041,
POL-TA-40042, POL-TA-40043 |
POL40027 |
POL-TA-40050 |
POL40029 |
POL-TA-40051,
POL-TA-40052, POL-TA-40053 |
POL40030 |
POL-TA-40051,
POL-TA-40052, POL-TA-40053 |
POL40031 |
POL-TA-40059 |
POL40032 |
POL-TA-40054,
POL-TA-40055, POL-TA-40056 |
POL40033 |
POL-TA-40060, POL-TA-40061 |
POL40034 |
POL-TA-40057 |
POL40035 |
POL-TA-40058 |
POL50001 |
POL-TA-50001 |
POL70001 |
POL-TA-70001 |
POL70009 |
POL-TA-70002 |
POL70010 |
POL-TA-70003 |
POL70011 |
POL-TA-70004 |
POL70012 |
POL-TA-70005 |
POL70013 |
POL-TA-70006 |
POL70014 |
POL-TA-70007 |
POL80001 |
POL-TA-80001 |
POL80002 |
POL-TA-80002 |
POL80003 |
POL-TA-80003 |
POL80004 |
POL-TA-80004 |
POL90003 |
POL-TA-90003 |
POL90004 |
POL-TA-90004 |
POL90006 |
POL-TA-90006 |
POL90007 |
POL-TA-90007 |
POL90008 |
POL-TA-90008 |
POL90009 |
POL-TA-90009, POL-TA-90010 |
POL90010 |
POL-TA-90011 |
POL90011 |
POL-TA-90012, POL-TA-90013 |
POL90012 |
POL-TA-90016 |
POL90013 |
POL-TA-90017 |
POL90015 |
POL-TA-90018 |
POL90016 |
POL-TA-90018 |
POL90017 |
POL-TA-90020 |
POL90019 |
POL-TA-90021, POL-TA-90022 |
POL90020 |
POL-TA-90018 |
POL90022 |
POL-TA-90020 |
POL90023 |
POL-TA-90025, POL-TA-90026 |
POL90024 |
POL-TA-90027 |
POL90025 |
POL-TA-90028 |
POL90027 |
POL-TA-90030, POL-TA-90031 |
POL90028 |
POL-TA-90032 |
POL90029 |
POL-TA-90033 |
POL90030 |
POL-TA-90034, POL-TA-90035 |
POL90031 |
POL-TA-90036 |
POL100001 |
POL-TA-100001 |
POL100002 |
POL-TA-100002, POL-TA-100003 |
POL100003 |
POL-TA-100004 |
POL100004 |
POL-TA-100005 |
POL100005 |
POL-TA-100006 |
POL100006 |
POL-TA-100007 |
POL100007 |
POL-TA-100008 |
POL110001 |
POL-TA-110001 |
There are no conformance statements relating to the Test Assertions.
The following individuals have participated in the creation of this specification and are gratefully acknowledged
Participants:
Participant Name |
Affiliation |
Jeff Anderson |
Deloitte Consulting LLP |
Ron Barack |
SAP AG* |
Michael Beisiegel |
IBM |
Vladislav Bezrukov |
SAP AG* |
Henning Blohm |
SAP AG* |
David Booz |
IBM |
Fred Carter |
AmberPoint |
Tai-Hsing Cha |
TIBCO Software Inc. |
Martin Chapman |
Oracle Corporation |
Mike Edwards |
IBM |
Raymond Feng |
IBM |
Billy Feng |
Primeton Technologies, Inc. |
Robert Freund |
Hitachi, Ltd. |
Murty Gurajada |
TIBCO Software Inc. |
Simon Holdsworth |
IBM |
Michael Kanaley |
TIBCO Software Inc. |
Anish Karmarkar |
Oracle Corporation |
Nickolas Kavantzas |
Oracle Corporation |
Rainer Kerth |
SAP AG* |
Pundalik Kudapkar |
TIBCO Software Inc. |
Meeraj Kunnumpurath |
Individual |
Rich Levinson |
Oracle Corporation |
Mark Little |
Red Hat |
Ashok Malhotra |
Oracle Corporation |
Jim Marino |
Individual |
Jeff Mischkinsky |
Oracle Corporation |
Dale Moberg |
Axway Software* |
Simon Nash |
Individual |
Bob Natale |
Mitre Corporation* |
Eisaku Nishiyama |
Hitachi, Ltd. |
Sanjay Patil |
SAP AG* |
Plamen Pavlov |
SAP AG* |
Martin Raepple |
SAP AG* |
Fabian Ritzmann |
Sun Microsystems |
Ian Robinson |
IBM |
Scott Vorthmann |
TIBCO Software Inc. |
Eric Wells |
Hitachi, Ltd. |
Prasad Yendluri |
Software AG, Inc.* |
Alexander Zubev |
SAP AG* |
None
Revision |
Date |
Editor |
Changes Made |
02 |
09/06/09 |
Mike Edwards |
Initial version in OASIS format |
WD02 |
04/08/09 |
Mike Edwards, Dave Booz, Ashok Malhotra |
Reworked, reworded,
reFormatted many TAs |
WD03 |
12/08/09 |
Dave Booz |
Various edits and AIs |
WD04 |
10/30/09 |
Dave Booz |
Added missing TA numbers |
WD05 |
11/10/09 |
Dave Booz |
Misc editorial changes Updates from resolved issues
through cd02 rev5 |
WD06 |
4/22/10 |
Dave Booz, Ashok Malhotra |
Upgrade to CD03 Misc editorial changes |
CD01 |
4/26/10 |
Dave Booz |
Misc editorial updates to
prepare for CD01 |