Commit 0db09043 authored by Laurent Velez's avatar Laurent Velez
Browse files

v1.2.1

parent 7c14a52e
Loading
Loading
Loading
Loading
+58 −79
Original line number Diff line number Diff line
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:vc="http://www.w3.org/2007/XMLSchema-versioning" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:dss="urn:oasis:names:tc:dss:1.0:core:schema" xmlns:tsl="http://uri.etsi.org/02231/v2#" xmlns:XAdES="http://uri.etsi.org/01903/v1.3.2#" xmlns:vr="vr" targetNamespace="vr" elementFormDefault="qualified" attributeFormDefault="unqualified" vc:minVersion="1.1">
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:vc="http://www.w3.org/2007/XMLSchema-versioning" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:dss="urn:oasis:names:tc:dss:1.0:core:schema" xmlns:tsl="http://uri.etsi.org/02231/v2#" xmlns:XAdES="http://uri.etsi.org/01903/v1.3.2#" xmlns:vr="http://uri.etsi.org/19102/v1.2.1#" targetNamespace="http://uri.etsi.org/19102/v1.2.1#" elementFormDefault="qualified" attributeFormDefault="unqualified" vc:minVersion="1.1">
	<xs:import namespace="http://www.w3.org/2000/09/xmldsig#" schemaLocation="http://www.w3.org/TR/2002/REC-xmldsig-core-20020212/xmldsig-core-schema.xsd"/>
	<xs:import namespace="http://uri.etsi.org/01903/v1.3.2#" schemaLocation="http://uri.etsi.org/01903/v1.3.2/XAdES.xsd"/>
	<xs:import namespace="http://uri.etsi.org/02231/v2#" schemaLocation="http://uri.etsi.org/19612/v2.2.1/ts_119612v020201_201601xsd.xsd"/>
	<!--
	================= SignatureReference element to ease referencing from TS 119 442 =========================
-->
	<xs:element name="SignatureReference" type="vr:SignatureReferenceType"/>
	<!--
	================= Validation Report =========================
-->
	<xs:element name="ValidationReport" type="vr:ValidationReportType"/>
	<xs:complexType name="ValidationReportType">
		<xs:sequence>
			<xs:element name="SignatureValidationReport" type="vr:SignatureValidationReportType" maxOccurs="unbounded"/>
			<xs:element name="SignatureValidationReport" type="vr:SignatureValidationReportType"/>
			<xs:element name="SignatureValidationObjects" type="vr:ValidationObjectListType" minOccurs="0"/>
			<xs:element name="SignatureValidator" type="vr:SignatureValidatorType" minOccurs="0"/>
			<xs:element ref="ds:Signature" minOccurs="0"/>
@@ -27,8 +31,8 @@
			<xs:element name="SignatureAttributes" type="vr:SignatureAttributesType" minOccurs="0"/>
			<xs:element name="SignerInformation" type="vr:SignerInformationType" minOccurs="0"/>
			<xs:element name="SignatureQuality" type="vr:SignatureQualityType" minOccurs="0"/>
			<xs:element name="SignatureValidationProcessType" type="vr:SignatureValidationProcessType" minOccurs="0"/>
			<xs:element name="ValidationStatus" type="vr:ValidationStatusType"/>
			<xs:element name="SignatureValidationProcess" type="vr:SignatureValidationProcessType" minOccurs="0"/>
			<xs:element name="SignatureValidationStatus" type="vr:ValidationStatusType"/>
			<xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
		</xs:sequence>
	</xs:complexType>
@@ -42,10 +46,10 @@
			<xs:element ref="ds:SignatureValue" minOccurs="0"/>
			<xs:element name="HashOnly" type="xs:boolean"/>
			<xs:element name="DocHashOnly" type="xs:boolean"/>
			<xs:element name="DAIdentifier" type="xs:boolean"/>
			<xs:element name="DAIdentifier" type="xs:string" minOccurs="0"/>
			<xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
		</xs:sequence>
		<xs:attribute name="id" type="xs:ID" use="required"/>
		<xs:attribute name="id" type="xs:ID" use="optional"/>
	</xs:complexType>
	<!--
	========================= SignatureValidatorType =============================
