IdP-initiated NameID management w/ back-channel notifications.
[shibboleth/sp.git] / schemas / shibboleth-2.0-sp-notify.xsd
1 <?xml version="1.0" encoding="UTF-8"?>
2 <schema targetNamespace="urn:mace:shibboleth:2.0:sp:notify"
3         xmlns="http://www.w3.org/2001/XMLSchema"
4         xmlns:notify="urn:mace:shibboleth:2.0:sp:notify"
5         xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol"
6         xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion"
7         elementFormDefault="qualified">
8
9     <annotation>
10         <documentation>
11             Defines local application notification protocol used by SP.
12         </documentation>
13     </annotation>
14
15     <import namespace="urn:oasis:names:tc:SAML:2.0:assertion"
16         schemaLocation="saml-schema-assertion-2.0.xsd"/>
17
18     <import namespace="urn:oasis:names:tc:SAML:2.0:protocol"
19         schemaLocation="saml-schema-protocol-2.0.xsd"/>
20     
21     <element name="OK" type="notify:OKType"/>
22     <complexType name="OKType">
23         <sequence/>
24     </complexType>
25
26     <element name="LogoutNotification" type="notify:LogoutNotificationType"/>
27     <complexType name="LogoutNotificationType">
28         <annotation>
29             <documentation>Notifies application of a logout event.</documentation>
30         </annotation>
31         <sequence>
32             <element name="SessionID" type="notify:string" maxOccurs="unbounded"/>
33         </sequence>
34         <attribute name="type">
35             <simpleType>
36                 <restriction base="string">
37                     <enumeration value="local"/>
38                     <enumeration value="global"/>
39                 </restriction>
40             </simpleType>
41         </attribute>
42     </complexType>
43
44     <element name="NameIDNotification" type="notify:NameIDNotificationType"/>
45     <complexType name="NameIDNotificationType">
46         <annotation>
47             <documentation>Notifies application of a NameID management event.</documentation>
48         </annotation>
49         <sequence>
50             <element ref="saml:NameID"/>
51             <choice>
52                 <element ref="samlp:NewID"/>
53                 <element ref="samlp:Terminate"/>
54             </choice>
55         </sequence>
56     </complexType>
57
58 </schema>