groups.xsd 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!--
  3. /**
  4. * Copyright © Magento, Inc. All rights reserved.
  5. * See COPYING.txt for license details.
  6. */
  7. -->
  8. <xs:schema elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  9. <xs:element name="groups" type="groupsType">
  10. <xs:unique name="uniqueGroup">
  11. <xs:selector xpath="group" />
  12. <xs:field xpath="@name" />
  13. </xs:unique>
  14. </xs:element>
  15. <xs:complexType name="groupsType">
  16. <xs:sequence>
  17. <xs:element name="group" type="groupType" maxOccurs="unbounded" minOccurs="1" />
  18. </xs:sequence>
  19. </xs:complexType>
  20. <xs:complexType name="groupType">
  21. <xs:sequence>
  22. <xs:element name="document" type="documentType" maxOccurs="unbounded" minOccurs="0" />
  23. <xs:element name="attribute" type="attributeType" maxOccurs="unbounded" minOccurs="0" />
  24. </xs:sequence>
  25. <xs:attribute name="name" type="notEmptyString" use="required" />
  26. </xs:complexType>
  27. <xs:complexType name="documentType">
  28. <xs:simpleContent>
  29. <xs:extension base="notEmptyString">
  30. <xs:attribute name="key" type="notEmptyString" use="optional" />
  31. </xs:extension>
  32. </xs:simpleContent>
  33. </xs:complexType>
  34. <xs:complexType name="attributeType">
  35. <xs:simpleContent>
  36. <xs:extension base="notEmptyString">
  37. <xs:attribute name="key" type="notEmptyString" use="optional" />
  38. <xs:attribute name="type" type="notEmptyString" use="optional" />
  39. </xs:extension>
  40. </xs:simpleContent>
  41. </xs:complexType>
  42. <xs:simpleType name="notEmptyString">
  43. <xs:restriction base="xs:string">
  44. <xs:minLength value="1" />
  45. </xs:restriction>
  46. </xs:simpleType>
  47. </xs:schema>