我正在尝试创建一个XML Schema而且我被卡住了。似乎我无法定义具有字符串内容的元素。我做错了什么?
架构:
<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://ponderka.wz.cz/MusicLibrary0" targetNamespace="http://ponderka.wz.cz/MusicLibrary0">
<xs:element name="music-library">
<xs:complexType>
<xs:sequence>
<xs:element name="artist" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
文件:
<?xml version="1.0"?>
<music-library xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://ponderka.wz.cz/MusicLibrary0 data0.xsd" xmlns="http://ponderka.wz.cz/MusicLibrary0">
<artist>a</artist>
</music-library>
验证员说:
Element <artist> is not allowed under element <music-library>.
Reason: The following elements are expected at this location (see below)
<artist>
Error location: music-library / artist
Details
cvc-model-group: Element <artist> unexpected by type '{anonymous}' of element <music-library>.
cvc-elt.5.2.1: The element <music-library> is not valid with respect to the actual type definition '{anonymous}'.
答案 0 :(得分:2)
你错过了这个:
attributeFormDefault="unqualified"
试试这个:
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="http://ponderka.wz.cz/MusicLibrary0" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="music-library">
<xs:complexType>
<xs:sequence>
<xs:element name="artist" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>