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: Summary on core refreshment


Hi all,


see attached a preliminary version of the streamlined core and a document explaining the why and the what of the applied changes. I addition there are some examples of JSON requests attached. I would be happy if we can discuss the draft on our next call and go thru this list of my open topics:


  • Include the xs:any in the XML schema anyway?

    • Pro:

      • It enables product specific extensions

      • Common in other schemes

    • Con:

      • Tricky mechanism in other bindings

      • Fallback to (untyped) byte arrays

      • endpoint lack of meta information

  • Drop of ds:X509IssuerSerial? It is deprecated in XMLDSig 1.1

  • Drop of the xs:any in UseVerificationTimeType? It's not mentioned in the corresponding section of the core document.

  • dss:RequesterIdentity, dss:TstInfo and dss:Timestamp are not referenced by the updated core. Refactor it to a special Timestamp profile?

  • Mechanism for a query-like key selection

    • Extend the core?

    • Delegate it into a profile?

  • Handling of existing profiles

    • Contact author requisting an update to the new core?

    • Leave the DSS 1.0 world as is?


Greetings,

Andreas

-- 
Andreas Kühne 
phone: +49 177 293 24 97 
mailto: kuehne@trustable.de

Trustable Ltd. Niederlassung Deutschland Gartenheimstr. 39C - 30659 Hannover Amtsgericht Hannover HRB 212612

Director Andreas Kühne

Company UK Company No: 5218868 Registered in England and Wales 

