Próbuję użyć następujących w XSDXML Schema 1.1 nie uznając „dochodzić” lub „twierdzenie”
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" >
<xs:element name="dimension">
<xs:complexType>
<xs:attribute name="height" type="xs:int"/>
<xs:attribute name="width" type="xs:int"/>
<xs:assert test="@height = @width"/>
</xs:complexType>
</xs:element>
wiem dochodzić/twierdzenia są częścią schematu XML 1.1, ale nie 1,0. Jednak wszystko, co mam czytać wskazuje nazw jest taka sama dla obu: http://www.w3.org/2001/XMLSchema
A minor problem jest, że program używam napisać schematu (Microsoft Visual Studio) nie uznać „wymuszenia” elementu, mówiąc: "element complexType w przestrzeni nazw (...) ma nieprawidłowy element podrzędny" assert ".
Głównym problemem jest to, że kiedy rzeczywiście próbują zweryfikować XML przeciwko tego schematu, przy użyciu xmllint, to rzuca się błąd mówiąc
" element assert: Schemas parser error : Element '{http://www.w3.org/2001/XMLSchema}complexType': The content is not valid. Expected is (annotation?, (simpleContent | complexContent | ((group | all | choice | sequence)?, ((attribute | attributeGroup)*, anyAttribute?))))
1.1 po prostu nie uznawane przez xmllint/visual studio, mimo że wskazał na przestrzenie nazw 1.1?
Dziękujemy! Jestem nowicjuszem w schemacie XML, ale pomyślałem, że procesor po prostu wyciągnie najnowszą definicję z przestrzeni nazw, którą wskażesz. Czy istnieją jakieś edytory zgodne z XSD 1.1 dla systemu Linux? – user2197116
Nie, nie można oczekiwać, że procesor opracowany w 1994 r. Wdroży specyfikację opublikowaną w 2013 r. OXygen to edytor działający na systemie Linux i obsługujący XSD 1.1 –