Add version attribute and remove defaults.
[shibboleth/cpp-sp.git] / schemas / shibboleth-2.0-afp-mf-basic.xsd
index d178261..595fb39 100644 (file)
@@ -1,7 +1,11 @@
 <?xml version="1.0" encoding="UTF-8"?>
 
-<schema targetNamespace="urn:mace:shibboleth:2.0:afp:mf:basic" xmlns="http://www.w3.org/2001/XMLSchema"
-    xmlns:basic="urn:mace:shibboleth:2.0:afp:mf:basic" xmlns:afp="urn:mace:shibboleth:2.0:afp">
+<schema targetNamespace="urn:mace:shibboleth:2.0:afp:mf:basic"
+    xmlns="http://www.w3.org/2001/XMLSchema"
+    xmlns:basic="urn:mace:shibboleth:2.0:afp:mf:basic"
+    xmlns:afp="urn:mace:shibboleth:2.0:afp"
+    elementFormDefault="qualified"
+    version="2.1">
 
     <import namespace="urn:mace:shibboleth:2.0:afp" schemaLocation="classpath:/schema/shibboleth-2.0-afp.xsd" />
 
@@ -75,7 +79,7 @@
     <complexType name="NOT">
         <annotation>
             <documentation>
-                A match function that performs a logical NOT on the resultof the contained matching function.
+                A match function that performs a logical NOT on the result of the contained matching function.
             </documentation>
         </annotation>
         <complexContent>
         </complexContent>
     </complexType>
 
-    <complexType name="AttributeTargetedStringMatchType">
+    <complexType name="AttributeTargetedStringMatchType" abstract="true">
         <complexContent>
             <extension base="basic:StringMatchType">
                 <attribute name="attributeID" type="string">
         <annotation>
             <documentation>
                 A match function that matches an attribute value against the specified regular expression. This function
-                evaluates to true if any value matches the given expression
+                evaluates to true if any value matches the given expression.
             </documentation>
         </annotation>
         <complexContent>
         </complexContent>
     </complexType>
 
-    <complexType name="AttributeTargetedRegexMatchType">
+    <complexType name="AttributeTargetedRegexMatchType" abstract="true">
         <complexContent>
             <extension base="basic:RegexMatchType">
                 <attribute name="attributeID" type="string">
                         <documentation>The regular expression values are matched against.</documentation>
                     </annotation>
                 </attribute>
+                <attribute name="options" type="string">
+                    <annotation>
+                        <documentation>The regular expression options to apply.</documentation>
+                    </annotation>
+                </attribute>
             </extension>
         </complexContent>
     </complexType>
         </annotation>
         <complexContent>
             <extension base="afp:MatchFunctorType">
-                <attribute name="attributeID" type="string">
+                <attribute name="attributeID" type="string" use="required">
                     <annotation>
                         <documentation>The ID of the attribute whose value should be matched.</documentation>
                     </annotation>