Implement disco/UI extensions
[shibboleth/cpp-opensaml.git] / schemas / sstc-saml-metadata-ui.xsd
diff --git a/schemas/sstc-saml-metadata-ui.xsd b/schemas/sstc-saml-metadata-ui.xsd
new file mode 100644 (file)
index 0000000..1002306
--- /dev/null
@@ -0,0 +1,70 @@
+<?xml version="1.0" encoding="UTF-8"?>\r
+<schema \r
+  targetNamespace="urn:oasis:names:tc:SAML:metadata:ui"\r
+  xmlns="http://www.w3.org/2001/XMLSchema"\r
+  xmlns:mdui="urn:oasis:names:tc:SAML:metadata:ui"\r
+  elementFormDefault="unqualified"\r
+  attributeFormDefault="unqualified"\r
+  blockDefault="substitution"\r
+  version="1.0">\r
+\r
+  <annotation>\r
+    <documentation>\r
+      Document title: Metadata Extension Schema for SAML V2.0 Metadata Extensions for Login and Discovery User Interface Version 1.0\r
+      Document identifier: sstc-saml-metadata-ui.xsd\r
+      Location: http://docs.oasis-open.org/security/saml/Post2.0/\r
+      Revision history:\r
+      V1.0 (September 2010):\r
+        Initial version.\r
+    </documentation>\r
+  </annotation>\r
+\r
+  <import namespace="urn:oasis:names:tc:SAML:2.0:metadata"\r
+    schemaLocation="saml-schema-metadata-2.0.xsd"/>\r
+  <import namespace="http://www.w3.org/XML/1998/namespace"\r
+    schemaLocation="http://www.w3.org/2001/xml.xsd"/>\r
+\r
+  <element name="UIInfo" type="mdui:UIInfoType" />\r
+  <complexType name="UIInfoType">\r
+    <choice minOccurs="0" maxOccurs="unbounded">\r
+      <element ref="mdui:DisplayName"/>\r
+      <element ref="mdui:Description"/>\r
+      <element ref="mdui:Logo"/>\r
+      <element ref="mdui:InformationURL"/>\r
+      <element ref="mdui:PrivacyStatementURL"/>\r
+      <any namespace="##other" processContents="lax"/>\r
+    </choice>\r
+  </complexType>\r
+\r
+  <element name="DisplayName" type="md:localizedNameType"/>\r
+  <element name="Description" type="md:localizedNameType"/>\r
+  <element name="InformationURL" type="md:localizedURIType"/>\r
+  <element name="PrivacyStatementURL" type="md:localizedURIType"/>\r
+\r
+  <element name="Logo" type="mdui:LogoType"/>\r
+  <complexType name="LogoType">\r
+    <simpleContent>\r
+      <extension base="anyURI">\r
+        <attribute name="height" type="positiveInteger" use="required"/>\r
+        <attribute name="width" type="positiveInteger" use="required"/>\r
+        <attribute ref="xml:lang"/>\r
+      </extension>\r
+    </simpleContent>\r
+  </complexType>\r
+\r
+  <element name="DiscoHints" type="mdui:DiscoHintsType"/>\r
+  <complexType name="DiscoHintsType">\r
+    <choice minOccurs="0" maxOccurs="unbounded">\r
+      <element ref="mdui:IPHint"/>\r
+      <element ref="mdui:DomainHint"/>\r
+      <element ref="mdui:GeolocationHint"/>\r
+      <any namespace="##other" processContents="lax"/>\r
+    </choice>\r
+  </complexType>\r
+\r
+  <element name="IPHint" type="string"/>\r
+  <element name="DomainHint" type="string"/>   \r
+  <element name="GeolocationHint" type="anyURI"/>\r
+\r
+</schema>\r
+\r