실제로 다른 스키마에 "가져온"별도의 XSD를 가질 수 있습니다. 매우 간단합니다. "합성"스키마에서 "import : schemaLocation"을 사용하기 만하면됩니다. 나는이 프로젝트에 사용하고 코드에서 다음 예를 참조하십시오 :이 스키마를 사용하려면
<schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://test/interactions/AddToContext"
xmlns:tns="http://test/interactions/AddToContext" xmlns:basictypes="http://test/interactions/BasicTypes" elementFormDefault="qualified">
<import schemaLocation="BasicTypes.xsd"
namespace="http://test/interactions/BasicTypes">
</import>
<!-- Request Message -->
<element name="AddToContextRequest">
<complexType>
<sequence>
<choice>
<element name="ServiceIdToAdd" type="string" maxOccurs="unbounded" />
<element name="ValueToAdd" type="basictypes:ContextValue" maxOccurs="unbounded" />
</choice>
</sequence>
</complexType>
</element>
<!-- Response message -->
<element name="AddToContextResponse">
<complexType>
<sequence>
<element name="Result" type="string" />
</sequence>
</complexType>
</element>
</schema>
당신은 내가이 스키마에 "BasicTypes"스키마를 가져온 것을 볼 수 있습니다
...
이러한 객체를 조작하는 Java 코드 (클래스)를 생성하기위한 참조로 "xjc"(XML 바인딩 컴파일러)을 사용할 수 있습니다. 매우 유용합니다!
도움이 되었기를 바랍니다. 건배!
새로운 XSD의 기본 유형을 결합 :
<?xml version="1.0" encoding="UTF-8"?>
<schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://test/interactions/AddToContext"
xmlns:tns="http://test/interactions/AddToContext" elementFormDefault="qualified">
<complexType name="ContextValue">
<sequence>
<element name="ValueID" type="string" />
<choice>
<sequence>
<element name="Value" type="string" />
<element name="ID" type="string" />
</sequence>
<element name="InfoValue" type="string" />
</choice>
</sequence>
</complexType>
<!-- Request Message -->
<element name="AddToContextRequest">
<complexType>
<sequence>
<choice>
<element name="ServiceIdToAdd" type="string" maxOccurs="unbounded" />
<element name="ValueToAdd" type="tns:ContextValue" maxOccurs="unbounded" />
</choice>
</sequence>
</complexType>
</element>
<!-- Response message -->
<element name="AddToContextResponse">
<complexType>
<sequence>
<element name="Result" type="string" />
</sequence>
</complexType>
</element>
</schema>
나는 완전히 당신이 뭘하려는 건지 이해하지 않지만, 당신이 include''import'or'사용하여 스키마를 결합 할 수 있습니다 : http://stackoverflow.com/q/2357943/1374678 – rolve
** 카멜레온 스키마 **에 특별한 악센트가 있습니다. 이는 주요 XSD 프로젝트에서조차 간과되기 쉬운 결과를 초래합니다. –