5.2.5. Формирование сообщений об ошибках

5.2.5. Формирование сообщений об ошибках

Сообщения об ошибках формируются в соответствии со спецификацией SOAP 1.2.

Сведения об ошибке передаются в теле транспортного конверта и должны быть единственным элементом.

ТАБЛИЦА 5.8. СТРУКТУРА СВЕДЕНИЙ ОБ ОШИБКЕ (SOAP:FAULT)

N
Элемент
Описание
Тип данных
Мн.
1
Код ошибки (soap:Code)
формализованные сведения о коде ошибки
определяется областями значений вложенных элементов
1
1.1
Значение (soap:Value)
значение класса ошибки
перечисление soap: faultCodeEnum в соответствии со спецификацией SOAP 1.2
1
1.2
Код ошибки (soap:Subcode)
сведения о коде ошибки в соответствии с ее классом
определяется областями значений вложенных элементов
1
1.2.1
Значение (soap:Value)
значение кода ошибки. Перечень типовых кодов ошибок представлен в таблице 5.9
строка символов
1
2
Причина (soap:Reason)
сведения об ошибке
определяется областями значений вложенных элементов
1..*
2.1
Текст (soap:Text)
текст, описывающий ошибку
строка символов
1
а)
Язык (@xml:lang)
идентификатор языка, на котором приведен текст, описывающий ошибку
1
3
Сведения об ошибке (soap:Detail)
дополнительные детализированные сведения об ошибке
определяется областями значений вложенных элементов
0..1

Элемент soap:Code/soap:Value заполняется согласно требованиям спецификации SOAP 1.2.

Перечень типовых кодов ошибок представлен в Таблице 5.9.

ТАБЛИЦА 5.9. ПЕРЕЧЕНЬ ТИПОВЫХ ОШИБОК

Класс ошибки
Код ошибки
Текст ошибки
soap:Sender
wsse:UnsupportedSecurityToken
рекомендуется использовать типовые коды ошибок, определенные стандартом WS-Security
soap:Sender
wsse:UnsupportedAlgorithm
soap:Sender
wsse:InvalidSecurity
soap:Sender
wsse:InvalidSecurityToken
soap:Sender
wsse:FailedAuthentication
soap:Sender
wsse:FailedCheck
soap:Sender
wsse:SecurityTokenUnavailable
soap:Sender
wsse:MessageExpired
soap:Sender
vr:InvalidSyntax
Синтаксис сообщения некорректен
soap:Sender
vr:InvalidStructure
Структура сообщения не соответствует XML-схеме
soap:Sender
vr:MessageRulesViolated
Сообщение не соответствует структурным правилам
soap:Sender
vr:BusinessRulesViolated
Сообщение не соответствует бизнес-правилам
soap:Sender
vr:MarketPracticeViolated
Сообщение не соответствует рыночной практике
soap:Sender
vr:BusinessProcessViolated
Сообщение не соответствует бизнес-процессу

В случае несоответствия сообщения правилам формирования (vr:MessageRulesViolated, vr:BusinessRulesViolated) в элемент soap:Fault/soap:Detail включаются элементы vr:Result, содержащие сведения о результатах валидации.

Для каждого провалидированного элемента и каждого правила формируется отдельный элемент vr:Result. Сведения об ошибках валидации (error) включаются в сообщение в обязательном порядке. В отладочных целях в сообщение об ошибке могут быть включены сведения об иных результатах валидации (valid, irrelevant, absent, unsupported).

ТАБЛИЦА 5.10. СТРУКТУРА СВЕДЕНИЙ О РЕЗУЛЬТАТАХ ВАЛИДАЦИИ

N
Элемент
Описание
Тип данных
Мн.
1
Результат валидации (vr:Result)
результат валидации
определяется областями значений вложенных элементов
1..*
1.1
Вид результата валидации (vr:Kind)
кодовое обозначение вида результата валидации
одно из следующих значений:
- valid - проверка пройдена успешно,
- error - ошибка,
- irrelevant - элементы
не проверялись, т.к. для них не выполнено предусловие,
- absent - элементы
для валидации отсутствуют в сообщении,
- unsupported - правило не поддерживается
1
1.2
Описание результата валидации (vr:Description)
описание результата валидации
строка символов
1
1.3
Код правила (vr:RuleCode)
код правила
строка символов
1
1.4
Описание правила (vr:RuleDescription)
описание правила
строка символов
1
1.5
Спецификация правила (vr:RuleOcl)
спецификация правила на формальном объектном языке ограничений (OCL)
строка символов
0..1
1.6
Элемент (vr: Element)
провалидированный элемент сообщения
определяется областями значений вложенных элементов
1..*
1.6.1
Путь (vr:Path)
путь к элементу сообщения, представленный в виде XPath выражения
строка символов
1
1.6.2
Описание (vr:Description)
описание пути к элементу на русском языке
строка символов
0..1