首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用XMLSpy 2012进行XSD/XML验证

使用XMLSpy 2012进行XSD/XML验证
EN

Stack Overflow用户
提问于 2012-02-05 04:29:55
回答 1查看 2.7K关注 0票数 0

每次我尝试使用XMLSpy 2012验证下面的xsd文件时,都会得到以下错误:

“‘Credentials”必须引用现有类型。

我确信这是我在做的愚蠢的事情,但我就是看不出来。

谢谢。

代码语言:javascript
复制
                <?xml version="1.0" encoding="UTF-8"?>
                <!--W3C Schema generated by XMLSpy v2011 rel. 2 (x64) (http://www.altova.com)-->
                <schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:qvd="http://www.MyCompany.com/qvd" targetNamespace="http://www.MyCompany.com/qvd" elementFormDefault="qualified" attributeFormDefault="unqualified">
                    <annotation>
                        <documentation>
                QueryViewer Defaults config file schema
                Copyright 2012 MyCompany. All rights reserved.
                </documentation>
                    </annotation>
                    <element name="QueryViewerDefaults">
                        <complexType>
                            <sequence>
                                <element name="CompanyName" type="string"/>
                                <element name="QueryPath" type="string"/>
                                <element name="Credentials" type="Credentials"/>
                            </sequence>
                            <attribute name="created" use="required" type="dateTime"/>
                            <attribute name="modified" use="required" type="dateTime"/>
                            <attribute name="fileversion" use="required" type="string"/>
                        </complexType>
                    </element>
                    <complexType name="Credentials">
                        <sequence>
                            <element name="Server" type="string"/>
                            <element name="Database" type="string"/>
                            <element name="UserID" type="string"/>
                            <element name="Password" type="string"/>
                            <element name="IntegratedSecurity" type="boolean" default="false"/>
                        </sequence>
                        <attribute name="encrypted" type="boolean" use="optional" default="false"/>
                    </complexType>
                </schema>
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-02-05 04:35:57

这是因为Credentials属于http://www.MyCompany.com/qvd名称空间,因为这是您在xsd中定义为targetNamespace的名称空间。因此,请更改以下内容

代码语言:javascript
复制
<element name="Credentials" type="Credentials"/>

代码语言:javascript
复制
<element name="Credentials" type="qvd:Credentials"/>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9144273

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档