users.xsd 2.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.geoserver.org/security/users" xmlns:gsu="http://www.geoserver.org/security/users" elementFormDefault="qualified">
  3. <element name="userRegistry" type="gsu:UserRegistryType">
  4. <key name="UserKey">
  5. <selector xpath="gsu:users/gsu:user"/>
  6. <field xpath="@name"/>
  7. </key>
  8. <key name="GroupKey">
  9. <selector xpath="gsu:groups/gsu:group"/>
  10. <field xpath="@name"/>
  11. </key>
  12. <keyref name="ForeinUserKey" refer="gsu:UserKey">
  13. <selector xpath="gsu:groups/gsu:group/gsu:member"/>
  14. <field xpath="@username"/>
  15. </keyref>
  16. </element>
  17. <complexType name="UserType">
  18. <sequence>
  19. <element name="property" type="gsu:UserPropertyType" minOccurs="0" maxOccurs="unbounded"/>
  20. </sequence>
  21. <attribute name="name" type="string" use="required"></attribute>
  22. <attribute name="password" type="string" use="optional"></attribute>
  23. <attribute name="enabled" type="boolean" use="optional" default="true"></attribute>
  24. </complexType>
  25. <complexType name="GroupType">
  26. <sequence>
  27. <!--<element name="member" type="gsu:UserRefType" minOccurs="0" maxOccurs="unbounded"></element> -->
  28. <element name="member" type="gsu:UserRefType" minOccurs="0" maxOccurs="unbounded">
  29. </element>
  30. </sequence>
  31. <attribute name="name" type="string" use="required"></attribute>
  32. <attribute name="enabled" type="boolean" use="optional" default="true"></attribute>
  33. </complexType>
  34. <complexType name="UserRefType">
  35. <attribute name="username" type="string" use="required"></attribute>
  36. </complexType>
  37. <complexType name="UserRegistryType">
  38. <sequence>
  39. <element name="users" type="gsu:UsersType" minOccurs="1" maxOccurs="1" />
  40. <element name="groups" type="gsu:GroupsType" minOccurs="1" maxOccurs="1"/>
  41. </sequence>
  42. <attribute name="version" type="gsu:VersionType" use="required" ></attribute>
  43. </complexType>
  44. <complexType name="UsersType">
  45. <sequence>
  46. <element name="user" type="gsu:UserType" minOccurs="0"
  47. maxOccurs="unbounded">
  48. </element>
  49. </sequence>
  50. </complexType>
  51. <complexType name="GroupsType">
  52. <sequence>
  53. <element name="group" type="gsu:GroupType" minOccurs="0"
  54. maxOccurs="unbounded">
  55. </element>
  56. </sequence>
  57. </complexType>
  58. <complexType name="UserPropertyType">
  59. <simpleContent>
  60. <extension base="string">
  61. <attribute name="name" type="string" use="required"></attribute>
  62. </extension>
  63. </simpleContent>
  64. </complexType>
  65. <simpleType name="VersionType" >
  66. <restriction base="string">
  67. <enumeration value="1.0"></enumeration>
  68. </restriction>
  69. </simpleType>
  70. </schema>