Сервис игл EMBL-EBI EMBOSS (http://www.ebi.ac.uk/Tools/services/soap/emboss_needle?wsdl), и большинство других сервисов аналитических инструментов (см. http://www.ebi.ac.uk/Tools/webservices/)) позволяют параметрам представления иметь три состояния:
- Явное значение
- Нулевое значение
- Не указывать
Это обеспечивает совместимость с широким спектром наборов инструментов SOAP, некоторые из которых предполагают только одно или два из этих трех вариантов поведения.
К сожалению, побочным эффектом этого является то, что наборы инструментов, такие как JAX-WS, которые понимают, что существует три состояния, должны использовать более сложное представление для обработки этого. Таким образом, классы JAXBElement являются обязательными. EMBL-EBI предоставляет клиентам примеров исходный код с использованием JAX-WS для их служб InterProScan (SOAP) и NCBI BLAST (SOAP), которые используют один и тот же шаблон для своих параметров (см. http://www.ebi.ac.uk/Tools/webservices/tutorials/06_programming/java/soap/jax-ws).