尝试在 XSD 中添加 type= "xs:string" 时出错



每当我试图将目标的类型添加为";xs:string";。我不确定问题是什么。如果我删除XSD有效的类型,我需要它具有字符串类型,但是,当我添加它时,我会得到以下错误:

3.1.1:元素"target"是一个简单类型,因此它不能有属性,命名空间名称与"相同的属性除外http://www.w3.org/2001/XMLSchema-instance",并且其[本地名称]是"type"、"nil"、"schemaLocation"或"noNamespaceSchemaLocation"之一。但是,找到了属性"type"。

还有其他方法可以添加类型"xs:string"吗?

<xs:complexType>
<xs:sequence>
<xs:element  name="goal" type="xs:string" maxOccurs="unbounded">
</xs:element>
</xs:sequence>

根据Saxon模式处理器,您的模式是正确的,并且实例是有效的。我看不出有什么毛病。

您使用的是什么架构处理器?

Legit XSD

<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="interface">
<xs:complexType>
<xs:sequence>
<xs:element name="pack" type="xs:string" maxOccurs="1" />
<xs:element name="extension">
<xs:complexType>
<xs:sequence>
<xs:element name="from" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="import" maxOccurs="unbounded" minOccurs="0" type="xs:string" />
<xs:element name="method" maxOccurs="unbounded" minOccurs="0" >
<xs:complexType>
<xs:sequence>
<xs:element name="level" type="xs:string" />
<xs:element name="arguments" maxOccurs="unbounded" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="goal" type="xs:string" maxOccurs="unbounded">
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element minOccurs="0" name="throws">
<xs:complexType>
<xs:sequence>
<xs:element name="exception" maxOccurs="unbounded" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="return" type="xs:string" maxOccurs="1" />
</xs:sequence>
<xs:attribute name="name" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="id" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
</xs:schema>

有效的XML示例

<?xml version="1.0" encoding="utf-8"?>
<interface xsi:noNamespaceSchemaLocation="Joseph.xsd" id="string" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<pack>string</pack>
<extension>
<from>string</from>
</extension>
<import>string</import>
<import>string</import>
<import>string</import>
<method name="string">
<level>string</level>
<arguments>
<goal>string</goal>
<goal>string</goal>
</arguments>
<throws>
<exception>string</exception>
<exception>string</exception>
<exception>string</exception>
<exception>string</exception>
<exception>string</exception>
</throws>
<return>string</return>
</method>
</interface>

最新更新