Update README with bug fix list.
[shibboleth/cpp-opensaml.git] / schemas / saml-schema-authn-context-softwarepki-2.0.xsd
1 <?xml version="1.0" encoding="UTF-8"?>\r
2 \r
3 <xs:schema targetNamespace="urn:oasis:names:tc:SAML:2.0:ac:classes:SoftwarePKI"\r
4   xmlns:xs="http://www.w3.org/2001/XMLSchema" \r
5   xmlns="urn:oasis:names:tc:SAML:2.0:ac:classes:SoftwarePKI"\r
6   finalDefault="extension"\r
7   blockDefault="substitution"\r
8   version="2.0">\r
9 \r
10   <xs:redefine schemaLocation="saml-schema-authn-context-types-2.0.xsd">\r
11 \r
12     <xs:annotation>\r
13       <xs:documentation> \r
14         Class identifier: urn:oasis:names:tc:SAML:2.0:ac:classes:SoftwarePKI\r
15         Document identifier: saml-schema-authn-context-softwarepki-2.0\r
16         Location: http://docs.oasis-open.org/security/saml/v2.0/\r
17         Revision history:\r
18           V2.0 (March, 2005):\r
19             New authentication context class schema for SAML V2.0. \r
20       </xs:documentation>\r
21     </xs:annotation>\r
22 \r
23     <xs:complexType name="AuthnContextDeclarationBaseType">\r
24       <xs:complexContent>\r
25         <xs:restriction base="AuthnContextDeclarationBaseType">\r
26           <xs:sequence>\r
27             <xs:element ref="Identification" minOccurs="0"/>\r
28             <xs:element ref="TechnicalProtection"/>\r
29             <xs:element ref="OperationalProtection" minOccurs="0"/>\r
30             <xs:element ref="AuthnMethod"/>\r
31             <xs:element ref="GoverningAgreements" minOccurs="0"/>\r
32             <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>\r
33           </xs:sequence>\r
34           <xs:attribute name="ID" type="xs:ID" use="optional"/>\r
35         </xs:restriction>\r
36       </xs:complexContent>\r
37     </xs:complexType>\r
38 \r
39     <xs:complexType name="AuthnMethodBaseType">\r
40       <xs:complexContent>\r
41         <xs:restriction base="AuthnMethodBaseType">\r
42           <xs:sequence>\r
43             <xs:element ref="PrincipalAuthenticationMechanism"/>\r
44             <xs:element ref="Authenticator"/>\r
45             <xs:element ref="AuthenticatorTransportProtocol" minOccurs="0"/>\r
46             <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>\r
47           </xs:sequence>\r
48         </xs:restriction>\r
49       </xs:complexContent>\r
50     </xs:complexType>    \r
51     \r
52     <xs:complexType name="TechnicalProtectionBaseType">\r
53       <xs:complexContent>\r
54         <xs:restriction base="TechnicalProtectionBaseType">\r
55           <xs:sequence>\r
56             <xs:choice>\r
57               <xs:element ref="PrivateKeyProtection"/>\r
58             </xs:choice>\r
59           </xs:sequence>\r
60         </xs:restriction>\r
61       </xs:complexContent>\r
62     </xs:complexType>\r
63 \r
64     <xs:complexType name="PrincipalAuthenticationMechanismType">\r
65       <xs:complexContent>\r
66         <xs:restriction base="PrincipalAuthenticationMechanismType">\r
67           <xs:sequence>\r
68             <xs:element ref="ActivationPin"/>\r
69             <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>\r
70           </xs:sequence>\r
71         </xs:restriction>\r
72       </xs:complexContent>\r
73     </xs:complexType>\r
74     \r
75     <xs:complexType name="AuthenticatorBaseType">\r
76       <xs:complexContent>\r
77         <xs:restriction base="AuthenticatorBaseType">\r
78           <xs:sequence>\r
79             <xs:choice>\r
80               <xs:element ref="DigSig"/>\r
81               <xs:element ref="AsymmetricDecryption"/>\r
82               <xs:element ref="AsymmetricKeyAgreement"/>\r
83             </xs:choice>\r
84             <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>\r
85           </xs:sequence>\r
86         </xs:restriction>\r
87       </xs:complexContent>\r
88     </xs:complexType>\r
89 \r
90     <xs:complexType name="PrivateKeyProtectionType">\r
91       <xs:complexContent>\r
92         <xs:restriction base="PrivateKeyProtectionType">\r
93           <xs:sequence>\r
94             <xs:element ref="KeyActivation"/>\r
95             <xs:element ref="KeyStorage"/>\r
96             <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>\r
97           </xs:sequence>\r
98         </xs:restriction>\r
99       </xs:complexContent>\r
100     </xs:complexType>\r
101 \r
102     <xs:complexType name="KeyActivationType">\r
103       <xs:complexContent>\r
104         <xs:restriction base="KeyActivationType">\r
105           <xs:sequence>\r
106             <xs:element ref="ActivationPin"/>\r
107             <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>\r
108           </xs:sequence>\r
109         </xs:restriction>\r
110       </xs:complexContent>\r
111     </xs:complexType>\r
112     \r
113     <xs:complexType name="KeyStorageType">\r
114       <xs:complexContent>\r
115         <xs:restriction base="KeyStorageType">\r
116           <xs:attribute name="medium" use="required">\r
117             <xs:simpleType>\r
118               <xs:restriction base="mediumType">\r
119                 <xs:enumeration value="memory"/>\r
120               </xs:restriction>\r
121             </xs:simpleType>\r
122           </xs:attribute>\r
123         </xs:restriction>\r
124       </xs:complexContent>\r
125     </xs:complexType>\r
126 \r
127   </xs:redefine>\r
128 \r
129 </xs:schema>\r