5 | | Откуда SW-01 может быть уверена, что лежащий в "ненадлежащем" месте элемент `<mapper/>` содержит именно тот самый конфиг, который пользователь и хочет применить? Скорее уж наличие элемента в неожиданном месте могло бы говорить о том, что пользователь пытается импортировать ошибочный файл. |
6 | | |
7 | | Гипотетически, можно было бы на основании этого выдать ошибку. Но с другой стороны, наличие "неожиданного" элемента не обязательно говорит об ошибке, а может быть следствием того, что ПО SW-01, импортирующего файл, просто старее ПО, которое этот файл экспортировало, поэтому некоторые элементы, которые были записаны в файл, импортирующий код просто не знает. Язык XML как раз хорош своей гибкостью, позволяя пропускать (игнорировать) неизвестные ему элементы, чем обеспечивается обратная совместимость. Аналогично, отсутствующие в файле элементы не являются ошибкой для обеспечения прямой совместимости - то есть возможности импортировать файл, экспортированный ПО более старых версий, которые еще "не знали" о появившихся позже конфигурационных элементах... |
| 5 | Откуда SW-01 может быть уверена, что лежащий в "ненадлежащем" месте элемент `<mapper/>` содержит именно тот самый конфиг, который пользователь и хочет применить? Скорее уж наличие элемента в неожиданном месте могло бы говорить о том, что пользователь пытается импортировать ошибочный файл. Гипотетически, можно было бы на основании этого выдать ошибку. Но с другой стороны, наличие "неожиданного" элемента не обязательно говорит об ошибке, а может быть следствием того, что ПО SW-01, импортирующего файл, просто старее ПО, которое этот файл экспортировало, поэтому некоторые элементы, которые были записаны в файл, импортирующий код просто не знает. Язык XML как раз хорош своей гибкостью, позволяя пропускать (игнорировать) неизвестные ему элементы, чем обеспечивается обратная совместимость. Аналогично, отсутствующие в файле элементы не являются ошибкой для обеспечения прямой совместимости - то есть возможности импортировать файл, экспортированный ПО более старых версий, которые еще "не знали" о появившихся позже конфигурационных элементах... |