【问题标题】:XSD empty value for Integer datatype整数数据类型的 XSD 空值
【发布时间】:2017-05-18 05:26:18
【问题描述】:

我在下面提到了 XSD,在某些情况下,用户可能不会为 CarLoan(整数数据类型)发送任何值。如何使用表达式允许 XSD 用于空整数值`

<xs:element minOccurs="0" name="Credit">
    <xs:complexType>
        <xs:sequence>
            <xs:element minOccurs="0" name="CarLoan">
                <xs:complexType>
                    <xs:simpleContent>
                        <xs:extension base="xs:integer">
                            <xs:attribute name="test" type="xs:string" use="optional" />
                        </xs:extension>
                    </xs:simpleContent>
                </xs:complexType>
            </xs:element>
            <xs:element minOccurs="0" name="HousingLoan">
                <xs:complexType>
                    <xs:simpleContent>
                        <xs:extension base="xs:integer">
                            <xs:attribute name="test" type="xs:string" use="optional" />
                        </xs:extension>
                    </xs:simpleContent>
                </xs:complexType>
            </xs:element>
        </xs:sequence>
    </xs:complexType>
</xs:element>

【问题讨论】:

    标签: types xsd integer


    【解决方案1】:

    您必须在“CarLoan”元素定义中添加“nillable”属性并将其设置为“true”。如果您在 XML 实例上执行 XML 模式验证,则必须在 CarLoan 元素中包含“xsi:nil='true'”属性。

     <xs:element minOccurs="0" name="CarLoan" nillable="true">
    

    XML 实例应该/将如下所示:

    <CarLoan test="xz" xsi:nil="true"/>
    

    【讨论】:

    • 我猜 nillable="true" 可能无法工作,因为 CarLoan 节点存在,只是该节点不会有任何值
    • 我不确定我是否关注你。你能展示一下 CarLoan 的外观吗?
    • 抱歉正忙于其他事情,没有回过头来。一些示例 xml 可能采用这种格式
    • 1220
    猜你喜欢
    • 2017-11-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-21
    • 2023-03-03
    • 2017-01-30
    • 1970-01-01
    相关资源
    最近更新 更多