Валидация по WSDL/XSD схеме (deprecated)#
Примечание
Данный механизм не рекомендован к использованию в SOWA. В качестве альтернативы рекомендуется использовать действие XsdValidation.
При использовании xsd валидации в сервисах типа WebSocket требуется пользоваться параметрами request_schema и response_schema.
Совместное использование валидаторов и цепочек: данный механизм предполагает монопольное право на работу с контекстом запроса или ответа. В связи с этим, одновременная работа валидаторов (validators) и цепочек (chains) запрещена на уровне конфигурации, хотя и технически возможна в случае имплементации на разных фазах.
validator_xsd - параметры#
Название |
Обязательность |
Описание |
Возможные значения |
Значение по умолчанию |
|---|---|---|---|---|
|
Опциональный |
Параметры, используемые для валидации запроса по схеме |
Параметры, описанные в разделе «validator_xsd - request» |
— |
|
Опциональный |
Ограничения на parsing xml запроса |
Параметры, описанные в разделе «validator_xsd - limits» |
— |
|
Опциональный |
Параметры, используемые для валидации ответа по схеме |
Параметры, описанные в разделе «validator_xsd - response» |
— |
|
Опциональный |
Ограничения на parsing xml ответа |
Параметры, описанные в разделе «validator_xsd - limits» |
— |
|
Опциональный |
Решение валидатора, если не обнаружено подходящего правила для валидации сообщения |
|
|
validator_xsd - request#
Название |
Обязательность |
Описание |
Возможные значения |
Значение по умолчанию |
|---|---|---|---|---|
|
Обязательный |
Путь к файлу схемы, с помощью которой происходит валидация |
Строковое значение |
— |
|
Опциональный |
Соотнесение схемы валидации xml-объекта и адрес, по которому был отправлен запрос. Регулярное выражение. При использовании символов |
Строковое значение |
— |
|
Опциональный |
Соотнесение схемы валидации xml-объекта и метод запроса |
|
— |
|
Опциональный |
Условие для вызова валидатора |
Параметры, описанные в разделе «validator_xsd - params» |
— |
|
Опциональный |
Преобразователь тела запроса для последующей валидации |
Последовательность: |
— |
|
Опциональный |
Флаг, включающий генерацию xsd-схемы на основе указанной в schema |
|
|
|
Опциональный |
Стиль wsdl документа, используемый по умолчанию, если в документе стиль явно не прописан |
|
|
validator_xsd - response#
Название |
Обязательность |
Описание |
Возможные значения |
Значение по умолчанию |
|---|---|---|---|---|
|
Обязательный |
Путь к файлу схемы для валидации ответа |
Строковое значение |
— |
|
Опциональный |
Соотнесение схемы валидации и адрес, по которому был отправлен запрос |
Строковое значение |
— |
|
Опциональный |
Соотнесение схемы валидации и метод запроса |
|
— |
|
Опциональный |
Условие для вызова валидатора |
Параметры, описанные в разделе «validator_xsd - params» |
— |
|
Опциональный |
Преобразователь тела ответа для последующей валидации |
Последовательность: |
— |
|
Опциональный |
Схема валидации применяется только для ответов, удовлетворяющих комбинации оператора и паттерна |
Параметры, описанные в разделе «validator_xsd - response_code» |
— |
|
Опциональный |
Флаг, включающий генерацию xsd-схемы на основе указанной в schema |
|
|
|
Опциональный |
Стиль wsdl документа, используемый по умолчанию, если в документе стиль явно не прописан |
|
|
validator_xsd - params#
Название |
Обязательность |
Описание |
Возможные значения |
Значение по умолчанию |
|---|---|---|---|---|
|
Обязательный |
Имя аргумента |
Текстовое значение |
— |
|
Обязательный |
Операция для аргумента |
|
— |
|
Обязательный |
Паттерн, применяемый к аргументу |
Текстовое значение |
— |
validator_xsd - response_code#
Название |
Обязательность |
Описание |
Возможные значения |
Значение по умолчанию |
|---|---|---|---|---|
|
Обязательный |
Операция для аргумента |
|
— |
|
Обязательный |
Паттерн, применяемый к статус коду ответа |
Текстовое значение |
— |
validator_xsd - limits#
Название |
Обязательность |
Описание |
Возможные значения |
Значение по умолчанию |
|---|---|---|---|---|
|
Опциональный |
Ограничение по количеству расширений сущностей |
Целочисленное значение |
|
|
Опциональный |
Ограничение по количеству атрибутов, которые может содержать элемент |
Целочисленное значение |
|
|
Опциональный |
Ограничение по числу узлов модели содержимого при построении грамматики для xml-схемы W3C с атрибутами maxOccurs, отличными от «неограниченного» |
Целочисленное значение |
|
|
Опциональный |
Ограничение по общему размеру всех сущностей (общих и параметрических) |
Целочисленное значение |
|
|
Опциональный |
Ограничение максимального размера любых общих объектов |
Целочисленное значение |
|
|
Опциональный |
Ограничение максимального размера любых параметрических объектов, включая результат вложения нескольких параметрических объектов |
Целочисленное значение |
|
|
Опциональный |
Ограничение по общему количеству узлов во всех ссылках сущности |
Целочисленное значение |
|
|
Опциональный |
Максимальная глубина элемента |
Целочисленное значение |
|
|
Опциональный |
Максимальный размер имен xml (имя элемента, имя атрибута, префикс пространства имен и uri) |
Целочисленное значение |
|
Пример использования xsd валидатора, с указанием расположения xsd схемы:
validators:
validator_xsd:
request:
- schema: xsd/soapenvelope.xsd
response:
- schema: xsd/soapenvelope.xsd
Пример использования xsd валидатора, с указанием расположения wsdl схемы:
validators:
validator_xsd:
request:
- schema: wsdl/schema_req.wsdl
wsdl: true
response:
- schema: wsdl/schema_resp.wsdl
wsdl: true
response_code:
operator: "!~"
pattern: "(?:500|502)"