@@ -63,8 +67,8 @@
	<xs:complexType name="ValidationStatusType">
		<xs:sequence>
			<xs:element name="MainIndication" type="xs:anyURI"/>
			<xs:element name="SubIndication" type="xs:anyURI" minOccurs="0"/>
			<xs:element name="AssociatedValidationReportData" type="vr:ValidationReportDataType" minOccurs="0" maxOccurs="Unbounded"/>
			<xs:element name="SubIndication" type="xs:anyURI" minOccurs="0" maxOccurs="unbounded"/>
			<xs:element name="AssociatedValidationReportData" type="vr:ValidationReportDataType" minOccurs="0" maxOccurs="unbounded"/>
		</xs:sequence>
	</xs:complexType>
	<!--
@@ -72,13 +76,13 @@
-->
	<xs:complexType name="ValidationConstraintsEvaluationReportType">
		<xs:sequence>
			<xs:element name="SignatureValidationPolicyType" minOccurs="0"/>
			<xs:element name="SignatureValidationPolicy" type="vr:SignatureValidationPolicyType" minOccurs="0"/>
			<xs:element name="ValidationConstraint" type="vr:IndividualValidationConstraintReportType" minOccurs="0" maxOccurs="unbounded"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="SignatureValidationPolicyType">
		<xs:sequence>
			<xs:element name="SignaturePolicyId" type="XAdES:SignaturePolicyIdentifierType" minOccurs="0"/>
			<xs:element name="SignaturePolicyIdentifier" type="XAdES:SignaturePolicyIdentifierType"/>
			<xs:element name="PolicyName" type="xs:string" minOccurs="0"/>
			<xs:element name="FormalPolicyURI" type="xs:anyURI" minOccurs="0"/>
			<xs:element name="ReadablePolicyURI" type="xs:anyURI" minOccurs="0"/>
@@ -112,7 +116,7 @@
	<xs:complexType name="ValidationTimeInfoType">
		<xs:sequence>
			<xs:element name="ValidationTime" type="xs:dateTime"/>
			<xs:element name="BestSignatureTime" type="xs:dateTime"/>
			<xs:element name="BestSignatureTime" type="vr:POEType"/>
		</xs:sequence>
	</xs:complexType>
	<!--
@@ -128,7 +132,6 @@
	========================= A.1 SignatureAttributesType =============================
-->
	<xs:complexType name="SignatureAttributesType">
		<xs:sequence>
		<xs:choice maxOccurs="unbounded">
			<xs:element name="SigningTime" type="vr:SASigningTimeType"/>
			<xs:element name="SigningCertificate" type="vr:SACertIDListType"/>
@@ -136,7 +139,7 @@
			<xs:element name="CommitmentTypeIndication" type="vr:SACommitmentTypeIndicationType"/>
			<xs:element name="AllDataObjectsTimeStamp" type="vr:SATimestampType"/>
			<xs:element name="IndividualDataObjectsTimeStamp" type="vr:SATimestampType"/>
				<xs:element name="SignaturePolicyIdentifier" type="vr:SASignaturePolicyIdentifierType"/>
			<xs:element name="SigPolicyIdentifier" type="vr:SASigPolicyIdentifierType"/>
			<xs:element name="SignatureProductionPlace" type="vr:SASignatureProductionPlaceType"/>
			<xs:element name="SignerRole" type="vr:SASignerRoleType"/>
			<xs:element name="CounterSignature" type="vr:SACounterSignatureType"/>
@@ -153,7 +156,7 @@
			<xs:element name="AttributeRevocationValues" type="vr:AttributeBaseType"/>
			<xs:element name="TimeStampValidationData" type="vr:AttributeBaseType"/>
			<xs:element name="ArchiveTimeStamp" type="vr:SATimestampType"/>
				<xs:element name="RenewedDigests" type="vr:SAListOfIntegers"/>
			<xs:element name="RenewedDigests" type="vr:SAListOfIntegersType"/>
			<xs:element name="MessageDigest" type="vr:SAMessageDigestType"/>
			<xs:element name="DSS" type="vr:SADSSType"/>
			<xs:element name="VRI" type="vr:SAVRIType"/>
