XSD元素数据重复

时间:2015-06-24 00:35:02

标签: xml xsd xsd-1.0

我有一个XSD和XML文件可以正常工作90%并且差不多完成了。 例如,如果我有这个XML文档。

<Family>
    <Family_Client>
        <ClientID>1234</ClientID>
    </Family_Client>
    <Loan>
        <Family_Client>
            <ClientID>1234</ClientID>
        </Family_Client>
    </Loan>
</Family>

是否可以操纵XSD(XML Schema)以确保贷款中的ClientIDclientID中的Family_Client相同?

此外,如果有多个Family_Clients,我希望Family_Client中的Loan也相同。这样的例子就是:

<Family>
    <Family_Client>
        <ClientID>1234</ClientID>
    </Family_Client>
    <Family_Client>
        <ClientID>2345</ClientID>
    </Family_Client>
    <Loan>
        <Family_Client>
            <ClientID>1234</ClientID>
        </Family_Client>
        <Family_Client>
            <ClientID>2345</ClientID>
        </Family_Client>
    </Loan>
</Family>

1 个答案:

答案 0 :(得分:3)

我建议您更改架构的结构。

如果每笔贷款只属于一个家庭客户,那么您应该将其放在该节点下。如果您希望每个客户有多个贷款,请将它们放在贷款节点

<Family>
    <Family_Client>
        <ClientID>1234</ClientID>
        <Loans>
            <Loan>
                   <!-- details of loan here -->
            </Loan>    
            <Loan>
                   <!-- details of loan here -->
            </Loan>    
        </Loans>
    </Family_Client>
</Family>