首页 > 解决方案 > XSD 问题 - 找不到根元素的声明

问题描述

根据我的 XML 架构验证我的 XML 文件时遇到问题。一切正常,除了它显示它找不到countries根元素的声明。

这是我的 XML 文件的一部分:

<?xml version="1.0" encoding="UTF-8"?>

<countries xmlns="https://www.w3schools.com"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="kraje.xsd">
    <!-- I don't paste everything that's inside the countries element 
         since it's not causing errors -->
</countries>

这是我的 XSD 文件的一部分:

<?xml version="1.0"?>

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">

    <xs:element name="countries" type="countriesType"/>

    <xs:complexType name="countriesType">
        <xs:sequence>
            <xs:element ref="country"/>
        </xs:sequence>
    </xs:complexType>

</xs:schema>

标签: xmlxsdxsd-validationxml-validation

解决方案


XML

由于您的 XML 在https://www.w3schools.com命名空间中,因此请更改

xsi:schemaLocation="kraje.xsd"

xsi:schemaLocation="https://www.w3schools.com kraje.xsd"

XSD

添加匹配targetNamespace

targetNamespace="https://www.w3schools.com"

xs:schema根元素。

也可以看看


推荐阅读