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: DSS/X core 2.0 current version


Hi all,

thanks to our decision to drop any inline XML represenation the
cross-references from the core to XMLDSig dropped significantly! Now
there is just the ds:Transforms type left. As agreed on the last meeting
I share my current version of the DSS/X core 2.0 ( see document and
schemas attached). In this version I concentrated on the generated part
and its inline comment (section 3, Structure Models). My next step will
be to align the processing part with the new schema.

Comments welcome!

Greetings,

Andreas

Attachment: dss-core-v2.0-1509963647674.docx
Description: Binary data

{
	"$schema": "http:\/\/json-schema.org\/draft-04\/schema#",
	"definitions": {
		"dss-SignRequestType": {
			"$xsd-type": "SignRequestType",
			"type": "object",
			"properties": {
				"inDocs": {
					"type": "object",
					"$ref": "#\/definitions\/dss-InputDocumentsType"
				},
				"reqID": {
					"type": "string"
				},
				"optInp": {
					"type": "object",
					"$ref": "#\/definitions\/dss-OptionalInputsSignType"
				}
			}
		},
		"dss-InputDocumentsType": {
			"$xsd-type": "InputDocumentsType",
			"type": "object",
			"properties": {
				"doc": {
					"type": "array",
					"items": {
						"type": "object",
						"$ref": "#\/definitions\/dss-DocumentType"
					}
				},
				"transformed": {
					"type": "array",
					"items": {
						"type": "object",
						"$ref": "#\/definitions\/dss-TransformedDataType"
					}
				},
				"docHash": {
					"type": "array",
					"items": {
						"type": "object",
						"$ref": "#\/definitions\/dss-DocumentHashType"
					}
				}
			}
		},
		"dss-DocumentType": {
			"$xsd-type": "DocumentType",
			"type": "object",
			"properties": {
				"ID": {
					"type": "string"
				},
				"refURI": {
					"type": "string"
				},
				"refType": {
					"type": "string"
				},
				"schemaRefs": {
					"type": "array",
					"items": {
						"type": "object",
						"$ref": "#\/definitions\/dss-DocumentType"
					}
				},
				"b64Data": {
					"type": "object",
					"$ref": "#\/definitions\/dss-Base64DataType"
				}
			}
		},
		"dss-Base64DataType": {
			"$xsd-type": "Base64DataType",
			"type": "object",
			"properties": {
				"ID": {
					"type": "string"
				},
				"value": {
					"type": "string"
				},
				"mimeType": {
					"type": "string"
				},
				"attRef": {
					"type": "string"
				},
				"IDREF": {
					"type": "string"
				}
			}
		},
		"dss-TransformedDataType": {
			"$xsd-type": "TransformedDataType",
			"type": "object",
			"properties": {
				"ID": {
					"type": "string"
				},
				"refURI": {
					"type": "string"
				},
				"refType": {
					"type": "string"
				},
				"schemaRefs": {
					"type": "array",
					"items": {
						"type": "object",
						"$ref": "#\/definitions\/dss-DocumentType"
					}
				},
				"transforms": {
					"type": "object",
					"$ref": "#\/definitions\/dsig-TransformsType"
				},
				"b64Data": {
					"type": "object",
					"$ref": "#\/definitions\/dss-Base64DataType"
				},
				"whichRef": {
					"type": "integer"
				}
			},
			"required": [
				"b64Data"
			]
		},
		"dsig-TransformsType": {
			"$xsd-type": "TransformsType",
			"type": "object",
			"properties": {
				"transform": {
					"type": "array",
					"items": {
						"type": "object",
						"$ref": "#\/definitions\/dsig-TransformType"
					}
				}
			},
			"required": [
				"transform"
			]
		},
		"dsig-TransformType": {
			"$xsd-type": "TransformType",
			"type": "object",
			"properties": {
				"value": {
					"type": "string"
				},
				"b64Content": {
					"type": "string"
				},
				"xpath": {
					"type": "array",
					"items": {
						"type": "string"
					}
				},
				"nsDecl": {
					"type": "array",
					"items": {
						"type": "object",
						"$ref": "#\/definitions\/dsig-NsURIMappingType"
					}
				},
				"algo": {
					"type": "string"
				}
			},
			"required": [
				"algo"
			]
		},
		"dsig-NsURIMappingType": {
			"$xsd-type": "NsURIMappingType",
			"type": "object",
			"properties": {
				"ns": {
					"type": "string"
				},
				"uri": {
					"type": "string"
				}
			},
			"required": [
				"ns",
				"uri"
			]
		},
		"dss-DocumentHashType": {
			"$xsd-type": "DocumentHashType",
			"type": "object",
			"properties": {
				"ID": {
					"type": "string"
				},
				"refURI": {
					"type": "string"
				},
				"refType": {
					"type": "string"
				},
				"schemaRefs": {
					"type": "array",
					"items": {
						"type": "object",
						"$ref": "#\/definitions\/dss-DocumentType"
					}
				},
				"transforms": {
					"type": "object",
					"$ref": "#\/definitions\/dsig-TransformsType"
				},
				"di": {
					"type": "array",
					"items": {
						"type": "object",
						"$ref": "#\/definitions\/dss-DigestInfoType"
					}
				},
				"whichRef": {
					"type": "integer"
				}
			},
			"required": [
				"di"
			]
		},
		"dss-DigestInfoType": {
			"$xsd-type": "DigestInfoType",
			"type": "object",
			"properties": {
				"alg": {
					"type": "string"
				},
				"value": {
					"type": "string"
				}
			},
			"required": [
				"alg",
				"value"
			]
		},
		"dss-OptionalInputsSignType": {
			"$xsd-type": "OptionalInputsSignType",
			"type": "object",
			"properties": {
				"profile": {
					"type": "array",
					"items": {
						"type": "string"
					}
				},
				"policy": {
					"type": "array",
					"items": {
						"type": "string"
					}
				},
				"claimedIdentity": {
					"type": "object",
					"$ref": "#\/definitions\/dss-ClaimedIdentityType"
				},
				"lang": {
					"type": "string"
				},
				"schemas": {
					"type": "object",
					"$ref": "#\/definitions\/dss-SchemasType"
				},
				"addTimestamp": {
					"type": "object",
					"$ref": "#\/definitions\/dss-UpdateSignatureInstructionType"
				},
				"other": {
					"type": "array",
					"items": {
						"type": "object",
						"$ref": "#\/definitions\/dss-PropertyType"
					}
				},
				"sigType": {
					"type": "string"
				},
				"audience": {
					"type": "object",
					"$ref": "#\/definitions\/dss-IntendedAudienceType"
				},
				"keySel": {
					"type": "object",
					"$ref": "#\/definitions\/dss-KeyInfoType"
				},
				"props": {
					"type": "object",
					"$ref": "#\/definitions\/dss-PropertiesHolderType"
				},
				"includeObj": {
					"type": "array",
					"items": {
						"type": "object",
						"$ref": "#\/definitions\/dss-IncludeObjectType"
					}
				},
				"sigPlacement": {
					"type": "object",
					"$ref": "#\/definitions\/dss-SignaturePlacementType"
				},
				"sigRefs": {
					"type": "object",
					"$ref": "#\/definitions\/dss-SignedReferencesType"
				},
				"nonce": {
					"type": "integer"
				},
				"sigAlgo": {
					"type": "string"
				},
				"sad": {
					"type": "string"
				}
			}
		},
		"dss-ClaimedIdentityType": {
			"$xsd-type": "ClaimedIdentityType",
			"type": "object",
			"properties": {
				"name": {
					"type": "object",
					"$ref": "#\/definitions\/saml2-NameIDType"
				},
				"suppInfo": {
					"type": "object",
					"$ref": "#\/definitions\/dss-AnyType"
				}
			},
			"required": [
				"name"
			]
		},
		"saml2-NameIDType": {
			"$xsd-type": "NameIDType",
			"type": "object",
			"properties": {
				"value": {
					"type": "string"
				},
				"format": {
					"type": "string"
				},
				"provId": {
					"type": "string"
				},
				"nameQual": {
					"type": "string"
				},
				"spNameQual": {
					"type": "string"
				}
			}
		},
		"dss-AnyType": {
			"$xsd-type": "AnyType",
			"type": "object",
			"properties": {
				"content": {
					"type": "array",
					"items": {
						"type": "object",
						"$ref": "#\/definitions\/dss-AnyType:Content"
					}
				}
			},
			"required": [
				"content"
			]
		},
		"dss-AnyType:Content": {
			"$xsd-type": "Content",
			"type": "object",
			"properties": {
				"b64Content": {
					"type": "string"
				},
				"mimeType": {
					"type": "string"
				}
			},
			"required": [
				"b64Content"
			]
		},
		"dss-SchemasType": {
			"$xsd-type": "SchemasType",
			"type": "object",
			"properties": {
				"schema": {
					"type": "array",
					"items": {
						"type": "object",
						"$ref": "#\/definitions\/dss-DocumentType"
					}
				}
			},
			"required": [
				"schema"
			]
		},
		"dss-UpdateSignatureInstructionType": {
			"$xsd-type": "UpdateSignatureInstructionType",
			"type": "object",
			"properties": {
				"type": {
					"type": "string",
					"format": "uri"
				}
			}
		},
		"dss-PropertyType": {
			"$xsd-type": "PropertyType",
			"type": "object",
			"properties": {
				"id": {
					"type": "string"
				},
				"value": {
					"type": "object",
					"$ref": "#\/definitions\/dss-AnyType"
				}
			},
			"required": [
				"id"
			]
		},
		"dss-IntendedAudienceType": {
			"$xsd-type": "IntendedAudienceType",
			"type": "object",
			"properties": {
				"recipient": {
					"type": "array",
					"items": {
						"type": "object",
						"$ref": "#\/definitions\/saml2-NameIDType"
					}
				}
			},
			"required": [
				"recipient"
			]
		},
		"dss-KeyInfoType": {
			"$xsd-type": "KeyInfoType",
			"type": "object",
			"properties": {
				"x509Digest": {
					"type": "object",
					"$ref": "#\/definitions\/dss-X509DigestType"
				},
				"subject": {
					"type": "string"
				},
				"ski": {
					"type": "string"
				},
				"cert": {
					"type": "string"
				},
				"name": {
					"type": "string"
				}
			},
			"minProperties": 1
		},
		"dss-X509DigestType": {
			"$xsd-type": "X509DigestType",
			"type": "object",
			"properties": {
				"value": {
					"type": "string"
				},
				"algo": {
					"type": "string"
				}
			},
			"required": [
				"algo"
			]
		},
		"dss-PropertiesHolderType": {
			"$xsd-type": "PropertiesHolderType",
			"type": "object",
			"properties": {
				"signedProps": {
					"type": "object",
					"$ref": "#\/definitions\/dss-PropertiesType"
				},
				"unsignedProps": {
					"type": "object",
					"$ref": "#\/definitions\/dss-PropertiesType"
				}
			}
		},
		"dss-PropertiesType": {
			"$xsd-type": "PropertiesType",
			"type": "object",
			"properties": {
				"prop": {
					"type": "array",
					"items": {
						"type": "object",
						"$ref": "#\/definitions\/dss-PropertyType"
					}
				}
			},
			"required": [
				"prop"
			]
		},
		"dss-IncludeObjectType": {
			"$xsd-type": "IncludeObjectType",
			"type": "object",
			"properties": {
				"whichDoc": {
					"type": "object",
					"$ref": "#\/definitions\/dss-DocumentBaseType"
				},
				"hasObjectTagsAndAttributesSet": {
					"type": "boolean"
				},
				"objId": {
					"type": "string"
				},
				"createRef": {
					"type": "boolean"
				}
			}
		},
		"dss-DocumentBaseType": {
			"$xsd-type": "DocumentBaseType",
			"type": "object",
			"properties": {
				"ID": {
					"type": "string"
				},
				"refURI": {
					"type": "string"
				},
				"refType": {
					"type": "string"
				},
				"schemaRefs": {
					"type": "array",
					"items": {
						"type": "object",
						"$ref": "#\/definitions\/dss-DocumentType"
					}
				}
			}
		},
		"dss-SignaturePlacementType": {
			"$xsd-type": "SignaturePlacementType",
			"type": "object",
			"properties": {
				"xPathAfter": {
					"type": "string"
				},
				"xPathFirstChildOf": {
					"type": "string"
				},
				"nsDecl": {
					"type": "array",
					"items": {
						"type": "object",
						"$ref": "#\/definitions\/dsig-NsURIMappingType"
					}
				},
				"whichDoc": {
					"type": "object",
					"$ref": "#\/definitions\/dss-DocumentBaseType"
				},
				"createEnvelopedSignature": {
					"type": "boolean"
				}
			}
		},
		"dss-SignedReferencesType": {
			"$xsd-type": "SignedReferencesType",
			"type": "object",
			"properties": {
				"signedRef": {
					"type": "array",
					"items": {
						"type": "object",
						"$ref": "#\/definitions\/dss-SignedReferenceType"
					}
				}
			},
			"required": [
				"signedRef"
			]
		},
		"dss-SignedReferenceType": {
			"$xsd-type": "SignedReferenceType",
			"type": "object",
			"properties": {
				"transforms": {
					"type": "object",
					"$ref": "#\/definitions\/dsig-TransformsType"
				},
				"whichDoc": {
					"type": "object",
					"$ref": "#\/definitions\/dss-DocumentBaseType"
				},
				"refURI": {
					"type": "string"
				},
				"refId": {
					"type": "string"
				}
			},
			"required": [
				"whichDoc"
			]
		},
		"dss-SignResponseType": {
			"$xsd-type": "SignResponseType",
			"type": "object",
			"properties": {
				"result": {
					"type": "object",
					"$ref": "#\/definitions\/dss-ResultType"
				},
				"reqID": {
					"type": "string"
				},
				"optOutp": {
					"type": "object",
					"$ref": "#\/definitions\/dss-OptionalOutputsSignType"
				},
				"sigObj": {
					"type": "object",
					"$ref": "#\/definitions\/dss-SignatureObjectType"
				}
			}
		},
		"dss-ResultType": {
			"$xsd-type": "ResultType",
			"type": "object",
			"properties": {
				"maj": {
					"type": "string",
					"enum": [
						"urn:oasis:names:tc:dss:1.0:resultmajor:Success",
						"urn:oasis:names:tc:dss:1.0:resultmajor:RequesterError",
						"urn:oasis:names:tc:dss:1.0:resultmajor:ResponderError",
						"urn:oasis:names:tc:dss:1.0:resultmajor:InsufficientInformation"
					]
				},
				"min": {
					"type": "string"
				},
				"msg": {
					"type": "object",
					"$ref": "#\/definitions\/dss-InternationalStringType"
				}
			},
			"required": [
				"maj"
			]
		},
		"dss-InternationalStringType": {
			"$xsd-type": "InternationalStringType",
			"type": "object",
			"properties": {
				"value": {
					"type": "string"
				},
				"lang": {
					"type": "string"
				}
			},
			"required": [
				"lang"
			]
		},
		"dss-OptionalOutputsSignType": {
			"$xsd-type": "OptionalOutputsSignType",
			"type": "object",
			"properties": {
				"profile": {
					"type": "array",
					"items": {
						"type": "string"
					}
				},
				"policy": {
					"type": "array",
					"items": {
						"type": "string"
					}
				},
				"transformed": {
					"type": "object",
					"$ref": "#\/definitions\/dss-TransformedDocumentType"
				},
				"schemas": {
					"type": "object",
					"$ref": "#\/definitions\/dss-SchemasType"
				},
				"docWithSignature": {
					"type": "object",
					"$ref": "#\/definitions\/dss-DocumentWithSignatureType"
				},
				"other": {
					"type": "array",
					"items": {
						"type": "object",
						"$ref": "#\/definitions\/dss-PropertyType"
					}
				}
			}
		},
		"dss-TransformedDocumentType": {
			"$xsd-type": "TransformedDocumentType",
			"type": "object",
			"properties": {
				"doc": {
					"type": "object",
					"$ref": "#\/definitions\/dss-DocumentType"
				},
				"whichRef": {
					"type": "integer"
				}
			},
			"required": [
				"doc",
				"whichRef"
			]
		},
		"dss-DocumentWithSignatureType": {
			"$xsd-type": "DocumentWithSignatureType",
			"type": "object",
			"properties": {
				"doc": {
					"type": "object",
					"$ref": "#\/definitions\/dss-DocumentType"
				}
			},
			"required": [
				"doc"
			]
		},
		"dss-SignatureObjectType": {
			"$xsd-type": "SignatureObjectType",
			"type": "object",
			"properties": {
				"b64Sig": {
					"type": "object",
					"$ref": "#\/definitions\/dss-Base64DataType"
				},
				"sigPtr": {
					"type": "object",
					"$ref": "#\/definitions\/dss-SignaturePtrType"
				},
				"schemaRefs": {
					"type": "array",
					"items": {
						"type": "object",
						"$ref": "#\/definitions\/dss-DocumentBaseType"
					}
				}
			}
		},
		"dss-SignaturePtrType": {
			"$xsd-type": "SignaturePtrType",
			"type": "object",
			"properties": {
				"nsDecl": {
					"type": "array",
					"items": {
						"type": "object",
						"$ref": "#\/definitions\/dsig-NsURIMappingType"
					}
				},
				"whichDoc": {
					"type": "object",
					"$ref": "#\/definitions\/dss-DocumentBaseType"
				},
				"xPath": {
					"type": "string"
				}
			},
			"required": [
				"whichDoc"
			]
		},
		"dss-VerifyRequestType": {
			"$xsd-type": "VerifyRequestType",
			"type": "object",
			"properties": {
				"inDocs": {
					"type": "object",
					"$ref": "#\/definitions\/dss-InputDocumentsType"
				},
				"reqID": {
					"type": "string"
				},
				"optInp": {
					"type": "object",
					"$ref": "#\/definitions\/dss-OptionalInputsVerifyType"
				},
				"sigObj": {
					"type": "object",
					"$ref": "#\/definitions\/dss-SignatureObjectType"
				}
			}
		},
		"dss-OptionalInputsVerifyType": {
			"$xsd-type": "OptionalInputsVerifyType",
			"type": "object",
			"properties": {
				"profile": {
					"type": "array",
					"items": {
						"type": "string"
					}
				},
				"policy": {
					"type": "array",
					"items": {
						"type": "string"
					}
				},
				"claimedIdentity": {
					"type": "object",
					"$ref": "#\/definitions\/dss-ClaimedIdentityType"
				},
				"lang": {
					"type": "string"
				},
				"schemas": {
					"type": "object",
					"$ref": "#\/definitions\/dss-SchemasType"
				},
				"addTimestamp": {
					"type": "object",
					"$ref": "#\/definitions\/dss-UpdateSignatureInstructionType"
				},
				"other": {
					"type": "array",
					"items": {
						"type": "object",
						"$ref": "#\/definitions\/dss-PropertyType"
					}
				},
				"useVerificationTime": {
					"type": "object",
					"$ref": "#\/definitions\/dss-UseVerificationTimeType"
				},
				"returnVerificationTime": {
					"type": "boolean"
				},
				"addKeyInfo": {
					"type": "object",
					"$ref": "#\/definitions\/dss-AdditionalKeyInfoType"
				},
				"returnProcDetails": {
					"type": "boolean"
				},
				"returnSigningTime": {
					"type": "boolean"
				},
				"returnSigner": {
					"type": "boolean"
				},
				"returnUpdated": {
					"type": "boolean"
				},
				"returnTransformed": {
					"type": "array",
					"items": {
						"type": "object",
						"$ref": "#\/definitions\/dss-ReturnTransformedDocumentType"
					}
				},
				"returnTimestamped": {
					"type": "object",
					"$ref": "#\/definitions\/dss-UpdateSignatureInstructionType"
				}
			}
		},
		"dss-UseVerificationTimeType": {
			"$xsd-type": "UseVerificationTimeType",
			"type": "object",
			"properties": {
				"currTime": {
					"type": "boolean"
				},
				"specTime": {
					"type": "integer",
					"format": "utc-millisec"
				},
				"b64Content": {
					"type": "string"
				}
			},
			"minProperties": 1,
			"maxProperties": 1
		},
		"dss-AdditionalKeyInfoType": {
			"$xsd-type": "AdditionalKeyInfoType",
			"type": "object",
			"properties": {
				"x509Digest": {
					"type": "object",
					"$ref": "#\/definitions\/dss-X509DigestType"
				},
				"subject": {
					"type": "string"
				},
				"ski": {
					"type": "string"
				},
				"cert": {
					"type": "string"
				},
				"name": {
					"type": "string"
				},
				"X509CRL": {
					"type": "string"
				}
			}
		},
		"dss-ReturnTransformedDocumentType": {
			"$xsd-type": "ReturnTransformedDocumentType",
			"type": "object",
			"properties": {
				"whichRef": {
					"type": "integer"
				}
			},
			"required": [
				"whichRef"
			]
		},
		"dss-VerifyResponseType": {
			"$xsd-type": "VerifyResponseType",
			"type": "object",
			"properties": {
				"result": {
					"type": "object",
					"$ref": "#\/definitions\/dss-ResultType"
				},
				"reqID": {
					"type": "string"
				},
				"optOutp": {
					"type": "object",
					"$ref": "#\/definitions\/dss-OptionalOutputsVerifyType"
				}
			}
		},
		"dss-OptionalOutputsVerifyType": {
			"$xsd-type": "OptionalOutputsVerifyType",
			"type": "object",
			"properties": {
				"profile": {
					"type": "array",
					"items": {
						"type": "string"
					}
				},
				"policy": {
					"type": "array",
					"items": {
						"type": "string"
					}
				},
				"transformed": {
					"type": "object",
					"$ref": "#\/definitions\/dss-TransformedDocumentType"
				},
				"schemas": {
					"type": "object",
					"$ref": "#\/definitions\/dss-SchemasType"
				},
				"docWithSignature": {
					"type": "object",
					"$ref": "#\/definitions\/dss-DocumentWithSignatureType"
				},
				"other": {
					"type": "array",
					"items": {
						"type": "object",
						"$ref": "#\/definitions\/dss-PropertyType"
					}
				},
				"result": {
					"type": "object",
					"$ref": "#\/definitions\/dss-VerifyManifestResultsType"
				},
				"signingTimeInfo": {
					"type": "object",
					"$ref": "#\/definitions\/dss-SigningTimeInfoType"
				},
				"verificationTimeInfo": {
					"type": "object",
					"$ref": "#\/definitions\/dss-VerificationTimeInfoType"
				},
				"procDetails": {
					"type": "object",
					"$ref": "#\/definitions\/dss-ProcessingDetailsType"
				},
				"signerIdentity": {
					"type": "object",
					"$ref": "#\/definitions\/saml2-NameIDType"
				},
				"updSignature": {
					"type": "object",
					"$ref": "#\/definitions\/dss-UpdatedSignatureType"
				},
				"timestampedSignature": {
					"type": "object",
					"$ref": "#\/definitions\/dss-UpdatedSignatureType"
				}
			}
		},
		"dss-VerifyManifestResultsType": {
			"$xsd-type": "VerifyManifestResultsType",
			"type": "object",
			"properties": {
				"signedRef": {
					"type": "array",
					"items": {
						"type": "object",
						"$ref": "#\/definitions\/dss-ManifestResultType"
					}
				}
			},
			"required": [
				"signedRef"
			]
		},
		"dss-ManifestResultType": {
			"$xsd-type": "ManifestResultType",
			"type": "object",
			"properties": {
				"xPath": {
					"type": "string"
				},
				"status": {
					"type": "string",
					"enum": [
						"urn:oasis:names:tc:dss:1.0:manifeststatus:Valid",
						"urn:oasis:names:tc:dss:1.0:manifeststatus:Invalid"
					]
				},
				"nsDecl": {
					"type": "array",
					"items": {
						"type": "object",
						"$ref": "#\/definitions\/dsig-NsURIMappingType"
					}
				}
			},
			"required": [
				"xPath",
				"status"
			]
		},
		"dss-SigningTimeInfoType": {
			"$xsd-type": "SigningTimeInfoType",
			"type": "object",
			"properties": {
				"signingTime": {
					"type": "integer",
					"format": "utc-millisec"
				},
				"signingTimeBounds": {
					"type": "object",
					"$ref": "#\/definitions\/dss-SigningTimeInfoType:SigningTimeBoundaries"
				}
			},
			"required": [
				"signingTime"
			]
		},
		"dss-SigningTimeInfoType:SigningTimeBoundaries": {
			"$xsd-type": "SigningTimeBoundaries",
			"type": "object",
			"properties": {
				"lowerBound": {
					"type": "integer",
					"format": "utc-millisec"
				},
				"upperBound": {
					"type": "integer",
					"format": "utc-millisec"
				}
			}
		},
		"dss-VerificationTimeInfoType": {
			"$xsd-type": "VerificationTimeInfoType",
			"type": "object",
			"properties": {
				"verificationTime": {
					"type": "integer",
					"format": "utc-millisec"
				},
				"additionalTimeInfo": {
					"type": "array",
					"items": {
						"type": "object",
						"$ref": "#\/definitions\/dss-AdditionalTimeInfoType"
					}
				}
			},
			"required": [
				"verificationTime"
			]
		},
		"dss-AdditionalTimeInfoType": {
			"$xsd-type": "AdditionalTimeInfoType",
			"type": "object",
			"properties": {
				"value": {
					"type": "integer",
					"format": "utc-millisec"
				},
				"type": {
					"type": "string",
					"format": "uri"
				},
				"ref": {
					"type": "string",
					"enum": [
						"urn:oasis:names:tc:dss:1.0:additionaltimeinfo:signatureTimestamp",
						"urn:oasis:names:tc:dss:1.0:additionaltimeinfo:signatureTimemark",
						"urn:oasis:names:tc:dss:1.0:additionaltimeinfo:signedObjectTimestamp",
						"urn:oasis:names:tc:dss:1.0:additionaltimeinfo:claimedSigningTime"
					]
				}
			},
			"required": [
				"type"
			]
		},
		"dss-ProcessingDetailsType": {
			"$xsd-type": "ProcessingDetailsType",
			"type": "object",
			"properties": {
				"valid": {
					"type": "array",
					"items": {
						"type": "object",
						"$ref": "#\/definitions\/dss-DetailType"
					}
				},
				"indeterminate": {
					"type": "array",
					"items": {
						"type": "object",
						"$ref": "#\/definitions\/dss-DetailType"
					}
				},
				"invalid": {
					"type": "array",
					"items": {
						"type": "object",
						"$ref": "#\/definitions\/dss-DetailType"
					}
				}
			}
		},
		"dss-DetailType": {
			"$xsd-type": "DetailType",
			"type": "object",
			"properties": {
				"code": {
					"type": "string"
				},
				"msg": {
					"type": "object",
					"$ref": "#\/definitions\/dss-InternationalStringType"
				},
				"b64Content": {
					"type": "string"
				},
				"type": {
					"type": "string",
					"format": "uri"
				}
			},
			"required": [
				"type"
			]
		},
		"dss-UpdatedSignatureType": {
			"$xsd-type": "UpdatedSignatureType",
			"type": "object",
			"properties": {
				"sigObj": {
					"type": "object",
					"$ref": "#\/definitions\/dss-SignatureObjectType"
				},
				"type": {
					"type": "string",
					"format": "uri"
				}
			},
			"required": [
				"sigObj"
			]
		}
	},
	"type": "object",
	"properties": {
		"signReq": {
			"type": "object",
			"$ref": "#\/definitions\/dss-SignRequestType"
		},
		"signResp": {
			"type": "object",
			"$ref": "#\/definitions\/dss-SignResponseType"
		},
		"verifyReq": {
			"type": "object",
			"$ref": "#\/definitions\/dss-VerifyRequestType"
		},
		"verifyResp": {
			"type": "object",
			"$ref": "#\/definitions\/dss-VerifyResponseType"
		}
	}
}
<?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:jxb="http://java.sun.com/xml/ns/jaxb"; xmlns:xjc="http://java.sun.com/xml/ns/jaxb/xjc";
	xmlns:saml="urn:oasis:names:tc:SAML:1.0:assertion" xmlns:annox="http://annox.dev.java.net";
	xmlns:es="http://trustable.eu/enrichSchema"; xmlns:saml2="urn:oasis:names:tc:SAML:2.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"
	jxb:version="2.1" jxb:extensionBindingPrefixes="annox xjc">


	<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="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="urn:oasis:names:tc:SAML:2.0:assertion"
		schemaLocation="saml-schema-assertion-2.0.xsd" />
	<xs:import namespace="http://www.w3.org/XML/1998/namespace";
		schemaLocation="xml.xsd" />

	<xs:complexType name="AnyType">
		<xs:sequence>
			<xs:element name="Content" minOccurs="1" maxOccurs="unbounded"
				es:jsonName="content">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="Base64Content" type="xs:base64Binary"
							es:jsonName="b64Content" />
						<xs:any processContents="lax" minOccurs="0" maxOccurs="unbounded" />
					</xs:sequence>
					<xs:attribute name="MimeType" type="xs:string" use="optional"
						es:jsonName="mimeType" />
				</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"
					es:jsonName="lang" />
			</xs:extension>
		</xs:simpleContent>
	</xs:complexType>
	<xs:element name="InputDocuments" type="dss:InputDocumentsType" />
	<xs:complexType name="InputDocumentsType">
		<xs:choice>
			<xs:sequence maxOccurs="unbounded" es:jsonName="doc">
				<xs:element name="Document" type="dss:DocumentType" />
			</xs:sequence>
			<xs:sequence maxOccurs="unbounded" es:jsonName="transformed">
				<xs:element name="TransformedData" type="dss:TransformedDataType" />
			</xs:sequence>
			<xs:sequence maxOccurs="unbounded" es:jsonName="docHash">
				<xs:element name="DocumentHash" type="dss:DocumentHashType" />
			</xs:sequence>
		</xs:choice>
	</xs:complexType>
	<xs:complexType name="DocumentBaseType" abstract="true">
		<xs:attribute name="ID" type="xs:ID" use="optional"
			es:jsonName="ID" />
		<xs:attribute name="RefURI" type="xs:anyURI" use="optional"
			es:jsonName="refURI" />
		<xs:attribute name="RefType" type="xs:anyURI" use="optional"
			es:jsonName="refType" />
		<xs:attribute name="SchemaRefs" type="xs:IDREFS" use="optional"
			es:jsonName="schemaRefs" />
	</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"
						es:jsonName="b64Data" />
				</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"
					es:jsonName="mimeType" />
				<xs:attribute name="AttRefURI" type="xs:anyURI" use="optional"
					es:jsonName="attRef" />
				<xs:attribute name="ID" type="xs:ID" use="optional"
					es:jsonName="ID" />
				<xs:attribute name="IDREF" type="xs:IDREF" use="optional"
					es:jsonName="IDREF" />
			</xs:extension>
		</xs:simpleContent>
	</xs:complexType>

	<xs:complexType name="TransformedDataType">
		<xs:complexContent>
			<xs:extension base="dss:DocumentBaseType">
				<xs:sequence>
					<xs:element name="Transforms" type="ds:TransformsType"
						minOccurs="0" es:jsonName="transforms" />
					<xs:element name="Base64Data" type="dss:Base64DataType"
						es:jsonName="b64Data" />
				</xs:sequence>
				<xs:attribute name="WhichReference" type="xs:integer"
					use="optional" es:jsonName="whichRef" />
			</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 name="Transforms" type="ds:TransformsType"
						minOccurs="0" es:jsonName="transforms" />
					<xs:element name="DigestInfos" type="dss:DigestInfoType"
						minOccurs="1" maxOccurs="unbounded" es:jsonName="di" />
				</xs:sequence>
				<xs:attribute name="WhichReference" type="xs:integer"
					use="optional" es:jsonName="whichRef" />
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<xs:complexType name="DigestInfoType">
		<xs:sequence>
			<xs:element name="DigestMethod" type="xs:string"
				es:jsonName="alg" />
			<xs:element name="DigestValue" type="xs:base64Binary"
				es:jsonName="value" />
		</xs:sequence>
	</xs:complexType>
	<xs:element name="SignatureObject" type="dss:SignatureObjectType" />
	<xs:complexType name="SignatureObjectType">
		<xs:sequence>
			<xs:choice>
				<xs:element name="Base64Signature" type="dss:Base64DataType"
					es:jsonName="b64Sig" />
				<xs:element name="SignaturePtr" type="dss:SignaturePtrType"
					es:jsonName="sigPtr" />
			</xs:choice>
		</xs:sequence>
		<xs:attribute name="SchemaRefs" type="xs:IDREFS" use="optional"
			es:jsonName="schemaRefs" />
	</xs:complexType>

	<xs:element name="SignaturePtr" type="dss:SignaturePtrType" />
	<xs:complexType name="SignaturePtrType">
		<xs:sequence>
			<xs:element name="NsURIMapping" type="ds:NsURIMappingType"
				minOccurs="0" maxOccurs="unbounded" es:jsonName="nsDecl" />
		</xs:sequence>
		<xs:attribute name="WhichDocument" type="xs:IDREF" use="required"
			es:jsonName="whichDoc" />
		<xs:attribute name="XPath" type="xs:string" use="optional"
			es:jsonName="xPath" />
	</xs:complexType>
	<xs:element name="Result" type="dss:ResultType" />
	<xs:complexType name="ResultType">
		<xs:sequence>
			<xs:element name="ResultMajor" es:jsonName="maj">
				<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"
				es:jsonName="min" />
			<xs:element name="ResultMessage" type="dss:InternationalStringType"
				minOccurs="0" es:jsonName="msg" />
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="OptionalInputsBaseType" abstract="true">
		<xs:sequence>
			<xs:choice>
				<xs:element name="Profile" type="xs:anyURI" minOccurs="0"
					maxOccurs="unbounded" es:jsonName="profile" />
				<xs:element name="ServicePolicy" type="xs:anyURI"
					minOccurs="0" maxOccurs="unbounded" es:jsonName="policy" />
				<xs:element name="ClaimedIdentity" type="dss:ClaimedIdentityType"
					minOccurs="0" maxOccurs="1" es:jsonName="claimedIdentity" />
				<xs:element name="Language" type="xs:language" minOccurs="0"
					maxOccurs="1" es:jsonName="lang" />
				<xs:element name="Schemas" type="dss:SchemasType"
					minOccurs="0" maxOccurs="1" es:jsonName="schemas" />
				<xs:element name="AddTimestamp" type="dss:UpdateSignatureInstructionType"
					minOccurs="0" maxOccurs="1" es:jsonName="addTimestamp" />
				<xs:element name="Other" type="dss:PropertyType"
					minOccurs="0" maxOccurs="unbounded" es:jsonName="other" />
			</xs:choice>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="OptionalInputsSignType">
		<xs:complexContent>
			<xs:extension base="dss:OptionalInputsBaseType">
				<xs:sequence>
					<xs:choice>
						<xs:element name="SignatureType" type="xs:anyURI"
							minOccurs="0" maxOccurs="1" es:jsonName="sigType" />
						<xs:element name="IntendedAudience" type="dss:IntendedAudienceType"
							minOccurs="0" maxOccurs="1" es:jsonName="audience" />
						<xs:element name="KeySelector" type="dss:KeyInfoType"
							minOccurs="0" maxOccurs="1" es:jsonName="keySel" />
						<xs:element name="Properties" type="dss:PropertiesHolderType"
							minOccurs="0" maxOccurs="1" es:jsonName="props" />
						<xs:element name="IncludeObject" type="dss:IncludeObjectType"
							minOccurs="0" maxOccurs="unbounded" es:jsonName="includeObj" />
						<xs:element name="SignaturePlacement" type="dss:SignaturePlacementType"
							minOccurs="0" maxOccurs="1" es:jsonName="sigPlacement" />
						<xs:element name="SignedReferences" type="dss:SignedReferencesType"
							minOccurs="0" maxOccurs="1" es:jsonName="sigRefs" />
						<xs:element name="Nonce" type="xs:integer" minOccurs="0"
							maxOccurs="1" es:jsonName="nonce" />
						<xs:element name="SignatureAlgorithm" type="xs:string"
							minOccurs="0" maxOccurs="1" es:jsonName="sigAlgo" />
						<xs:element name="SignatureActivationData" type="xs:string"
							minOccurs="0" maxOccurs="1" es:jsonName="sad" />
					</xs:choice>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<xs:complexType name="OptionalInputsVerifyType">
		<xs:complexContent>
			<xs:extension base="dss:OptionalInputsBaseType">
				<xs:sequence>
					<xs:choice>
						<xs:element name="UseVerificationTime" type="dss:UseVerificationTimeType"
							minOccurs="0" maxOccurs="1" es:jsonName="useVerificationTime" />
						<xs:element name="ReturnVerificationTimeInfo" type="xs:boolean"
							default="false" minOccurs="0" maxOccurs="1" es:jsonName="returnVerificationTime" />
						<xs:element name="AdditionalKeyInfo" type="dss:AdditionalKeyInfoType"
							minOccurs="0" maxOccurs="1" es:jsonName="addKeyInfo" />
						<xs:element name="ReturnProcessingDetails" type="xs:boolean"
							default="false" minOccurs="0" maxOccurs="1" es:jsonName="returnProcDetails" />
						<xs:element name="ReturnSigningTimeInfo" type="xs:boolean"
							default="false" minOccurs="0" maxOccurs="1" es:jsonName="returnSigningTime" />
						<xs:element name="ReturnSignerIdentity" type="xs:boolean"
							default="false" minOccurs="0" maxOccurs="1" es:jsonName="returnSigner" />
						<xs:element name="ReturnUpdatedSignature" type="xs:boolean"
							default="false" minOccurs="0" maxOccurs="1" es:jsonName="returnUpdated" />
						<xs:element name="ReturnTransformedDocument" type="dss:ReturnTransformedDocumentType"
							minOccurs="0" maxOccurs="unbounded" es:jsonName="returnTransformed" />
						<xs:element name="ReturnTimestampedSignature" type="dss:UpdateSignatureInstructionType"
							minOccurs="0" maxOccurs="1" es:jsonName="returnTimestamped" />
					</xs:choice>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<xs:complexType name="OptionalOutputsBaseType" abstract="true">
		<xs:sequence>
			<xs:element name="AppliedProfile" type="xs:anyURI"
				minOccurs="0" maxOccurs="unbounded" es:jsonName="profile" />
			<xs:element name="AppliedPolicy" type="xs:anyURI"
				minOccurs="0" maxOccurs="unbounded" es:jsonName="policy" />
			<xs:element name="TransformedDocument" type="dss:TransformedDocumentType"
				minOccurs="0" maxOccurs="1" es:jsonName="transformed" />
			<xs:element name="Schemas" type="dss:SchemasType"
				minOccurs="0" maxOccurs="1" es:jsonName="schemas" />
			<xs:element name="DocumentWithSignature" type="dss:DocumentWithSignatureType"
				minOccurs="0" maxOccurs="1" es:jsonName="docWithSignature" />
			<xs:element name="Other" type="dss:PropertyType"
				minOccurs="0" maxOccurs="unbounded" es:jsonName="other" />
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="OptionalOutputsSignType">
		<xs:complexContent>
			<xs:extension base="dss:OptionalOutputsBaseType" />
		</xs:complexContent>
	</xs:complexType>
	<xs:complexType name="OptionalOutputsVerifyType">
		<xs:complexContent>
			<xs:extension base="dss:OptionalOutputsBaseType">
				<xs:sequence>
					<xs:choice>
						<xs:element name="VerifyManifestResults" type="dss:VerifyManifestResultsType"
							minOccurs="0" maxOccurs="1" es:jsonName="result" />
						<xs:element name="SigningTimeInfo" type="dss:SigningTimeInfoType"
							minOccurs="0" maxOccurs="1" es:jsonName="signingTimeInfo" />
						<xs:element name="VerificationTimeInfo" type="dss:VerificationTimeInfoType"
							minOccurs="0" maxOccurs="1" es:jsonName="verificationTimeInfo" />
						<xs:element name="ProcessingDetails" type="dss:ProcessingDetailsType"
							minOccurs="0" maxOccurs="1" es:jsonName="procDetails" />
						<xs:element name="SignerIdentity" type="saml2:NameIDType"
							minOccurs="0" maxOccurs="1" es:jsonName="signerIdentity" />
						<xs:element name="UpdatedSignature" type="dss:UpdatedSignatureType"
							minOccurs="0" maxOccurs="1" es:jsonName="updSignature" />
						<xs:element name="TimestampedSignature" type="dss:UpdatedSignatureType"
							minOccurs="0" maxOccurs="1" es:jsonName="timestampedSignature" />
					</xs:choice>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<xs:element name="ServicePolicy" type="xs:anyURI" />
	<xs:element name="ClaimedIdentity" type="dss:ClaimedIdentityType" />
	<xs:complexType name="ClaimedIdentityType">
		<xs:sequence>
			<xs:element name="Name" type="saml2:NameIDType"
				es:jsonName="name" />
			<xs:element name="SupportingInfo" type="dss:AnyType"
				minOccurs="0" es:jsonName="suppInfo" />
		</xs:sequence>
	</xs:complexType>
	<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 name="Schema" type="dss:DocumentType"
				maxOccurs="unbounded" es:jsonName="schema" />
		</xs:sequence>
	</xs:complexType>
	<xs:element name="Schema" type="dss:DocumentType" />
	<xs:complexType abstract="true" name="RequestBaseType">
		<xs:sequence>

			<xs:element name="InputDocuments" type="dss:InputDocumentsType"
				minOccurs="0" es:jsonName="inDocs" />
		</xs:sequence>
		<xs:attribute name="RequestID" type="xs:string" use="optional"
			es:jsonName="reqID" />

	</xs:complexType>
	<xs:complexType abstract="true" name="ResponseBaseType">
		<xs:annotation>
			<xs:appinfo>
				<annox:annotate annox:class="javax.xml.bind.annotation.XmlRootElement"
					name="ResponseBaseType" />
				<annox:annotateClass>@com.fasterxml.jackson.annotation.JsonInclude(value=com.fasterxml.jackson.annotation.JsonInclude.Include.NON_EMPTY)
				</annox:annotateClass>
			</xs:appinfo>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="Result" type="dss:ResultType"
				es:jsonName="result" />

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

	</xs:complexType>
	<xs:element name="Response" type="dss:ResponseBaseType" />
	<xs:element name="SignRequest" type="dss:SignRequestType" />
	<xs:complexType name="SignRequestType">
		<xs:complexContent>
			<xs:extension base="dss:RequestBaseType">
				<xs:sequence>
					<xs:element name="OptionalInputs" type="dss:OptionalInputsSignType"
						minOccurs="0" es:jsonName="optInp" />
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<xs:element name="SignResponse" type="dss:SignResponseType" />
	<xs:complexType name="SignResponseType">
		<xs:complexContent>
			<xs:extension base="dss:ResponseBaseType">
				<xs:sequence>
					<xs:element name="OptionalOutputs" type="dss:OptionalOutputsSignType"
						minOccurs="0" es:jsonName="optOutp" />
					<xs:element name="SignatureObject" type="dss:SignatureObjectType"
						minOccurs="0" es:jsonName="sigObj" />
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<xs:element name="SignatureType" type="xs:anyURI" />
	<xs:element name="AddTimestamp" type="dss:UpdateSignatureInstructionType" />

	<xs:complexType name="UpdateSignatureInstructionType">
		<xs:attribute name="Type" type="xs:anyURI" use="optional"
			es:jsonName="type" />
	</xs:complexType>
	<xs:element name="IntendedAudience" type="dss:IntendedAudienceType" />
	<xs:complexType name="IntendedAudienceType">
		<xs:sequence>
			<xs:element name="Recipient" type="saml2:NameIDType"
				maxOccurs="unbounded" es:jsonName="recipient" />
		</xs:sequence>
	</xs:complexType>
	<xs:element name="KeySelector" type="dss:KeyInfoType" />
	<xs:complexType name="KeyInfoType">
		<xs:choice>
			<xs:element name="X509Digest" type="dss:X509DigestType"
				es:jsonName="x509Digest" />
			<xs:element name="X509SubjectName" type="xs:string"
				es:jsonName="subject" />
			<xs:element name="X509SKI" type="xs:base64Binary"
				es:jsonName="ski" />
			<xs:element name="X509Certificate" type="xs:base64Binary"
				es:jsonName="cert" />
			<xs:element name="KeyName" type="xs:string" es:jsonName="name" />
		</xs:choice>
	</xs:complexType>
	<xs:complexType name="X509DigestType">
		<xs:simpleContent>
			<xs:extension base="xs:base64Binary">
				<xs:attribute name="Algorithm" type="xs:string" use="required"
					es:jsonName="algo" />
			</xs:extension>
		</xs:simpleContent>
	</xs:complexType>
	<xs:element name="PropertiesHolder" type="dss:PropertiesHolderType" />
	<xs:complexType name="PropertiesHolderType">
		<xs:sequence>
			<xs:element name="SignedProperties" type="dss:PropertiesType"
				minOccurs="0" es:jsonName="signedProps" />
			<xs:element name="UnsignedProperties" type="dss:PropertiesType"
				minOccurs="0" es:jsonName="unsignedProps" />
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="PropertiesType">
		<xs:sequence>
			<xs:element name="Property" type="dss:PropertyType"
				maxOccurs="unbounded" es:jsonName="prop" />
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="PropertyType">
		<xs:sequence>
			<xs:element name="Identifier" type="xs:string"
				es:jsonName="id" />
			<xs:element name="Value" type="dss:AnyType" minOccurs="0"
				es:jsonName="value" />
		</xs:sequence>
	</xs:complexType>
	<xs:element name="Property" type="dss:PropertyType" />
	<xs:element name="IncludeObject" type="dss:IncludeObjectType" />
	<xs:complexType name="IncludeObjectType">
		<xs:attribute name="WhichDocument" type="xs:IDREF"
			es:jsonName="whichDoc" />
		<xs:attribute name="hasObjectTagsAndAttributesSet" type="xs:boolean"
			default="false" es:jsonName="hasObjectTagsAndAttributesSet" />
		<xs:attribute name="ObjId" type="xs:string" use="optional"
			es:jsonName="objId" />
		<xs:attribute name="createReference" type="xs:boolean"
			use="optional" default="true" es:jsonName="createRef" />
	</xs:complexType>
	<xs:element name="SignaturePlacement" type="dss:SignaturePlacementType" />
	<xs:complexType name="SignaturePlacementType">
		<xs:sequence>
			<xs:choice>
				<xs:element name="XPathAfter" type="xs:string"
					es:jsonName="xPathAfter" />
				<xs:element name="XPathFirstChildOf" type="xs:string"
					es:jsonName="xPathFirstChildOf" />
			</xs:choice>
			<xs:element name="NsURIMapping" type="ds:NsURIMappingType"
				minOccurs="0" maxOccurs="unbounded" es:jsonName="nsDecl" />
		</xs:sequence>
		<xs:attribute name="WhichDocument" type="xs:IDREF"
			es:jsonName="whichDoc" />
		<xs:attribute name="CreateEnvelopedSignature" type="xs:boolean"
			default="true" es:jsonName="createEnvelopedSignature" />
	</xs:complexType>
	<xs:element name="DocumentWithSignature" type="dss:DocumentWithSignatureType" />
	<xs:complexType name="DocumentWithSignatureType">
		<xs:sequence>
			<xs:element name="Document" type="dss:DocumentType"
				es:jsonName="doc" />
		</xs:sequence>
	</xs:complexType>
	<xs:element name="SignedReferences" type="dss:SignedReferencesType" />
	<xs:complexType name="SignedReferencesType">
		<xs:sequence>
			<xs:element name="SignedReference" type="dss:SignedReferenceType"
				maxOccurs="unbounded" es:jsonName="signedRef" />
		</xs:sequence>
	</xs:complexType>
	<xs:element name="SignedReference" type="dss:SignedReferenceType" />
	<xs:complexType name="SignedReferenceType">
		<xs:sequence>
			<xs:element name="Transforms" type="ds:TransformsType"
				minOccurs="0" es:jsonName="transforms" />
		</xs:sequence>
		<xs:attribute name="WhichDocument" type="xs:IDREF" use="required"
			es:jsonName="whichDoc" />
		<xs:attribute name="RefURI" type="xs:anyURI" use="optional"
			es:jsonName="refURI" />
		<xs:attribute name="RefId" type="xs:string" use="optional"
			es:jsonName="refId" />
	</xs:complexType>
	<xs:element name="VerifyRequest" type="dss:VerifyRequestType" />
	<xs:complexType name="VerifyRequestType">
		<xs:complexContent>
			<xs:extension base="dss:RequestBaseType">
				<xs:sequence>
					<xs:element name="OptionalInputs" type="dss:OptionalInputsVerifyType"
						minOccurs="0" es:jsonName="optInp" />
					<xs:element name="SignatureObject" type="dss:SignatureObjectType"
						minOccurs="0" es:jsonName="sigObj" />
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<xs:element name="VerifyResponse" type="dss:VerifyResponseType" />
	<xs:complexType name="VerifyResponseType">
		<xs:complexContent>
			<xs:extension base="dss:ResponseBaseType">
				<xs:sequence>
					<xs:element name="OptionalOutputs" type="dss:OptionalOutputsVerifyType"
						minOccurs="0" es:jsonName="optOutp" />
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<xs:element name="VerifyManifestResults" type="dss:VerifyManifestResultsType" />
	<xs:complexType name="VerifyManifestResultsType">
		<xs:sequence>
			<xs:element name="ManifestResult" type="dss:ManifestResultType"
				maxOccurs="unbounded" es:jsonName="signedRef" />
		</xs:sequence>
	</xs:complexType>
	<xs:element name="ManifestResult" type="dss:ManifestResultType" />
	<xs:complexType name="ManifestResultType">
		<xs:sequence>
			<xs:element name="ReferenceXpath" type="xs:string"
				es:jsonName="xPath" />
			<xs:element name="Status" es:jsonName="status">
				<xs:simpleType>
					<xs:restriction base="xs:anyURI">
						<xs:enumeration value="urn:oasis:names:tc:dss:1.0:manifeststatus:Valid" />
						<xs:enumeration
							value="urn:oasis:names:tc:dss:1.0:manifeststatus:Invalid" />
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="NsURIMapping" type="ds:NsURIMappingType"
				minOccurs="0" maxOccurs="unbounded" es:jsonName="nsDecl" />
		</xs:sequence>
	</xs:complexType>
	<xs:element name="UseVerificationTime" type="dss:UseVerificationTimeType" />
	<xs:complexType name="UseVerificationTimeType">
		<xs:choice>
			<xs:element type="xs:boolean" name="CurrentTime" default="false"
				es:jsonName="currTime" />
			<xs:element name="SpecificTime" type="xs:dateTime"
				es:jsonName="specTime" />
			<xs:element name="Base64Content" type="xs:base64Binary"
				minOccurs="0" maxOccurs="1" es:jsonName="b64Content" />
		</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"
					es:jsonName="type" />
				<xs:attribute name="Ref" use="optional" es:jsonName="ref">
					<xs:simpleType>
						<xs:restriction base="xs:string">
							<xs:enumeration
								value="urn:oasis:names:tc:dss:1.0:additionaltimeinfo:signatureTimestamp" />
							<xs:enumeration
								value="urn:oasis:names:tc:dss:1.0:additionaltimeinfo:signatureTimemark" />
							<xs:enumeration
								value="urn:oasis:names:tc:dss:1.0:additionaltimeinfo:signedObjectTimestamp" />
							<xs:enumeration
								value="urn:oasis:names:tc:dss:1.0:additionaltimeinfo:claimedSigningTime" />
						</xs:restriction>
					</xs:simpleType>
				</xs:attribute>
			</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"
				es:jsonName="verificationTime" />
			<xs:element name="AdditionalTimeInfo" type="dss:AdditionalTimeInfoType"
				minOccurs="0" maxOccurs="unbounded" es:jsonName="additionalTimeInfo" />
		</xs:sequence>
	</xs:complexType>
	<xs:element name="AdditionalKeyInfo" type="dss:AdditionalKeyInfoType" />
	<xs:complexType name="AdditionalKeyInfoType">
		<xs:complexContent>
			<xs:extension base="dss:KeyInfoType">
				<xs:choice>
					<xs:element name="X509CRL" type="xs:base64Binary"
						es:jsonName="X509CRL" />
				</xs:choice>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<xs:element type="xs:boolean" name="ReturnProcessingDetails"
		default="false" />
	<xs:element name="ProcessingDetails" type="dss:ProcessingDetailsType" />
	<xs:complexType name="ProcessingDetailsType">
		<xs:sequence>
			<xs:element name="ValidDetail" type="dss:DetailType"
				minOccurs="0" maxOccurs="unbounded" es:jsonName="valid" />
			<xs:element name="IndeterminateDetail" type="dss:DetailType"
				minOccurs="0" maxOccurs="unbounded" es:jsonName="indeterminate" />
			<xs:element name="InvalidDetail" type="dss:DetailType"
				minOccurs="0" maxOccurs="unbounded" es:jsonName="invalid" />
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="DetailType">
		<xs:sequence>
			<xs:element name="Code" type="xs:anyURI" minOccurs="0"
				es:jsonName="code" />
			<xs:element name="Message" type="dss:InternationalStringType"
				minOccurs="0" es:jsonName="msg" />
			<xs:element name="Base64Content" type="xs:base64Binary"
				minOccurs="0" maxOccurs="1" es:jsonName="b64Content" />
		</xs:sequence>
		<xs:attribute name="Type" type="xs:anyURI" use="required"
			es:jsonName="type" />
	</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"
				es:jsonName="signingTime" />
			<xs:element name="SigningTimeBoundaries" minOccurs="0"
				es:jsonName="signingTimeBounds">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="LowerBoundary" type="xs:dateTime"
							minOccurs="0" es:jsonName="lowerBound" />
						<xs:element name="UpperBoundary" type="xs:dateTime"
							minOccurs="0" es:jsonName="upperBound" />
					</xs:sequence>
				</xs:complexType>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:element type="xs:boolean" name="ReturnSignerIdentity"
		default="false" />
	<xs:element name="SignerIdentity" type="saml2:NameIDType" />
	<xs:element type="xs:boolean" name="ReturnUpdatedSignature"
		default="false" />
	<xs:element name="UpdatedSignature" type="dss:UpdatedSignatureType" />
	<xs:complexType name="UpdatedSignatureType">
		<xs:sequence>
			<xs:element name="SignatureObject" type="dss:SignatureObjectType"
				es:jsonName="sigObj" />
		</xs:sequence>
		<xs:attribute name="Type" type="xs:anyURI" use="optional"
			es:jsonName="type" />
	</xs:complexType>
	<xs:element name="ReturnTransformedDocument" type="dss:ReturnTransformedDocumentType" />
	<xs:complexType name="ReturnTransformedDocumentType">
		<xs:attribute name="WhichReference" type="xs:integer"
			use="required" es:jsonName="whichRef" />
	</xs:complexType>
	<xs:element name="TransformedDocument" type="dss:TransformedDocumentType" />
	<xs:complexType name="TransformedDocumentType">
		<xs:sequence>
			<xs:element name="Document" type="dss:DocumentType"
				es:jsonName="doc" />
		</xs:sequence>
		<xs:attribute name="WhichReference" type="xs:integer"
			use="required" es:jsonName="whichRef" />
	</xs:complexType>
	<xs:element type="xs:boolean" name="ReturnTimestampedSignature"
		default="false" />
	<xs:element name="TimestampedSignature" type="dss:UpdatedSignatureType" />





</xs:schema>


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