XML Schema使用ref关键字来引用另一个命名空间中的属性

时间:2017-03-21 14:57:48

标签: xml xsd schema

我在创建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>

没有每个属性的填充值。有可能吗?或者由于包含和检查模式的限制,这是不可能的?谢谢你的帮助。

0 个答案:

没有答案