mirror of
https://github.com/Nikolay-Shirokov/cc-1c-skills.git
synced 2026-07-26 22:51:03 +03:00
docs(xdto-dsl-spec): синхронизировать с правкой уплощения xs:choice
Спека описывала уплощение как «вложенный выбор варианта не сохраняется», не упоминая, что ветки теперь становятся необязательными — а это и есть суть правки: иначе «одно из двух» превращалось в «оба обязательны» и тип нельзя было заполнить. Заодно в таблицу аннотаций добавлен xdto:declareNs, который был реализован и описан в справочнике навыка, но в спеку не попал. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5
parent
817ae0fea7
commit
5fd952a796
@@ -117,6 +117,7 @@
|
||||
| `xdto:elementFormQualified`, `xdto:attributeFormQualified` | `xs:schema` | записать флаги явно |
|
||||
| `xdto:type` | `xs:enumeration` | `xsi:type` литерала перечисления |
|
||||
| `xdto:prefix` | объявление | осмысленный префикс пространства имён вместо генерируемого `dNpM` (например `dcsset`) |
|
||||
| `xdto:declareNs` | `xs:union` | объявить префикс пространства имён на узле (при нотации Кларка платформа иногда его пишет, иногда нет) |
|
||||
|
||||
### Что выводится само
|
||||
|
||||
@@ -181,7 +182,8 @@ XML Schema выразительнее модели XDTO. Перечисленн
|
||||
|
||||
| Конструкция | Что происходит |
|
||||
|---|---|
|
||||
| вложенные `xs:sequence` / `xs:choice` | уплощаются в плоский список свойств; вложенный выбор варианта не сохраняется |
|
||||
| вложенная `xs:sequence` | уплощается в плоский список свойств |
|
||||
| вложенная `xs:choice` | уплощается, и **ветки становятся необязательными**: иначе «одно из двух» превратилось бы в «оба обязательны» и тип нельзя было бы заполнить. Запрет «ровно один из» не сохраняется |
|
||||
| `xs:all` | трактуется как последовательность |
|
||||
| `minOccurs`/`maxOccurs` на самой частице | не выражается, отбрасывается |
|
||||
| `substitutionGroup` | объявление сохраняется как обычное |
|
||||
|
||||
Reference in New Issue
Block a user