我在创建XML-Schema文件时遇到问题。我想定义一些应引用当前命名空间之外的元素的属性。我正在使用PyCharm&在那里你很有可能包含一个用于检查当前xml文件的模式,当你填写一些标签时,它会为你自动完成定义。我想用这个功能来减少从地面输入每个参数的开销。当然我不想滥用xml架构。 如果适用,我愿意接受任何建议。我只展示了我的一些文件。
(.xsd的内容):
<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="https://www.w3schools.com"
xmlns="https://www.w3schools.com"
elementFormDefault="qualified"
xmlns:xi="http://www.w3.org/2001/XInclude"
>
<xs:complexType name="Parameters">
<xi:attribute ref="xi:href" use="required"/>
<xi:attribute ref="xi:xpointer" use="required"/>
<xi:attribute ref="xi:parse" use="required"/>
<xi:attribute ref="xi:href" use="required"/>
</xs:complexType>
</xs:schema>
我真正想要的是通过模式定义来定义节点参数的属性。因此,正确的xml文件应如下所示:
<Parameters>
<xi:include href="some.xml" xpointer="xpointer(//root)" parse="xml">
<xi:fallback>Sorry, some.xml not available</xi:fallback>
</xi:include>
</Parameters>
没有每个属性的填充值。有可能吗?或者由于包含和检查模式的限制,这是不可能的?谢谢你的帮助。