gpt4 book ai didi

XML-XSD : How to define namespaces correctly?

转载 作者:数据小太阳 更新时间:2023-10-29 02:57:54 25 4
gpt4 key购买 nike

我想知道如何使用 XML 和 XSD 正确定义命名空间。我有以下 XML 文件:

<?xml version="1.0" encoding="utf-8" standalone="no"?>
<application
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:app="ms.xsd"
xsi:schemaLocation="ms.xsd">
<app:contactPerson>
<app:name>Florian</app:name>
<app:countryCode>FR</app:countryCode>
</app:contactPerson>
<app:contactPerson>
<app:name>Gabi</app:name>
<app:countryCode>DE,EE,EL,FI,FR,IE,UK</app:countryCode>
</app:contactPerson>
<app:contactPerson>
<app:name>Gert</app:name>
<app:countryCode>GB</app:countryCode>
</app:contactPerson>
<app:origin/>
</application>

架构由同一文件夹中的文件 ms.xsd 定义:

<?xml version="1.0" encoding="utf-8"?>
<xs:schema
xmlns:xs="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified"
attributeFormDefault="unqualified"
version="0.2"
targetNamespace="ms.xsd"
xmlns:app="ms.xsd">
<xs:element name="application" type="app:applicationType"/>
<xs:complexType name="applicationType">
<xs:sequence>
<xs:element name="contactPerson" type="app:contactPersonType" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="origin" type="app:originType" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="contactPersonType">
<xs:sequence>
<xs:element name="name" type="xs:string"/>
<xs:element name="countryCode" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="originType">
<xs:sequence minOccurs="0">
<xs:element name="street" type="xs:string"/>
<xs:element name="city" type="xs:string"/>
<xs:element name="country" type="xs:string"/>
<xs:element name="further_details" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:schema>

我已经尝试了很多东西。我在这个(当前)最终版本中遇到的错误是

错误:元素“application”:没有匹配的全局声明可用于验证根。

这是因为 xml 文件中的 xsd-reference 位于 application-tag 内,以至于它“来得太晚”了吗?当我在所有内容周围添加一个“信封”标签并将 xsd 定义放在那里时,我收到消息

错误:元素“信封”:没有可用于验证根的匹配全局声明。

所以现在我真的很困惑如何正确地做到这一点。我正在使用 Notepadd++ 中的 XML 工具针对 XSD 验证 XML。

最佳答案

试试 app:application ...这应该工作。不管后面有声明。

关于XML-XSD : How to define namespaces correctly?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14453457/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com