"not a schema document" 使用记事本++ XML 工具验证 XML 架构时

"not a schema document" when validating XML schema with notepad++ XML tools

我正在尝试为以下 XML 文档创建一个 XML 架构。 https://www.nationalbanken.dk/_vti_bin/DN/DataService.svc/CurrencyRatesHistoryXML?lang=en

  1. 作为起点,我尝试根据 w3 学校的指南创建一个非常基本的 XML 模式。

https://www.w3schools.com/xml/schema_schema.asp

由此产生的 - 非常基本的起点。

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

<xs:schema xmlns:xs="http://www.gesmes.org/xml/2002-08-01" targetNamespace="http://www.ecb.int/vocabulary/2002-08-01/eurofxref" xmlns="http://www.ecb.int/vocabulary/2002-08-01/eurofxref" elementFormDefault="qualified">
        <xs:element name="Envelope">

        </xs:element>
</xs:schema>
  1. 然后我将 gesmes:schemaLocation 属性添加到原始 XML 文档的根节点。
<gesmes:Envelope 
    xmlns="http://www.ecb.int/vocabulary/2002-08-01/eurofxref"
    xmlns:gesmes="http://www.gesmes.org/xml/2002-08-01"
    gesmes:schemaLocation="http://www.ecb.int/vocabulary/2002-08-01/eurofxref ..\StockDownloadResources\CurrenciesDownloadMANUAL.XSD">
  1. 然后我安装了 XML 工具插件到我的 Notepad++ 并尝试根据基本模式验证 XML 文档。

验证结果出现以下错误: 架构文件解析期间发生以下错误:XML 文档“\CurrenciesDownloadMANUAL.XSD”不是架构文档。

我错过了什么?

您的架构文档无效,因为根元素需要具有本地名称 schema 和名称空间 URI http://www.w3.org/2001/XMLSchema。您的文档具有本地名称 schema 和名称空间 URI http://www.gesmes.org/xml/2002-08-01.

的根目录

(在更深层次上,问题是你试图从例子中学习,而不是阅读解释概念的东西。W3Schools 就像那些 "cheat cards" 中的一个,它给出了一行每个命令的效果摘要,但不花时间解释示例为何有效。)