Attachment: DSS core refresh.pdf
Description: Adobe PDF document

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:dss="urn:oasis:names:tc:dss:1.0:core:schema" xmlns:ds="http://www.w3.org/2000/09/xmldsig#"; xmlns:xs="http://www.w3.org/2001/XMLSchema"; xmlns:saml="urn:oasis:names:tc:SAML:1.0:assertion" xmlns:ades="urn:oasis:names:tc:dss:1.0:profiles:AdES:schema#" xmlns:vr="urn:oasis:names:tc:dss-x:1.0:profiles:verificationreport:schema#" xmlns:xades="http://uri.etsi.org/01903/v1.3.2#"; targetNamespace="urn:oasis:names:tc:dss:1.0:core:schema" elementFormDefault="qualified" attributeFormDefault="unqualified">


	<xs:annotation>
		<xs:documentation xml:lang="en">This Schema defines the Digital Signature Service Core Protocols, Elements, and Bindings Committee Specification version 1.0 release 1</xs:documentation>
	</xs:annotation>
	<xs:import namespace="http://uri.etsi.org/01903/v1.3.2#"; schemaLocation="XAdES.xsd"/>
	<xs:import namespace="urn:oasis:names:tc:dss:1.0:profiles:AdES:schema#" schemaLocation="oasis-dss-profiles-AdES-schema-v1.0-os.xsd"/>
	<xs:import namespace="urn:oasis:names:tc:dss-x:1.0:profiles:verificationreport:schema#" schemaLocation="oasis-dssx-1.0-profiles-verification-report-cs1.xsd"/>

	<!--xs:import namespace="http://www.w3.org/2000/09/xmldsig#"; schemaLocation="http://www.w3.org/TR/xmldsig-core/xmldsig-core-schema.xsd"/>
	<xs:import namespace="urn:oasis:names:tc:SAML:1.0:assertion" schemaLocation="http://www.oasis-open.org/committees/download.php/3408/oasis-sstc-saml-schema-protocol-1.1.xsd"/>
	<xs:import namespace="http://www.w3.org/XML/1998/namespace"; schemaLocation="xml.xsd"/-->
	<xs:import namespace="http://www.w3.org/2000/09/xmldsig#"; schemaLocation="xmldsig-core-schema.xsd"/>
	<xs:import namespace="urn:oasis:names:tc:SAML:1.0:assertion" schemaLocation="oasis-sstc-saml-schema-protocol-1.1.xsd"/>
	<xs:import namespace="http://www.w3.org/XML/1998/namespace"; schemaLocation="xml.xsd"/>

	<xs:complexType name="AnyType">
		<xs:sequence>
			<xs:element name="Base64Content" minOccurs="1" maxOccurs="unbounded">
				<xs:complexType>
					<xs:simpleContent>
						<xs:extension base="xs:base64Binary">
							<xs:attribute name="MimeType" type="xs:string" use="optional"/>
						</xs:extension>
					</xs:simpleContent>
				</xs:complexType>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="InternationalStringType">
		<xs:simpleContent>
			<xs:extension base="xs:string">
				<xs:attribute ref="xml:lang" use="required"/>
			</xs:extension>
		</xs:simpleContent>
	</xs:complexType>
	<xs:element name="InputDocuments">
		<xs:complexType>
			<xs:choice>
				<xs:sequence maxOccurs="unbounded">
					<xs:element name="Document" type="dss:DocumentType"/>
				</xs:sequence>
				<xs:sequence maxOccurs="unbounded">
					<xs:element name="TransformedData" type="dss:TransformedDataType"/>
				</xs:sequence>
				<xs:sequence maxOccurs="unbounded">
					<xs:element name="DocumentHash" type="dss:DocumentHashType"/>
				</xs:sequence>
			</xs:choice>
		</xs:complexType>
	</xs:element>
	<xs:complexType name="DocumentBaseType" abstract="true">
		<xs:attribute name="ID" type="xs:ID" use="optional"/>
		<xs:attribute name="RefURI" type="xs:anyURI" use="optional"/>
		<xs:attribute name="RefType" type="xs:anyURI" use="optional"/>
		<xs:attribute name="SchemaRefs" type="xs:IDREFS" use="optional"/>
	</xs:complexType>
	<xs:element name="Document" type="dss:DocumentType"/>
	<xs:complexType name="DocumentType">
		<xs:complexContent>
			<xs:extension base="dss:DocumentBaseType">
				<xs:choice>
					<xs:element name="Base64Data" type="dss:Base64DataType"/>
				</xs:choice>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<xs:element name="Base64Data" type="dss:Base64DataType"/>
	<xs:complexType name="Base64DataType">
		<xs:simpleContent>
			<xs:extension base="xs:base64Binary">
				<xs:attribute name="MimeType" type="xs:string" use="optional"/>
				<xs:attribute name="AttRefURI" type="xs:anyURI" use="optional"/>
				<xs:attribute name="ID" type="xs:ID" use="optional"/>
				<xs:attribute name="IDREF" type="xs:IDREF" use="optional"/>
			</xs:extension>
		</xs:simpleContent>
	</xs:complexType>

	<xs:complexType name="TransformedDataType">
		<xs:complexContent>
			<xs:extension base="dss:DocumentBaseType">
				<xs:sequence>
					<xs:element ref="ds:Transforms" minOccurs="0"/>
					<xs:element ref="dss:Base64Data"/>
				</xs:sequence>
				<xs:attribute name="WhichReference" type="xs:integer" use="optional"/>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<xs:element name="DocumentHash" type="dss:DocumentHashType"/>
	<xs:complexType name="DocumentHashType">
		<xs:complexContent>
			<xs:extension base="dss:DocumentBaseType">
				<xs:sequence>
					<xs:element ref="ds:Transforms" minOccurs="0"/>
					<xs:element name="DigestInfos" type="dss:DigestInfoType" minOccurs="1" maxOccurs="unbounded"/>
				</xs:sequence>
				<xs:attribute name="WhichReference" type="xs:integer" use="optional"/>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<xs:complexType name="DigestInfoType">
		<xs:sequence>
			<xs:element ref="ds:DigestMethod"/>
			<xs:element ref="ds:DigestValue"/>
		</xs:sequence>
	</xs:complexType>
	<xs:element name="SignatureObject">
		<xs:complexType>
			<xs:sequence>
				<xs:element name="Base64Signature" type="dss:Base64DataType"/>
				<xs:element ref="dss:SignaturePtr"/>
			</xs:sequence>
			<xs:attribute name="SchemaRefs" type="xs:IDREFS" use="optional"/>
		</xs:complexType>
	</xs:element>

	<xs:element name="SignaturePtr">
		<xs:complexType>
			<xs:attribute name="WhichDocument" type="xs:IDREF"/>
			<xs:attribute name="XPath" type="xs:string" use="optional"/>
		</xs:complexType>
	</xs:element>
	<xs:element name="Result">
		<xs:complexType>
			<xs:sequence>
				<xs:element name="ResultMajor">
					<xs:simpleType>
						<xs:restriction base="xs:anyURI">
							<xs:enumeration value="urn:oasis:names:tc:dss:1.0:resultmajor:Success"/>
							<xs:enumeration value="urn:oasis:names:tc:dss:1.0:resultmajor:RequesterError"/>
							<xs:enumeration value="urn:oasis:names:tc:dss:1.0:resultmajor:ResponderError"/>
							<xs:enumeration value="urn:oasis:names:tc:dss:1.0:resultmajor:InsufficientInformation"/>
						</xs:restriction>
					</xs:simpleType>
				</xs:element>
				<xs:element name="ResultMinor" type="xs:anyURI" minOccurs="0"/>
				<xs:element name="ResultMessage" type="dss:InternationalStringType" minOccurs="0"/>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
	<xs:complexType name="OptionalInputsBaseType">
		<xs:sequence>
			<xs:element name="Profiles" type="xs:anyURI" minOccurs="0" maxOccurs="unbounded"/>
			<xs:element ref="dss:SignedReferences" minOccurs="0" maxOccurs="1"/>
			<xs:element ref="dss:ServicePolicy" minOccurs="0" maxOccurs="1"/>
			<xs:element ref="dss:ClaimedIdentity" minOccurs="0" maxOccurs="1"/>
			<xs:element ref="dss:Language" minOccurs="0" maxOccurs="1"/>
			<xs:element ref="dss:Schemas" minOccurs="0" maxOccurs="1"/>
			<xs:element ref="dss:AddTimestamp" minOccurs="0" maxOccurs="1"/>
			<xs:element name="SignatureForm" type="xs:anyURI" minOccurs="0" maxOccurs="1"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="OptionalInputsSignType">
		<xs:complexContent>
			<xs:extension base="dss:OptionalInputsBaseType">
				<xs:sequence>
					<xs:element ref="dss:SignatureType" minOccurs="0" maxOccurs="1"/>
					<xs:element ref="dss:IntendedAudience" minOccurs="0" maxOccurs="1"/>
					<xs:element ref="dss:KeySelector" minOccurs="0" maxOccurs="1"/>
					<xs:element ref="dss:Properties" minOccurs="0" maxOccurs="1"/>
					<xs:element ref="dss:IncludeObject" minOccurs="0" maxOccurs="unbounded"/>
					<xs:element ref="dss:SignaturePlacement" minOccurs="0" maxOccurs="1"/>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<xs:complexType name="OptionalInputsVerifyType">
		<xs:complexContent>
			<xs:extension base="dss:OptionalInputsBaseType">
				<xs:sequence>
					<xs:element ref="vr:ReturnVerificationReport" minOccurs="0" maxOccurs="1"/>
					<xs:element ref="dss:UseVerificationTime" minOccurs="0" maxOccurs="1"/>
					<xs:element ref="dss:ReturnVerificationTimeInfo" minOccurs="0" maxOccurs="1"/>
					<xs:element ref="dss:AdditionalKeyInfo" minOccurs="0" maxOccurs="1"/>
					<xs:element ref="dss:ReturnProcessingDetails" minOccurs="0" maxOccurs="1"/>
					<xs:element ref="dss:ReturnSigningTimeInfo" minOccurs="0" maxOccurs="1"/>
					<xs:element ref="dss:ReturnSignerIdentity" minOccurs="0" maxOccurs="1"/>
					<xs:element ref="dss:ReturnUpdatedSignature" minOccurs="0" maxOccurs="1"/>
					<xs:element ref="dss:ReturnTransformedDocument" minOccurs="0" maxOccurs="unbounded"/>
					<xs:element ref="dss:ReturnTimestampedSignature" minOccurs="0" maxOccurs="1"/>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<xs:complexType name="OptionalOutputsSignType">
		<xs:sequence>
			<xs:element name="AppliedProfiles" type="xs:anyURI" minOccurs="0" maxOccurs="unbounded"/>
			<xs:element ref="dss:TransformedDocument" minOccurs="0" maxOccurs="1"/>
			<xs:element ref="dss:SigningTimeInfo" minOccurs="0" maxOccurs="1"/>
			<xs:element ref="dss:DocumentWithSignature" minOccurs="0" maxOccurs="1"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="OptionalOutputsVerifyType">
		<xs:sequence>
			<xs:element name="AppliedProfiles" type="xs:anyURI" minOccurs="0" maxOccurs="unbounded"/>
			<xs:element ref="dss:TransformedDocument" minOccurs="0" maxOccurs="1"/>
			<xs:element ref="dss:Schemas" minOccurs="0" maxOccurs="1"/>
			<xs:element ref="dss:VerifyManifestResults" minOccurs="0" maxOccurs="1"/>
			<xs:element ref="dss:VerificationTimeInfo" minOccurs="0" maxOccurs="1"/>
			<xs:element ref="dss:ProcessingDetails" minOccurs="0" maxOccurs="1"/>
			<xs:element ref="dss:SignerIdentity" minOccurs="0" maxOccurs="1"/>
			<xs:element ref="dss:UpdatedSignature" minOccurs="0" maxOccurs="1"/>
			<xs:element ref="dss:TimestampedSignature" minOccurs="0" maxOccurs="1"/>
			<xs:element ref="vr:VerificationReport" minOccurs="0" maxOccurs="1"/>
		</xs:sequence>
	</xs:complexType>
	<xs:element name="ServicePolicy" type="xs:anyURI"/>
	<xs:element name="ClaimedIdentity">
		<xs:complexType>
			<xs:sequence>
				<xs:element name="Name" type="saml:NameIdentifierType"/>
				<xs:element name="SupportingInfo" type="xades:AnyType" minOccurs="0"/>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
	<xs:element name="Language" type="xs:language"/>
	<xs:element name="AdditionalProfile" type="xs:anyURI"/>
	<xs:element name="Schemas" type="dss:SchemasType"/>
	<xs:complexType name="SchemasType">
		<xs:sequence>
			<xs:element ref="dss:Schema" maxOccurs="unbounded"/>
		</xs:sequence>
	</xs:complexType>
	<xs:element name="Schema" type="dss:DocumentType"/>
	<xs:complexType name="RequestBaseType">
		<xs:sequence>

			<xs:element ref="dss:InputDocuments" minOccurs="0"/>
		</xs:sequence>
		<xs:attribute name="RequestID" type="xs:string" use="optional"/>

	</xs:complexType>
	<xs:complexType name="ResponseBaseType">
		<xs:sequence>
			<xs:element ref="dss:Result"/>

		</xs:sequence>
		<xs:attribute name="RequestID" type="xs:string" use="optional"/>

	</xs:complexType>
	<xs:element name="Response" type="dss:ResponseBaseType"/>
	<xs:element name="SignRequest">
		<xs:complexType>
			<xs:complexContent>
				<xs:extension base="dss:RequestBaseType">
					<xs:sequence>
						<xs:element name="OptionalInputs" type="dss:OptionalInputsSignType" minOccurs="0"/>
					</xs:sequence>
				</xs:extension>
			</xs:complexContent>
		</xs:complexType>
	</xs:element>
	<xs:element name="SignResponse">
		<xs:complexType>
			<xs:complexContent>
				<xs:extension base="dss:ResponseBaseType">
					<xs:sequence>
						<xs:element name="OptionalOutputs" type="dss:OptionalOutputsSignType" minOccurs="0"/>
						<xs:element ref="dss:SignatureObject" minOccurs="0"/>
					</xs:sequence>
				</xs:extension>
			</xs:complexContent>
		</xs:complexType>
	</xs:element>
	<xs:element name="SignatureType" type="xs:anyURI"/>
	<xs:element name="AddTimestamp" type="dss:UpdateSignatureInstructionType"/>
	<xs:complexType name="TimeSignatureInstructionType">
		<xs:complexContent>
			<xs:extension base="dss:UpdateSignatureInstructionType">
				<xs:attribute name="TimeStampTheGivenSignature" type="xs:boolean" use="optional" default="false"/>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<xs:complexType name="UpdateSignatureInstructionType">
		<xs:attribute name="Type" type="xs:anyURI" use="optional"/>
	</xs:complexType>
	<xs:element name="IntendedAudience">
		<xs:complexType>
			<xs:sequence>
				<xs:element name="Recipient" type="saml:NameIdentifierType" maxOccurs="unbounded"/>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
	<xs:complexType name="KeyInfoType">
		<xs:choice>
			<xs:element name="X509Digest">
				<xs:complexType>
					<xs:simpleContent>
						<xs:extension base="xs:base64Binary">
							<xs:attribute name="Algorithm" type="xs:anyURI" use="required"/>
						</xs:extension>
					</xs:simpleContent>
				</xs:complexType>
			</xs:element>
			<xs:element name="X509SubjectName" type="xs:string"/>
			<xs:element name="X509SKI" type="xs:base64Binary"/>
			<xs:element name="X509Certificate" type="xs:base64Binary"/>
			<xs:element name="KeyName" type="xs:string"/>
		</xs:choice>
	</xs:complexType>
	<xs:element name="KeySelector" type="dss:KeyInfoType"/>
	<xs:element name="Properties">
		<xs:complexType>
			<xs:sequence>
				<xs:element name="SignedProperties" type="dss:PropertiesType" minOccurs="0"/>
				<xs:element name="UnsignedProperties" type="dss:PropertiesType" minOccurs="0"/>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
	<xs:complexType name="PropertiesType">
		<xs:sequence>
			<xs:element ref="dss:Property" maxOccurs="unbounded"/>
		</xs:sequence>
	</xs:complexType>
	<xs:element name="Property">
		<xs:complexType>
			<xs:sequence>
				<xs:element name="Identifier" type="xs:anyURI"/>
				<xs:element name="Value" type="xades:AnyType" minOccurs="0"/>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
	<xs:element name="IncludeObject">
		<xs:complexType>
			<xs:attribute name="WhichDocument" type="xs:IDREF"/>
			<xs:attribute name="hasObjectTagsAndAttributesSet" type="xs:boolean" default="false"/>
			<xs:attribute name="ObjId" type="xs:string" use="optional"/>
			<xs:attribute name="createReference" type="xs:boolean" use="optional" default="true"/>
		</xs:complexType>
	</xs:element>
	<xs:element name="SignaturePlacement">
		<xs:complexType>
			<xs:choice>
				<xs:element name="XPathAfter" type="xs:string"/>
				<xs:element name="XPathFirstChildOf" type="xs:string"/>
			</xs:choice>
			<xs:attribute name="WhichDocument" type="xs:IDREF"/>
			<xs:attribute name="CreateEnvelopedSignature" type="xs:boolean" default="true"/>
		</xs:complexType>
	</xs:element>
	<xs:element name="DocumentWithSignature">
		<xs:complexType>
			<xs:sequence>
				<xs:element ref="dss:Document"/>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
	<xs:element name="SignedReferences">
		<xs:complexType>
			<xs:sequence>
				<xs:element ref="dss:SignedReference" maxOccurs="unbounded"/>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
	<xs:element name="SignedReference">
		<xs:complexType>
			<xs:sequence>
				<xs:element ref="ds:Transforms" minOccurs="0"/>
			</xs:sequence>
			<xs:attribute name="WhichDocument" type="xs:IDREF" use="required"/>
			<xs:attribute name="RefURI" type="xs:anyURI" use="optional"/>
			<xs:attribute name="RefId" type="xs:string" use="optional"/>
		</xs:complexType>
	</xs:element>
	<xs:element name="VerifyRequest">
		<xs:complexType>
			<xs:complexContent>
				<xs:extension base="dss:RequestBaseType">
					<xs:sequence>
						<xs:element name="OptionalInputs" type="dss:OptionalInputsVerifyType" minOccurs="0"/>
						<xs:element ref="dss:SignatureObject" minOccurs="0"/>
					</xs:sequence>
				</xs:extension>
			</xs:complexContent>
		</xs:complexType>
	</xs:element>
	<xs:element name="VerifyResponse">
		<xs:complexType>
			<xs:complexContent>
				<xs:extension base="dss:ResponseBaseType">
					<xs:sequence>
						<xs:element name="OptionalOutputs" type="dss:OptionalOutputsVerifyType" minOccurs="0"/>
					</xs:sequence>
				</xs:extension>
			</xs:complexContent>
		</xs:complexType>
	</xs:element>
	<xs:element name="VerifyManifestResults" type="dss:VerifyManifestResultsType"/>
	<xs:complexType name="VerifyManifestResultsType">
		<xs:sequence>
			<xs:element ref="dss:ManifestResult" maxOccurs="unbounded"/>
		</xs:sequence>
	</xs:complexType>
	<xs:element name="ManifestResult">
		<xs:complexType>
			<xs:sequence>
				<xs:element name="ReferenceXpath" type="xs:string"/>
				<xs:element name="Status" type="xs:anyURI"/>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
	<xs:element name="UseVerificationTime" type="dss:UseVerificationTimeType"/>
	<xs:complexType name="UseVerificationTimeType">
		<xs:choice>
			<xs:element type="xs:boolean" name="CurrentTime" default="false"/>
			<xs:element name="SpecificTime" type="xs:dateTime"/>
			<xs:sequence>
				<xs:element name="Base64Content" type="xs:base64Binary" minOccurs="0" maxOccurs="1"/>
			</xs:sequence>
		</xs:choice>
	</xs:complexType>
	<xs:element type="xs:boolean" name="ReturnVerificationTimeInfo" default="false"/>
	<xs:element name="AdditionalTimeInfo" type="dss:AdditionalTimeInfoType"/>
	<xs:complexType name="AdditionalTimeInfoType">
		<xs:simpleContent>
			<xs:extension base="xs:dateTime">
				<xs:attribute name="Type" type="xs:anyURI" use="required"/>
				<xs:attribute name="Ref" type="xs:string" use="optional"/>
			</xs:extension>
		</xs:simpleContent>
	</xs:complexType>
	<xs:element name="VerificationTimeInfo" type="dss:VerificationTimeInfoType"/>
	<xs:complexType name="VerificationTimeInfoType">
		<xs:sequence>
			<xs:element name="VerificationTime" type="xs:dateTime"/>
			<xs:element ref="dss:AdditionalTimeInfo" minOccurs="0" maxOccurs="unbounded"/>
		</xs:sequence>
	</xs:complexType>
	<xs:element name="AdditionalKeyInfo">
		<xs:complexType>
			<xs:complexContent>
				<xs:extension base="dss:KeyInfoType">
					<xs:choice>
						<xs:element name="X509CRL" type="xs:base64Binary"/>
					</xs:choice>
				</xs:extension>
			</xs:complexContent>
		</xs:complexType>
	</xs:element>
	<xs:element type="xs:boolean" name="ReturnProcessingDetails" default="false"/>
	<xs:element name="ProcessingDetails">
		<xs:complexType>
			<xs:sequence>
				<xs:element name="ValidDetail" type="dss:DetailType" minOccurs="0" maxOccurs="unbounded"/>
				<xs:element name="IndeterminateDetail" type="dss:DetailType" minOccurs="0" maxOccurs="unbounded"/>
				<xs:element name="InvalidDetail" type="dss:DetailType" minOccurs="0" maxOccurs="unbounded"/>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
	<xs:complexType name="DetailType">
		<xs:sequence>
			<xs:element name="Code" type="xs:anyURI" minOccurs="0"/>
			<xs:element name="Message" type="dss:InternationalStringType" minOccurs="0"/>
			<xs:sequence minOccurs="0" maxOccurs="unbounded">
				<xs:element name="Base64Content" type="xs:base64Binary" minOccurs="0" maxOccurs="1"/>
			</xs:sequence>
		</xs:sequence>
		<xs:attribute name="Type" type="xs:anyURI" use="required"/>
	</xs:complexType>
	<xs:element type="xs:boolean" name="ReturnSigningTimeInfo" default="false"/>
	<xs:element name="SigningTimeInfo" type="dss:SigningTimeInfoType"/>
	<xs:complexType name="SigningTimeInfoType">
		<xs:sequence>
			<xs:element name="SigningTime" type="xs:dateTime"/>
			<xs:element name="SigningTimeBoundaries" minOccurs="0">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="LowerBoundary" type="xs:dateTime" minOccurs="0"/>
						<xs:element name="UpperBoundary" type="xs:dateTime" minOccurs="0"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:element type="xs:boolean" name="ReturnSignerIdentity" default="false"/>
	<xs:element name="SignerIdentity" type="saml:NameIdentifierType"/>
	<xs:element type="xs:boolean" name="ReturnUpdatedSignature" default="false"/>
	<xs:element name="UpdatedSignature" type="dss:UpdatedSignatureType"/>
	<xs:complexType name="UpdatedSignatureType">
		<xs:sequence>
			<xs:element ref="dss:SignatureObject"/>
		</xs:sequence>
		<xs:attribute name="Type" type="xs:anyURI" use="optional"/>
	</xs:complexType>
	<xs:element name="ReturnTransformedDocument">
		<xs:complexType>
			<xs:attribute name="WhichReference" type="xs:integer" use="required"/>
		</xs:complexType>
	</xs:element>
	<xs:element name="TransformedDocument">
		<xs:complexType>
			<xs:sequence>
				<xs:element ref="dss:Document"/>
			</xs:sequence>
			<xs:attribute name="WhichReference" type="xs:integer" use="required"/>
		</xs:complexType>
	</xs:element>
	<xs:element type="xs:boolean" name="ReturnTimestampedSignature" default="false"/>
	<xs:element name="TimestampedSignature" type="dss:UpdatedSignatureType"/>

	<xs:element name="TstInfo">
		<xs:complexType>
			<xs:sequence>
				<xs:element name="SerialNumber" type="xs:integer"/>
				<xs:element name="CreationTime" type="xs:dateTime"/>
				<xs:element name="Policy" type="xs:anyURI" minOccurs="0"/>
				<xs:element name="ErrorBound" type="xs:duration" minOccurs="0"/>
				<xs:element name="Ordered" type="xs:boolean" default="false" minOccurs="0"/>
				<xs:element name="TSA" type="saml:NameIdentifierType" minOccurs="0"/>
			</xs:sequence>
		</xs:complexType>
	</xs:element>



