У меня есть вопрос, является ли этот синтаксис XSD действительным? Потому что, когда я использую gSOAP, он запрещает мне предупреждения, потому что он создает struct (код C/C++), который состоит из двух других структур с тем же именем (имя C), а затем, когда я пытаюсь скомпилировать этот код в компиляторе c/C++, prodeces errors (из-за структуры с тем же именем внутри одной структуры). Есть ли какая-то возможность решить эту проблему, не касаясь файла XSD?Синтаксис схемы XSD и gSoap
<complexType name="A">
<choice>
<sequence>
<element name="B" type="base64Binary"/>
<element name="C" type="base64Binary" minOccurs="0"/>
<any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</sequence>
<sequence>
<element name="C" type="base64Binary"/>
<any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</sequence>
</choice>
</complexType>
в gSOAP создать его с помощью: wsdl2h.exe -oSoap.h -s -y -c a.wsdl b.wsdl ...
и
soapcpp2.exe -C -L -n -x -w -c -d.\source Soap.h
@KeineLust, gSoap производит код C/C++, где появляется проблема, что две структуры внутри одной структуры имеют одинаковое имя. –
ok;) можете ли вы показать эти предупреждения? –
'' 'ошибка: переопределение 'struct a :: c''' и ' '' error: предыдущее определение' struct a :: c'''' –