2012-03-18 10 views
1

.xmlファイルの中には、とりわけMIDIノートデータを含むものがあるとします。複数のファイルで1つの要素宣言を使用する

MIDIノート値は、(彼らは、例えば108否定することはできず、以下、いくつかの最大値と同じでなければなりません)我々は有界整数を強化しながら、ファイルを検証するのに役立ついくつかの.xsdファイルを設定したいの整数を囲まなければなりませんので、ルール。

私は一度だけそれを入力する必要がなるように、私は0108の境界を強制できるようになる可能な任意のメカニズム、あるいはおそらくmidi「タイプ」、しかし、このような方法ではあります、とだけ一度?すべてのスキーマファイル内のすべてのMIDI要素については、以下のコードスニペットは、すべての明白な理由のために悪いです含め

- それは面倒だし、エラーが発生しやすく、維持が困難、など

<xs:element name="note"> 
    <xs:simpleType> 
     <xs:restriction base="xs:positiveInteger"> 
      <xs:maxExclusive value="108"/> 
     </xs:restriction> 
    </xs:simpleType> 
</xs:element> 

私は怖いI氏のGoogleからのこの質問への回答を得るための基本的な理解や用語がありません。

+0

フル機能のオープンソースMIDIシーケンサーを書いてくれたら、私に知らせてください。 :-) – dAm2K

答えて

2

はい、それを参照してください、その後、名前付きの型を宣言:

<xs:element name="note" type="NoteType"/> 

<xs:simpleType name="NoteType> 
    <xs:restriction base="xs:positiveInteger"> 
     <xs:maxExclusive value="108"/> 
    </xs:restriction> 
</xs:simpleType> 

あなたが必要としてあなたは何回としてNoteTypeを参照することができます。

関連する問題