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"/>
17 <xs:element name="PersistentIDAttributeDefinition" minOccurs="0" maxOccurs="unbounded">
20 <xs:extension base="resolver:BaseAttributeDefinition">
22 <xs:element name="Salt">
25 <xs:extension base="xs:string">
26 <xs:attribute name="keyStorePath" type="xs:string" use="optional"/>
27 <xs:attribute name="keyStoreKeyAlias" type="xs:string" use="optional"/>
28 <xs:attribute name="keyStorePassword" type="xs:string" use="optional"/>
29 <xs:attribute name="keyStoreKeyPassword" type="xs:string" use="optional"/>
35 <xs:attribute name="sourceName" type="xs:string" use="optional"/>
36 <xs:attribute name="scope" type="xs:string" use="required"/>
41 <xs:element name="CustomAttributeDefinition" minOccurs="0" maxOccurs="unbounded">
44 <xs:extension base="resolver:BaseAttributeDefinition">
45 <xs:sequence minOccurs="0" maxOccurs="unbounded">
46 <xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
48 <xs:attribute name="class" type="xs:string" use="required"/>
49 <xs:anyAttribute namespace="##any" processContents="lax"/>
54 <xs:element name="CustomDataConnector" minOccurs="0" maxOccurs="unbounded">
57 <xs:extension base="resolver:BaseDataConnector">
59 <xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
61 <xs:attribute name="class" type="xs:string" use="required"/>
62 <xs:anyAttribute namespace="##any" processContents="lax"/>
67 <xs:element name="JNDIDirectoryDataConnector" minOccurs="0" maxOccurs="unbounded">
70 <xs:extension base="resolver:BaseDataConnector">
72 <xs:element name="Search">
74 <xs:sequence minOccurs="0">
75 <xs:element name="Controls">
77 <xs:attribute name="searchScope" type="xs:string" use="optional"/>
78 <xs:attribute name="timeLimit" type="xs:int" use="optional"/>
79 <xs:attribute name="returningObjects" type="xs:boolean" use="optional"/>
80 <xs:attribute name="linkDereferencing" type="xs:boolean" use="optional"/>
81 <xs:attribute name="countLimit" type="xs:long" use="optional"/>
85 <xs:attribute name="filter" type="xs:string" use="required"/>
88 <xs:element name="Property" maxOccurs="unbounded">
90 <xs:attribute name="name" type="xs:string" use="required"/>
91 <xs:attribute name="value" type="xs:string" use="required"/>
99 <xs:element name="JDBCDataConnector" minOccurs="0" maxOccurs="unbounded">
102 <xs:extension base="resolver:BaseDataConnector">
104 <xs:element name="Query" type="xs:string"/>
105 <xs:element name="AttributeExtractor" minOccurs="0">
107 <xs:attribute name="class" type="xs:string" use="required"/>
110 <xs:element name="StatementCreator" minOccurs="0">
112 <xs:sequence minOccurs="0" maxOccurs="unbounded">
113 <xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
115 <xs:attribute name="class" type="xs:string" use="required"/>
116 <xs:anyAttribute namespace="##any" processContents="lax"/>
119 <xs:element name="Property" minOccurs="0" maxOccurs="unbounded">
121 <xs:attribute name="name" type="xs:string" use="required"/>
122 <xs:attribute name="value" type="xs:string" use="required"/>
126 <xs:attribute name="dbURL" type="xs:string" use="required"/>
127 <xs:attribute name="dbDriver" type="xs:string" use="optional"/>
128 <xs:attribute name="validationQuery" type="xs:string" use="optional" default="select 1"/>
129 <xs:attribute name="maxActive" type="xs:integer" use="optional"/>
130 <xs:attribute name="maxIdle" type="xs:integer" use="optional"/>
131 <xs:attribute name="maxWait" type="xs:integer" use="optional"/>
139 <xs:complexType name="BaseAttributeDefinition">
141 <xs:extension base="resolver:BaseResolutionPlugIn">
142 <xs:attribute name="lifeTime" type="xs:long" use="optional"/>
146 <xs:complexType name="BaseDataConnector">
148 <xs:extension base="resolver:BaseResolutionPlugIn">
150 <xs:element name="FailoverDependency" minOccurs="0">
152 <xs:attribute name="requires" type="xs:string" use="required"/>
159 <xs:complexType name="BaseResolutionPlugIn">
160 <xs:choice minOccurs="0" maxOccurs="unbounded">
161 <xs:element name="DataConnectorDependency">
163 <xs:attribute name="requires" type="xs:string" use="required"/>
166 <xs:element name="AttributeDependency">
168 <xs:attribute name="requires" type="xs:string" use="required"/>
172 <xs:attribute name="id" type="xs:string" use="required"/>
173 <xs:attribute name="cacheTime" type="xs:string" use="optional"/>
174 <xs:attribute name="propagateErrors" type="xs:boolean" use="optional" default="true"/>