XSD验证错误-在同一定义中引用了复杂类型
我正在尝试写我的第一个XSD。XSD如下所示,不进行验证XSD验证错误-在同一定义中引用了复杂类型,xsd,xsd-validation,Xsd,Xsd Validation,我正在尝试写我的第一个XSD。XSD如下所示,不进行验证 <xsd:schema elementFormDefault="qualified" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <xsd:complexType name="Hdr"> <xsd:sequence> <xsd:element name="ID" type
<xsd:schema elementFormDefault="qualified"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:complexType name="Hdr">
<xsd:sequence>
<xsd:element name="ID" type="xsd:string" />
</xsd:sequence>
</xsd:complexType>
<xsd:element name="Header" type="xsd:Hdr" />
</xsd:schema>
我正在使用它进行验证
我得到这个错误
无效。错误-第7行,49:org.xml.sax.SAXParseException;行号:7;栏目号:49;src resolve.4.2:解析组件“xsd:Hdr”时出错。
检测到“xsd:Hdr”位于命名空间“”中,但此命名空间中的组件不可从架构文档“null”引用。
如果名称空间不正确,则可能需要更改“xsd:Hdr”的前缀。
如果这是正确的名称空间,则应向“null”添加适当的“import”标记。
错误-第7行,49:org.xml.sax.SAXParseException;行号:7;栏目号:49;src resolve:无法将名称“xsd:Hdr”解析为(n)“类型定义”组件
我无法找出XSD中的错误。请有人给我引路。换衣服
<xsd:element name="Header" type="xsd:Hdr" />
到
如果定义了目标名称空间,您将使用其前缀来引用Hdr
,但决不会使用http://www.w3.org/2001/XMLSchema
namespace来进行这样的引用
<xsd:element name="Header" type="Hdr" />