Changes between Initial Version and Version 1 of Ticket #620, comment 11


Ignore:
Timestamp:
Oct 6, 2023, 6:42:17 PM (14 months ago)
Author:
alx

Legend:

Unmodified
Added
Removed
Modified
  • Ticket #620, comment 11

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