【发布时间】:2012-09-17 18:43:33
【问题描述】:
我不明白这里发生了什么。据我所知,我的小解析器程序通过了我的 XML 和 XSD 更改并很好地加载了东西,但是如果我把这些东西放在我们的生产系统中,它就会爆炸。
我现在才开始使用 XSD 导入语句。如果取出一些用户定义的类型并将它们全部放入 XSD 中,我会做什么。
这里有一些典型的错误
文件“/home/dfcuser/dataElementsTrans.xsd”出错,行=7,列=37,XML 元素=,导入的架构“DFCTypes.xsd”具有不同的目标名称空间“http://www.quikq.com /xsd/dataElementsTrans' 来自声明的 'http://www.quikq.com/DFCTypes'
文件“/home/dfcuser/dataElementsTrans.xsd”出错,行=29,列=55,XML 元素=,架构表示约束:引用命名空间“http://www.quikq.com/DFCTypes”时没有声明
以下是示例文档的序言:
DFCTypes.xsd
------------
<xs:schema
targetNamespace="http://www.quikq.com/DFCTypes"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified">
dataElementsTrans.xsd
---------------------
<xs:schema
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:dfct="http://www.quikq.com/DFCTypes"
targetNamespace="http://www.quikq.com/xsd/dataElementsTrans"
xmlns="http://www.quikq.com/xsd/dataElementsTrans"
elementFormDefault="qualified" >
<xs:import schemaLocation="DFCTypes.xsd" namespace="http://www.quikq.com/DFCTypes" />
XML
---
<dataElementsTrans
xmlns="http://www.quikq.com/xsd/dataElementsTrans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.quikq.com/xsd/dataElementsTrans dataElementsTrans.xsd">
我的示例解析器程序和生产代码必须以不同的方式打开某些东西。我对此仍然很陌生,所以我有点摸不着头脑。
谢谢!
【问题讨论】:
标签: xml xml-parsing xsd