1 <?xml version="1.0" encoding="utf-8"?>
2 <schema xmlns='http://www.w3.org/2001/XMLSchema' version='1.0'
3 xmlns:xenc='http://www.w3.org/2001/04/xmlenc#'
4 xmlns:ds='http://www.w3.org/2000/09/xmldsig#'
5 targetNamespace='http://www.w3.org/2001/04/xmlenc#'
6 elementFormDefault='qualified'>
8 <import namespace='http://www.w3.org/2000/09/xmldsig#'
9 schemaLocation='xmldsig-core-schema.xsd'/>
11 <complexType name='EncryptedType' abstract='true'>
13 <element name='EncryptionMethod' type='xenc:EncryptionMethodType'
15 <element ref='ds:KeyInfo' minOccurs='0'/>
16 <element ref='xenc:CipherData'/>
17 <element ref='xenc:EncryptionProperties' minOccurs='0'/>
19 <attribute name='Id' type='ID' use='optional'/>
20 <attribute name='Type' type='anyURI' use='optional'/>
21 <attribute name='MimeType' type='string' use='optional'/>
22 <attribute name='Encoding' type='anyURI' use='optional'/>
25 <complexType name='EncryptionMethodType' mixed='true'>
27 <element name='KeySize' minOccurs='0' type='xenc:KeySizeType'/>
28 <element name='OAEPparams' minOccurs='0' type='base64Binary'/>
29 <any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
31 <attribute name='Algorithm' type='anyURI' use='required'/>
34 <simpleType name='KeySizeType'>
35 <restriction base="integer"/>
38 <element name='CipherData' type='xenc:CipherDataType'/>
39 <complexType name='CipherDataType'>
41 <element name='CipherValue' type='base64Binary'/>
42 <element ref='xenc:CipherReference'/>
46 <element name='CipherReference' type='xenc:CipherReferenceType'/>
47 <complexType name='CipherReferenceType'>
49 <element name='Transforms' type='xenc:TransformsType' minOccurs='0'/>
51 <attribute name='URI' type='anyURI' use='required'/>
54 <complexType name='TransformsType'>
56 <element ref='ds:Transform' maxOccurs='unbounded'/>
61 <element name='EncryptedData' type='xenc:EncryptedDataType'/>
62 <complexType name='EncryptedDataType'>
64 <extension base='xenc:EncryptedType'>
69 <!-- Children of ds:KeyInfo -->
71 <element name='EncryptedKey' type='xenc:EncryptedKeyType'/>
72 <complexType name='EncryptedKeyType'>
74 <extension base='xenc:EncryptedType'>
76 <element ref='xenc:ReferenceList' minOccurs='0'/>
77 <element name='CarriedKeyName' type='string' minOccurs='0'/>
79 <attribute name='Recipient' type='string'
85 <element name="AgreementMethod" type="xenc:AgreementMethodType"/>
86 <complexType name="AgreementMethodType" mixed="true">
88 <element name="KA-Nonce" minOccurs="0" type="base64Binary"/>
89 <!-- <element ref="ds:DigestMethod" minOccurs="0"/> -->
90 <any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
91 <element name="OriginatorKeyInfo" minOccurs="0" type="ds:KeyInfoType"/>
92 <element name="RecipientKeyInfo" minOccurs="0" type="ds:KeyInfoType"/>
94 <attribute name="Algorithm" type="anyURI" use="required"/>
97 <!-- End Children of ds:KeyInfo -->
99 <element name='ReferenceList'>
101 <choice minOccurs='1' maxOccurs='unbounded'>
102 <element name='DataReference' type='xenc:ReferenceType'/>
103 <element name='KeyReference' type='xenc:ReferenceType'/>
108 <complexType name='ReferenceType'>
110 <any namespace='##other' minOccurs='0' maxOccurs='unbounded'/>
112 <attribute name='URI' type='anyURI' use='required'/>
116 <element name='EncryptionProperties' type='xenc:EncryptionPropertiesType'/>
117 <complexType name='EncryptionPropertiesType'>
119 <element ref='xenc:EncryptionProperty' maxOccurs='unbounded'/>
121 <attribute name='Id' type='ID' use='optional'/>
124 <element name='EncryptionProperty' type='xenc:EncryptionPropertyType'/>
125 <complexType name='EncryptionPropertyType' mixed='true'>
126 <choice maxOccurs='unbounded'>
127 <any namespace='##other' processContents='lax'/>
129 <attribute name='Target' type='anyURI' use='optional'/>
130 <attribute name='Id' type='ID' use='optional'/>
131 <anyAttribute namespace="http://www.w3.org/XML/1998/namespace"/>
134 <element name="DHKeyValue" type="xenc:DHKeyValueType"/>
135 <complexType name="DHKeyValueType">
137 <sequence minOccurs="0">
138 <element name="P" type="ds:CryptoBinary"/>
139 <element name="Q" type="ds:CryptoBinary"/>
140 <element name="Generator" type="ds:CryptoBinary"/>
142 <element name="Public" type="ds:CryptoBinary"/>
143 <sequence minOccurs="0">
144 <element name="seed" type="ds:CryptoBinary"/>
145 <element name="pgenCounter" type="ds:CryptoBinary"/>