Вы, ребята, можете выставить столько оговорок, сколько захотите.
Хотя переупорядочение атрибутов не имеет значения для программы, оно имеет значение для программиста / пользователя.
Для Фредрика было важно иметь порядок RGB, поскольку именно таков порядок цветов.
Для меня это, в частности, атрибут имени.
Сравнить
<field name="url" type="string" indexed="true" stored="true" required="true" multiValued="false"/> <!-- ID -->
<field name="forkortelse" type="string" indexed="true" stored="true" required="false" multiValued="false" />
<field name="kortform" type="text_general" indexed="true" stored="true" required="false" multiValued="false" />
<field name="dato" type="date" indexed="true" stored="true" required="false" multiValued="false" />
<field name="nummer" type="int" indexed="true" stored="true" required="false" multiValued="false" />
<field name="kilde" type="string" indexed="true" stored="true" required="false" multiValued="false" />
<field name="tittel" type="text_general" indexed="true" stored="true" multiValued="true"/>
Против
<field indexed="true" multiValued="false" name="forkortelse" required="false" stored="true" type="string"/>
<field indexed="true" multiValued="false" name="kortform" required="false" stored="true" type="text_general"/>
<field indexed="true" multiValued="false" name="dato" required="false" stored="true" type="date"/>
<field indexed="true" multiValued="false" name="nummer" required="false" stored="true" type="int"/>
<field indexed="true" multiValued="false" name="kilde" required="false" stored="true" type="string"/>
<field an_optional_attr="OMG!" an_optional_attr2="OMG!!" indexed="true" name="tittel" stored="true" type="text_general"/>
Хотя это не невозможно прочитать, это не так просто. Имя является важным атрибутом. Скрывать поле имени в обратном направлении не годится. Что, если имя было 15 атрибутами слева, где 7 из атрибутов впереди были необязательными?
Дело в том, что переупорядочение является более серьезной проблемой, чем то, что дает взамен возрастающий порядок. Это портит то, как программист думает или как функционал должен работать. По крайней мере, порядок должен быть настраиваемым / необязательным.
Извините, мой плохой английский. Это не мой основной язык.