Gab: Korrekte Restriction im Schema

Hallo allerseits,

ich möchte in einem Schema ein Tag einschränken. Erlaubt sein sollen nur folgende Werte aus dem Sportbereich:
3:3 (Zahl:Zahl)
-:-
0 (Zahl)

Folgendes ist mir dazu eingefallen, was aber leider nicht funktioniert:

<xs:complexType name="Ergebnis">
  xs:sequence
    <xs:element name="Ergebnis">
      xs:simpleType
        <xs:restriction base="xs:string">
          <xs:minLength value="3"/>
          <xs:pattern value="([0-9]+:[0-9]+|-:-)|[0-9]+"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:element>
  </xs:sequence>
</xs:complexType>

Hat eine(r) von Euch eine funktionierende Lösung?

Danke
Gab

  1. Hallo,

    ich möchte in einem Schema ein Tag einschränken. Erlaubt sein sollen nur folgende Werte aus dem Sportbereich:
    3:3 (Zahl:Zahl)
    -:-
    0 (Zahl)

    Folgendes ist mir dazu eingefallen, was aber leider nicht funktioniert:

    <xs:complexType name="Ergebnis">
      xs:sequence
        <xs:element name="Ergebnis">
          xs:simpleType
            <xs:restriction base="xs:string">
              <xs:minLength value="3"/>
              <xs:pattern value="([0-9]+:[0-9]+|-:-)|[0-9]+"/>

    Wenn 0 (oder eine andere Zahl) auch allein für sich stehen darf, muss minLength = 1 sein und du müsstest dann auch maxLength = 3 definieren (wobei sich dann die Frage nach z.B. 10:3 etc. stellt)
    Den RegExp. würde ich anders schreiben: z.B. (\d{1,2}:\d{1,2}|-:-)|(\d{1}) oder (\d{1,2}:\d{1,2}|-:-)|([0-9]). Vielleicht hilft dir das.

    Ich kann dir für das Testen von RegExp. Kodos http://kodos.sourceforge.net/ empfehlen.

    Grüße
    Thomas