<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
  <xs:element name="Modell">
    <xs:complexType>
      <xs:sequence>
        <xs:choice maxOccurs="unbounded">
          <xs:element ref="Analyse-Klassendiagramm"/>
          <xs:element ref="Basistyp"/>
          <xs:element ref="Fachattribut"/>
          <xs:element ref="Fachdatentyp"/>
          <xs:element ref="Fachklasse"/>
          <xs:element ref="Fachklassenpaket"/>
        </xs:choice>
        <xs:element ref="Analysetypen"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="Analyse-Klassendiagramm">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Spezifikationstext"/>
        <xs:element ref="Label"/>
        <xs:element ref="Merkmal"/>
      </xs:sequence>
      <xs:attribute name="AnzeigeName" use="required"/>
      <xs:attribute name="BesitzerAnzeigeName" use="required"/>
      <xs:attribute name="BesitzerUUID" use="required"/>
      <xs:attribute name="Elementtyp" use="required" type="xs:NCName"/>
      <xs:attribute name="Name" use="required"/>
      <xs:attribute name="NumberString" use="required" type="xs:decimal"/>
      <xs:attribute name="Stereotyp" use="required" type="xs:NCName"/>
      <xs:attribute name="Symbol" use="required" type="xs:NCName"/>
      <xs:attribute name="UUID" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="Basistyp">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Label"/>
        <xs:element maxOccurs="unbounded" ref="Merkmal"/>
        <xs:element ref="ReferenzListe"/>
      </xs:sequence>
      <xs:attribute name="AnzeigeName" use="required" type="xs:NCName"/>
      <xs:attribute name="BesitzerAnzeigeName" use="required" type="xs:NCName"/>
      <xs:attribute name="BesitzerUUID" use="required"/>
      <xs:attribute name="Elementtyp" use="required" type="xs:NCName"/>
      <xs:attribute name="Name" use="required" type="xs:NCName"/>
      <xs:attribute name="NumberString" use="required" type="xs:decimal"/>
      <xs:attribute name="Stereotyp" use="required" type="xs:NCName"/>
      <xs:attribute name="Symbol" use="required" type="xs:NCName"/>
      <xs:attribute name="UUID" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="Fachattribut">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" ref="Spezifikationstext"/>
        <xs:element ref="Label"/>
        <xs:element maxOccurs="unbounded" ref="Stereotypeigenschaft"/>
        <xs:element maxOccurs="unbounded" ref="Merkmal"/>
        <xs:element minOccurs="0" ref="ReferenzListe"/>
      </xs:sequence>
      <xs:attribute name="AnzeigeName" use="required"/>
      <xs:attribute name="BesitzerAnzeigeName" use="required"/>
      <xs:attribute name="BesitzerUUID" use="required"/>
      <xs:attribute name="Elementtyp" use="required" type="xs:NCName"/>
      <xs:attribute name="Name" use="required"/>
      <xs:attribute name="NumberString" use="required" type="xs:decimal"/>
      <xs:attribute name="Stereotyp" use="required" type="xs:NCName"/>
      <xs:attribute name="Symbol" use="required" type="xs:NCName"/>
      <xs:attribute name="UUID" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="Fachdatentyp">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" ref="Spezifikationstext"/>
        <xs:element ref="Label"/>
        <xs:element maxOccurs="unbounded" ref="Stereotypeigenschaft"/>
        <xs:element maxOccurs="unbounded" ref="Merkmal"/>
      </xs:sequence>
      <xs:attribute name="AnzeigeName" use="required"/>
      <xs:attribute name="BesitzerAnzeigeName" use="required"/>
      <xs:attribute name="BesitzerUUID" use="required"/>
      <xs:attribute name="Elementtyp" use="required" type="xs:NCName"/>
      <xs:attribute name="Name" use="required"/>
      <xs:attribute name="NumberString" use="required" type="xs:decimal"/>
      <xs:attribute name="Stereotyp" use="required" type="xs:NCName"/>
      <xs:attribute name="Symbol" use="required" type="xs:NCName"/>
      <xs:attribute name="UUID" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="Fachklasse">
    <xs:complexType>
      <xs:sequence minOccurs="0">
        <xs:element maxOccurs="unbounded" ref="Spezifikationstext"/>
        <xs:element ref="Label"/>
        <xs:element maxOccurs="unbounded" ref="Stereotypeigenschaft"/>
        <xs:element maxOccurs="unbounded" ref="Merkmal"/>
        <xs:choice maxOccurs="unbounded">
          <xs:element ref="Assoziation"/>
          <xs:element ref="Assoziationsende"/>
        </xs:choice>
      </xs:sequence>
      <xs:attribute name="AnzeigeName" use="required"/>
      <xs:attribute name="BesitzerAnzeigeName" use="required"/>
      <xs:attribute name="BesitzerUUID" use="required"/>
      <xs:attribute name="Elementtyp" use="required" type="xs:NCName"/>
      <xs:attribute name="Name" use="required"/>
      <xs:attribute name="NumberString" use="required" type="xs:decimal"/>
      <xs:attribute name="Stereotyp" use="required" type="xs:NCName"/>
      <xs:attribute name="Symbol" use="required" type="xs:NCName"/>
      <xs:attribute name="UUID" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="Assoziation">
    <xs:complexType>
      <xs:attribute name="AnzeigeName" use="required"/>
      <xs:attribute name="LinkTyp" use="required" type="xs:NCName"/>
      <xs:attribute name="Stereotyp" use="required"/>
      <xs:attribute name="Symbol" use="required" type="xs:NCName"/>
      <xs:attribute name="UUID" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="Assoziationsende">
    <xs:complexType>
      <xs:attribute name="AnzeigeName" use="required"/>
      <xs:attribute name="AssoziierterTypAnzeigeName" use="required"/>
      <xs:attribute name="AssoziierterTypLinkTyp" use="required" type="xs:NCName"/>
      <xs:attribute name="AssoziierterTypStereotyp" use="required" type="xs:NCName"/>
      <xs:attribute name="AssoziierterTypSymbol" use="required" type="xs:NCName"/>
      <xs:attribute name="AssoziierterTypUUID" use="required"/>
      <xs:attribute name="LinkTyp" use="required" type="xs:NCName"/>
      <xs:attribute name="Stereotyp" use="required"/>
      <xs:attribute name="Symbol" use="required" type="xs:NCName"/>
      <xs:attribute name="UUID" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="Fachklassenpaket">
    <xs:complexType>
      <xs:sequence minOccurs="0">
        <xs:element maxOccurs="unbounded" ref="Spezifikationstext"/>
        <xs:element ref="Label"/>
        <xs:element ref="Stereotypeigenschaft"/>
        <xs:element ref="Merkmal"/>
      </xs:sequence>
      <xs:attribute name="AnzeigeName" use="required"/>
      <xs:attribute name="BesitzerAnzeigeName" use="required" type="xs:NCName"/>
      <xs:attribute name="BesitzerUUID" use="required"/>
      <xs:attribute name="Elementtyp" use="required" type="xs:NCName"/>
      <xs:attribute name="Name" use="required"/>
      <xs:attribute name="NumberString" use="required" type="xs:decimal"/>
      <xs:attribute name="Stereotyp" use="required" type="xs:NCName"/>
      <xs:attribute name="Symbol" use="required" type="xs:NCName"/>
      <xs:attribute name="UUID" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="Analysetypen">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Spezifikationstext"/>
        <xs:element ref="Label"/>
        <xs:element ref="Stereotypeigenschaft"/>
        <xs:element maxOccurs="unbounded" ref="Merkmal"/>
      </xs:sequence>
      <xs:attribute name="AnzeigeName" use="required" type="xs:NCName"/>
      <xs:attribute name="BesitzerAnzeigeName" use="required" type="xs:NCName"/>
      <xs:attribute name="BesitzerUUID" use="required"/>
      <xs:attribute name="Elementtyp" use="required" type="xs:NCName"/>
      <xs:attribute name="Name" use="required" type="xs:NCName"/>
      <xs:attribute name="NumberString" use="required" type="xs:decimal"/>
      <xs:attribute name="Stereotyp" use="required" type="xs:NCName"/>
      <xs:attribute name="Symbol" use="required" type="xs:NCName"/>
      <xs:attribute name="UUID" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="Spezifikationstext">
    <xs:complexType>
      <xs:sequence>
        <xs:element maxOccurs="unbounded" ref="mydiv"/>
      </xs:sequence>
      <xs:attribute name="IstDefault" use="required" type="xs:boolean"/>
      <xs:attribute name="Titel" use="required" type="xs:NCName"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="mydiv">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" ref="mydivText"/>
      </xs:sequence>
      <xs:attribute name="target" type="xs:anyURI"/>
      <xs:attribute name="title"/>
      <xs:attribute name="type" use="required" type="xs:NCName"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="mydivText" type="xs:string"/>
  <xs:element name="Label">
    <xs:complexType>
      <xs:attribute name="IstDefault" use="required" type="xs:boolean"/>
      <xs:attribute name="Name" use="required" type="xs:NCName"/>
      <xs:attribute name="Wert" use="required" type="xs:NCName"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="Stereotypeigenschaft">
    <xs:complexType>
      <xs:attribute name="IstDefault" use="required" type="xs:boolean"/>
      <xs:attribute name="Name" use="required" type="xs:NCName"/>
      <xs:attribute name="Wert" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="Merkmal">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" maxOccurs="unbounded" ref="Referenz"/>
      </xs:sequence>
      <xs:attribute name="Name" use="required"/>
      <xs:attribute name="Wert"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="Referenz">
    <xs:complexType>
      <xs:attribute name="AnzeigeName" use="required"/>
      <xs:attribute name="LinkTyp" use="required" type="xs:NCName"/>
      <xs:attribute name="Stereotyp" use="required"/>
      <xs:attribute name="Symbol" use="required" type="xs:NCName"/>
      <xs:attribute name="UUID" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="ReferenzListe">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="ReferenzEintragGruppe"/>
      </xs:sequence>
      <xs:attribute name="Typ" use="required" type="xs:NCName"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="ReferenzEintragGruppe">
    <xs:complexType>
      <xs:sequence>
        <xs:element maxOccurs="unbounded" ref="ReferenzEintrag"/>
      </xs:sequence>
      <xs:attribute name="Titel" use="required"/>
      <xs:attribute name="Typ" use="required" type="xs:NCName"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="ReferenzEintrag">
    <xs:complexType>
      <xs:attribute name="AnzeigeName" use="required"/>
      <xs:attribute name="LinkTyp" use="required" type="xs:NCName"/>
      <xs:attribute name="Stereotyp" use="required"/>
      <xs:attribute name="Symbol" use="required" type="xs:NCName"/>
      <xs:attribute name="Typ" use="required" type="xs:NCName"/>
      <xs:attribute name="UUID" use="required"/>
    </xs:complexType>
  </xs:element>
</xs:schema>
