export.xsd 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  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 xmlns:xs="http://www.w3.org/2001/XMLSchema">
  9. <xs:element name="config">
  10. <xs:complexType>
  11. <xs:choice maxOccurs="unbounded">
  12. <xs:element name="entity" type="entityDeclaration" minOccurs="0" maxOccurs="unbounded" />
  13. <xs:element name="entityType" type="entityTypeDeclaration" minOccurs="0" maxOccurs="unbounded" />
  14. <xs:element name="fileFormat" type="fileFormatDeclaration" minOccurs="0" maxOccurs="unbounded" />
  15. </xs:choice>
  16. </xs:complexType>
  17. <xs:unique name="uniqueEntityName">
  18. <xs:annotation>
  19. <xs:documentation>
  20. Export entity name must be unique.
  21. </xs:documentation>
  22. </xs:annotation>
  23. <xs:selector xpath="entity"/>
  24. <xs:field xpath="@name"/>
  25. </xs:unique>
  26. <xs:unique name="uniqueFileFormatName">
  27. <xs:annotation>
  28. <xs:documentation>
  29. Export file format name must be unique.
  30. </xs:documentation>
  31. </xs:annotation>
  32. <xs:selector xpath="fileFormat" />
  33. <xs:field xpath="@name" />
  34. </xs:unique>
  35. </xs:element>
  36. <xs:complexType name="entityDeclaration">
  37. <xs:annotation>
  38. <xs:documentation>
  39. Export entity declaration.
  40. </xs:documentation>
  41. </xs:annotation>
  42. <xs:attribute name="name" type="xs:string" use="required" />
  43. <xs:attribute name="label" type="xs:string" use="optional" />
  44. <xs:attribute name="model" type="modelName" use="optional" />
  45. <xs:attribute name="entityAttributeFilterType" type="xs:string" use="required" />
  46. </xs:complexType>
  47. <xs:complexType name="entityTypeDeclaration">
  48. <xs:annotation>
  49. <xs:documentation>
  50. Export entity type declaration.
  51. </xs:documentation>
  52. </xs:annotation>
  53. <xs:attribute name="entity" type="xs:string" use="required" />
  54. <xs:attribute name="name" type="xs:string" use="required" />
  55. <xs:attribute name="model" type="modelName" use="required" />
  56. </xs:complexType>
  57. <xs:complexType name="fileFormatDeclaration">
  58. <xs:annotation>
  59. <xs:documentation>
  60. Export file format declaration.
  61. </xs:documentation>
  62. </xs:annotation>
  63. <xs:attribute name="name" type="xs:string" use="required" />
  64. <xs:attribute name="label" type="xs:string" use="optional" />
  65. <xs:attribute name="model" type="modelName" use="optional" />
  66. </xs:complexType>
  67. <xs:simpleType name="modelName">
  68. <xs:annotation>
  69. <xs:documentation>
  70. Model name can contain only [A-Za-z_\\].
  71. </xs:documentation>
  72. </xs:annotation>
  73. <xs:restriction base="xs:string">
  74. <xs:pattern value="[A-Za-z_\\]+" />
  75. </xs:restriction>
  76. </xs:simpleType>
  77. </xs:schema>