2

我正在将一个 xsd 导入 Mendix 以设置一个 Web 服务,该服务将导入一个 XML 文件,该文件中将嵌入一个 pdf 文件。当我尝试将 XSD 添加到 Mendix 时,它给了我一个错误

元素类型“ http://tempuri.org/CREDIT_RESPONSE_v2_3_1:DOCUMENT ”:不支持“任何”元素。

我搜索了 Mendix 论坛,他们说如果您想添加对此 xsd 的支持,您必须确定您期望的响应类型并相应地更改 xsd。

<xs:element name="DOCUMENT">
    <xs:complexType mixed="false">
        <xs:sequence>
            <xs:any minOccurs="0" maxOccurs="unbounded" namespace="##any"/> <!-- Error on any --> 
        </xs:sequence>
    </xs:complexType>
</xs:element>
<xs:element name="EMBEDDED_FILE">
    <xs:complexType>
        <xs:sequence>
            <xs:element ref="DOCUMENT" />
        </xs:sequence>
        <xs:attribute name="_ID" type="xs:ID" />
        <xs:attribute name="_Type" type="xs:string" />
        <xs:attribute name="_Version" type="xs:string" />
        <xs:attribute name="_Name" type="xs:string" />
        <xs:attribute name="_Extension" type="xs:string" />
        <xs:attribute name="_EncodingType" type="xs:string" />
        <xs:attribute name="_Description" type="xs:string" />
        <xs:attribute name="MIMEType" type="xs:string" />
    </xs:complexType>
</xs:element>

我的问题是如何找出对 any 参数有效的响应类型?

4

1 回答 1

1

来自Mendix 参考指南 6

XML 模式支持

当您使用 Mendix Business Modeler 导入 XML 模式(.xsd 文件)或 Web 服务定义(.wsdl 文件)时,您可能会看到一个对话框,其中包含有关不受支持的构造的警告消息。这是因为目前 Mendix 不支持整个 XSD 标准。Mendix 中的映射是基于实体和属性的,一些 XSD 结构并不适合这种格式。下表显示 Mendix 支持哪些 XSD 构造。

该表继续说不xsd:any支持。

因此,如果你想使用他们的工具,你不能使用xsd:any.

我的问题是如何找出对 any 参数有效的响应类型?

根据定义,任何 XML 都可以到达那里;这就是重点xsd:any。(请参阅有关如何使用xsd:any/@processContents的详细信息)为了限制可以到达那里的 XML 并能够使用 Mendix Business Modeler,您必须根据Mendix 支持的有限 XSD 功能集来定义 XML 。

如果您不控制DOCUMENT内容,则必须咨询控制的权威。 提示:我见过CREDIT_RESPONSE_v2_3_1MISMO(抵押行业标准维护组织)中使用 XML。

于 2016-11-17T02:49:35.910 回答