OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

dss-x message

[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 &lt;SignRequest&gt; 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 &lt;SignRequest&gt; MUST contain either a single &lt;Document&gt; not having RefURI, RefType set or a single &lt;DocumentHash&gt; not having RefURI, RefType, &lt;ds:Transforms&gt; 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 &lt;SignRequest&gt; MUST contain either a single &lt;Document&gt; not having RefURI, RefType set or a single &lt;DocumentHash&gt; not having RefURI, RefType, &lt;ds:Transforms&gt; 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 &lt;AdditionalProfile&gt; 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]