Существует ли стандартная аннотация / синтаксис WSDL для этой конструкции?
Боюсь, что нет. Схема XML enumeration
используется для ограничения значения в пределах указанного набора возможных значений. Когда ваш клиент отправляет вам запрос, элементу с типом ограничения будет разрешено иметь (в вашем случае) значение 00001, 00002 или 00003, иначе оно будет недействительным.
Ограничение указывает только значения, вы не можете добавлять метки. В лучшем случае вы можете добавить <annotation>
, но это будет просто документация. В пользовательском интерфейсе клиента каждый клиент должен сказать, что 00001 на самом деле "кирпич и миномет", а 00002 - "солома" и т. Д.
Если вы не хотите этого делать и вместо этого хотите возвращать метки, тогда вам нужен немного более сложный объект, возможно, что-то вроде этого:
<option>
<key>00001</key>
<label>Brick and mortar</label>
</option>
Вы предоставляете метку и ограничиваете ключ такой схемой:
<xsd:simpleType name="ValuesType">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="00001" />
<xsd:enumeration value="00002" />
<xsd:enumeration value="00003" />
</xsd:restriction>
</xsd:simpleType>
<xsd:complexType name="OptionType">
<xsd:sequence>
<xsd:element name="key" type="ValuesType" />
<xsd:element name="label" type="xsd:string" />
</xsd:sequence>
</xsd:complexType>
Вы можете вернуть список опций клиентам, и они могут представить его в интерфейсе с key
в качестве значения и label
в качестве текста опций во <select>
входах, а по запросу вы получите выбранное значение (т. е. выбранное key
).