Frage

Ich versuche, ein externes XSD-Schema zu erweitern und Schneider (des FIXML Standard). Ich brauche den Datentyp einige der Elemente zu ändern, ohne das Original-Schema zu berühren, sondern sie neu zu definieren; aber wurden finden es äußerst umständlich.

Was vorhanden ist:

Felder-base.xsd

<xs:simpleType name="LastUpdateTime_t">
           <xs:restriction base="UTCTimestamp">
<xs:simpleType>

, was ich will, es werden:

<xs:simpleType name="LastUpdateTime_t">
           <xs:restriction base="xs:string">
<xs:simpleType>

Was habe ich versucht (aber nicht):

<xs:redefine schemaLocation="fields-base.xsd">
            <xs:simpleType name="LastUpdateTime_t">
              <xs:restriction base="xs:string" />
            </xs:simpleType>
 </xs:redefine>

Bücher und Netz scheinen nicht zu viel entweder geholfen zu haben, so dass ich auf Frage bin ab, wenn dies überhaupt theoretisch möglich ist.

War es hilfreich?

Lösung

Soweit ich das sagen kann, ist nicht möglich.

Die einzige neu definieren ich Validate in XMLSpy machen konnte, war:

<xs:redefine schemaLocation="fields-base.xsd"> 
        <xs:simpleType name="LastUpdateTime_t"> 
          <xs:restriction base="LastUpdateTime_t" /> 
        </xs:simpleType> 
</xs:redefine> 

Das heißt, muss die neue Beschränkung auf der Basis Einschränkung basieren.

Könnte sein, dass XMLSpy über das falsch ist.

Dies etwas kryptische Zitat aus dem W3C XML Schema-Definition :

  

Innerhalb der [Kinder], die jeweils   simple muss eine haben   unter seinen [Kinder] und jede   complex muss eine Beschränkung haben   oder Erweiterung unter seinem   Gross- [Kinder] der tatsächliche Wert von   dessen Basis [attribute] muss die sein   gleiche wie der tatsächliche Wert seines eigenen   name-Attribut plus dem Ziel-Namensraum;

könnte darüber zu reden (es ist, dass ein Teil der Spezifikation auf die XMLSpy Links für diesen Fehler).

Die einzige wirklich gutes Beispiel für eine Neudefinition einfache Typen ich finden konnte, war hier . In diesem Beispiel ist die Neudefinition nur für Aufzählungen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top