references.xsd 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  2. <xsd:include schemaLocation="types.xsd"/>
  3. <xsd:element name="model">
  4. <xsd:complexType>
  5. <xsd:choice minOccurs="0" maxOccurs="unbounded">
  6. <xsd:element name="bank" type="pcilib_bank_t" minOccurs="0" maxOccurs="unbounded" />
  7. <xsd:element name="transform" type="pcilib_transform_view_t" minOccurs="0" maxOccurs="unbounded" />
  8. <xsd:element name="enum" type="pcilib_enum_view_t" minOccurs="0" maxOccurs="unbounded">
  9. <xsd:key name="pcilib_value_name_key">
  10. <xsd:selector xpath="name" />
  11. <xsd:field xpath="@value" />
  12. </xsd:key>
  13. </xsd:element>
  14. <xsd:element name="unit" type="pcilib_unit_t" minOccurs="0" maxOccurs="unbounded">
  15. <xsd:key name="pcilib_unit_transform_key">
  16. <xsd:selector xpath="transform" />
  17. <xsd:field xpath="@unit" />
  18. </xsd:key>
  19. </xsd:element>
  20. </xsd:choice>
  21. </xsd:complexType>
  22. <xsd:key name="pcilib_bank_key">
  23. <xsd:selector xpath="bank" />
  24. <xsd:field xpath="@name" />
  25. </xsd:key>
  26. <xsd:key name="pcilib_register_key">
  27. <xsd:selector xpath="bank/register|bank/register/field" />
  28. <xsd:field xpath="@name" />
  29. </xsd:key>
  30. <xsd:key name="pcilib_view_key">
  31. <xsd:selector xpath="transform|enum" />
  32. <xsd:field xpath="@name" />
  33. </xsd:key>
  34. <xsd:key name="pcilib_unit_key">
  35. <xsd:selector xpath="unit" />
  36. <xsd:field xpath="@name" />
  37. </xsd:key>
  38. <xsd:keyref name="pcilib_register_view_ref" refer="pcilib_view_key">
  39. <xsd:selector xpath="bank/register/view|bank/register/field/view" />
  40. <xsd:field xpath="@view" />
  41. </xsd:keyref>
  42. <xsd:keyref name="pcilib_unit_ref" refer="pcilib_unit_key">
  43. <xsd:selector xpath="transform|enum" />
  44. <xsd:field xpath="@unit" />
  45. </xsd:keyref>
  46. </xsd:element>
  47. </xsd:schema>