首页 > 解决方案 > 如何在 XML 文件之间创建链接

问题描述

我有以下 XML 文件“tasks.xml”,其中包含对资源标签的引用:

<?xml version="1.0" ?>
<config_data>
<resources>
    <resource name="FRED" />
    <resource name="JOHN" />
</resources>

<type_of_task>
    <name>TASK1</name>
    <uses>
        <resource refName="FRED" />
    </uses>
</type_of_task>

<type_of_action>
    <name>ACTION1</name>
    <uses>
        <resource refName="FRED" />
    </uses>
</type_of_action>

</config_data>

和相应的“tasks.xsd”文件:

<?xml version="1.0" encoding="UTF-8"?>

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
   <xs:element name="config_data">
      <xs:complexType>
         <xs:sequence>
         
            <xs:element name="resources">
               <xs:complexType>
                  <xs:sequence>
                     <xs:element name="resource" maxOccurs="unbounded" minOccurs="0">
                        <xs:complexType>
                           <xs:attribute name="name" type="xs:ID" use="optional" />
                        </xs:complexType>
                     </xs:element>
                  </xs:sequence>
               </xs:complexType>
            </xs:element>
            
            <xs:element name="type_of_task">
               <xs:complexType>
                  <xs:sequence>
                     <xs:element type="xs:string" name="name" />
                     <xs:element name="uses">
                        <xs:complexType>
                           <xs:sequence>
                              <xs:element name="resource">
                                 <xs:complexType>
                                    <xs:attribute name="refName" type="xs:IDREF" />
                                 </xs:complexType>
                              </xs:element>
                           </xs:sequence>
                        </xs:complexType>
                     </xs:element>
                  </xs:sequence>
               </xs:complexType>
            </xs:element>

            <xs:element name="type_of_action">
               <xs:complexType>
                  <xs:sequence>
                     <xs:element type="xs:string" name="name" />
                     <xs:element name="uses">
                        <xs:complexType>
                           <xs:sequence>
                              <xs:element name="resource">
                                 <xs:complexType>
                                    <xs:attribute name="refName" type="xs:IDREF" />
                                 </xs:complexType>
                              </xs:element>
                           </xs:sequence>
                        </xs:complexType>
                     </xs:element>
                  </xs:sequence>
               </xs:complexType>
            </xs:element>
            
         </xs:sequence>
      </xs:complexType>
   </xs:element>
</xs:schema>

但我想将 XML 文件拆分为 2 个文件 - tasks1.xml 包含

<?xml version="1.0" ?>
<config_data>

<resources>
    <resource name="FRED" />
    <resource name="JOHN" />
</resources>

</config_data>

和 tasks2.xml 包含

<?xml version="1.0" ?>
<config_data>

<type_of_task>
    <name>TASK1</name>
    <uses>
        <resource refName="FRED" />
    </uses>
</type_of_task>

<type_of_action>
    <name>ACTION1</name>
    <uses>
        <resource refName="FRED" />
    </uses>
</type_of_action>

</config_data>

如何从第二个 XML 文件中引用第一个 XML 文件以及对应的 2 个 XSD 文件是什么?

标签: xmlxsd

解决方案


推荐阅读