加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

如何正确引用本地XML模式文件?

发布时间:2020-12-16 01:52:08 所属栏目:百科 来源:网络整理
导读:我有这个问题,在XML文件中引用我的XML模式。 我有我的XSD在这个路径: C:environmentworkspacemaven-wsProjectXmlSchemaemail.xsd 但是在我的XML文件中,我试图找到这样的模式,XSD找不到: ?xml version="1.0" encoding="UTF-8" ? email xmlns="http:
我有这个问题,在XML文件中引用我的XML模式。

我有我的XSD在这个路径:

C:environmentworkspacemaven-wsProjectXmlSchemaemail.xsd

但是在我的XML文件中,我试图找到这样的模式,XSD找不到:

<?xml version="1.0" encoding="UTF-8" ?>
    <email xmlns="http://www.w3schools.com"
           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
           xsi:schemaLocation="http://www.w3schools.com
                 file://C://environment//workspace//maven-ws//ProjextXmlSchema//email.xsd">

找到XSD的唯一方法是当它在同一个文件夹:

xsi:schemaLocation="http://www.w3schools.com email.xsd"

所以问题是这样的:如果XML文件不在与XSD文件相同的文件夹中,路径必须看起来如何找到XSD?

顺便说一下,我一直在使用的例子是从MSDN:他们声称它应该工作的方式,我试图。但它不。

在xsi:schemaLocation的值中的file://后添加一个斜杠。 (你有两个;你需要三个。认为protocol:// host / path其中协议是’file’,主机在这里是空的,在一行中产生三个斜杠。)你也可以消除沿路径的双斜线。我相信双斜线帮助文件系统允许文件和目录名称中的空格,但你明智地避免了你的路径命名的复杂性。
xsi:schemaLocation="http://www.w3schools.com file:///C:/environment/workspace/maven-ws/ProjextXmlSchema/email.xsd"

还是行不通?我建议您仔细复制XSD的完整文件规范到Chrome或Firefox的地址栏:

file:/// C:/environment/workspace/maven-ws/ProjextXmlSchema/email.xsd

如果XSD不显示在浏览器中,请删除路径(email.xsd)的最后一个组件之外的所有组件,并查看是否无法显示父目录。继续以这种方式,走上目录结构,直到你发现路径与本地文件系统的现实之处。

如果XSD在浏览器中显示,说明您正在使用什么XML处理器,并准备好听到它损坏或者您必须解决一些限制。我可以告诉你,上面的修复将与我的基于Xerces-J的验证工作。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读