@oimlsmart/primmel-packages 0.14.0 → 0.16.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/oiml-r129/model/application.prl +37 -0
- package/oiml-r129/model/promises.prl +97 -0
- package/oiml-r144/model/application.prl +78 -0
- package/oiml-r144/model/promises.prl +118 -0
- package/oiml-r60/model/application.prl +78 -0
- package/oiml-r60/model/promises.prl +220 -0
- package/oiml-r91/model/application.prl +168 -0
- package/oiml-r91/model/promises.prl +150 -0
- package/package.json +2 -2
- package/oiml-r129/payload/application.yaml +0 -40
- package/oiml-r129/payload/promises.yaml +0 -102
- package/oiml-r144/payload/application.yaml +0 -80
- package/oiml-r144/payload/promises.yaml +0 -118
- package/oiml-r60/payload/application.yaml +0 -83
- package/oiml-r60/payload/promises.yaml +0 -224
- package/oiml-r91/payload/application.yaml +0 -201
- package/oiml-r91/payload/promises.yaml +0 -142
|
@@ -0,0 +1,168 @@
|
|
|
1
|
+
# OIML R 91 — the application declaration (TODO.application/02): the
|
|
2
|
+
# applicant-facing register — the application-documentation checklist
|
|
3
|
+
# (R 91-1:2025, 8.1.1 items a–q: the metrological characteristics, the
|
|
4
|
+
# technical/electronic specifications, the functional description, the
|
|
5
|
+
# checking facilities, drawings/diagrams/photos, interfaces,
|
|
6
|
+
# installation requirements, self-checking mechanisms, the security
|
|
7
|
+
# sealing plan, software + data security, the panel layout, software
|
|
8
|
+
# information, the operating manual, compliance evidence, the D 31
|
|
9
|
+
# software documentation, an evidence-file sample, and the measuring
|
|
10
|
+
# principles). R 91 declares no applicant declaration form today —
|
|
11
|
+
# the wizard renders the derived attribute grid as the honest
|
|
12
|
+
# fallback. The checklist derives from this register, never from
|
|
13
|
+
# literals (browser/src/services/application.service.ts).
|
|
14
|
+
application_declaration application {
|
|
15
|
+
document metrological-characteristics {
|
|
16
|
+
name "Metrological characteristics"
|
|
17
|
+
description "The metrological characteristics of the speed meter, including a statement about durability (R 91-1, 8.1.1 a)."
|
|
18
|
+
obligation shall
|
|
19
|
+
source {
|
|
20
|
+
doc "urn:oiml:pub:r:91-1:2025"
|
|
21
|
+
clause "8.1.1"
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
document technical-specifications {
|
|
25
|
+
name "Technical and electronic specifications"
|
|
26
|
+
description "The technical and electronic specifications of the speed meter (R 91-1, 8.1.1 b)."
|
|
27
|
+
obligation shall
|
|
28
|
+
source {
|
|
29
|
+
doc "urn:oiml:pub:r:91-1:2025"
|
|
30
|
+
clause "8.1.1"
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
document functional-description {
|
|
34
|
+
name "Functional description"
|
|
35
|
+
description "Functional description of the speed meter including its subassemblies and components (R 91-1, 8.1.1 c)."
|
|
36
|
+
obligation shall
|
|
37
|
+
source {
|
|
38
|
+
doc "urn:oiml:pub:r:91-1:2025"
|
|
39
|
+
clause "8.1.1"
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
document checking-facilities {
|
|
43
|
+
name "Checking facilities description"
|
|
44
|
+
description "Description of the checking facilities (R 91-1, 8.1.1 d; see 6.9 and 7.5)."
|
|
45
|
+
obligation shall
|
|
46
|
+
source {
|
|
47
|
+
doc "urn:oiml:pub:r:91-1:2025"
|
|
48
|
+
clause "8.1.1"
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
document drawings-diagrams-photos {
|
|
52
|
+
name "Drawings, diagrams and photos"
|
|
53
|
+
description "Drawings, diagrams and photos of the speed meter explaining its construction and operation (R 91-1, 8.1.1 e)."
|
|
54
|
+
obligation shall
|
|
55
|
+
source {
|
|
56
|
+
doc "urn:oiml:pub:r:91-1:2025"
|
|
57
|
+
clause "8.1.1"
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
document interfaces-list {
|
|
61
|
+
name "List of interfaces"
|
|
62
|
+
description "A list of interfaces specifying types, intended use and immunity to external influences (R 91-1, 8.1.1 f)."
|
|
63
|
+
obligation shall
|
|
64
|
+
source {
|
|
65
|
+
doc "urn:oiml:pub:r:91-1:2025"
|
|
66
|
+
clause "8.1.1"
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
document installation-requirements {
|
|
70
|
+
name "Installation requirements and instructions"
|
|
71
|
+
description "The installation requirements and instructions (R 91-1, 8.1.1 g)."
|
|
72
|
+
obligation shall
|
|
73
|
+
source {
|
|
74
|
+
doc "urn:oiml:pub:r:91-1:2025"
|
|
75
|
+
clause "8.1.1"
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
document self-checking-mechanisms {
|
|
79
|
+
name "Self-checking mechanisms"
|
|
80
|
+
description "Description and application of the self-checking mechanisms (R 91-1, 8.1.1 h)."
|
|
81
|
+
obligation shall
|
|
82
|
+
source {
|
|
83
|
+
doc "urn:oiml:pub:r:91-1:2025"
|
|
84
|
+
clause "8.1.1"
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
document sealing-plan {
|
|
88
|
+
name "Security sealing plan"
|
|
89
|
+
description "The security sealing plan, including drawings or photos (R 91-1, 8.1.1 i)."
|
|
90
|
+
obligation shall
|
|
91
|
+
source {
|
|
92
|
+
doc "urn:oiml:pub:r:91-1:2025"
|
|
93
|
+
clause "8.1.1"
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
document software-security {
|
|
97
|
+
name "Security measures for software and data"
|
|
98
|
+
description "Security measures for the protection of software, settings and measurement data (R 91-1, 8.1.1 j)."
|
|
99
|
+
obligation shall
|
|
100
|
+
source {
|
|
101
|
+
doc "urn:oiml:pub:r:91-1:2025"
|
|
102
|
+
clause "8.1.1"
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
document panel-layout {
|
|
106
|
+
name "Panel layout"
|
|
107
|
+
description "The panel layout (user interface) (R 91-1, 8.1.1 k)."
|
|
108
|
+
obligation shall
|
|
109
|
+
source {
|
|
110
|
+
doc "urn:oiml:pub:r:91-1:2025"
|
|
111
|
+
clause "8.1.1"
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
document software-information {
|
|
115
|
+
name "General software information"
|
|
116
|
+
description "General information on the software, covering in particular the requirements in R 91-1, 7.10 (R 91-1, 8.1.1 l)."
|
|
117
|
+
obligation shall
|
|
118
|
+
source {
|
|
119
|
+
doc "urn:oiml:pub:r:91-1:2025"
|
|
120
|
+
clause "8.1.1"
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
document operating-manual {
|
|
124
|
+
name "Operating instructions and manual"
|
|
125
|
+
description "The operating instructions and operating manual to be provided to the user (R 91-1, 8.1.1 m)."
|
|
126
|
+
obligation shall
|
|
127
|
+
source {
|
|
128
|
+
doc "urn:oiml:pub:r:91-1:2025"
|
|
129
|
+
clause "8.1.1"
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
document compliance-evidence {
|
|
133
|
+
name "Compliance evidence"
|
|
134
|
+
description "Documents or other evidence supporting the assumption that the design and characteristics of the measuring instrument comply with the requirements of the Recommendation (R 91-1, 8.1.1 n)."
|
|
135
|
+
obligation shall
|
|
136
|
+
source {
|
|
137
|
+
doc "urn:oiml:pub:r:91-1:2025"
|
|
138
|
+
clause "8.1.1"
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
document d31-documentation {
|
|
142
|
+
name "Software documentation (D 31)"
|
|
143
|
+
description "The documentation requested in OIML D 31, 7.1 (R 91-1, 8.1.1 o)."
|
|
144
|
+
obligation shall
|
|
145
|
+
source {
|
|
146
|
+
doc "urn:oiml:pub:r:91-1:2025"
|
|
147
|
+
clause "8.1.1"
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
document evidence-file-sample {
|
|
151
|
+
name "Sample of a recorded event (evidence file)"
|
|
152
|
+
description "A sample of a recorded event (evidence file) (R 91-1, 8.1.1 p)."
|
|
153
|
+
obligation shall
|
|
154
|
+
source {
|
|
155
|
+
doc "urn:oiml:pub:r:91-1:2025"
|
|
156
|
+
clause "8.1.1"
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
document measuring-principles {
|
|
160
|
+
name "Description of measuring principles"
|
|
161
|
+
description "Description of the measuring principles or algorithms and how speed values for indication are obtained, including the mathematical operation used to obtain integer speed values from high-resolution values (R 91-1, 8.1.1 q)."
|
|
162
|
+
obligation shall
|
|
163
|
+
source {
|
|
164
|
+
doc "urn:oiml:pub:r:91-1:2025"
|
|
165
|
+
clause "8.1.1"
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
}
|
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
# OIML R 91 — the manufacturer promise register (TODO.model-content/03):
|
|
2
|
+
# claims on characteristics and behavior that evaluation verifies and the
|
|
3
|
+
# certificate prints as promises-as-verified (the same doctrine as R 60's
|
|
4
|
+
# set — 02-subjects.md §2.3; 15-model-supply-chain.md §15.2). The
|
|
5
|
+
# certificate's characteristic list GENERATES from this set
|
|
6
|
+
# (browser/src/services/certificate.service.ts certificateCharacteristics()).
|
|
7
|
+
#
|
|
8
|
+
# PROVENANCE (the content-provenance rule): every promise cites the clause
|
|
9
|
+
# its claimed characteristic is defined at (R 91-1:2025 — the clause the
|
|
10
|
+
# model's own attribute/dimension declaration carries). R 91-1, 6.15.1
|
|
11
|
+
# makes the metrological class a MANDATORY certificate indication ("The
|
|
12
|
+
# OIML certificate shall indicate the class of the instrument"); the
|
|
13
|
+
# remaining rows print when available (obligation: optional). Composite
|
|
14
|
+
# interval rows bind their boundary attribute pair (`attributes`) and
|
|
15
|
+
# target the quantity/behavior the interval bounds (R 60's
|
|
16
|
+
# temperature_range pattern).
|
|
17
|
+
promise_set SpeedMeter {
|
|
18
|
+
promise metrological_class {
|
|
19
|
+
target metrological_class
|
|
20
|
+
statement "The type holds its declared metrological class (A or B) for moving measurements."
|
|
21
|
+
source { doc "urn:oiml:pub:r:91-1:2025" clause "6.15.1" }
|
|
22
|
+
certificate {
|
|
23
|
+
dimension metrological_class
|
|
24
|
+
type string
|
|
25
|
+
label "Metrological class for moving measurements (R 91-1, 6.15.1)"
|
|
26
|
+
obligation mandatory
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
promise mode_of_use {
|
|
30
|
+
target mode_of_use
|
|
31
|
+
statement "The type operates in its declared mode of use (stationary / moving)."
|
|
32
|
+
source { doc "urn:oiml:pub:r:91-1:2025" clause "5.1" }
|
|
33
|
+
certificate {
|
|
34
|
+
dimension mode_of_use
|
|
35
|
+
type string
|
|
36
|
+
label "Mode of use (stationary / moving)"
|
|
37
|
+
obligation optional
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
promise working_principle {
|
|
41
|
+
target working_principle
|
|
42
|
+
statement "The type measures speed by its declared working principle."
|
|
43
|
+
source { doc "urn:oiml:pub:r:91-1:2025" clause "5.3" }
|
|
44
|
+
certificate {
|
|
45
|
+
dimension working_principle
|
|
46
|
+
type string
|
|
47
|
+
label "Working principle"
|
|
48
|
+
obligation optional
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
promise installation_principle {
|
|
52
|
+
target installation_principle
|
|
53
|
+
statement "The type installs by its declared principle (mobile / fixed / portable)."
|
|
54
|
+
source { doc "urn:oiml:pub:r:91-1:2025" clause "5.2" }
|
|
55
|
+
certificate {
|
|
56
|
+
dimension installation_principle
|
|
57
|
+
type string
|
|
58
|
+
label "Installation (mobile / fixed / portable)"
|
|
59
|
+
obligation optional
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
promise triggering {
|
|
63
|
+
target triggering
|
|
64
|
+
statement "The type triggers its measurements as declared (manual / automatic)."
|
|
65
|
+
source { doc "urn:oiml:pub:r:91-1:2025" clause "5.4" }
|
|
66
|
+
certificate {
|
|
67
|
+
dimension triggering
|
|
68
|
+
type string
|
|
69
|
+
label "Triggering (manual / automatic)"
|
|
70
|
+
obligation optional
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
promise cosine_compensation {
|
|
74
|
+
target cosine_compensation
|
|
75
|
+
statement "The type compensates the cosine error for its declared road orientation (along- / across-the-road)."
|
|
76
|
+
source { doc "urn:oiml:pub:r:91-1:2025" clause "5.5" }
|
|
77
|
+
certificate {
|
|
78
|
+
dimension cosine_compensation
|
|
79
|
+
type string
|
|
80
|
+
label "Road orientation (along- / across-the-road)"
|
|
81
|
+
obligation optional
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
promise speed_interval {
|
|
85
|
+
target v
|
|
86
|
+
statement "The speed measuring interval the type is certified over (km/h)."
|
|
87
|
+
source { doc "urn:oiml:pub:r:91-1:2025" clause "6.1" }
|
|
88
|
+
certificate {
|
|
89
|
+
attributes { speed_interval_min speed_interval_max }
|
|
90
|
+
type string
|
|
91
|
+
label "Speed measuring interval (km/h)"
|
|
92
|
+
obligation optional
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
promise distance_interval {
|
|
96
|
+
target d
|
|
97
|
+
statement "The distance measuring interval the type is certified over (m)."
|
|
98
|
+
source { doc "urn:oiml:pub:r:91-1:2025" clause "6.17" }
|
|
99
|
+
certificate {
|
|
100
|
+
attributes { distance_interval_min distance_interval_max }
|
|
101
|
+
type string
|
|
102
|
+
label "Distance measuring interval (m)"
|
|
103
|
+
obligation optional
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
promise angle_interval {
|
|
107
|
+
target alpha
|
|
108
|
+
statement "The measurement angle interval the type is certified over (°)."
|
|
109
|
+
source { doc "urn:oiml:pub:r:91-1:2025" clause "6.17" }
|
|
110
|
+
certificate {
|
|
111
|
+
attributes { angle_interval_min angle_interval_max }
|
|
112
|
+
type string
|
|
113
|
+
label "Angle interval (°)"
|
|
114
|
+
obligation optional
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
promise operating_temp_range {
|
|
118
|
+
target temperature-effect
|
|
119
|
+
statement "The type holds its metrological performance across the rated operating temperature range (T_min…T_max)."
|
|
120
|
+
source { doc "urn:oiml:pub:r:91-1:2025" clause "6.16" }
|
|
121
|
+
certificate {
|
|
122
|
+
attributes { operating_temp_min operating_temp_max }
|
|
123
|
+
type string
|
|
124
|
+
label "Rated temperature range (°C)"
|
|
125
|
+
obligation optional
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
promise supply_voltage {
|
|
129
|
+
target supply_voltage_dc
|
|
130
|
+
statement "The DC supply voltage rating the type operates at."
|
|
131
|
+
source { doc "urn:oiml:pub:r:91-1:2025" clause "6.16" }
|
|
132
|
+
certificate {
|
|
133
|
+
attribute supply_voltage_dc
|
|
134
|
+
type string
|
|
135
|
+
label "Supply voltage (V)"
|
|
136
|
+
obligation optional
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
promise software_version {
|
|
140
|
+
target software_version
|
|
141
|
+
statement "The certificate identifies the type's legally relevant software by its declared version."
|
|
142
|
+
source { doc "urn:oiml:pub:r:91-1:2025" clause "7.10.1" }
|
|
143
|
+
certificate {
|
|
144
|
+
attribute software_version
|
|
145
|
+
type string
|
|
146
|
+
label "Legally relevant software identification (R 91-1, 7.10.1; R 91-4 identification block)"
|
|
147
|
+
obligation optional
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@oimlsmart/primmel-packages",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.16.0",
|
|
4
4
|
"description": "The OIML SMART platform's authoritative model content: every Recommendation, the OIML-CS scheme, the CASCO foundations, the shared modules, and the product/program reference packages as Primmel (.prl) packages — the single source of truth the platform's data trees regenerate from. Consumed by the smart monorepo (oimlsmart/smart) at a pinned version (TODO.repos/02).",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"repository": {
|
|
@@ -12,6 +12,6 @@
|
|
|
12
12
|
},
|
|
13
13
|
"license": "MIT",
|
|
14
14
|
"devDependencies": {
|
|
15
|
-
"@primmel/primmel": "^1.17.
|
|
15
|
+
"@primmel/primmel": "^1.17.1"
|
|
16
16
|
}
|
|
17
17
|
}
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
# GENERATED package payload (task 31b) — content with no PRL construct; composed back by regenerate-data + build-primmel-cache. Do not edit by hand.
|
|
2
|
-
application:
|
|
3
|
-
documentation:
|
|
4
|
-
- id: technical-documentation
|
|
5
|
-
name:
|
|
6
|
-
- spelling: eng-Latn
|
|
7
|
-
value: Technical documentation
|
|
8
|
-
description:
|
|
9
|
-
- spelling: eng-Latn
|
|
10
|
-
value: >-
|
|
11
|
-
The technical documentation of the instrument — drawings, specifications, photographs and descriptions
|
|
12
|
-
sufficient to understand its construction and method of operation (R 129-2, 1.2).
|
|
13
|
-
obligation: shall
|
|
14
|
-
source:
|
|
15
|
-
doc: urn:oiml:pub:r:129-2:2020
|
|
16
|
-
clause: '1.2'
|
|
17
|
-
- id: measurement-data
|
|
18
|
-
name:
|
|
19
|
-
- spelling: eng-Latn
|
|
20
|
-
value: Measurement data details and calculation methods
|
|
21
|
-
description:
|
|
22
|
-
- spelling: eng-Latn
|
|
23
|
-
value: The details of the measurement data and the calculation methods the instrument applies (R 129-2, 1.2).
|
|
24
|
-
obligation: shall
|
|
25
|
-
source:
|
|
26
|
-
doc: urn:oiml:pub:r:129-2:2020
|
|
27
|
-
clause: '1.2'
|
|
28
|
-
- id: software-documentation
|
|
29
|
-
name:
|
|
30
|
-
- spelling: eng-Latn
|
|
31
|
-
value: Software documentation
|
|
32
|
-
description:
|
|
33
|
-
- spelling: eng-Latn
|
|
34
|
-
value: >-
|
|
35
|
-
Documentation of the legally relevant software, sufficient for a reasonable evaluation (R 129-2, 1.2.2 and
|
|
36
|
-
1.1.2).
|
|
37
|
-
obligation: may
|
|
38
|
-
source:
|
|
39
|
-
doc: urn:oiml:pub:r:129-2:2020
|
|
40
|
-
clause: 1.2.2
|
|
@@ -1,102 +0,0 @@
|
|
|
1
|
-
# OIML R 129 — MODEL LAYER: PROMISES (TODO.model-content/03)
|
|
2
|
-
# -----------------------------------------------------------------------------
|
|
3
|
-
# First-class manufacturer PROMISES for multi-dimensional measuring
|
|
4
|
-
# instruments: claims on characteristics and behavior that evaluation
|
|
5
|
-
# verifies and the certificate prints as promises-as-verified (the same
|
|
6
|
-
# doctrine as R 60's set — primmel-oiml-smart/docs/primmel/02-subjects.md
|
|
7
|
-
# §2.3; 15-model-supply-chain.md §15.2). R 129 had NO promise set before
|
|
8
|
-
# this wave — this register is authored from scratch, its certificate print
|
|
9
|
-
# rows carrying the surface the hand-maintained characteristics_template of
|
|
10
|
-
# evaluation/certificate-template.yaml formerly restated (which keeps only
|
|
11
|
-
# number_format and dimension_labels). The certificate's characteristic
|
|
12
|
-
# list is GENERATED from this promise set (browser/src/services/
|
|
13
|
-
# certificate.service.ts certificateCharacteristics()).
|
|
14
|
-
#
|
|
15
|
-
# PACKAGE HOME: this file is the package payload `payload/promises.yaml` —
|
|
16
|
-
# the promise set is AUTHORED here, in the package, and regenerate-data
|
|
17
|
-
# emits data/r129/model/promises.yaml VERBATIM (the generated fileHeader +
|
|
18
|
-
# these raw bytes; the documented codec exclusion, same class as
|
|
19
|
-
# payload/sample-data.yaml). The kernel's SubjectPromise carries no
|
|
20
|
-
# certificate print-projection field yet — the projection's first-class PRL
|
|
21
|
-
# home is the recorded primmel-ts kernel-minor follow-up; when it ships,
|
|
22
|
-
# this payload migrates to `promises.prl` and the promise CONTENT rides
|
|
23
|
-
# over unchanged.
|
|
24
|
-
#
|
|
25
|
-
# PROVENANCE (the content-provenance rule): every promise cites the clause
|
|
26
|
-
# its claimed characteristic is defined at (the clause the model's own
|
|
27
|
-
# attribute/dimension declaration carries): the classification at R 129-2,
|
|
28
|
-
# Annex A (measurement principle) and R 129-1, 2.1 (instrument category),
|
|
29
|
-
# the dimension/scale-interval quantities at R 129-1, 2.2.5 / 2.2.6 /
|
|
30
|
-
# 2.2.9, the rated temperature conditions at R 129-1, 4.2.1, and the
|
|
31
|
-
# measuring-speed bounds at R 129-1, 2.1.10 / 2.1.11. No R 129 clause makes
|
|
32
|
-
# a certificate indication mandatory, so every row prints when available
|
|
33
|
-
# (obligation: optional). Composite range rows bind their boundary
|
|
34
|
-
# attribute pair (`certificate.attributes`) and target the response
|
|
35
|
-
# behavior the range conditions (R 60's temperature_range pattern — the
|
|
36
|
-
# composite row targets the concept, never one boundary).
|
|
37
|
-
#
|
|
38
|
-
# Schema: data/schemas/model.yaml ($defs/promise).
|
|
39
|
-
---
|
|
40
|
-
promises:
|
|
41
|
-
|
|
42
|
-
# ── Classification (R 129-2, Annex A / R 129-1, 2.1) ─────────────────
|
|
43
|
-
|
|
44
|
-
- id: measurement_principle
|
|
45
|
-
target: measurement_principle # classification dimension (model/instrument.yaml)
|
|
46
|
-
statement:
|
|
47
|
-
- spelling: eng-Latn
|
|
48
|
-
value: "The measurement principle the instrument measures dimensions by."
|
|
49
|
-
source: { doc: urn:oiml:pub:r:129-2:2020, clause: "A" }
|
|
50
|
-
certificate: { dimension: measurement_principle, type: string, label: [{spelling: eng-Latn, value: "Measurement principle"}], obligation: optional }
|
|
51
|
-
|
|
52
|
-
- id: instrument_category
|
|
53
|
-
target: instrument_category
|
|
54
|
-
statement:
|
|
55
|
-
- spelling: eng-Latn
|
|
56
|
-
value: "The instrument's declared category (automatic / semi-automatic)."
|
|
57
|
-
source: { doc: urn:oiml:pub:r:129-1:2020, clause: "2.1" }
|
|
58
|
-
certificate: { dimension: instrument_category, type: string, label: [{spelling: eng-Latn, value: "Instrument category"}], obligation: optional }
|
|
59
|
-
|
|
60
|
-
# ── Measuring-range definition quantities (R 129-1, 2.2.5–2.2.9) ─────
|
|
61
|
-
|
|
62
|
-
- id: max_dimension
|
|
63
|
-
target: max_dimension
|
|
64
|
-
statement:
|
|
65
|
-
- spelling: eng-Latn
|
|
66
|
-
value: "Maximum dimension per axis the instrument measures up to."
|
|
67
|
-
source: { doc: urn:oiml:pub:r:129-1:2020, clause: "2.2.5" }
|
|
68
|
-
certificate: { attribute: max_dimension, type: string, label: [{spelling: eng-Latn, value: "Max dimension per axis"}], obligation: optional }
|
|
69
|
-
|
|
70
|
-
- id: min_dimension
|
|
71
|
-
target: min_dimension
|
|
72
|
-
statement:
|
|
73
|
-
- spelling: eng-Latn
|
|
74
|
-
value: "Minimum dimension per axis the instrument measures down to."
|
|
75
|
-
source: { doc: urn:oiml:pub:r:129-1:2020, clause: "2.2.6" }
|
|
76
|
-
certificate: { attribute: min_dimension, type: string, label: [{spelling: eng-Latn, value: "Min dimension per axis"}], obligation: optional }
|
|
77
|
-
|
|
78
|
-
- id: scale_interval
|
|
79
|
-
target: scale_interval
|
|
80
|
-
statement:
|
|
81
|
-
- spelling: eng-Latn
|
|
82
|
-
value: "Scale interval (d) of the instrument's indications."
|
|
83
|
-
source: { doc: urn:oiml:pub:r:129-1:2020, clause: "2.2.9" }
|
|
84
|
-
certificate: { attribute: scale_interval, type: string, label: [{spelling: eng-Latn, value: "Scale interval (d)"}], obligation: optional }
|
|
85
|
-
|
|
86
|
-
# ── Rated operating conditions (R 129-1, 4.2.1 / 2.1.10–2.1.11) ──────
|
|
87
|
-
|
|
88
|
-
- id: temperature_range
|
|
89
|
-
target: temperature-response # behaviors.yaml — the temperature influence response
|
|
90
|
-
statement:
|
|
91
|
-
- spelling: eng-Latn
|
|
92
|
-
value: "The type holds its metrological performance across the rated temperature range."
|
|
93
|
-
source: { doc: urn:oiml:pub:r:129-1:2020, clause: "4.2.1" }
|
|
94
|
-
certificate: { attributes: [temperature_min, temperature_max], type: string, label: [{spelling: eng-Latn, value: "Temperature range"}], obligation: optional }
|
|
95
|
-
|
|
96
|
-
- id: speed_range
|
|
97
|
-
target: speed-response # behaviors.yaml — the measuring-speed response
|
|
98
|
-
statement:
|
|
99
|
-
- spelling: eng-Latn
|
|
100
|
-
value: "The measuring speed range the conveyor runs within (V_min…V_max)."
|
|
101
|
-
source: { doc: urn:oiml:pub:r:129-1:2020, clause: "2.1.10" }
|
|
102
|
-
certificate: { attributes: [speed_min, speed_max], type: string, label: [{spelling: eng-Latn, value: "Measuring speed range"}], obligation: optional }
|
|
@@ -1,80 +0,0 @@
|
|
|
1
|
-
# GENERATED package payload (task 31b) — content with no PRL construct; composed back by regenerate-data + build-primmel-cache. Do not edit by hand.
|
|
2
|
-
application:
|
|
3
|
-
documentation:
|
|
4
|
-
- id: measurement-principle
|
|
5
|
-
name:
|
|
6
|
-
- spelling: eng-Latn
|
|
7
|
-
value: Description of the general principle of measurement
|
|
8
|
-
description:
|
|
9
|
-
- spelling: eng-Latn
|
|
10
|
-
value: A description of the gas analytical system's general principle of measurement (R 144-1, 7.1.1 a).
|
|
11
|
-
obligation: shall
|
|
12
|
-
source:
|
|
13
|
-
doc: urn:oiml:pub:r:144-1:2013
|
|
14
|
-
clause: 7.1.1
|
|
15
|
-
- id: essential-components-list
|
|
16
|
-
name:
|
|
17
|
-
- spelling: eng-Latn
|
|
18
|
-
value: Essential components list
|
|
19
|
-
description:
|
|
20
|
-
- spelling: eng-Latn
|
|
21
|
-
value: A list of the system's essential components with their characteristics (R 144-1, 7.1.1 b).
|
|
22
|
-
obligation: shall
|
|
23
|
-
source:
|
|
24
|
-
doc: urn:oiml:pub:r:144-1:2013
|
|
25
|
-
clause: 7.1.1
|
|
26
|
-
- id: components-drawings
|
|
27
|
-
name:
|
|
28
|
-
- spelling: eng-Latn
|
|
29
|
-
value: Component descriptions, drawings and diagrams
|
|
30
|
-
description:
|
|
31
|
-
- spelling: eng-Latn
|
|
32
|
-
value: A description of the essential components with drawings and diagrams (R 144-1, 7.1.1 c).
|
|
33
|
-
obligation: shall
|
|
34
|
-
source:
|
|
35
|
-
doc: urn:oiml:pub:r:144-1:2013
|
|
36
|
-
clause: 7.1.1
|
|
37
|
-
- id: software-information
|
|
38
|
-
name:
|
|
39
|
-
- spelling: eng-Latn
|
|
40
|
-
value: General software information
|
|
41
|
-
description:
|
|
42
|
-
- spelling: eng-Latn
|
|
43
|
-
value: General information on the software used as part of the gas analytical system (R 144-1, 7.1.1 d).
|
|
44
|
-
obligation: shall
|
|
45
|
-
source:
|
|
46
|
-
doc: urn:oiml:pub:r:144-1:2013
|
|
47
|
-
clause: 7.1.1
|
|
48
|
-
- id: calculation-formula
|
|
49
|
-
name:
|
|
50
|
-
- spelling: eng-Latn
|
|
51
|
-
value: Calculation formula description
|
|
52
|
-
description:
|
|
53
|
-
- spelling: eng-Latn
|
|
54
|
-
value: A description of the formula applied for the calculation of mass emission components (R 144-1, 7.1.1 e).
|
|
55
|
-
obligation: shall
|
|
56
|
-
source:
|
|
57
|
-
doc: urn:oiml:pub:r:144-1:2013
|
|
58
|
-
clause: 7.1.1
|
|
59
|
-
- id: operating-manual
|
|
60
|
-
name:
|
|
61
|
-
- spelling: eng-Latn
|
|
62
|
-
value: Operating manual
|
|
63
|
-
description:
|
|
64
|
-
- spelling: eng-Latn
|
|
65
|
-
value: The operating manual to be provided to the user (R 144-1, 7.1.1 f).
|
|
66
|
-
obligation: shall
|
|
67
|
-
source:
|
|
68
|
-
doc: urn:oiml:pub:r:144-1:2013
|
|
69
|
-
clause: 7.1.1
|
|
70
|
-
- id: manufacturer-testing
|
|
71
|
-
name:
|
|
72
|
-
- spelling: eng-Latn
|
|
73
|
-
value: Manufacturer testing details and results
|
|
74
|
-
description:
|
|
75
|
-
- spelling: eng-Latn
|
|
76
|
-
value: Details and results of any testing which may have been carried out by the manufacturer (R 144-1, 7.1.1 g).
|
|
77
|
-
obligation: may
|
|
78
|
-
source:
|
|
79
|
-
doc: urn:oiml:pub:r:144-1:2013
|
|
80
|
-
clause: 7.1.1
|
|
@@ -1,118 +0,0 @@
|
|
|
1
|
-
# OIML R 144 — MODEL LAYER: PROMISES (TODO.model-content/03)
|
|
2
|
-
# -----------------------------------------------------------------------------
|
|
3
|
-
# First-class manufacturer PROMISES for gas analyzers (measuring CO, NO and
|
|
4
|
-
# NO2 volume fractions): claims on characteristics and behavior that
|
|
5
|
-
# evaluation verifies and the certificate prints as promises-as-verified
|
|
6
|
-
# (the same doctrine as R 60's set — primmel-oiml-smart/docs/primmel/
|
|
7
|
-
# 02-subjects.md §2.3; 15-model-supply-chain.md §15.2). The certificate's
|
|
8
|
-
# characteristic list is GENERATED from this promise set
|
|
9
|
-
# (browser/src/services/certificate.service.ts certificateCharacteristics())
|
|
10
|
-
# — the rows below carry the print surface the hand-maintained
|
|
11
|
-
# characteristics_template of evaluation/certificate-template.yaml formerly
|
|
12
|
-
# restated (which keeps only number_format and dimension_labels).
|
|
13
|
-
#
|
|
14
|
-
# PACKAGE HOME: this file is the package payload `payload/promises.yaml` —
|
|
15
|
-
# the promise set is AUTHORED here, in the package, and regenerate-data
|
|
16
|
-
# emits data/r144/model/promises.yaml VERBATIM (the generated fileHeader +
|
|
17
|
-
# these raw bytes; the documented codec exclusion, same class as
|
|
18
|
-
# payload/sample-data.yaml). The kernel's SubjectPromise carries no
|
|
19
|
-
# certificate print-projection field yet — the projection's first-class PRL
|
|
20
|
-
# home is the recorded primmel-ts kernel-minor follow-up; when it ships,
|
|
21
|
-
# this payload migrates to `promises.prl` and the promise CONTENT rides
|
|
22
|
-
# over unchanged.
|
|
23
|
-
#
|
|
24
|
-
# PROVENANCE (the content-provenance rule): every promise cites the clause
|
|
25
|
-
# its claimed characteristic is defined at (R 144-1:2013 — the clause the
|
|
26
|
-
# model's own attribute/dimension declaration carries): the channel
|
|
27
|
-
# classification at 1.1 (scope) / 2.1 (terminology), the per-component
|
|
28
|
-
# measuring ranges at 4.2, the rated operating conditions at 4.5.1, and
|
|
29
|
-
# the response/warm-up quantities at 2.12 / 2.11. No R 144 clause makes a
|
|
30
|
-
# certificate indication mandatory, so every row prints when available
|
|
31
|
-
# (obligation: optional). Composite range rows bind their boundary
|
|
32
|
-
# attribute pair (`certificate.attributes`) and target the measurand
|
|
33
|
-
# channel set the range is a facet of (R 60's temperature_range pattern —
|
|
34
|
-
# the composite row targets the concept, never one boundary).
|
|
35
|
-
#
|
|
36
|
-
# Schema: data/schemas/model.yaml ($defs/promise).
|
|
37
|
-
---
|
|
38
|
-
promises:
|
|
39
|
-
|
|
40
|
-
# ── Channel classification (R 144-1, 1.1 / 2.1) ──────────────────────
|
|
41
|
-
|
|
42
|
-
- id: measurand_components
|
|
43
|
-
target: measurand_components # classification dimension (model/instrument.yaml)
|
|
44
|
-
statement:
|
|
45
|
-
- spelling: eng-Latn
|
|
46
|
-
value: "The measurand components the analyzer determines — the certified channel set."
|
|
47
|
-
source: { doc: urn:oiml:pub:r:144-1:2013, clause: "1.1" }
|
|
48
|
-
certificate: { dimension: measurand_components, type: string, label: [{spelling: eng-Latn, value: "Measured components"}], obligation: optional }
|
|
49
|
-
|
|
50
|
-
- id: measuring_principle
|
|
51
|
-
target: measuring_principle
|
|
52
|
-
statement:
|
|
53
|
-
- spelling: eng-Latn
|
|
54
|
-
value: "The measuring principle the analyzer's channels operate on."
|
|
55
|
-
source: { doc: urn:oiml:pub:r:144-1:2013, clause: "1.1" }
|
|
56
|
-
certificate: { dimension: measuring_principle, type: string, label: [{spelling: eng-Latn, value: "Measuring principle"}], obligation: optional }
|
|
57
|
-
|
|
58
|
-
- id: sampling_approach
|
|
59
|
-
target: sampling_approach
|
|
60
|
-
statement:
|
|
61
|
-
- spelling: eng-Latn
|
|
62
|
-
value: "The sampling approach the analyzer draws the gas stream by."
|
|
63
|
-
source: { doc: urn:oiml:pub:r:144-1:2013, clause: "2.1" }
|
|
64
|
-
certificate: { dimension: sampling_approach, type: string, label: [{spelling: eng-Latn, value: "Sampling approach"}], obligation: optional }
|
|
65
|
-
|
|
66
|
-
# ── Measuring ranges per component (R 144-1, 4.2) ────────────────────
|
|
67
|
-
|
|
68
|
-
- id: co_range
|
|
69
|
-
target: measurand_components # the range is a facet of the CO channel
|
|
70
|
-
statement:
|
|
71
|
-
- spelling: eng-Latn
|
|
72
|
-
value: "The CO measuring range the analyzer is certified over (volume fraction, ppm)."
|
|
73
|
-
source: { doc: urn:oiml:pub:r:144-1:2013, clause: "4.2" }
|
|
74
|
-
certificate: { attributes: [co_range_min, co_range_max], type: string, label: [{spelling: eng-Latn, value: "CO measuring range (ppm)"}], obligation: optional }
|
|
75
|
-
|
|
76
|
-
- id: no_range
|
|
77
|
-
target: measurand_components # the range is a facet of the NO channel
|
|
78
|
-
statement:
|
|
79
|
-
- spelling: eng-Latn
|
|
80
|
-
value: "The NO measuring range the analyzer is certified over (volume fraction, ppm)."
|
|
81
|
-
source: { doc: urn:oiml:pub:r:144-1:2013, clause: "4.2" }
|
|
82
|
-
certificate: { attributes: [no_range_min, no_range_max], type: string, label: [{spelling: eng-Latn, value: "NO measuring range (ppm)"}], obligation: optional }
|
|
83
|
-
|
|
84
|
-
- id: no2_range
|
|
85
|
-
target: measurand_components # the range is a facet of the NO2 channel
|
|
86
|
-
statement:
|
|
87
|
-
- spelling: eng-Latn
|
|
88
|
-
value: "The NO2 measuring range the analyzer is certified over (volume fraction, ppm)."
|
|
89
|
-
source: { doc: urn:oiml:pub:r:144-1:2013, clause: "4.2" }
|
|
90
|
-
certificate: { attributes: [no2_range_min, no2_range_max], type: string, label: [{spelling: eng-Latn, value: "NO2 measuring range (ppm)"}], obligation: optional }
|
|
91
|
-
|
|
92
|
-
# ── Dynamic response (R 144-1, 2.12 / 2.11) ──────────────────────────
|
|
93
|
-
|
|
94
|
-
- id: response_time
|
|
95
|
-
target: response_time
|
|
96
|
-
statement:
|
|
97
|
-
- spelling: eng-Latn
|
|
98
|
-
value: "Response time t_90 the analyzer settles within after a step change of the measurand."
|
|
99
|
-
source: { doc: urn:oiml:pub:r:144-1:2013, clause: "2.12" }
|
|
100
|
-
certificate: { attribute: response_time, type: string, label: [{spelling: eng-Latn, value: "Response time t_90"}], obligation: optional }
|
|
101
|
-
|
|
102
|
-
- id: warm_up_time
|
|
103
|
-
target: warm_up_time
|
|
104
|
-
statement:
|
|
105
|
-
- spelling: eng-Latn
|
|
106
|
-
value: "Warm-up time the analyzer requires before its indications hold."
|
|
107
|
-
source: { doc: urn:oiml:pub:r:144-1:2013, clause: "2.11" }
|
|
108
|
-
certificate: { attribute: warm_up_time, type: string, label: [{spelling: eng-Latn, value: "Warm-up time"}], obligation: optional }
|
|
109
|
-
|
|
110
|
-
# ── Rated operating conditions (R 144-1, 4.5.1) ──────────────────────
|
|
111
|
-
|
|
112
|
-
- id: rated_conditions
|
|
113
|
-
target: temperature-effect # behaviors.yaml — the temperature influence response
|
|
114
|
-
statement:
|
|
115
|
-
- spelling: eng-Latn
|
|
116
|
-
value: "The type holds its metrological performance across the rated temperature range (t_min…t_max)."
|
|
117
|
-
source: { doc: urn:oiml:pub:r:144-1:2013, clause: "4.5.1" }
|
|
118
|
-
certificate: { attributes: [t_min, t_max], type: string, label: [{spelling: eng-Latn, value: "Rated temperature range"}], obligation: optional }
|