</xs:schema>
{
  "InputDocuments" : {
    "Document" : [ {
      "ID" : "DocId-1043113263651844410",
      "Base64Data" : {
        "value" : "PD94bWwgdmVyc2lvbj0BLjAiIGVuY29kaW5nPSJVVEYtOCI/Pjx1cGMxOlJvb3QgeG1sbnM6dXBjMT0iaHR0cDovL3d3dy5hYy51cGMuZWR1L25hbWVzcGFjZXMvbnMxIiB4bWxuczp1cGMyPSJodHRwOi8vd3d3LmFjLnVwYy5lZHUvbmFtZXNwYWNlcy9uczIiPjx1cGMxOkNoaWxkMSB4bWw6bGFuZz0iRU4iPmNoaWxkMSBjb250ZW50PC91cGMxOkNoaWxkMT48dXBjMjpDaGlsZDI+PHVwYzE6Q2hpbGQyMT5jaGlsZDIxIGNvbnRlbnQ8L3VwYzE6Q2hpbGQyMT48dXBjMTpDaGlsZDIyPmNoaWxkMjIgY2NvbnRlbnQ8L3VwYzE6Q2hpbGQyMj48L3VwYzI6Q2hpbGQyPjx1cGMyOkNoaWxkMz48dXBjMjpDaGlsZDMxPmNoaWxkMzEgY29udGVudDwvdXBjMjpDaGlsZDMxPjx1cGMyOkNoaWxkMzI+Y2hpbGQzMiBjb250ZW50PC91cGMyOkNoaWxkMzI+PC91cGMyOkNoaWxkMz48L3VwYzE6Um9vdD4=",
        "MimeType" : "application/xml"
      }
    } ]
  },
  "RequestID" : "TestIdSignXML-6412199978186154215"
}
{
  "InputDocuments" : {
    "Document" : [ {
      "ID" : "DocId--5684611198056145641",
      "Base64Data" : {
        "value" : "VGVzdERvY3VtZW50",
        "MimeType" : "someMimeType"
      }
    } ]
  },
  "RequestID" : "TestIdSign-9008605090338460951",
  "OptionalInputs" : {
    "Profiles" : [ "urn:oasis:names:tc:dss:1.0:profiles:asynchronousprocessing:1.0", "urn:oasis:names:tc:dss:1.0:profiles:bsynchronousprocessing:1.0" ],
    "ServicePolicy" : "somePolicy",
    "ClaimedIdentity" : {
      "Name" : {
        "value" : "nameIdentifierValue",
        "NameQualifier" : "nameIdentifierQualifier",
        "Format" : "nameIdentifierFormat"
      }
    },
    "Language" : "de",
    "AddTimestamp" : {
      "Type" : "urn:ietf:rfc:3161"
    },
    "UseVerificationTime" : {
      "CurrentTime" : true
    },
    "ReturnVerificationTimeInfo" : false,
    "AdditionalKeyInfo" : {
      "X509Certificate" : "qV38IqrWJG0V/mZQvRVi1OHw9Zj84nDC4jO8P0axi1gb6d+475yhMjSc/BrIVC58W3ydbkK+Ri4OKbaRZlYeRA=="
    },
    "ReturnProcessingDetails" : true,
    "ReturnSigningTimeInfo" : true,
    "ReturnSignerIdentity" : true,
    "ReturnUpdatedSignature" : false,
    "ReturnTransformedDocument" : [ {
      "WhichReference" : 1
    } ],
    "ReturnTimestampedSignature" : false
  },
  "SignatureObject" : {
    "Base64Signature" : {
      "value" : "Qnl0ZXNPZlBsYWluU2lnbmF0dXJlIA==",
      "MimeType" : "urn:some_wellknown_signature_format"
    },
    "SignaturePtr" : {
      "WhichDocument" : null,
      "XPath" : "/doc/sigs/sig[1]"
    }
  }
}
{
  "Result" : {
    "ResultMajor" : "urn:oasis:names:tc:dss:1.0:resultmajor:Success",
    "ResultMinor" : "urn:oasis:names:tc:dss:1.0:resultminor:valid:signature:OnAllDocuments",
    "ResultMessage" : {
      "value" : "Internat. result message",
      "lang" : "en"
    }
  },
  "RequestID" : "requestID",
  "OptionalOutputs" : {
    "AppliedProfiles" : [ "urn:oasis:names:tc:dss:1.0:profiles:asynchronousprocessing:1.0" ],
    "TransformedDocument" : {
      "Document" : {
        "Base64Data" : {
          "value" : "Qnl0ZXNPZlRyYW5zZm9ybWVkRG9jdW1lbnQ=",
          "MimeType" : "application/document"
        }
      },
      "WhichReference" : 10
    },
    "SigningTimeInfo" : {
      "SigningTime" : 1649196000000,
      "SigningTimeBoundaries" : {
        "LowerBoundary" : 1649109600000,
        "UpperBoundary" : 1649282400000
      }
    },
    "DocumentWithSignature" : {
      "Document" : {
        "ID" : "TestDocumentId-3111531346190292260",
        "Base64Data" : {
          "value" : "Qnl0ZXNPZkFEb2N1bWVudEluY2x1ZGluZ0FTaWduYXR1cmUg",
          "MimeType" : "application/signed"
        }
      }
    }
  },
  "SignatureObject" : {
    "Base64Signature" : {
      "value" : "Qnl0ZXNPZlBsYWluU2lnbmF0dXJlIA==",
      "MimeType" : "urn:some_wellknown_signature_format"
    },
    "SignaturePtr" : {
      "WhichDocument" : null,
      "XPath" : "/doc/sigs/sig[1]"
    }
  }
}
{
  "InputDocuments" : {
    "Document" : [ {
      "ID" : "DocId-6368303514094072922",
      "Base64Data" : {
        "value" : "VGVzdERvY3VtZW50",
        "MimeType" : "someMimeType"
      }
    } ]
  },
  "RequestID" : "TestIdSignB64-4300103977248158742",
  "OptionalInputs" : {
    "Profiles" : [ "urn:oasis:names:tc:dss:1.0:profiles:asynchronousprocessing:1.0", "urn:oasis:names:tc:dss:1.0:profiles:bsynchronousprocessing:1.0" ],
    "ServicePolicy" : "somePolicy",
    "ClaimedIdentity" : {
      "Name" : {
        "value" : "nameIdentifierValue",
        "NameQualifier" : "nameIdentifierQualifier",
        "Format" : "nameIdentifierFormat"
      }
    },
    "Language" : "de",
    "AddTimestamp" : {
      "Type" : "urn:ietf:rfc:3161"
    },
    "SignatureType" : "urn:ietf:rfc:3275",
    "KeySelector" : {
      "X509Digest" : {
        "value" : "U29tZUlzc3VlcktleUhhc2hWYWx1ZQ==",
        "Algorithm" : "http://www.w3.org/2001/04/xmlenc#sha256";
      }
    }
  }
}


[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]