【问题标题】:Correction for XML script that I've written更正我编写的 XML 脚本
【发布时间】:2021-03-07 13:19:39
【问题描述】:

我只有 XML 的理论和基础知识,并且一直试图更好地理解内部和外部 DTD 的概念,模式。我给自己提出了一个问题,并为它编写了一个 XML 脚本。我不知道如何运行它,也不知道我写的是否正确。希望听到对下面给出的问题和答案的更正和建议。另外,如果有人能告诉我如何运行它,那将有很大的帮助,因为我也想要更多的实用知识。 Question: Create an XML schema for a catalog of cars, where each car has the following child elements: company_name, model, year, color, and engine type.

The answer I've written:
<?xml version ="1.0" encoding="UTF-8"?>
<!==cars.xsd
    A simple schema for cars.xml
-->
<xsd:schema
xmlns:xsd="http:///www.w3.org/2001/XMLSchema"
targetNamespace="https://cs.uccs.edu/carCatalog"
xmlns="https://cs.uccs.edu/carCatalog">
<xsd:element name="Cars">
<xsd:complexType>
<xsd:sequence>
<xsd: element name= "company" type="xs.string"/>
<xsd: element name= "model" type="xs.string"/>
<xsd: element name= "year" type="xs.string"/>
<xsd: element name= "color" type="xs.string"/>
<xsd: element name= "engine" type="xs.string"/>
</xsd:sequence>
<xsd:complexType>
</xsd:element>


<!--carcatalog.xml-->
<cars
xmlns="https://cs.uccs.edu/carCatalog"
xmlns:xsi="http:///www.w3.org/2001/XMLSchema-instance"
xsi:schemalocation="https://cs.uccs.edu/carCatalog/cae.xsd"
<company> Volks Wagon</company>
<model> abcxyz</model>
<year> 2018</year>
<color> Blue</color>
<engine> 4 cylinders</engine>
</cars>

我所写的一切都是在我的教科书中的例子的帮助下(这也是我得到问题的地方)。请尝试以简单但详细的方式描述上述脚本有什么问题(如果有的话)。提前谢谢!

【问题讨论】:

    标签: xml xsd schema dtd


    【解决方案1】:

    我不会给你正确的答案,但会提供足够的提示,以便你自己做。

    首先,查看您的 xml 或 xsd 语法是否正确的最佳方法是使用验证器。这些可以在线或离线使用。 Notepad++ 有一个名为 xml 的扩展,可以帮助你,或者你可以去:https://freeformatter.com/xml-validator-xsd.html

    如果您在 xml 架构 (xsd) 上使用验证器,您将看到它不会通过。

    • cmets 在
    • 之间
    • xsd 命名空间的 url 无效,它的 / 太多。
    • 您打开的每个类型都需要关闭
    • 命名空间前缀和类型定义之间没有空格。
    • 必须定义所有命名空间前缀
    • 在命名空间前缀和类型之间有一个 : 而不是 .
    • 通过将 elementFormDefault="qualified" 属性FormDefault="unqualified" 添加到具有正确设置的架构中,您可以指定目标命名空间的使用方式。

    如果您修复了这些问题,xml 架构将是有效且可用的,但我假设您的汽车列表中需要不止一辆汽车。这可以通过设置发生在元素 Cars 上的最小值和最大值来实现。

    xml 也需要注意。

    • Xml 区分大小写,因此汽车和汽车是不同的元素。
    • 所有 xml 元素都有一个打开
    • 您的架构位置必须准确指向您在本地放置文件的位置,并且文件名必须正确。

    希望这可以帮助您朝着正确的方向前进。

    【讨论】:

    • 非常感谢!我将尝试使用 Notepad++ 验证器,看看我是否能更好地理解/纠正我的代码。子弹真的很有帮助:)
    猜你喜欢
    • 2011-05-09
    • 1970-01-01
    • 2021-02-06
    • 1970-01-01
    • 2015-04-26
    • 1970-01-01
    • 1970-01-01
    • 2011-01-03
    • 2020-03-22
    相关资源
    最近更新 更多