Announcement

Collapse
No announcement yet.

XSD in XML definieren

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • XSD in XML definieren

    Hallo Forum,

    ich möchte gerne in einem XSD definieren, das ein bestimmtes Element wiederum aus einem XML Schema besteht. Dazu verwende ich das any-Tag, das ganze sieht so aus

    Code:
    <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" >
    	<xs:element name="datatype">
    		<xs:complexType>
    			<xs:sequence>
    				<xs:any namespace="http://www.w3.org/2001/XMLSchema" processContents="strict" minOccurs="1" maxOccurs="1" />
    			</xs:sequence>
    		</xs:complexType>
    	</xs:element>	
    </xs:schema>
    Jetzt dachte ich, dass ich innerhalb des datatype-Elements ein schema-Element einfügen kann in dem dann XSD steht, mein Validierer (PHPs schemaValidate) bringt mir aber den Fehler:

    Element '{http://www.w3.org/2001/XMLSchema}schema': No matching global element declaration available, but demanded by the strict wildcard

    Das XML, in dem das XSD enthalten ist sieht (verkürzt) so aus:

    Code:
    <datatype>
    	<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
    	    <xs:element name="comment">
    	        <xs:complexType>
    	            <xs:sequence>
    	                <xs:elenent name="referer-url" type="xs:string" minOccurs="1" maxOccurs="1"/>
    	            </xs:sequence>
    	        </xs:complexType>
    	    </xs:element>	
    	</xs:schema>
    </datatype>
    Kann mir jemand helfen, das ist doch sicher wieder so ein Namespace-Thema. Das strict würde ich übrigens gerne behalten ;-)

  • #2
    Du musst deinem schema-validierendem Parser auch das Schema für Schemas mitteilen: http://www.w3.org/2001/XMLSchema.xsd. Wie man das mit PHP bzw. PHPs schemaValidate macht, kann dir hoffentlich jemand anderes sagen.

    Comment

    Working...
    X