Ошибка регулярного выражения в конструкторе TIBCO?

Я пытаюсь использовать файл WSDL в TIBCO Desginer, но ошибка его создания для шаблона регулярного выражения, определенного для атрибута даты в WSDL

Файл WSDL

> <xsd:element maxOccurs="1" minOccurs="0" name="contractStartDate_line"

    > nillable="true">
    >       <xsd:simpleType>
    >           <xsd:restriction base="xsd:string">
    >               <xsd:pattern value="([0-9][0-9][0-9][0-9])-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])
    > ([0-1]?[0-9]|2[0-3]):([0-5]?[0-9]):([0-5]?[0-9])|"/>
    >           </xsd:restriction>
    >       </xsd:simpleType>

>     </xsd:element>

Ошибка в TIBCO

#dt-regex Pattern "([0-9][0-9][0-9][0-9])-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01]) ([0-1]?[0-9]|2[0-3]):([0-5]?[0-9]):([0-5]?[0-9])|"/>" is an invalid regular expression: invalid atom: empty

Какие-нибудь мысли?

Nitesh

1 ответ

Я не уверен, является ли это ошибкой или намеренной, но Дизайнер не примет пустую строку с чередованием (|). Следующее регулярное выражение принимается дизайнером и, вероятно, соответствует вашим требованиям:

^ ([0-9] [0-9] [0-9] [0-9]) - (0 [1-9] | 1 [0-2]) - (0 [1-9] | [12 ] [0-9] | 3 [01]) ([0-1] [0-9]|2[0-3]):? ([0-5] [0-9]): ([0 -5] [0-9])$|? ^$

С другой стороны, желательно ли разрешить пустое значение, когда вы можете опустить весь элемент (minOccurs="0")? Есть ли функциональная разница между пустым и пропущенным элементом?

Другие вопросы по тегам