Статус документа
Статус документа

ГОСТ Р ИСО/МЭК 8825-4-2009 Информационная технология (ИТ). Правила кодирования АСН.1. Часть 4. Правила XML кодирования (XER)

     16.7 Продукционные правила "ExtendedXMLSequenceOfValue" и "ExtendedXMLSetOfValue"

16.7.1 "ExtendedXMLSequenceOfValue" и "ExtendedXMLSetOfValue":

ExtendedXMLSequenceOfValue::=

ExtendedXMLValueList

| ExtendedXMLDelimitedltemList

| empty

| ExtendedXMLListValue

ExtendedXMLSetOfValue::=

ExtendedXMLValueList

| ExtendedXMLDelimitedltemList

| empty

| ExtendedXMLListValue

ExtendedXMLValueList::=

ExtendedXMLValueOrEmpty

| ExtendedXMLValueOrEmpty ExtendedXMLValueList

ExtendedXMLValueOrEmpty::=

ExtendedXMLValue

| "<" &TypeNameOrModifiedTypeName "/>"

ExtendedXMLDelimitedltemList::=

ExtendedXMLDelimitedltem

| ExtendedXMLDelimitedltem ExtendedXMLDelimitedltemList

ExtendedXMLDelimitedltem::=

"<" & TypeNameOrModifiedTypeName AttributeList ">"

ExtendedXMLValue

"</" & TypeNameOrModifiedTypeName ">"

|"<" & IdentifierOrModifiedldentifier AttributeList ">"

ExtendedXMLValue

"</" & IdentifierOrModifiedldentifier ">"

| ExtendedXMLValue

16.7.2 Использование альтернатив "ExtendedXMLSequenceOfValue", "ExtendedXMLSetOfValue" и "ExtendedXMLValueList" должно быть в соответствии с использованием альтернатив "XMLSequenceOfValue", "XMLSetOfValue" и "XMLValueList" (соответственно), как определено в ИСО/МЭК 8824-1, 25 и 27, исключение составляет случай, когда команда кодирования GLOBAL-DEFAULTS с ключевым словом MODIFIED-ENCODINGS присутствует, тогда "ExtendedXMLValueList" не должен использоваться (см. также 9.2.7 ж).

16.7.3 "ExtendedXMLListValue" определено в 26.3.2. Эти альтернативы "ExtendedXMLSequenceOfValue" и "ExtendedXMLSetOfValue" должны использоваться, только если есть окончательная команда кодирования LIST (см. раздел 26), примененная к типу последовательность-из или набор-из.

16.7.4 Первая альтернатива "ExtendedXMLDelimitedltem" должна использоваться, если и только если тип последовательность-из или набор-из не содержит "идентификатор", и компонент не имеет окончательной команды кодирования UNTAGGED.

16.7.4.1 Если компонент типа последовательность-из или набор-из есть "typereference" или "ExternalTypeReference" (возможно с одним или более "TypePrefix"), то "TypeNameOrModifiedTypeName" должен быть "typereference" или "typereference" в "ExternalTypeReference", соответственно, возможно измененный в соответствии с любыми окончательными командами кодирования NAME и NAMESPACE, примененными к компоненту (см. раздел 27).

16.7.4.2 Если компонент типа последовательность-из или набор-из (после игнорирования любых появлений "TypePrefix") не "typereference" или "ExternalTypeReference", то "TypeNameOrModifiedTypeName" должно быть "xmlasn1typename", определенное в ИСО/МЭК 8824-1, таблица 4, соответствующее встроенному типу компонента, возможно измененного в соответствии с любой окончательной командой кодирования NAMESPACE, примененной к компоненту (см. раздел 28).

16.7.5 Вторая альтернатива "ExtendedXMLDelimitedltem" должна использоваться, если и только если тип последовательность-из или набор-из содержит "идентификатор", и компонент не имеет окончательной команды кодирования UNTAGGED. "IdentifierOrModifiedldentifier" должен быть тем "идентификатором", возможно измененным в соответствии с любыми окончательными командами кодирования NAME и NAMESPACE, примененными к компоненту (см. разделы 27 и 28).

16.7.6 Третья альтернатива "ExtendedXMLDelimitedltem" должна использоваться, если и только если компонент типа последовательность-из или набор-из имеет окончательную команду кодирования UNTAGGED (см. раздел 31).

16.7.7 "ExtendedXMLValue" во всех альтернативах для "ExtendedXMLDelimitedltem" должен быть "ExtendedXMLValue" повторного компонента типа последовательность-из или набор-из.

16.7.8 "TypeNameOrModifiedTypeName" в "ExtendedXMLValueOrEmpty" должен быть "xmlasn1typename", определенным в ИСО/МЭК 8824-1, таблица 4, соответствующий встроенному типу компонента, возможно измененного в соответствии с любой окончательной командой кодирования NAMESPACE, примененной к компоненту (см. раздел 28).