<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified"
  xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <!-- This file is auto-generated by `mise docgen` - do not edit manually. -->

  <xs:complexType name="urlType">
    <xs:attribute name="src" type="xs:string" use="required"/>
    <xs:attribute name="type" type="xs:string"/>
    <xs:attribute name="description" type="xs:string"/>
  </xs:complexType>

  <xs:complexType name="pronunciationType">
    <xs:sequence>
      <xs:element name="url" type="urlType" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute name="kind" type="xs:string"/>
    <xs:attribute name="value" type="xs:string" use="required"/>
  </xs:complexType>

  <xs:complexType name="translationType">
    <xs:attribute name="lang" type="xs:string" use="required"/>
    <xs:attribute name="value" type="xs:string" use="required"/>
  </xs:complexType>

  <xs:complexType name="exampleType">
    <xs:sequence>
      <xs:element name="translation" type="translationType" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element name="pronunciation" type="pronunciationType" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute name="value" type="xs:string" use="required"/>
  </xs:complexType>

  <xs:complexType name="noteType">
    <xs:sequence>
      <xs:element name="example" type="exampleType" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute name="id" type="xs:string"/>
    <xs:attribute name="value" type="xs:string" use="required"/>
  </xs:complexType>

  <xs:complexType name="definitionType">
    <xs:sequence>
      <xs:element name="example" type="exampleType" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element name="note" type="noteType" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute name="id" type="xs:string"/>
    <xs:attribute name="value" type="xs:string" use="required"/>
  </xs:complexType>

  <xs:complexType name="groupType">
    <xs:sequence>
      <xs:element name="definition" type="definitionType" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute name="id" type="xs:string"/>
    <xs:attribute name="description" type="xs:string" use="required"/>
  </xs:complexType>

  <xs:complexType name="formType">
    <xs:sequence>
      <xs:element name="tag" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute name="kind" type="xs:string"/>
    <xs:attribute name="term" type="xs:string" use="required"/>
  </xs:complexType>

  <xs:complexType name="senseType">
    <xs:sequence>
      <xs:choice minOccurs="0" maxOccurs="unbounded">
        <xs:element name="group" type="groupType"/>
        <xs:element name="definition" type="definitionType"/>
      </xs:choice>
      <xs:element name="tag" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element name="translation" type="translationType" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element name="form" type="formType" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute name="pos" type="xs:string"/>
    <xs:attribute name="lemma" type="xs:string"/>
  </xs:complexType>

  <xs:complexType name="etyType">
    <xs:sequence>
      <xs:element name="pronunciation" type="pronunciationType" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element name="sense" type="senseType" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute name="id" type="xs:string"/>
    <xs:attribute name="description" type="xs:string"/>
  </xs:complexType>

  <xs:complexType name="entryType">
    <xs:sequence>
      <xs:element name="ety" type="etyType" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element name="media" type="urlType" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute name="term" type="xs:string" use="required"/>
    <xs:attribute name="see" type="xs:string"/>
    <xs:attribute name="rank" type="xs:unsignedInt"/>
  </xs:complexType>

  <xs:complexType name="dictionaryType">
    <xs:sequence>
      <xs:element name="entry" type="entryType" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
    <xs:attribute name="id" type="xs:string"/>
    <xs:attribute name="name" type="xs:string"/>
  </xs:complexType>

  <xs:element name="dictionary" type="dictionaryType"/>
</xs:schema>
