Я наткнулся на этот пост и подумал, что стоит упомянуть то, что я считаю из мира Spring Web Services (тех, которые первостепенно важны для контракта на данные).
Одним из хороших способов решения этой проблемы корневых элементов является непосредственное определение нескольких корневых элементов под элементом схемы, как упомянул Фил Бут.
Однако, когда речь идет о передовых практиках и инфраструктуре веб-сервисов, в которых приоритет отдается данным, важно разработать надежную схему. Когда кто-то определяет такую схему -
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="foo">
...
</xs:element>
<xs:element name="bar">
...
</xs:element>
структура веб-службы, такая как Spring-WS, которая использует для генерации веб-службы эту так называемую схему контракта данных, возможно, не сможет понять, является ли или корневым элементом запроса к службе.
Пожалуйста, обратитесь по этой ссылке - Договор о предоставлении данных
В таких случаях я счел полезным подход «Джона в CashCommons» или Стивена Рашинга.