[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: TAML assertions derived from the core
Hi all, attached you'll find the assertions I derived from the core spec. As mentioned in the call there are just a few assertions in this file. Most of the 'work' is done by the XML schema. Greetings, Andreas -- Andreas Kühne phone: +49 177 293 24 97 mailto: kuehne@trustable.de Trustable Ltd. Niederlassung Deutschland Ströverstr. 18 - 59427 Unna Amtsgericht Hamm HRB 5868 Directors Andreas Kühne, Heiko Veit Company UK Company No: 5218868 Registered in England and Wales
<?xml version="1.0" encoding="UTF-8"?> <!-- This test assertions source document contains markup intended as test assertions to processed by TAMELizer. This can be any document with any other markup, as long as it has embedded in it (at any level) well-formed test assertions. The schema of the document does not matter to the TAMELizer. Embedded at any place in the "source" document, can be: - a taml:common element that includes general information for test report as well as namespaces for test assertion expressions. - one or more taml:testAssertion elements. --> <dssCoreSpecification xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" > <body> <section id="DSSRequests" title="DSS Requests"> <!-- ======= Common information to all Test Assertions: ======= --> <taml:common xmlns:taml="http://docs.oasis-open.org/ns/tag/taml-201002/" > <!-- This doc identification will appear in the test report --> <taml:sourceDocument version="1.0" revision="6">Assertions on the DSS Core</taml:sourceDocument> <taml:authors>Andreas Kuehne</taml:authors> <taml:location>some URL</taml:location> <!-- namespaces and their prefixes as used in the XPath expressions of the TAs are declared in the taml:namespaces element. --> <taml:namespaces xmlns:dss="urn:oasis:names:tc:dss:1.0:core:schema" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" /> <taml:reportName>"DSS Core" Conformance Report</taml:reportName> </taml:common> <!-- ======= DC_TA001: (target type: DSS request) a simple test assertion. - without even an error message. Can only produce a terse "pass" or "fail" in test report. - the normativeSource element documents the normative requirement addressed by this test assertion. - note that the predicate expression is relative to the selected target (could have started with: <taml:predicate>wlog:generalProperties... as well, or with: <taml:predicate>$target/wlog:generalProperties)... - NOTE: the target/@type attribute (here would have value "widget") and target/@idscheme attribute are not specified: it is sufficient to specify these for at least one test assertion in the group of TAs that have same target XPath expression. So here this test assertion is "typed" because it belongs to such a group, but if you were to run this TA just by itself as is, it would be reported under "untyped" category in the test report. =============== --> <taml:testAssertion id="DC_TA001" name="ensure 'InputDocument' tag is present in a sign request " enable="true" xmlns:taml="http://docs.oasis-open.org/ns/tag/taml-201002/"> <taml:normativeSource>The input documents, which the signature will be calculated over. This element, while optional in RequestBaseType, the the client MUST include it in a <SignRequest> element. </taml:normativeSource> <taml:prescription level="mandatory" /> <taml:target type="SignRequest" idscheme="concat(taml:docsource(), 'DSSRequest:', ./attribute::id)">/dss:SignRequest</taml:target> <taml:predicate>$target [dss:InputDocuments]</taml:predicate> </taml:testAssertion> <taml:testAssertion id="DC_TA002" name="A sign request needs either a document or a document hash child element" enable="true" xmlns:taml="http://docs.oasis-open.org/ns/tag/taml-201002/"> <taml:normativeSource>The <SignRequest> MUST contain either a single <Document> not having RefURI, RefType set or a single <DocumentHash> not having RefURI, RefType, <ds:Transforms> set:. </taml:normativeSource> <taml:prescription level="mandatory" /> <taml:target type="SignRequest" idscheme="concat(taml:docsource(), 'DSSRequest:', ./attribute::id)">/dss:SignRequest</taml:target> <taml:predicate>$target/dss:InputDocuments [ ( count( dss:Document ) + count( dss:DocumentHash ) ) = 1]</taml:predicate> </taml:testAssertion> <taml:testAssertion id="DC_TA003" name="A sign request needs either a document element without RefURI and RefType or a document hash without RefURI, RefType and ds:Transforms" enable="true" xmlns:taml="http://docs.oasis-open.org/ns/tag/taml-201002/"> <taml:normativeSource>The <SignRequest> MUST contain either a single <Document> not having RefURI, RefType set or a single <DocumentHash> not having RefURI, RefType, <ds:Transforms> set:. </taml:normativeSource> <taml:prescription level="mandatory" /> <taml:target type="SignRequest" idscheme="concat(taml:docsource(), 'DSSRequest:', ./attribute::id)">/dss:SignRequest</taml:target> <taml:predicate>$target/dss:InputDocuments [ ( dss:Document [not( @RefURI )] [not( @RefType )] ) or ( dss:DocumentHash [not( @RefURI )] [not( @RefType )][not( ds:Transforms )]) ]</taml:predicate> </taml:testAssertion> <taml:testAssertion id="DC_TA004" name="An AdditionalProfile tag requires the presence of the Profiel attribute in the request" enable="true" xmlns:taml="http://docs.oasis-open.org/ns/tag/taml-201002/"> <taml:normativeSource>The <AdditionalProfile> element can appear multiple times in a request. It indicates additional profiles which modify the main profile specified by the Profile attribute (thus the Profile attribute MUST be present; </taml:normativeSource> <taml:prescription level="mandatory" /> <taml:target type="SignRequest" idscheme="concat(taml:docsource(), 'DSSRequest:', ./attribute::id)">/dss:SignRequest</taml:target> <taml:predicate>$target [ not( OptionalInputs/AdditionalProfile ) or ( @Profile and OptionalInputs/AdditionalProfile ) ]</taml:predicate> </taml:testAssertion> <taml:testAssertion id="DC_TA005" name="Ensure the response's RequestId matches the request's RequestId (if given)" enable="true" xmlns:taml="http://docs.oasis-open.org/ns/tag/taml-201002/"> <taml:normativeSource>RequestID [Optional] This attribute is used to correlate requests with responses. When present in a request, the server MUST return it in the response. </taml:normativeSource> <taml:prescription level="mandatory" /> <taml:target type="SignResponse" idscheme="concat(taml:docsource(), 'DSSResponse:', ./attribute::id)">/dss:SignResponse</taml:target> <taml:predicate>$target [ not( /dss:SignRequest/@RequestID ) or ( @RequestID = /dss:SignRequest/@RequestID ) ]</taml:predicate> </taml:testAssertion> </section> </body> </dssCoreSpecification>
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]