1 <?xml version="1.0" encoding="UTF-8"?>
2 <xs:schema targetNamespace="urn:mace:shibboleth:resolver:1.0" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:resolver="urn:mace:shibboleth:resolver:1.0" elementFormDefault="qualified" attributeFormDefault="unqualified">
3 <xs:element name="AttributeResolver">
5 <xs:choice minOccurs="1" maxOccurs="unbounded">
6 <xs:element name="SimpleAttributeDefinition" minOccurs="0" maxOccurs="unbounded">
9 <xs:extension base="resolver:BaseAttributeDefinition">
10 <xs:attribute name="sourceName" type="xs:string" use="optional"/>
11 <xs:attribute name="smartScope" type="xs:string" use="optional"/>
12 <xs:attribute name="valueHandler" type="xs:string" use="optional"/>
13 <xs:attribute name="allowEmpty" type="xs:boolean" use="optional"/>
18 <xs:element name="PersistentIDAttributeDefinition" minOccurs="0" maxOccurs="unbounded">
21 <xs:extension base="resolver:BaseAttributeDefinition">
23 <xs:element name="Salt">
26 <xs:extension base="xs:string">
27 <xs:attribute name="keyStorePath" type="xs:string" use="optional"/>
28 <xs:attribute name="keyStoreKeyAlias" type="xs:string" use="optional"/>
29 <xs:attribute name="keyStorePassword" type="xs:string" use="optional"/>
30 <xs:attribute name="keyStoreKeyPassword" type="xs:string" use="optional"/>
36 <xs:attribute name="sourceName" type="xs:string" use="optional"/>
37 <xs:attribute name="scope" type="xs:string" use="required"/>
42 <xs:element name="CustomAttributeDefinition" minOccurs="0" maxOccurs="unbounded">
45 <xs:extension base="resolver:BaseAttributeDefinition">
46 <xs:sequence minOccurs="0" maxOccurs="unbounded">
47 <xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
49 <xs:attribute name="class" type="xs:string" use="required"/>
50 <xs:anyAttribute namespace="##any" processContents="lax"/>
55 <xs:element name="CustomDataConnector" minOccurs="0" maxOccurs="unbounded">
58 <xs:extension base="resolver:BaseDataConnector">
60 <xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
62 <xs:attribute name="class" type="xs:string" use="required"/>
63 <xs:anyAttribute namespace="##any" processContents="lax"/>
68 <xs:element name="JNDIDirectoryDataConnector" minOccurs="0" maxOccurs="unbounded">
71 <xs:extension base="resolver:BaseDataConnector">
73 <xs:element name="Search">
75 <xs:sequence minOccurs="0">
76 <xs:element name="Controls">
78 <xs:attribute name="searchScope" type="xs:string" use="optional"/>
79 <xs:attribute name="timeLimit" type="xs:int" use="optional"/>
80 <xs:attribute name="returningObjects" type="xs:boolean" use="optional"/>
81 <xs:attribute name="linkDereferencing" type="xs:boolean" use="optional"/>
82 <xs:attribute name="countLimit" type="xs:long" use="optional"/>
86 <xs:attribute name="filter" type="xs:string" use="required"/>
89 <xs:element name="Property" maxOccurs="unbounded">
91 <xs:attribute name="name" type="xs:string" use="required"/>
92 <xs:attribute name="value" type="xs:string" use="required"/>
100 <xs:element name="JDBCDataConnector" minOccurs="0" maxOccurs="unbounded">
103 <xs:extension base="resolver:BaseDataConnector">
105 <xs:element name="Query" type="xs:string"/>
106 <xs:element name="AttributeExtractor" minOccurs="0">
108 <xs:attribute name="class" type="xs:string" use="required"/>
111 <xs:element name="StatementCreator" minOccurs="0">
113 <xs:sequence minOccurs="0" maxOccurs="unbounded">
114 <xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
116 <xs:attribute name="class" type="xs:string" use="required"/>
117 <xs:anyAttribute namespace="##any" processContents="lax"/>
120 <xs:element name="Property" minOccurs="0" maxOccurs="unbounded">
122 <xs:attribute name="name" type="xs:string" use="required"/>
123 <xs:attribute name="value" type="xs:string" use="required"/>
127 <xs:attribute name="dbURL" type="xs:string" use="required"/>
128 <xs:attribute name="dbDriver" type="xs:string" use="optional"/>
129 <xs:attribute name="validationQuery" type="xs:string" use="optional" default="select 1"/>
130 <xs:attribute name="maxActive" type="xs:integer" use="optional"/>
131 <xs:attribute name="maxIdle" type="xs:integer" use="optional"/>
132 <xs:attribute name="maxWait" type="xs:integer" use="optional"/>
133 <xs:attribute name="minResultSet" type="xs:integer" use="optional"/>
134 <xs:attribute name="maxResultSet" type="xs:integer" use="optional"/>
135 <xs:attribute name="retryInterval" type="xs:integer" use="optional"/>
143 <xs:complexType name="BaseAttributeDefinition">
145 <xs:extension base="resolver:BaseResolutionPlugIn">
146 <xs:attribute name="lifeTime" type="xs:long" use="optional"/>
150 <xs:complexType name="BaseDataConnector">
152 <xs:extension base="resolver:BaseResolutionPlugIn">
154 <xs:element name="FailoverDependency" minOccurs="0">
156 <xs:attribute name="requires" type="xs:string" use="required"/>
163 <xs:complexType name="BaseResolutionPlugIn">
164 <xs:choice minOccurs="0" maxOccurs="unbounded">
165 <xs:element name="DataConnectorDependency">
167 <xs:attribute name="requires" type="xs:string" use="required"/>
170 <xs:element name="AttributeDependency">
172 <xs:attribute name="requires" type="xs:string" use="required"/>
176 <xs:attribute name="id" type="xs:string" use="required"/>
177 <xs:attribute name="cacheTime" type="xs:string" use="optional"/>
178 <xs:attribute name="propagateErrors" type="xs:boolean" use="optional" default="true"/>