@@ -162,11 +165,10 @@
			<xs:element name="Name" type="vr:SANameType"/>
			<xs:element name="ContactInfo" type="vr:SAContactInfoType"/>
			<xs:element name="SubFilter" type="vr:SASubFilterType"/>
				<xs:element name="ByteRange" type="vr:SAListOfIntegers"/>
			<xs:element name="ByteRange" type="vr:SAListOfIntegersType"/>
			<xs:element name="Filter" type="vr:SAFilterType"/>
			<xs:any namespace="##other"/>
		</xs:choice>
		</xs:sequence>
	</xs:complexType>
	<!--
	========================= SignerInformationType =============================
@@ -184,7 +186,7 @@
-->
	<xs:complexType name="SignatureQualityType">
		<xs:sequence>
			<xs:element name="SignatureQalityInformation" type="xs:anyURI" minOccurs="0" maxOccurs="unbounded"/>
			<xs:element name="SignatureQualityInformation" type="xs:anyURI"  maxOccurs="unbounded"/>
		</xs:sequence>
	</xs:complexType>
	<!--
@@ -195,7 +197,6 @@
			<xs:element name="SignatureValidationProcessID" type="xs:anyURI" minOccurs="0"/>
			<xs:element name="SignatureValidationServicePolicy" type="xs:anyURI" minOccurs="0"/>
			<xs:element name="SignatureValidationPracticeStatement" type="xs:anyURI" minOccurs="0"/>
			<xs:element name="AugmentationInfo" type="xs:anyType" minOccurs="0"/>
			<xs:any namespace="##other" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
@@ -424,11 +425,11 @@
	<!-- 
	=============  A.8 SignaturePolicyIdentifier =============  
-->
	<xs:complexType name="SASignaturePolicyIdentifierType">
	<xs:complexType name="SASigPolicyIdentifierType">
		<xs:complexContent>
			<xs:extension base="vr:AttributeBaseType">
				<xs:sequence>
					<xs:element name="SignaturePolicyID" type="xs:anyURI"/>
					<xs:element name="SigPolicyId" type="xs:anyURI"/>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
@@ -566,7 +567,7 @@
		</xs:complexContent>
	</xs:complexType>
	<!-- 
	=============  A.31 ContactInfo =============  
	=============  A.32 ContactInfo =============  
-->
	<xs:complexType name="SAContactInfoType">
		<xs:complexContent>
@@ -590,7 +591,7 @@
		</xs:complexContent>
	</xs:complexType>
	<!-- 
	=============  A.33 Filter=============  
	=============  A.35 Filter=============  
-->
	<xs:complexType name="SAFilterType">
		<xs:sequence>
@@ -609,7 +610,7 @@
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<xs:simpleType name="SAListOfIntegers">
	<xs:simpleType name="SAListOfIntegersType">
		<xs:list itemType="xs:integer"/>
	</xs:simpleType>
	<xs:complexType name="SAMessageDigestType">
@@ -621,26 +622,4 @@
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<xs:complexType name="SAReferencesListType">
		<xs:complexContent>
			<xs:extension base="vr:AttributeBaseType">
				<xs:sequence>
					<xs:element name="SAReference" type="vr:SAReferenceType" maxOccurs="unbounded"/>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<xs:complexType name="SAReferenceType">
		<xs:sequence>
			<xs:element name="DigestAlgAndValue" type="XAdES:DigestAlgAndValueType"/>
			<xs:element name="Identifier" type="vr:SAIdentifierType"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="SAIdentifierType">
		<xs:choice>
			<xs:element name="CertIdentifier" type="XAdES:CertIDType"/>
			<xs:element name="CRLIdentifier" type="XAdES:CRLIdentifierType"/>
			<xs:element name="OCSPIdentifier" type="XAdES:OCSPIdentifierType"/>
		</xs:choice>
	</xs:complexType>
</xs:schema>