lawref.export
Экспорт сведений дела §168.5 (DECISION-0169 §1.2) — эталон export-case.
Поставщик ЯВНО называет записи; артефакт law.case-export/0.1 — каталог с
export.json и documents/<путь>:
source— пакет (имя, версия, namespace), дело,resolutionHashлока;records— выбранныеassertion-узлы дела как вcase.json, с явнымиid, в порядке дела (анонимныйassert—LDC-E1364: его ID зависит от provenance и при повторном понижении не сохраняется);bindings— ТРАНЗИТИВНОЕ замыкание констант дела, достижимых из записей:const_refв аргументах литерала, в объектеjudgment, вpayloadдокумента и вissuer; константа, ссылающаяся на константу, тянет и её. Недостающая привязка —LDC-E1364с перечнем, а не молчаливая ссылка на константу потребителя;evidence— документы из полейevidenceзаписей И документы, названныеfromотносящейся опоры (ребро тянет свой документ, даже если ни одна запись его не называет);supportEdges— рёбра, ОТНОСЯЩИЕСЯ к записи по таблице отбора §168.5: пара «пропозиция БЕЗ полярности + relation». Уassert Pэтоsupports Pиrefutes P; уassert not P— ТЕ ЖЕ рёбра, потому что §78.2.2 называет штатной опорой отрицанияrefutesс ПОЛОЖИТЕЛЬНЫМto. Отбор по равенству литералов терял бы опору всякого отрицательного утверждения;verifications— проверки этих документов;documents— вложения этих документов:uriиз payload, файл поставщика по локу видаdocument, копия в<out>/documents/<uri>, аpathперечня —documents/<uri>(путь внутри каталога снимка, §168.5);documentHashкаждого evidence сверяется с БАЙТАМИ вложения (§1.2, гейт Astra);contentHash— sha256 канонических байтовexport.jsonбез этого поля.
Замыкание, которое нельзя собрать (документ записи не объявлен, константа
не связана) — отказ LDC-E1364 с перечнем. Понижение дела — работа
компилятора (lawc lower-ask), вызывается из CLI; модуль принимает УЖЕ
пониженный документ дела и перечень анонимных утверждений.
Attributes
| Name | Description |
|---|---|
DOCUMENT_CODE | No description. |
EXPORT_CODE | No description. |
Functions
| Name | Description |
|---|---|
build | Артефакт без записи на диск и перечень вложений (uri, файл поставщика). |
closure | bindings, evidence, supportEdges, verifications по выбранным записям. |
select_records | Выбранные записи в порядке ДЕЛА. --record принимает StableId либо |
write | <out>/export.json каноническими байтами и <out>/documents/<uri>. |
DOCUMENT_CODEattributemodule attribute#
DOCUMENT_CODE = 'LDC-E8704'EXPORT_CODEattributemodule attribute#
EXPORT_CODE = 'LDC-E1364'buildfunction#
def build(root: Path, *, manifest: dict, lock: dict, case_name: str, case: dict, record_ids: list[str], anonymous: list[str]) -> tuple[dict, list[tuple[str, Path]]]Артефакт без записи на диск и перечень вложений (uri, файл поставщика).
closurefunction#
def closure(case: dict, records: list[dict]) -> tuple[dict, list[dict], list[dict], list[dict]]bindings, evidence, supportEdges, verifications по выбранным записям.
Опоры отбираются related_edges — по паре «пропозиция без полярности +
relation» (§78.2.2); документ, названный from относящейся опоры, входит
в замыкание, даже если ни одна запись не называет его в поле evidence;
константы замыкаются ТРАНЗИТИВНО, недостающая — LDC-E1364 с перечнем.
select_recordsfunction#
def select_records(case: dict, wanted: list[str], anonymous: list[str], namespace: str) -> list[dict]Выбранные записи в порядке ДЕЛА. --record принимает StableId либо
короткое имя (<namespace>#<имя>); анонимный — LDC-E1364.
writefunction#
def write(out: Path, artifact: dict, files: list[tuple[str, Path]]) -> Path<out>/export.json каноническими байтами и <out>/documents/<uri>.
Documentation for Arxo. Writings — blog.arxo.io.
Anonymous visit counts on stats.arxo.io, no cookies.