colregs 0.2.4 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/PROVENANCE.md +3 -3
- package/README.md +11 -4
- package/data/corpora.json +41 -0
- package/data/editions.json +27 -0
- package/data/rules.json +171 -599
- package/data/text/intl/2016/en-US.uscg.json +877 -0
- package/data/text/intl/2016/es.boe.json +23 -0
- package/data/text/intl/2016/fi.finlex.json +22 -0
- package/data/text/us/inland/2014/en-US.ecfr.json +22 -0
- package/data/version.json +1 -1
- package/docs/adr/0001-name-and-jurisdiction-model.md +42 -2
- package/docs/adr/0003-language-as-a-dimension.md +8 -7
- package/docs/adr/0012-trace-and-rule2-departure-api.md +3 -4
- package/docs/adr/0013-corpus-files-with-editions.md +70 -0
- package/docs/budgets.json +13 -3
- package/docs/gates.json +3 -3
- package/docs/requirements.md +41 -29
- package/docs/timeline.md +102 -0
- package/docs/verification/2026-09-09-text-slug-straw-man.md +3 -2
- package/package.json +1 -1
- package/schema/corpora.schema.json +68 -0
- package/schema/corpus.schema.json +329 -0
- package/schema/editions.schema.json +47 -0
- package/schema/rules.schema.json +20 -90
package/PROVENANCE.md
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Everything in this package is transcribed or copied from US Government
|
|
4
4
|
publications. Nothing here is authoritative: consult the published rules.
|
|
5
5
|
|
|
6
|
-
## Rule text — `data/
|
|
6
|
+
## Rule text — `data/text/intl/2016/en-US.uscg.json`
|
|
7
7
|
|
|
8
8
|
- **Source:** USCG Navigation Center, *Navigation Rules, International —
|
|
9
9
|
Inland* (amalgamated), <https://www.navcen.uscg.gov/navigation-rules-amalgamated>
|
|
@@ -16,8 +16,8 @@ publications. Nothing here is authoritative: consult the published rules.
|
|
|
16
16
|
- **Rights:** a work of the US Government, not subject to copyright in the
|
|
17
17
|
United States (17 U.S.C. 105).
|
|
18
18
|
- **Known hole:** Rule 24(g)(i) is absent from the source page. Rather than
|
|
19
|
-
reconstruct it from memory,
|
|
20
|
-
|
|
19
|
+
reconstruct it from memory, the corpus records it under `gaps` and carries
|
|
20
|
+
no text for it; the skeleton still has the path. 24(g) covers inconspicuous, partly submerged tows and
|
|
21
21
|
is outside the applicability table in this release.
|
|
22
22
|
- **Withheld text is not a gap.** A `gaps` entry is a paragraph we could not
|
|
23
23
|
obtain. A paragraph with `text_status: withheld` is one we hold but may not
|
package/README.md
CHANGED
|
@@ -26,7 +26,10 @@ See a [live demo](https://mark-brannan.github.io/searoom/) of searoom and the co
|
|
|
26
26
|
> by the published rules.
|
|
27
27
|
|
|
28
28
|
```text
|
|
29
|
-
data/rules.json
|
|
29
|
+
data/rules.json the skeleton: paragraph paths, rule numbers, jurisdictions -- no text
|
|
30
|
+
data/editions.json which edition of which instrument each jurisdiction is on
|
|
31
|
+
data/text/ rule text, one corpus per edition x language x source
|
|
32
|
+
data/corpora.json index of those corpora and how much each covers
|
|
30
33
|
data/lights.json the six Rule 21 lights: colour, arc, Rule 22 range
|
|
31
34
|
data/facts.json the fact record, and how to decode SignalK navigation.state
|
|
32
35
|
data/applicability.json predicate -> lights, each entry also carrying modality, citation, jurisdiction
|
|
@@ -59,7 +62,10 @@ mooring buoy, lives only under `us/inland`
|
|
|
59
62
|
## The layers
|
|
60
63
|
|
|
61
64
|
**Rule text.** Verbatim, keyed by *paragraph path*, like `27(a)(i)`, because
|
|
62
|
-
the paragraph is the unit you actually cite.
|
|
65
|
+
the paragraph is the unit you actually cite. The paths live in a
|
|
66
|
+
language-neutral skeleton; the words live in corpora, one per edition,
|
|
67
|
+
language and source, each with its own provenance and legal tier. A mixed
|
|
68
|
+
rendering across corpora is never a single authoritative edition. Where a licence bars republishing
|
|
63
69
|
a jurisdiction's words, the paragraph is still modelled and its text withheld
|
|
64
70
|
rather than paraphrased — evaluation never reads the text.
|
|
65
71
|
|
|
@@ -89,8 +95,9 @@ identifier is immutable once published; retirements go through
|
|
|
89
95
|
|
|
90
96
|
Requirements-first: sessions work against the numbered requirements in
|
|
91
97
|
[`docs/requirements.md`](docs/requirements.md) and decisions live in
|
|
92
|
-
[`docs/adr/`](docs/adr/) rather than being argued again
|
|
93
|
-
|
|
98
|
+
[`docs/adr/`](docs/adr/) rather than being argued again; the amendment and
|
|
99
|
+
national-adoption history is in [`docs/timeline.md`](docs/timeline.md). Four
|
|
100
|
+
ideas carry most of it.
|
|
94
101
|
|
|
95
102
|
**The paragraph is the unit.** Rule text, citations and composition all key
|
|
96
103
|
on the paragraph path. Citation unit and composition unit turn out to be the
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
{
|
|
2
|
+
"note": "Index of the text corpora under data/text/, one entry per file; test/data.test.mjs regenerates it from the files and fails on drift -- REQ-LANG-5.",
|
|
3
|
+
"corpora": {
|
|
4
|
+
"intl@2016.en-US.uscg": {
|
|
5
|
+
"file": "text/intl/2016/en-US.uscg.json",
|
|
6
|
+
"edition": "intl@2016",
|
|
7
|
+
"edition_status": "verified",
|
|
8
|
+
"language": "en-US",
|
|
9
|
+
"source_id": "uscg",
|
|
10
|
+
"tier": "national",
|
|
11
|
+
"paragraphs": 212
|
|
12
|
+
},
|
|
13
|
+
"intl@2016.fi.finlex": {
|
|
14
|
+
"file": "text/intl/2016/fi.finlex.json",
|
|
15
|
+
"edition": "intl@2016",
|
|
16
|
+
"edition_status": "claimed",
|
|
17
|
+
"language": "fi",
|
|
18
|
+
"source_id": "finlex",
|
|
19
|
+
"tier": "national",
|
|
20
|
+
"paragraphs": 0
|
|
21
|
+
},
|
|
22
|
+
"intl@2016.es.boe": {
|
|
23
|
+
"file": "text/intl/2016/es.boe.json",
|
|
24
|
+
"edition": "intl@2016",
|
|
25
|
+
"edition_status": "claimed",
|
|
26
|
+
"language": "es",
|
|
27
|
+
"source_id": "boe",
|
|
28
|
+
"tier": "national",
|
|
29
|
+
"paragraphs": 0
|
|
30
|
+
},
|
|
31
|
+
"us/inland@2014.en-US.ecfr": {
|
|
32
|
+
"file": "text/us/inland/2014/en-US.ecfr.json",
|
|
33
|
+
"edition": "us/inland@2014",
|
|
34
|
+
"edition_status": "claimed",
|
|
35
|
+
"language": "en-US",
|
|
36
|
+
"source_id": "ecfr",
|
|
37
|
+
"tier": "national",
|
|
38
|
+
"paragraphs": 0
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
{
|
|
2
|
+
"note": "Registry of instruments and their editions, per jurisdiction. A corpus names the edition its text reflects; the skeleton names the one it consolidates -- REQ-LANG-10, ADR 0013.",
|
|
3
|
+
"jurisdictions": {
|
|
4
|
+
"intl": {
|
|
5
|
+
"instrument": "Convention on the International Regulations for Preventing Collisions at Sea, 1972 (COLREG)",
|
|
6
|
+
"skeleton": "intl@2016",
|
|
7
|
+
"editions": {
|
|
8
|
+
"intl@2016": {
|
|
9
|
+
"amended_through": "A.1085(28)",
|
|
10
|
+
"in_force": "2016-01-01",
|
|
11
|
+
"note": "2013 amendment (Part F) verified on imo.org; the resolution number and date are recalled, not yet verified against the resolution text -- REQ-LANG-10."
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
},
|
|
15
|
+
"us/inland": {
|
|
16
|
+
"instrument": "33 CFR Part 83, Inland Navigation Rules",
|
|
17
|
+
"skeleton": null,
|
|
18
|
+
"editions": {
|
|
19
|
+
"us/inland@2014": {
|
|
20
|
+
"amended_through": "79 FR 37898 (2014 final rule)",
|
|
21
|
+
"in_force": "2014-08-01",
|
|
22
|
+
"note": "Recalled, not verified; a stub edition so the second jurisdiction has one to name -- REQ-LANG-10."
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
}
|