请帮帮我,我知道这是一个非常简单的问题,还需要帮助。 请参考以下架构..
<?xml version="1.0" encoding="UTF-8"?>
<schema attributeFormDefault="unqualified" elementFormDefault="qualified"
targetNamespace="http://xmlns.oracle.com/RegistrationUpload_jws/RegistrationUpload/Taskprocess"
xmlns="http://www.w3.org/2001/XMLSchema">
<complexType name="officer" id="officer" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<sequence>
<element name="mainOfficer" type="string"/>
<element name="mainOfficerId" type="string"/>
<element name="coveringOfficer" type="string"/>
<element name="coveringOfficerId" type="string"/>
<element name="defaultOfficer" type="string"/>
<element name="defaultOfficerId" type="string"/>
<element name="matrixId" type="string"/>
</sequence>
</complexType>
<element name="process">
<complexType>
<sequence>
<element name="input" id="officer" type="officer" nillable="false"
maxOccurs="1" minOccurs="0"/>
</sequence>
</complexType>
</element>
<element name="processResponse">
<complexType>
<sequence>
<element name="result" type="string"/>
</sequence>
</complexType>
</element>
</schema>
我找不到问题参考办公室(使用Jdeveloper)
答案 0 :(得分:1)
我认为这个问题与命名空间有关。文档的默认命名空间为http://www.w3.org/2001/XMLSchema
,这意味着您可以引用不带前缀的XML内置类型,如type="string"
中所示。但是,类型officer
存在于目标名称空间中,因此当您引用该类型时,必须使用命名空间绑定对其进行限定。将其添加到schema
元素:
xmlns:tns="http://xmlns.oracle.com/RegistrationUpload_jws/RegistrationUpload/Taskprocess"
并在引用人员类型时使用tns前缀:
<element name="input" type="tns:officer" nillable="false" ... />
(另外,id属性的使用很奇怪,特别是因为你有重复的内容。)