1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen

XSD Schema - Bitte um Hilfestellung

Dieses Thema im Forum "XML Technologien" wurde erstellt von Yankyy02, 18. Juli 2013.

  1. Yankyy02

    Yankyy02 Grünschnabel

    Folgendes Schema:

    Code (Text):
    1. <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    2.     <xsd:simpleType name="euro">
    3.         <xsd:restriction base="xsd:decimal">
    4.             <xsd:fractionDigits value="2"/>
    5.         </xsd:restriction>
    6.     </xsd:simpleType>
    7.     <xsd:attributeGroup name="iddisplay">
    8.         <xsd:attribute name="id" type="xsd:token" use="required"/>
    9.         <xsd:attribute name="display" type="xsd:boolean" use="optional" default="true"/>
    10.     </xsd:attributeGroup>
    11.     <xsd:element name="theater">
    12.         <xsd:complexType>
    13.             <xsd:sequence>
    14.                 <xsd:element name="adresse">
    15.                     <xsd:complexType>
    16.                         <xsd:all>
    17.                             <xsd:element name="name" type="xsd:token"/>
    18.                             <xsd:element name="strasse" type="xsd:token"/>
    19.                             <xsd:element name="ort" type="xsd:token"/>
    20.                         </xsd:all>
    21.                     </xsd:complexType>
    22.                 </xsd:element>
    23.                 <xsd:element name="vorstellung" minOccurs="0" maxOccurs="unbounded">
    24.                     <xsd:complexType>
    25.                         <xsd:sequence>
    26.                             <xsd:choice>
    27.                                 <xsd:element name="theaterstück">
    28.                                     <xsd:complexType>
    29.                                         <xsd:group ref="veranstaltung"/>
    30.                                     </xsd:complexType>
    31.                                 </xsd:element>
    32.                                 <xsd:element name="konzert">
    33.                                     <xsd:complexType>
    34.                                         <xsd:group ref="veranstaltung"/>
    35.                                     </xsd:complexType>
    36.                                 </xsd:element>
    37.                             </xsd:choice>
    38.                             <xsd:element name="datum" type="xsd:date"/>
    39.                             <xsd:element name="preis" type="euro"/>
    40.                         </xsd:sequence>
    41.                         <xsd:attributeGroup ref="iddisplay"/>
    42.                     </xsd:complexType>
    43.                 </xsd:element>
    44.             </xsd:sequence>
    45.             <xsd:attribute name="typ" use="required">
    46.                 <xsd:simpleType>
    47.                     <xsd:restriction base="xsd:token">
    48.                         <xsd:enumeration value="staatlich"/>
    49.                         <xsd:enumeration value="städtisch"/>
    50.                         <xsd:enumeration value="privat"/>
    51.                     </xsd:restriction>
    52.                 </xsd:simpleType>
    53.             </xsd:attribute>
    54.             <xsd:attributeGroup ref="iddisplay"/>
    55.         </xsd:complexType>
    56.     </xsd:element>
    57.     <xsd:group name="veranstaltung">
    58.         <xsd:sequence>
    59.             <xsd:element name="titel" type="xsd:string"/>
    60.             <xsd:element name="beschreibung" type="xsd:string"/>
    61.         </xsd:sequence>
    62.     </xsd:group>
    63. </xsd:schema>
    Die Aufgabenstellung lautet wie folgt:

    Seit 3 Tagen sitze ich nun und habe verschiedenste Konstellationen ausprobiert aber mein Schema validiert nicht
    sobald ich Konzert meinen Typ zuweise! Kann mir bitte jemand weiterhelfen!!
    Ich bitte keinen die Aufgabe zu lösen sondern mir eventuell anhaltspunkte zu geben was ich falsch machen könnte!

    Danke für eure Unterstützung!!
     
  2. Martin Honnen

    Martin Honnen Mitglied

    Zeige uns eine konkrete Variante, die du probiert hast, zusammen mit der exakten Fehlermeldung.

    Wenn du etwas wie
    Code (Text):
    1. <xs:element name="konzert" type="titelliste"></xs:element>
    probiert hast und den komplexen Typen "titelliste" wie spezifiziert definiert hast, kann eigentlich nichts schief gehen. Du kann nur nicht das "type"-Attribut setzen und dann noch per "complexType" innerhalb des xs: element den Typ definieren.
     
  3. Yankyy02

    Yankyy02 Grünschnabel

    Hallo und danke für deinen Beitrag!

    Also ich habe den Typ folgendermasen deklariert:

    Code (Text):
    1. <xsd:complexType name="titelliste">
    2.     <xsd:sequence>
    3.         <xsd:element name="titelliste" type="xsd:string">
    4.             <xsd:complexType name="musikstueck">
    5.                 <xsd:all>
    6.                     <xsd:element name="musikstueck" type="xsd:token" />
    7.                     </xsd:all>
    8.                     <xsd:attribute name="komponist" type="xsd:token"/>
    9.                 </xsd:complexType>
    10.             </xsd:element>
    11.         </xsd:sequence>
    12.     </xsd:complexType>
    und im konzert folgendermasen angegeben:

    Code (Text):
    1. <xsd:element name="konzert" type="titelliste">
    2.                   <xsd:complexType>
    3.                     <xsd:group ref="veranstaltung"/>
    4.                   </xsd:complexType>
    5.                 </xsd:element>
    die Gruppe veranstaltung soll ja weiterhin angegeben werden!

    Ich hoffe bzw. ich würde dich bitten wenn du mir sagen könntest was ich da übersehe!

    Vielen Dank für deine Hilfe!!
     
Die Seite wird geladen...