는 XSD : 어떤 하나를 포함 할 수 없습니다 기본적으로 네임 스페이스 "http://xxx.yyy.com"내에 정의 된 모든 요소를 시퀀스 내에서 선언 할 수 있으므로이 속성 선언을 사용하십시오. 어떤 : 해당 네임 스페이스를 확인하기 위해 별도의 XSD를 사용하지 않는 경우에, 당신은 단순히 XSD 대신 다음을 사용할 수 있습니다
<xsd:element name="operation">
<xsd:complexType>
<xsd:attribute name="count" type="nonNegativeInteger" use="required"/>
</xsd:complexType>
</xsd:element>
그렇지 않으면, 당신은 HTTP "에 대한 네임 스페이스 접두사를 선언 할 것입니다 : // xxx.yyy.com "을 XSD 상단에 놓고 xsd : any 대신 해당 스키마 내의 요소를 참조하십시오. "http://xxx.yyy.com"에 대한 스키마는 다음과 같은 선언을 포함한다면, :
<xsd:complexType name="operationType">
<xsd:attribute name="count" type="nonNegativeInteger" use="required"/>
</xsd:complexType>
그런 다음 당신은 당신의 XSD에서이 유형을 참조 할 수 있습니다 :
<xsd:element name="requests">
<xsd:complexType>
<xsd:sequence>
<xsd:element type="optype:operationType"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
사실,이 엔드 포인트에 대한 모든 작업 수를 포함하는 하트 비트 WSDL 작업을 만드는거야. 하트 비트 작업은 모든 웹 서비스에서 사용되며 본질적으로 일반화되어야하므로 매번 조정할 필요가 없습니다. – Ketch
예에서<작업 수 = "1"> 작업이 하나 이상의 웹 서비스 작업이 종료됩니다. 그래서, 그 요소에 대한 정의를 사용할 것이기 때문에 네임 스페이스를 네임 스페이스의 일부로 지정해야하는 것 같지 않습니다. 그리고 그것은 내가 성취하려는 것이 아닙니다. 그리고 어떤 엘리먼트에 애트리뷰트를 추가 할 방법이 없다면 그 애트리뷰트가 어떤 애들이 될 필요가있을 것입니다. –
Ketch
안타깝게도 중첩 된 xsd : any 요소를 가질 수 없으므로 count에 child 요소를 사용하면 작동하지 않습니다. xsd : any 아래에 배치 할 수있는 유일한 하위 요소는 xsd : annotation입니다. –