язык: объявлена граница правила
- область правила — от его заголовка до следующего заголовка любого уровня; метка открывает блок, хвост после ПОЧЕМУ — продолжение обоснования, а таблица после модальной метки — часть нормы - проверка «заглавных модальных слов вне правил нет» стала реализуемой: прозой считается то, что лежит вне областей правил - нормы, сидевшие в хвостах, подняты в блок нормы: заведены SLOG-25.4 и GERR-26.3, у GTIM-12 «базовый слой» заменён на TIME-12
This commit is contained in:
+50
-3
@@ -92,6 +92,45 @@ version: 1
|
||||
принадлежат словарю набора: скелет правила читается одинаково в любом языке,
|
||||
на который канон переведён.
|
||||
|
||||
**Правило кончается перед следующим заголовком.** Область правила — от его
|
||||
заголовка до следующего заголовка любого уровня. Внутри области текст
|
||||
принадлежит последнему открытому блоку: метка блок открывает, и блок длится
|
||||
до следующей метки или до конца области.
|
||||
|
||||
```markdown
|
||||
### XKEY-3. Заголовок правила
|
||||
|
||||
**ДОЛЖЕН.** Норма одной фразой.
|
||||
|
||||
| № | ситуация | вердикт | ← блок нормы: таблица уточняет её
|
||||
|
||||
**ПОЧЕМУ.** Причина.
|
||||
|
||||
Продолжение причины, пример, ← блок обоснования продолжается
|
||||
ссылка на внешнюю практику.
|
||||
|
||||
### XKEY-4. Следующее правило ← здесь область кончилась
|
||||
```
|
||||
|
||||
Отсюда три следствия:
|
||||
|
||||
- **Хвост после ПОЧЕМУ — обоснование**, а не безымянная часть правила и не
|
||||
проза вокруг. Требований в нём не живёт: то, что подлежит исполнению, стоит
|
||||
в блоке нормы, где у него есть модальность и адрес. Требование, оставленное
|
||||
в хвосте, требованием не является — сослаться на него нельзя и отступление
|
||||
от него записать нельзя.
|
||||
- **Таблица и список после модальной метки — часть нормы.** Правило,
|
||||
классифицирующее ситуации, ровно так и записывается («Таблицы решений»), а
|
||||
вердикт из такой таблицы адресуется номером строки.
|
||||
- **Проза — это то, что лежит вне областей правил.** Тем самым проверка
|
||||
«заглавных модальных слов вне правил нет» становится реализуемой: границу
|
||||
считает разметка, а не читательское суждение о том, где правило кончилось.
|
||||
|
||||
Заглавное модальное слово внутри области правила законно, когда это
|
||||
упоминание ступени в обосновании («для СЛЕДУЕТ это честно»). Метку от
|
||||
упоминания отличает положение: метка стоит первой в своём абзаце, полужирным
|
||||
и с точкой.
|
||||
|
||||
## Обоснование обязательно
|
||||
|
||||
Правило без блока ПОЧЕМУ не принимается. Это требование к форме, а не
|
||||
@@ -378,6 +417,10 @@ Directives, Part 2, по одной форме записи на ступень,
|
||||
- **Локальная часть копии** — содержимое принадлежит репозиторию.
|
||||
- Вводная проза, объясняющая предмет конвенции.
|
||||
|
||||
Все четыре части лежат вне областей правил: до первого заголовка правила или
|
||||
после заголовка, которым область закрылась. Хвост обоснования сюда не
|
||||
относится — он внутри правила, и модальные слова в нём законны как упоминания.
|
||||
|
||||
## Как на правила ссылаются копии
|
||||
|
||||
Ниже маркера локальной части, в репозитории:
|
||||
@@ -416,8 +459,11 @@ MIGR-6 не соблюдается в легаси-таблицах `show_histor
|
||||
- ссылки вида `<ПРЕФИКС>-<n>` — хоть в тексте канона, хоть в локальной части
|
||||
копии — указывают на правила, которые ещё существуют;
|
||||
- префиксы локальных правил копии начинаются на `X`;
|
||||
- заглавные модальные слова не встречаются вне правил — кроме строки о
|
||||
версии языка, которая их перечисляет по назначению;
|
||||
- заглавные модальные слова не встречаются вне областей правил (область —
|
||||
от заголовка правила до следующего заголовка) — кроме строки о версии
|
||||
языка, которая их перечисляет по назначению;
|
||||
- модальная метка стоит первой в своём абзаце: заглавное слово в середине
|
||||
фразы — упоминание ступени, а не вторая норма правила;
|
||||
- префикс **чужой темы** не встречается в абзаце с модальностью (META-20);
|
||||
префикс арх-слоя своей темы там допустим (META-24), префикс другого языка
|
||||
или стека — нет;
|
||||
@@ -428,7 +474,8 @@ MIGR-6 не соблюдается в легаси-таблицах `show_histor
|
||||
- строки таблицы взаимоисключающи либо политика совпадения объявлена;
|
||||
- перечисленные в таблице случаи покрывают область действия;
|
||||
- норма исполнима без обращения к другим файлам;
|
||||
- обоснование отвечает на «что сломается», а не пересказывает норму.
|
||||
- обоснование отвечает на «что сломается», а не пересказывает норму;
|
||||
- хвост обоснования не вводит требований, которых нет в блоке нормы.
|
||||
|
||||
## Версия языка
|
||||
|
||||
|
||||
Reference in New Issue
Block a user