我的XML Schema一直出现错误,说不支持“Personelement”。我不知道这里的问题是什么。我是初学者,所以我可能错过了一些明显的东西,但我怎么能纠正这个?这是我的XML:
<?xml version="1.0" encoding="UTF-8"?>
<Ansökan xmlns="http://www.w3schools.com" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.w3schools.com XMLSchema1.xsd">
<Förskolenamn>Hovhultsförskola</Förskolenamn>
<Barn>
<Förnamn>Erik</Förnamn>
<Efternamn>Andersson</Efternamn>
<Personnummer>20101106</Personnummer>
<Syskon>
<Förnamn>Axel</Förnamn>
<Efternamn>Andersson</Efternamn>
<Personnummer>20051217</Personnummer>
</Syskon>
<Övrigt>
<Allergier>Inga allergier</Allergier>
</Övrigt>
</Barn>
<Vårdnadshavare>
<Person personnummer="19850724">
<Förnamn>Johan</Förnamn>
<Efternamn>Andersson</Efternamn>
<Adress>Balladvägen 20, Uddevalla</Adress>
<Mobilnummer>0700000000</Mobilnummer>
<Tel.arbete>0522-00000</Tel.arbete>
</Person>
<Person personnummer="19881217">
<Förnamn>Johanna</Förnamn>
<Efternamn>Andersson</Efternamn>
<Adress>Balladvägen 20, Uddevalla</Adress>
<Mobilnummer>0700000000</Mobilnummer>
<Tel.arbete>0522-00000</Tel.arbete>
</Person>
</Vårdnadshavare>
</Ansökan>
这是我的XML Schema:
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://www.w3schools.com" targetNamespace="http://www.w3schools.com" elementFormDefault="qualified">
<xs:element name="Ansökan">
<xs:complexType>
<xs:sequence>
<xs:element name="Förskolenamn">
<xs:simpleType>
<xs:restriction base="xs:string" />
</xs:simpleType>
</xs:element>
<xs:element name="Barn">
<xs:complexType>
<xs:sequence>
<xs:element name="Förnamn" maxOccurs="10" />
<xs:element name="Efternamn" maxOccurs="10" />
<xs:element name="Personnummer" maxOccurs="10" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Syskon">
<xs:complexType>
<xs:sequence>
<xs:element name="Förnamn" maxOccurs="unbounded" />
<xs:element name="Efternamn" maxOccurs="unbounded" />
<xs:element name="Personunmmer" maxOccurs="unbounded">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Övrigt">
<xs:complexType>
<xs:sequence>
<xs:element name="Allergier" maxOccurs="1" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Vårdnadshavare">
<xs:complexType>
<xs:sequence>
<xs:Person name="personnummer">
<xs:complexType>
<xs:sequence>
<xs:restriction base="xs:int">
<xs:pattern value="[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]" />
</xs:restriction>
</xs:sequence>
</xs:complexType>
<xs:element name="Förnamn" max0ccurs="2" />
<xs:element name="Efternamn" max0ccurs="2" />
<xs:element name="Adress" max0ccurs="2" />
<xs:element name="Mobilnummer" max0ccurs="1" />
<xs:element name="Tel.arbete" max0ccurs="10" />
</xs:Person>
<xs:Person name="personnummer">
<xs:complexType>
<xs:restriction base="xs:int">
<xs:pattern value="[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]" />
</xs:restriction>
</xs:complexType>
<xs:element name="Förnamn" max0ccurs="2" />
<xs:element name="Efternamn" max0ccurs="2" />
<xs:element name="Adress" max0ccurs="2" />
<xs:element name="Mobilnummer" max0ccurs="1" />
<xs:element name="Tel.arbete" max0ccurs="10" />
</xs:Person>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
答案 0 :(得分:1)
在xml架构中,<xs:Person name="personnumber">
不正确。你需要定义一个元素&#39; Person&#39;具有属性&#39; personnumber&#39;。同样,Person元素的其他子元素也必须是Person元素的类型定义的一部分。见下文:
<xs:element name="Person" maxOccurs="unbounded" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element type="xs:string" name="Förnamn" />
<xs:element type="xs:string" name="Efternamn" />
<xs:element type="xs:string" name="Adress" />
<xs:element type="xs:int" name="Mobilnummer" />
<xs:element type="xs:string" name="Tel.arbete" />
</xs:sequence>
<xs:attribute type="xs:int" name="personnummer" use="optional">
<xs:simpleType>
<xs:restriction base="xs:int">
<xs:pattern value="[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
</xs:element>