Цель - создать справку, которая зависит от контекста.
Контекст передавать через URI (это гипотеза, что такое возможно). Тут есть варианты, как именно в URI будут записываться "намёки".

Допустим, что мне надо справкой описать загрузчик байтов для разных условий.

Загрузчик байтов имеет исходник в виде дампа байтов.
Этот дамп-байтов имеет формат ELF-файла, по крайней мере ELF-заголовок.
Был где-то пример "teensy".
Но в любом случае этот заголовок должен соответствовать спецификации ELF-файла,
а значит мне нужно будет
- найти текст этой спецификации
- дать ссылки с байтов на текст спецификации
0x00; // потому что на странице N спецификации ELF написано, что...
Кроме того, программа должна соответствовать спецификации Linux ABI, потому что запускать я её собираюсь под Linux
значит надо найти текст спецификации про Linux ABI
и давать на него ссылки.
Код программы состоит из инструкций процессора Интел64, хотя мог бы быть и Арм64 (это из имеющегося у меня железа)
Поэтому надо иметь Reference по инструкциям процессора и ссылки на этот Reference
Текст, который загрузчик читает (коды цифр) соответствует кодировке Unicode
тут надо иметь ссылку на текст стандарта, его базу данных символов
Сам текст в байтах соответствует какому-то синтаксису (ну, наример байты с комментариями или без, по сколько в строке и т.п.)
пусть спецификация исходника байтов называется СИБ-2023

Так вот, эти "намёки" могут располагаться в разном порядке. Можно их все упорядочить по алфавиту:
Арм64, Интел64, КОФФ, КРЯ-8, Линукс, РеактОС, СИБ-2023, УПС-8, УТКА, ЭЛЬФ, Юникод.

а URI потом отсортировать, чтобы получить какой-то стабильный вариант и URI и списка.
Тогда канонизированный список будет выглядеть так:

/Арм64/Линукс/СИБ-2023/УПС-8/ЭЛЬФ/Юникод (2)
/Арм64/Линукс/КРЯ-8/СИБ-2023/УТКА/ЭЛЬФ
/Интел64/КОФФ/РеактОС/СИБ-2023/УПС-8/Юникод
/Интел64/Линукс/СИБ-2023/УПС-8/ЭЛЬФ/Юникод (1)
/Интел64/КРЯ-8/Линукс/СИБ-2023/УТКА/ЭЛЬФ

Цифрами в круглых скобках тут помечены те, которые я реально хотел бы сделать,
а остальные - гипотетически возможны.

Есть ещё смутное желание добавить в намёки обобщения впереди через какой-нибудь разделитель,
что-то вроде "операционка_Линукс", "операционка_РеактОС". Но пока не определился, нужно ли это и как сделать лучше.

Такой URI станет длинным, значит надо будет помогать его формировать через удобный пользовательский интерфейс.

Ранее по теме:
Альтернатива заданию контекста через URI

Отредактировано Лис (2023-03-04 07:00:35)