@oimlsmart/primmel-packages 0.1.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.
Files changed (460) hide show
  1. package/AGENTS.md +60 -0
  2. package/LICENSE +21 -0
  3. package/README.md +68 -0
  4. package/acme-cgm-200/model/cgm200.prl +284 -0
  5. package/acme-cgm-200/model/r144-map.prl +337 -0
  6. package/acme-cgm-200/package.primmel +39 -0
  7. package/acme-cgm-system/model/cgm-system.prl +125 -0
  8. package/acme-cgm-system/model/r144-map.prl +75 -0
  9. package/acme-cgm-system/model/sample-line.prl +42 -0
  10. package/acme-cgm-system/package.primmel +23 -0
  11. package/acme-lc500/model/lc500.prl +218 -0
  12. package/acme-lc500/model/passport.prl +43 -0
  13. package/acme-lc500/model/r60-map.prl +161 -0
  14. package/acme-lc500/model/twin-cert-map.prl +114 -0
  15. package/acme-lc500/package.primmel +35 -0
  16. package/acme-md3xx/model/md350.prl +317 -0
  17. package/acme-md3xx/model/r129-map.prl +346 -0
  18. package/acme-md3xx/package.primmel +49 -0
  19. package/acme-rs180/model/r91-map.prl +234 -0
  20. package/acme-rs180/model/rs180.prl +236 -0
  21. package/acme-rs180/package.primmel +47 -0
  22. package/ims-demo/model/ims.prl +23 -0
  23. package/ims-demo/model/isms-map.prl +60 -0
  24. package/ims-demo/model/qms-map.prl +73 -0
  25. package/ims-demo/package.primmel +42 -0
  26. package/isms-ref/model/isms.prl +34 -0
  27. package/isms-ref/package.primmel +35 -0
  28. package/iso-iec-17000/package.primmel +8 -0
  29. package/iso-iec-17000/terminology.prl +268 -0
  30. package/iso-iec-17025/package.primmel +10 -0
  31. package/iso-iec-17025/specification/requirements/lab.prl +474 -0
  32. package/iso-iec-17025/terminology.prl +72 -0
  33. package/iso-iec-17065/package.primmel +10 -0
  34. package/iso-iec-17065/specification/requirements/body.prl +446 -0
  35. package/iso-iec-17065/terminology.prl +103 -0
  36. package/iso-iec-17067/package.primmel +10 -0
  37. package/iso-iec-17067/specification/requirements/scheme-content.prl +300 -0
  38. package/iso-iec-17067/terminology.prl +24 -0
  39. package/oiml-cs/package.primmel +10 -0
  40. package/oiml-cs/specification/discrepancies.prl +26 -0
  41. package/oiml-cs/specification/requirements/cs.prl +515 -0
  42. package/oiml-cs-dataspace/.primmel-allowlist.prl +25 -0
  43. package/oiml-cs-dataspace/package.primmel +9 -0
  44. package/oiml-cs-dataspace/specification/dataspace.prl +73 -0
  45. package/oiml-cs-dataspace/specification/policies.prl +68 -0
  46. package/oiml-integrated-ref/model/probe-pairing.prl +71 -0
  47. package/oiml-integrated-ref/package.primmel +10 -0
  48. package/oiml-r129/.primmel-allowlist.prl +2 -0
  49. package/oiml-r129/evaluation/processes.prl +152 -0
  50. package/oiml-r129/evaluation/workflow.prl +48 -0
  51. package/oiml-r129/execution/forms/admin/adjustments-modifications.prl +30 -0
  52. package/oiml-r129/execution/forms/admin/checklist.prl +70 -0
  53. package/oiml-r129/execution/forms/admin/configuration.prl +31 -0
  54. package/oiml-r129/execution/forms/admin/equipment-info.prl +27 -0
  55. package/oiml-r129/execution/forms/admin/general-info.prl +63 -0
  56. package/oiml-r129/execution/forms/admin/identification.prl +49 -0
  57. package/oiml-r129/execution/forms/admin/sample-selection.prl +30 -0
  58. package/oiml-r129/execution/forms/admin/summary-results.prl +50 -0
  59. package/oiml-r129/execution/forms/emc/bursts.prl +88 -0
  60. package/oiml-r129/execution/forms/emc/esd.prl +66 -0
  61. package/oiml-r129/execution/forms/emc/low-voltage-battery.prl +58 -0
  62. package/oiml-r129/execution/forms/emc/rf-immunity-conducted.prl +59 -0
  63. package/oiml-r129/execution/forms/emc/rf-immunity-radiated.prl +59 -0
  64. package/oiml-r129/execution/forms/emc/surge.prl +61 -0
  65. package/oiml-r129/execution/forms/emc/voltage-dips.prl +62 -0
  66. package/oiml-r129/execution/forms/emc/voltage-variation.prl +58 -0
  67. package/oiml-r129/execution/forms/env/damp-heat-cyclic.prl +43 -0
  68. package/oiml-r129/execution/forms/env/damp-heat-steady.prl +50 -0
  69. package/oiml-r129/execution/forms/env/static-temperatures.prl +61 -0
  70. package/oiml-r129/execution/forms/shared/headers.prl +86 -0
  71. package/oiml-r129/execution/forms/tests/acoustics.prl +44 -0
  72. package/oiml-r129/execution/forms/tests/ambient-light.prl +46 -0
  73. package/oiml-r129/execution/forms/tests/construction-examination.prl +46 -0
  74. package/oiml-r129/execution/forms/tests/examination-checklist.prl +51 -0
  75. package/oiml-r129/execution/forms/tests/object-shape.prl +43 -0
  76. package/oiml-r129/execution/forms/tests/orientation-position.prl +31 -0
  77. package/oiml-r129/execution/forms/tests/repeatability.prl +65 -0
  78. package/oiml-r129/execution/forms/tests/speed-movement.prl +59 -0
  79. package/oiml-r129/execution/forms/tests/surface-characteristics.prl +44 -0
  80. package/oiml-r129/execution/forms/tests/warm-up-time.prl +35 -0
  81. package/oiml-r129/execution/subforms/dimension-measurement.prl +93 -0
  82. package/oiml-r129/layers.prl +50 -0
  83. package/oiml-r129/model/attributes.prl +243 -0
  84. package/oiml-r129/model/behaviors.prl +79 -0
  85. package/oiml-r129/model/capabilities.prl +29 -0
  86. package/oiml-r129/model/characteristics.prl +8 -0
  87. package/oiml-r129/model/conditions.prl +23 -0
  88. package/oiml-r129/model/instrument.prl +67 -0
  89. package/oiml-r129/model/state.prl +22 -0
  90. package/oiml-r129/model/twin.prl +23 -0
  91. package/oiml-r129/package.primmel +15 -0
  92. package/oiml-r129/payload/application.yaml +40 -0
  93. package/oiml-r129/payload/conditions-common-test.yaml +8 -0
  94. package/oiml-r129/payload/formulas-variants.yaml +33 -0
  95. package/oiml-r129/payload/promises.yaml +102 -0
  96. package/oiml-r129/payload/sample-data.yaml +300 -0
  97. package/oiml-r129/references.prl +306 -0
  98. package/oiml-r129/sources-prd/coverage.json +59 -0
  99. package/oiml-r129/sources-prd/r129-1.sentences.json +4238 -0
  100. package/oiml-r129/sources-prd/r129-2.sentences.json +1139 -0
  101. package/oiml-r129/sources-prd/r129-3.sentences.json +3809 -0
  102. package/oiml-r129/sources-prd/r129-4.sentences.json +1227 -0
  103. package/oiml-r129/specification/calculations.prl +83 -0
  104. package/oiml-r129/specification/conformance/disturbance-tests.prl +212 -0
  105. package/oiml-r129/specification/conformance/effect-tests.prl +70 -0
  106. package/oiml-r129/specification/conformance/examinations.prl +83 -0
  107. package/oiml-r129/specification/conformance/metrological-tests.prl +178 -0
  108. package/oiml-r129/specification/formulas.prl +9 -0
  109. package/oiml-r129/specification/requirements/electronic.prl +46 -0
  110. package/oiml-r129/specification/requirements/metrological.prl +83 -0
  111. package/oiml-r129/specification/requirements/object-limitations.prl +99 -0
  112. package/oiml-r129/specification/requirements/software.prl +57 -0
  113. package/oiml-r129/specification/requirements/technical.prl +134 -0
  114. package/oiml-r129/specification/symbols.prl +187 -0
  115. package/oiml-r129/specification/tables.prl +74 -0
  116. package/oiml-r129/terminology.prl +415 -0
  117. package/oiml-r129/value-types.prl +40 -0
  118. package/oiml-r144/.primmel-allowlist.prl +2 -0
  119. package/oiml-r144/entities/instrument.prl +360 -0
  120. package/oiml-r144/entities/test-execution.prl +228 -0
  121. package/oiml-r144/entities/workflow.prl +2075 -0
  122. package/oiml-r144/evaluation/processes.prl +152 -0
  123. package/oiml-r144/evaluation/workflow.prl +48 -0
  124. package/oiml-r144/execution/forms/sec-3-report/03-01-laboratory-info.prl +19 -0
  125. package/oiml-r144/execution/forms/sec-3-report/03-02-test-location.prl +14 -0
  126. package/oiml-r144/execution/forms/sec-3-report/03-03-manufacturer-info.prl +18 -0
  127. package/oiml-r144/execution/forms/sec-3-report/03-04-applicant-info.prl +19 -0
  128. package/oiml-r144/execution/forms/sec-3-report/03-05-type-identification.prl +80 -0
  129. package/oiml-r144/execution/forms/sec-3-report/03-06-type-composition.prl +31 -0
  130. package/oiml-r144/execution/forms/sec-3-report/03-07-visual-examination.prl +46 -0
  131. package/oiml-r144/execution/forms/sec-3-report/03-08-test-conclusions.prl +46 -0
  132. package/oiml-r144/execution/forms/sec-3-report/03-09-general-conclusion.prl +19 -0
  133. package/oiml-r144/execution/forms/sec-3-report/03-10-responsible-persons.prl +27 -0
  134. package/oiml-r144/execution/forms/sec-tests/ambient-pressure-test.prl +59 -0
  135. package/oiml-r144/execution/forms/sec-tests/bursts-mains-test.prl +52 -0
  136. package/oiml-r144/execution/forms/sec-tests/bursts-signal-test.prl +55 -0
  137. package/oiml-r144/execution/forms/sec-tests/cold-test.prl +48 -0
  138. package/oiml-r144/execution/forms/sec-tests/cross-sensitivity-test.prl +92 -0
  139. package/oiml-r144/execution/forms/sec-tests/damp-heat-test.prl +50 -0
  140. package/oiml-r144/execution/forms/sec-tests/documentation-examination.prl +52 -0
  141. package/oiml-r144/execution/forms/sec-tests/drift-test.prl +83 -0
  142. package/oiml-r144/execution/forms/sec-tests/dry-heat-test.prl +53 -0
  143. package/oiml-r144/execution/forms/sec-tests/error-determination.prl +37 -0
  144. package/oiml-r144/execution/forms/sec-tests/esd-test.prl +53 -0
  145. package/oiml-r144/execution/forms/sec-tests/flow-spillover-test.prl +83 -0
  146. package/oiml-r144/execution/forms/sec-tests/leakproofness-test.prl +41 -0
  147. package/oiml-r144/execution/forms/sec-tests/low-battery-test.prl +48 -0
  148. package/oiml-r144/execution/forms/sec-tests/power-reduction-test.prl +49 -0
  149. package/oiml-r144/execution/forms/sec-tests/power-supply-test.prl +57 -0
  150. package/oiml-r144/execution/forms/sec-tests/repeatability-test.prl +60 -0
  151. package/oiml-r144/execution/forms/sec-tests/response-time-test.prl +43 -0
  152. package/oiml-r144/execution/forms/sec-tests/rf-emf-test.prl +47 -0
  153. package/oiml-r144/execution/forms/sec-tests/shock-test.prl +50 -0
  154. package/oiml-r144/execution/forms/sec-tests/surge-test.prl +52 -0
  155. package/oiml-r144/execution/forms/sec-tests/vibration-test.prl +58 -0
  156. package/oiml-r144/execution/forms/sec-tests/warm-up-time-test.prl +69 -0
  157. package/oiml-r144/execution/forms/shared/headers.prl +132 -0
  158. package/oiml-r144/execution/subforms/cgm-point.prl +99 -0
  159. package/oiml-r144/layers.prl +44 -0
  160. package/oiml-r144/model/attributes.prl +679 -0
  161. package/oiml-r144/model/behaviors.prl +117 -0
  162. package/oiml-r144/model/capabilities.prl +99 -0
  163. package/oiml-r144/model/characteristics.prl +27 -0
  164. package/oiml-r144/model/conditions.prl +46 -0
  165. package/oiml-r144/model/instrument.prl +85 -0
  166. package/oiml-r144/model/state.prl +18 -0
  167. package/oiml-r144/model/twin.prl +25 -0
  168. package/oiml-r144/package.primmel +15 -0
  169. package/oiml-r144/payload/application.yaml +80 -0
  170. package/oiml-r144/payload/attributes-pair-list.yaml +18 -0
  171. package/oiml-r144/payload/conditions-common-test.yaml +74 -0
  172. package/oiml-r144/payload/formulas-variants.yaml +32 -0
  173. package/oiml-r144/payload/promises.yaml +118 -0
  174. package/oiml-r144/payload/sample-data.yaml +643 -0
  175. package/oiml-r144/references.prl +594 -0
  176. package/oiml-r144/sources-prd/coverage.json +114 -0
  177. package/oiml-r144/sources-prd/r144-1.sentences.json +2797 -0
  178. package/oiml-r144/sources-prd/r144-2.sentences.json +1627 -0
  179. package/oiml-r144/sources-prd/r144-3.sentences.json +838 -0
  180. package/oiml-r144/specification/calculations.prl +123 -0
  181. package/oiml-r144/specification/conformance/examination.prl +87 -0
  182. package/oiml-r144/specification/conformance/performance-tests.prl +755 -0
  183. package/oiml-r144/specification/formulas.prl +37 -0
  184. package/oiml-r144/specification/reference-materials.prl +87 -0
  185. package/oiml-r144/specification/requirements/controls.prl +51 -0
  186. package/oiml-r144/specification/requirements/metrological.prl +299 -0
  187. package/oiml-r144/specification/requirements/report.prl +35 -0
  188. package/oiml-r144/specification/requirements/technical.prl +455 -0
  189. package/oiml-r144/specification/symbols.prl +357 -0
  190. package/oiml-r144/specification/tables.prl +95 -0
  191. package/oiml-r144/specification/test-point-sets.prl +15 -0
  192. package/oiml-r144/terminology.prl +308 -0
  193. package/oiml-r144/value-types.prl +49 -0
  194. package/oiml-r60/.primmel-allowlist.prl +2 -0
  195. package/oiml-r60/entities/workflow.prl +2079 -0
  196. package/oiml-r60/evaluation/processes.prl +152 -0
  197. package/oiml-r60/evaluation/workflow.prl +48 -0
  198. package/oiml-r60/execution/forms/sec-4-evaluation-report/04-01-authority-info.prl +76 -0
  199. package/oiml-r60/execution/forms/sec-4-evaluation-report/04-02-synopsis.prl +20 -0
  200. package/oiml-r60/execution/forms/sec-4-evaluation-report/04-03-01-examinations.prl +27 -0
  201. package/oiml-r60/execution/forms/sec-4-evaluation-report/04-03-02-a-performance-general.prl +81 -0
  202. package/oiml-r60/execution/forms/sec-4-evaluation-report/04-03-02-b-performance-digital.prl +104 -0
  203. package/oiml-r60/execution/forms/sec-4-evaluation-report/04-04-01-manufacturer.prl +21 -0
  204. package/oiml-r60/execution/forms/sec-4-evaluation-report/04-04-02-applicant.prl +44 -0
  205. package/oiml-r60/execution/forms/sec-4-evaluation-report/04-04-03-testing-laboratories.prl +69 -0
  206. package/oiml-r60/execution/forms/sec-4-evaluation-report/04-05-load-cell-type-info.prl +83 -0
  207. package/oiml-r60/execution/forms/sec-4-evaluation-report/04-06-accessories.prl +41 -0
  208. package/oiml-r60/execution/forms/sec-4-evaluation-report/04-07-sample-selection.prl +71 -0
  209. package/oiml-r60/execution/forms/sec-4-evaluation-report/04-09-01-general-info.prl +103 -0
  210. package/oiml-r60/execution/forms/sec-4-evaluation-report/04-09-02-performance-info.prl +66 -0
  211. package/oiml-r60/execution/forms/sec-4-evaluation-report/04-09-03-digital-info.prl +35 -0
  212. package/oiml-r60/execution/forms/sec-4-evaluation-report/04-09-04-photographs.prl +12 -0
  213. package/oiml-r60/execution/forms/sec-4-evaluation-report/04-09-05-documentation.prl +27 -0
  214. package/oiml-r60/execution/forms/sec-4-evaluation-report/04-09-06-inscriptions.prl +126 -0
  215. package/oiml-r60/execution/forms/sec-4-evaluation-report/04-09-07-model-range.prl +143 -0
  216. package/oiml-r60/execution/forms/sec-4-evaluation-report/04-09-12-previous-tests.prl +26 -0
  217. package/oiml-r60/execution/forms/sec-4-evaluation-report/04-10-01-force-generating-system.prl +89 -0
  218. package/oiml-r60/execution/forms/sec-4-evaluation-report/04-10-02-weights.prl +61 -0
  219. package/oiml-r60/execution/forms/sec-4-evaluation-report/04-10-03-temperature-chamber.prl +96 -0
  220. package/oiml-r60/execution/forms/sec-4-evaluation-report/04-10-04-climate-chamber.prl +96 -0
  221. package/oiml-r60/execution/forms/sec-4-evaluation-report/04-10-05-indicator.prl +92 -0
  222. package/oiml-r60/execution/forms/sec-4-evaluation-report/04-10-06-terminal.prl +86 -0
  223. package/oiml-r60/execution/forms/sec-4-evaluation-report/04-10-07-barometric-pressure-meter.prl +62 -0
  224. package/oiml-r60/execution/forms/sec-4-evaluation-report/04-10-08-thermometer.prl +62 -0
  225. package/oiml-r60/execution/forms/sec-4-evaluation-report/04-10-09-moisture-analyser.prl +62 -0
  226. package/oiml-r60/execution/forms/sec-4-evaluation-report/04-10-10-additional-test-equipment.prl +69 -0
  227. package/oiml-r60/execution/forms/sec-4-evaluation-report/04-10-11-remarks.prl +11 -0
  228. package/oiml-r60/execution/forms/sec-4-evaluation-report/test-usage-matrix.prl +85 -0
  229. package/oiml-r60/execution/forms/sec-5-examination/documentation-examination.prl +53 -0
  230. package/oiml-r60/execution/forms/sec-5-examination/marking-examination.prl +104 -0
  231. package/oiml-r60/execution/forms/sec-5-examination/software-examination.prl +86 -0
  232. package/oiml-r60/execution/forms/sec-5-examination/suitability-examination.prl +56 -0
  233. package/oiml-r60/execution/forms/sec-6-performance-tests/barometric-pressure.prl +176 -0
  234. package/oiml-r60/execution/forms/sec-6-performance-tests/bursts.prl +129 -0
  235. package/oiml-r60/execution/forms/sec-6-performance-tests/conducted-emc.prl +170 -0
  236. package/oiml-r60/execution/forms/sec-6-performance-tests/creep-dr.prl +327 -0
  237. package/oiml-r60/execution/forms/sec-6-performance-tests/emc-susceptibility.prl +115 -0
  238. package/oiml-r60/execution/forms/sec-6-performance-tests/esd.prl +224 -0
  239. package/oiml-r60/execution/forms/sec-6-performance-tests/humidity-ch.prl +300 -0
  240. package/oiml-r60/execution/forms/sec-6-performance-tests/humidity-sh.prl +235 -0
  241. package/oiml-r60/execution/forms/sec-6-performance-tests/initial-tests.prl +129 -0
  242. package/oiml-r60/execution/forms/sec-6-performance-tests/load-cell-errors.prl +280 -0
  243. package/oiml-r60/execution/forms/sec-6-performance-tests/load-test.prl +29 -0
  244. package/oiml-r60/execution/forms/sec-6-performance-tests/performance-test-summary.prl +82 -0
  245. package/oiml-r60/execution/forms/sec-6-performance-tests/power-voltage.prl +166 -0
  246. package/oiml-r60/execution/forms/sec-6-performance-tests/repeatability.prl +189 -0
  247. package/oiml-r60/execution/forms/sec-6-performance-tests/short-time-power.prl +98 -0
  248. package/oiml-r60/execution/forms/sec-6-performance-tests/span-stability.prl +242 -0
  249. package/oiml-r60/execution/forms/sec-6-performance-tests/surge.prl +142 -0
  250. package/oiml-r60/execution/forms/sec-6-performance-tests/temperature-mdlo.prl +180 -0
  251. package/oiml-r60/execution/forms/sec-6-performance-tests/warm-up-time.prl +207 -0
  252. package/oiml-r60/execution/forms/shared/headers.prl +255 -0
  253. package/oiml-r60/execution/subforms/load-test-row.prl +55 -0
  254. package/oiml-r60/execution/subforms/test-procedures.prl +33 -0
  255. package/oiml-r60/layers.prl +46 -0
  256. package/oiml-r60/model/attributes.prl +642 -0
  257. package/oiml-r60/model/behaviors.prl +165 -0
  258. package/oiml-r60/model/capabilities.prl +57 -0
  259. package/oiml-r60/model/characteristics.prl +27 -0
  260. package/oiml-r60/model/conditions.prl +50 -0
  261. package/oiml-r60/model/instrument.prl +96 -0
  262. package/oiml-r60/model/processes.prl +54 -0
  263. package/oiml-r60/model/state.prl +22 -0
  264. package/oiml-r60/model/twin.prl +16 -0
  265. package/oiml-r60/package.primmel +16 -0
  266. package/oiml-r60/payload/annexes-part4.yaml +122 -0
  267. package/oiml-r60/payload/application.yaml +83 -0
  268. package/oiml-r60/payload/conditions-common-test.yaml +121 -0
  269. package/oiml-r60/payload/formulas-variants.yaml +55 -0
  270. package/oiml-r60/payload/promises.yaml +224 -0
  271. package/oiml-r60/payload/sample-data.yaml +5025 -0
  272. package/oiml-r60/payload/symbols-formula-notes.yaml +21 -0
  273. package/oiml-r60/references.prl +549 -0
  274. package/oiml-r60/sources-prd/coverage.json +740 -0
  275. package/oiml-r60/sources-prd/r60-1.sentences.json +2173 -0
  276. package/oiml-r60/sources-prd/r60-2.sentences.json +2961 -0
  277. package/oiml-r60/sources-prd/r60-3.sentences.json +4212 -0
  278. package/oiml-r60/sources-prd/r60-a.sentences.json +3361 -0
  279. package/oiml-r60/specification/calculations.prl +318 -0
  280. package/oiml-r60/specification/conformance/class-specific.prl +1120 -0
  281. package/oiml-r60/specification/conformance/electronic.prl +483 -0
  282. package/oiml-r60/specification/conformance/examination.prl +183 -0
  283. package/oiml-r60/specification/conformance/metrological.prl +478 -0
  284. package/oiml-r60/specification/constraints.prl +58 -0
  285. package/oiml-r60/specification/formulas-used.prl +43 -0
  286. package/oiml-r60/specification/formulas.prl +20 -0
  287. package/oiml-r60/specification/requirements/class-specific.prl +655 -0
  288. package/oiml-r60/specification/requirements/classification.prl +114 -0
  289. package/oiml-r60/specification/requirements/electronic.prl +222 -0
  290. package/oiml-r60/specification/requirements/metrological.prl +381 -0
  291. package/oiml-r60/specification/requirements/technical.prl +146 -0
  292. package/oiml-r60/specification/symbols.prl +599 -0
  293. package/oiml-r60/specification/tables.prl +182 -0
  294. package/oiml-r60/specification/test-sequences.prl +72 -0
  295. package/oiml-r60/terminology.prl +920 -0
  296. package/oiml-r60/value-types.prl +46 -0
  297. package/oiml-r91/.primmel-allowlist.prl +3 -0
  298. package/oiml-r91/entities/instrument.prl +359 -0
  299. package/oiml-r91/entities/workflow.prl +2075 -0
  300. package/oiml-r91/evaluation/processes.prl +152 -0
  301. package/oiml-r91/evaluation/workflow.prl +48 -0
  302. package/oiml-r91/execution/forms/evidence-file.prl +41 -0
  303. package/oiml-r91/execution/forms/report-evaluation/appraisal.prl +30 -0
  304. package/oiml-r91/execution/forms/report-evaluation/checklist-summary.prl +43 -0
  305. package/oiml-r91/execution/forms/report-evaluation/checklist.prl +76 -0
  306. package/oiml-r91/execution/forms/report-evaluation/configuration-samples.prl +22 -0
  307. package/oiml-r91/execution/forms/report-evaluation/corrective-actions.prl +24 -0
  308. package/oiml-r91/execution/forms/report-evaluation/descriptions.prl +47 -0
  309. package/oiml-r91/execution/forms/report-evaluation/evaluation-identification.prl +219 -0
  310. package/oiml-r91/execution/forms/report-evaluation/test-report-summary.prl +33 -0
  311. package/oiml-r91/execution/forms/report-general/adjustments.prl +12 -0
  312. package/oiml-r91/execution/forms/report-general/alignment-aiming.prl +17 -0
  313. package/oiml-r91/execution/forms/report-general/checking-facility.prl +17 -0
  314. package/oiml-r91/execution/forms/report-general/configuration.prl +12 -0
  315. package/oiml-r91/execution/forms/report-general/identification.prl +216 -0
  316. package/oiml-r91/execution/forms/report-general/indications-controls.prl +17 -0
  317. package/oiml-r91/execution/forms/report-general/sealing.prl +21 -0
  318. package/oiml-r91/execution/forms/report-general/software-description.prl +26 -0
  319. package/oiml-r91/execution/forms/report-general/summary-environmental.prl +35 -0
  320. package/oiml-r91/execution/forms/report-general/summary-tests.prl +35 -0
  321. package/oiml-r91/execution/forms/report-general/test-equipment.prl +36 -0
  322. package/oiml-r91/execution/forms/report-general/test-interface.prl +16 -0
  323. package/oiml-r91/execution/forms/report-tests/01-01-field-test.prl +84 -0
  324. package/oiml-r91/execution/forms/report-tests/01-02-statistical-analysis.prl +76 -0
  325. package/oiml-r91/execution/forms/report-tests/01-03-image-evidence.prl +30 -0
  326. package/oiml-r91/execution/forms/report-tests/02-01-dynamic-performance.prl +92 -0
  327. package/oiml-r91/execution/forms/report-tests/02-02-speed-linearity.prl +23 -0
  328. package/oiml-r91/execution/forms/report-tests/02-03-distance-linearity.prl +67 -0
  329. package/oiml-r91/execution/forms/report-tests/02-04-angle-linearity.prl +59 -0
  330. package/oiml-r91/execution/forms/report-tests/03-01-dry-heat-operating.prl +38 -0
  331. package/oiml-r91/execution/forms/report-tests/03-02-dry-heat-storage.prl +48 -0
  332. package/oiml-r91/execution/forms/report-tests/03-03-cold-operating.prl +40 -0
  333. package/oiml-r91/execution/forms/report-tests/03-04-cold-storage.prl +48 -0
  334. package/oiml-r91/execution/forms/report-tests/03-05-damp-heat-cyclic.prl +40 -0
  335. package/oiml-r91/execution/forms/report-tests/03-06-water.prl +48 -0
  336. package/oiml-r91/execution/forms/report-tests/03-07-sand-and-dust.prl +48 -0
  337. package/oiml-r91/execution/forms/report-tests/03-08-salt-mist.prl +48 -0
  338. package/oiml-r91/execution/forms/report-tests/03-09-vibration-random.prl +40 -0
  339. package/oiml-r91/execution/forms/report-tests/03-10-mechanical-shock.prl +48 -0
  340. package/oiml-r91/execution/forms/report-tests/03-11-dc-mains-voltage-variation.prl +40 -0
  341. package/oiml-r91/execution/forms/report-tests/03-12-ripple-on-dc-mains.prl +47 -0
  342. package/oiml-r91/execution/forms/report-tests/03-13-ac-mains-voltage-variation.prl +40 -0
  343. package/oiml-r91/execution/forms/report-tests/03-14-ac-mains-frequency-variation.prl +40 -0
  344. package/oiml-r91/execution/forms/report-tests/03-15-dc-mains-voltage-dips.prl +46 -0
  345. package/oiml-r91/execution/forms/report-tests/03-16-ac-mains-voltage-dips.prl +46 -0
  346. package/oiml-r91/execution/forms/report-tests/03-17-ac-mains-frequency-harmonics.prl +47 -0
  347. package/oiml-r91/execution/forms/report-tests/03-18-vlf-lf-disturbances.prl +46 -0
  348. package/oiml-r91/execution/forms/report-tests/03-19-bursts-ac-dc-mains.prl +44 -0
  349. package/oiml-r91/execution/forms/report-tests/03-20-surges-ac-dc-mains.prl +45 -0
  350. package/oiml-r91/execution/forms/report-tests/03-21-bursts-signal-lines.prl +45 -0
  351. package/oiml-r91/execution/forms/report-tests/03-22-surges-signal-lines.prl +46 -0
  352. package/oiml-r91/execution/forms/report-tests/03-23-ac-mains-magnetic-field.prl +45 -0
  353. package/oiml-r91/execution/forms/report-tests/03-24-conducted-rf-common-mode.prl +46 -0
  354. package/oiml-r91/execution/forms/report-tests/03-25-rf-electromagnetic-fields.prl +49 -0
  355. package/oiml-r91/execution/forms/report-tests/03-26-electrostatic-discharges.prl +47 -0
  356. package/oiml-r91/execution/forms/report-tests/03-27-internal-battery-low-voltage.prl +40 -0
  357. package/oiml-r91/execution/forms/report-tests/03-28-road-vehicle-battery.prl +40 -0
  358. package/oiml-r91/execution/forms/report-tests/03-29-transient-supply-lines.prl +47 -0
  359. package/oiml-r91/execution/forms/report-tests/03-30-transient-other-lines.prl +45 -0
  360. package/oiml-r91/execution/forms/report-tests/03-31-battery-cranking.prl +45 -0
  361. package/oiml-r91/execution/forms/report-tests/03-32-load-dump.prl +47 -0
  362. package/oiml-r91/execution/forms/report-tests/03-33-acceleration.prl +66 -0
  363. package/oiml-r91/execution/forms/report-tests/03-34-further-influence.prl +60 -0
  364. package/oiml-r91/execution/forms/report-tests/03-35-installation-alignment.prl +29 -0
  365. package/oiml-r91/execution/forms/report-tests/04-01-doppler-radar.prl +43 -0
  366. package/oiml-r91/execution/forms/report-tests/04-02-range-finding.prl +42 -0
  367. package/oiml-r91/execution/forms/report-tests/04-03-average-speed.prl +41 -0
  368. package/oiml-r91/execution/forms/report-tests/04-04-fixed-distance.prl +40 -0
  369. package/oiml-r91/execution/forms/report-tests/04-05-image-based.prl +41 -0
  370. package/oiml-r91/execution/forms/report-tests/04-06-across-road.prl +42 -0
  371. package/oiml-r91/execution/forms/report-tests/05-01-moving-field-test.prl +29 -0
  372. package/oiml-r91/execution/forms/report-tests/05-02-ego-field-test.prl +57 -0
  373. package/oiml-r91/execution/forms/report-tests/05-03-moving-traffic-simulation.prl +31 -0
  374. package/oiml-r91/execution/forms/report-tests/06-01-software-general.prl +25 -0
  375. package/oiml-r91/execution/forms/report-tests/06-02-software-protection.prl +25 -0
  376. package/oiml-r91/execution/forms/report-tests/06-03-software-hardware-support.prl +24 -0
  377. package/oiml-r91/execution/forms/report-tests/06-04-software-separation.prl +25 -0
  378. package/oiml-r91/execution/forms/report-tests/06-05-software-maintenance.prl +24 -0
  379. package/oiml-r91/execution/forms/report-tests/07-general-remarks.prl +11 -0
  380. package/oiml-r91/execution/forms/shared/header-a.prl +63 -0
  381. package/oiml-r91/execution/subforms/software-matrix-row.prl +30 -0
  382. package/oiml-r91/execution/subforms/speed-measurement-row.prl +38 -0
  383. package/oiml-r91/layers.prl +46 -0
  384. package/oiml-r91/model/artifacts.prl +29 -0
  385. package/oiml-r91/model/attributes.prl +698 -0
  386. package/oiml-r91/model/behaviors.prl +142 -0
  387. package/oiml-r91/model/capabilities.prl +88 -0
  388. package/oiml-r91/model/characteristics.prl +27 -0
  389. package/oiml-r91/model/conditions.prl +37 -0
  390. package/oiml-r91/model/instrument.prl +147 -0
  391. package/oiml-r91/model/state.prl +22 -0
  392. package/oiml-r91/model/twin.prl +17 -0
  393. package/oiml-r91/package.primmel +14 -0
  394. package/oiml-r91/payload/application.yaml +201 -0
  395. package/oiml-r91/payload/conditions-common-test.yaml +19 -0
  396. package/oiml-r91/payload/promises.yaml +142 -0
  397. package/oiml-r91/payload/sample-data.yaml +464 -0
  398. package/oiml-r91/references.prl +72 -0
  399. package/oiml-r91/sources-prd/coverage.json +106 -0
  400. package/oiml-r91/sources-prd/r91-1.sentences.json +4696 -0
  401. package/oiml-r91/sources-prd/r91-2.sentences.json +2067 -0
  402. package/oiml-r91/sources-prd/r91-3.sentences.json +5210 -0
  403. package/oiml-r91/sources-prd/r91-4.sentences.json +474 -0
  404. package/oiml-r91/specification/calculations.prl +26 -0
  405. package/oiml-r91/specification/conformance/influence-disturbance.prl +1792 -0
  406. package/oiml-r91/specification/conformance/metrological.prl +906 -0
  407. package/oiml-r91/specification/formulas.prl +10 -0
  408. package/oiml-r91/specification/requirements/class-specific.prl +308 -0
  409. package/oiml-r91/specification/requirements/metrological.prl +176 -0
  410. package/oiml-r91/specification/requirements/technical.prl +173 -0
  411. package/oiml-r91/specification/symbols.prl +323 -0
  412. package/oiml-r91/specification/tables.prl +136 -0
  413. package/oiml-r91/terminology.prl +535 -0
  414. package/oiml-r91/value-types.prl +26 -0
  415. package/oiml-smart-core/entities/comments.prl +101 -0
  416. package/oiml-smart-core/entities/cs-operations.prl +492 -0
  417. package/oiml-smart-core/entities/cs-participants.prl +470 -0
  418. package/oiml-smart-core/entities/engagement.prl +323 -0
  419. package/oiml-smart-core/entities/instrument.prl +359 -0
  420. package/oiml-smart-core/entities/module-b.prl +214 -0
  421. package/oiml-smart-core/entities/operated-schemes.prl +141 -0
  422. package/oiml-smart-core/entities/parties.prl +429 -0
  423. package/oiml-smart-core/entities/payment-records.prl +92 -0
  424. package/oiml-smart-core/entities/verification.prl +187 -0
  425. package/oiml-smart-core/entities/workflow.prl +2075 -0
  426. package/oiml-smart-core/evaluation/roles.prl +65 -0
  427. package/oiml-smart-core/evaluation/state-machines.prl +1157 -0
  428. package/oiml-smart-core/package.primmel +10 -0
  429. package/oiml-smart-core/specification/competence-kinds.prl +64 -0
  430. package/oiml-smart-core/specification/constraints.prl +40 -0
  431. package/oiml-smart-core/specification/invariants.prl +90 -0
  432. package/oiml-smart-core/specification/predicates.prl +116 -0
  433. package/oiml-smart-module-emc-disturbances/package.primmel +10 -0
  434. package/oiml-smart-module-env-iec60068/package.primmel +10 -0
  435. package/oiml-smart-module-examination-docs/package.primmel +10 -0
  436. package/oiml-smart-module-reference-materials/package.primmel +10 -0
  437. package/oiml-smart-module-report-headers/package.primmel +10 -0
  438. package/oiml-smart-module-software-d31/package.primmel +10 -0
  439. package/oiml-smart-module-specimen-governance/entities/test-execution.prl +228 -0
  440. package/oiml-smart-module-specimen-governance/package.primmel +10 -0
  441. package/oiml-twin-cert/documents/tw-1/document.yaml +454 -0
  442. package/oiml-twin-cert/evaluation/roles.prl +15 -0
  443. package/oiml-twin-cert/execution/forms/probe-creep.prl +179 -0
  444. package/oiml-twin-cert/execution/forms/probe.prl +99 -0
  445. package/oiml-twin-cert/execution/forms/static-conformance.prl +50 -0
  446. package/oiml-twin-cert/model/attributes.prl +243 -0
  447. package/oiml-twin-cert/model/behaviors.prl +8 -0
  448. package/oiml-twin-cert/model/characteristics.prl +18 -0
  449. package/oiml-twin-cert/model/monitors.prl +16 -0
  450. package/oiml-twin-cert/package.primmel +16 -0
  451. package/oiml-twin-cert/specification/conformance/twin-fidelity.prl +176 -0
  452. package/oiml-twin-cert/specification/requirements/twin-fidelity.prl +137 -0
  453. package/oiml-twin-cert/specification/symbols.prl +36 -0
  454. package/oiml-twin-cert/terminology.prl +8 -0
  455. package/oimlsmart-primmel-packages-0.1.0.tgz +0 -0
  456. package/package.json +17 -0
  457. package/qms-ref/model/qms.prl +31 -0
  458. package/qms-ref/package.primmel +38 -0
  459. package/quarry-belt-scale/model/ops.prl +115 -0
  460. package/quarry-belt-scale/package.primmel +36 -0
@@ -0,0 +1,280 @@
1
+ form r60-3/table-6.5 {
2
+ name "Load Cell Errors"
3
+ description "Load cell errors (E_L) calculation across four test temperatures"
4
+ data_class FormInstance#data
5
+ header r60-3/header-a
6
+ conformance_process /conf/metrological-tests/measurement-error-repeatability-mdlo
7
+ section "R 60-3, 6.5"
8
+ requirements { /req/metrological/mpe }
9
+ ref requirement "urn:oiml:pub:r:60-1:2021#clause-5.3.1"
10
+ ref test-procedure "urn:oiml:pub:r:60-2:2021#clause-2.10.1.12"
11
+ ref calculation "urn:oiml:pub:r:60-3:2021#clause-2.1.2.2"
12
+ ref report-format "urn:oiml:pub:r:60-3:2021#clause-6.5"
13
+ ref report-format "urn:oiml:pub:r:60-3:2021#table-3"
14
+ calculation_context { dimensions true tables { mpe_tiers } }
15
+ field conversion_factor_f : number {
16
+ label "Conversion factor (f)"
17
+ definition "Ratio of the change in indication to the corresponding change in load at 75% of maximum capacity. Converts counts to verification units (v)."
18
+ unit "counts/v"
19
+ required true
20
+ measurement_method computed
21
+ bind sample.test_context.conversion_factor_f
22
+ symbol f
23
+ specification_reference "R 60-3, 2.1.2.4"
24
+ calculation conversionFactor
25
+ calculation_bindings { avgIndicationAt75pct: reference_indication_75pct indicationAtDmin: indication_at_dmin n: n_test_intervals }
26
+ }
27
+ field indication_at_dmin : number {
28
+ label "Indication at D_min"
29
+ definition "Load cell indication at minimum test load (D_min), used as the lower reference point for computing f."
30
+ unit "counts"
31
+ required true
32
+ measurement_method direct
33
+ }
34
+ field n_lc : integer {
35
+ label "Number of verification intervals (n_LC)"
36
+ definition "Maximum number of load cell verification intervals n_LC, declared by the manufacturer."
37
+ required true
38
+ measurement_method declared
39
+ bind group.parameters.n_lc
40
+ symbol nLC
41
+ specification_reference "R 60-1, 3.5.8"
42
+ }
43
+ field y : integer {
44
+ label "Relative v_min (Y)"
45
+ definition "Ratio of the maximum measuring range to v_min (Y = (E_max - E_min)/v_min)."
46
+ measurement_method declared
47
+ bind group.parameters.y
48
+ symbol Y
49
+ specification_reference "R 60-1, 3.5.15"
50
+ }
51
+ field emax : number {
52
+ label "Maximum capacity (E_max)"
53
+ definition "Maximum capacity of the load cell."
54
+ unit "g, kg, or t"
55
+ required true
56
+ measurement_method declared
57
+ bind model.parameters.e_max
58
+ symbol Emax
59
+ specification_reference "R 60-1, 3.5.5"
60
+ }
61
+ field emin : number {
62
+ label "Minimum dead load (E_min)"
63
+ definition "Minimum dead load of the load cell."
64
+ unit "g, kg, or t"
65
+ measurement_method declared
66
+ bind family.parameters.e_min
67
+ symbol Emin
68
+ specification_reference "R 60-1, 3.5.9"
69
+ }
70
+ field vmin : number {
71
+ label "Minimum verification interval (v_min)"
72
+ definition "Minimum load cell verification interval."
73
+ unit "g, kg, or t"
74
+ required true
75
+ measurement_method declared
76
+ bind group.parameters.v_min
77
+ symbol vmin
78
+ specification_reference "R 60-1, 3.5.11"
79
+ }
80
+ field n_test_intervals : number {
81
+ label "Verification intervals of the tested range (n)"
82
+ definition "Number of verification intervals of the measuring range under test — (E_max − E_min)/v_min when the test spans the classified range (R 60-3, 2.1.2.4). Input n of the conversion-factor calculation."
83
+ measurement_method derived
84
+ symbol n
85
+ specification_reference "R 60-3, 2.1.2.4"
86
+ derivation "ocl{(emax - emin) / vmin}"
87
+ }
88
+ field v_mass : number {
89
+ label "Verification interval (v, mass)"
90
+ definition "The load cell verification interval of the tested range in mass units — (D_max − D_min)/n. Used to express loads in v for the changeover-point evaluation."
91
+ unit "g, kg, or t"
92
+ measurement_method derived
93
+ symbol v
94
+ specification_reference "R 60-1, 3.5.4"
95
+ derivation "ocl{(dmax - dmin) / n_test_intervals}"
96
+ }
97
+ field dmin : number {
98
+ label "Minimum test load (D_min)"
99
+ definition "The minimum test load applied during the test. The lower bound of the measurement range."
100
+ unit "g, kg, or t"
101
+ required true
102
+ measurement_method declared
103
+ bind sample.test_context.d_min
104
+ symbol Dmin
105
+ }
106
+ field dmax : number {
107
+ label "Maximum test load (D_max)"
108
+ definition "The maximum test load applied during the test. The upper bound of the measurement range."
109
+ unit "g, kg, or t"
110
+ required true
111
+ measurement_method declared
112
+ bind sample.test_context.d_max
113
+ symbol Dmax
114
+ }
115
+ field test_load_75pct : number {
116
+ label "75% test load"
117
+ definition "Test load at 75% of maximum capacity (E_max), used to determine the conversion factor f."
118
+ unit "g, kg, or t"
119
+ required true
120
+ measurement_method declared
121
+ targets { /req/metrological/mpe }
122
+ }
123
+ field reference_indication_75pct : number {
124
+ label "Reference indication at 75%"
125
+ definition "Average indication at the 75% load point, used as the reference for computing the conversion factor."
126
+ unit "counts"
127
+ required true
128
+ measurement_method direct
129
+ }
130
+ field plc : number {
131
+ label "Apportionment factor (p_LC)"
132
+ definition "The apportionment factor applied to MPE values. Default 0.7 per R 60-1, 3.7.2 unless otherwise marked."
133
+ measurement_method declared
134
+ bind family.parameters.p_lc
135
+ symbol pLC
136
+ specification_reference "R 60-1, 3.7.2, 5.3.2"
137
+ default 0.7
138
+ }
139
+ field temperature_series : array {
140
+ label "Temperature test series"
141
+ definition "Load cell error measurements at each of four test temperatures per R 60-2 Table 6: 20°C, T_1, T_2, 20°C (return)"
142
+ targets { /req/metrological/mpe /req/metrological/temperature-limits }
143
+ items { object fields {
144
+ field temperature : number {
145
+ label "Temperature"
146
+ definition "The ambient temperature at which this test series is conducted, in degrees Celsius."
147
+ unit "degC"
148
+ required true
149
+ measurement_method direct
150
+ }
151
+ field test_loads : array {
152
+ label "Test load measurements"
153
+ definition "Individual load point measurements at this temperature. Each row records the applied load, observed indication, and computed error."
154
+ description "At least five increasing load points incl. values at or near MPE changes, then decreasing with the same points (R 60-2, 2.10.1.8; hysteresis per R 60-1, 5.3)"
155
+ items { object fields {
156
+ field test_load : number {
157
+ label "Test load"
158
+ definition "The applied test load at this measurement point, in mass units."
159
+ unit "g, kg, or t"
160
+ required true
161
+ measurement_method direct
162
+ }
163
+ field direction : enum {
164
+ label "Direction"
165
+ definition "Whether this reading is in the increasing or decreasing load sequence (hysteresis per R 60-1, 5.3)"
166
+ required true
167
+ measurement_method direct
168
+ enum_values { increasing decreasing }
169
+ }
170
+ field indication : number {
171
+ label "Indication"
172
+ definition "The load cell output reading (in counts) observed at this test load and temperature."
173
+ unit "counts"
174
+ required true
175
+ measurement_method direct
176
+ }
177
+ field reference_indication : number {
178
+ label "Reference indication (R_i)"
179
+ definition "Reference indication at this test load, computed from the test load, D_min, D_max, n, and f per R 60-3, 2.1.2.6."
180
+ unit "indication units"
181
+ required true
182
+ measurement_method computed
183
+ symbol Ri
184
+ specification_reference "R 60-3, 2.1.2.6"
185
+ calculation referenceIndication
186
+ calculation_bindings { testLoad: test_load d_min: dmin d_max: dmax n: n_test_intervals conversion_factor_f: conversion_factor_f }
187
+ }
188
+ field error_EL : number {
189
+ label "Error (E_L)"
190
+ definition "Load cell error at this point: the signed difference between observed indication and reference indication, divided by the conversion factor f, expressed in verification units (v)."
191
+ unit "v"
192
+ required true
193
+ measurement_method derived
194
+ symbol EL
195
+ specification_reference "R 60-3, 2.1.2.2"
196
+ calculation loadCellError
197
+ calculation_bindings { avgIndication: indication referenceIndication: reference_indication conversion_factor_f: conversion_factor_f }
198
+ }
199
+ field mpe : number {
200
+ label "MPE"
201
+ definition "Maximum permissible error for this test load, determined by the accuracy class tier table (R 60-1, Table 4). The absolute error must not exceed this value."
202
+ unit "v"
203
+ measurement_method lookup
204
+ symbol MPE
205
+ specification_reference "R 60-1, 5.3.1, Table 4"
206
+ calculation mpe
207
+ calculation_bindings { load: test_load accuracy_class: accuracy_class p_lc: plc }
208
+ }
209
+ field within_mpe : boolean {
210
+ label "Within MPE"
211
+ definition "Evaluation result: whether the absolute load cell error is within the maximum permissible error at this point."
212
+ measurement_method evaluated
213
+ true_label "Yes"
214
+ false_label "No"
215
+ evaluation { rule "ocl{abs(error_EL) <= abs(mpe)}" condition "|E_L| <= |MPE|" specification_reference "R 60-1, 5.3.1" }
216
+ }
217
+ field changeover : object {
218
+ label "Changeover point evaluation (digital cells)"
219
+ definition "For digital load cells with an output interval greater than 0.20 v, the error prior to rounding is evaluated via the changeover point: P = I + ½v − ΔL, E = P − L, E_c = E − E_0 ≤ MPE (R 60-2, 2.10.7.2). Leave empty for analogue cells."
220
+ fields {
221
+ field delta_l : number {
222
+ label "Additional load (ΔL)"
223
+ definition "Additional load successively added until the digital output increases unambiguously by one output increment (I + v)."
224
+ unit "g, kg, or t"
225
+ measurement_method direct
226
+ specification_reference "R 60-2, 2.10.7.2"
227
+ }
228
+ field error_prior_rounding : number {
229
+ label "Error prior to rounding (E, v)"
230
+ definition "E = P − L with P = I + ½v − ΔL, expressed in v: indication/f + 0.5 − ΔL/v − L/v."
231
+ unit "v"
232
+ measurement_method derived
233
+ specification_reference "R 60-2, 2.10.7.2"
234
+ derivation "ocl{indication / conversion_factor_f + 0.5 - delta_l / v_mass - test_load / v_mass}"
235
+ }
236
+ field error_corrected : number {
237
+ label "Corrected error (E_c, v)"
238
+ definition "E_c = E − E_0, with E_0 the prior-rounding error at the minimum test load D_min (the D_min row of this series)."
239
+ unit "v"
240
+ measurement_method derived
241
+ symbol EC
242
+ specification_reference "R 60-2, 2.10.7.2"
243
+ derivation "ocl{error_prior_rounding - test_loads->select(r | r.test_load = dmin)->first().changeover.error_prior_rounding}"
244
+ }
245
+ field within_mpe_corrected : boolean {
246
+ label "E_c within MPE"
247
+ definition "Evaluation: whether the corrected error prior to rounding is within the MPE (R 60-2, 2.10.7.2: E_c ≤ MPE)."
248
+ measurement_method evaluated
249
+ true_label "Yes"
250
+ false_label "No"
251
+ evaluation { rule "ocl{abs(error_corrected) <= abs(mpe)}" condition "|E_c| <= |MPE|" specification_reference "R 60-2, 2.10.7.2" }
252
+ }
253
+ }
254
+ }
255
+ } }
256
+ min_items 5
257
+ }
258
+ } }
259
+ min_items 4
260
+ max_items 4
261
+ }
262
+ field dmin_pass : boolean {
263
+ label "D_min result"
264
+ definition "Whether the load cell passes the test at minimum test load."
265
+ measurement_method evaluated
266
+ true_label "Pass"
267
+ false_label "Fail"
268
+ }
269
+ field overall_result : boolean {
270
+ label "Overall result"
271
+ definition "Aggregate pass/fail: PASS if and only if every |E_L| <= |MPE| at every test load at every temperature."
272
+ required true
273
+ measurement_method evaluated
274
+ true_label "Pass"
275
+ false_label "Fail"
276
+ evaluation { rule "ocl{temperature_series->forAll(t | t.test_loads->forAll(l | l.within_mpe))}" condition "All |E_L| <= |MPE| at every test load at every temperature" specification_reference "R 60-1, 5.3.1" }
277
+ }
278
+ pass_fail { criteria "All |E_L| <= |MPE| for every test load at every temperature" pass_if "ocl{temperature_series->forAll(t | t.test_loads->forAll(l | l.within_mpe))}" }
279
+ }
280
+
@@ -0,0 +1,29 @@
1
+ form r60-3/table-6.3-6.4 {
2
+ name "Load Test"
3
+ description "Load test data — load cell error E_L with N runs per test load. R 60-3 publishes this as two printed tables (6.3 for 3 runs at classes C/D, 6.4 for 5 runs at classes A/B). Our data model has one form, parameterized by accuracy_class, that materializes both — fully DRY. This is the parameterization principle: the same dimension (accuracy_class) flows from the requirement (R 60-1, MPE tier) through the conformance test (R 60-2, §2.10.1 procedure count) to the test report form (R 60-3, table 6.3/6.4). The number of runs is `n_runs`."
4
+ data_class FormInstance#data
5
+ header r60-3/header-a
6
+ conformance_process /conf/metrological-tests/measurement-error-repeatability-mdlo
7
+ section "R 60-3, 6.3 (3 runs) / 6.4 (5 runs)"
8
+ requirements { /req/metrological/mpe /req/metrological/repeatability }
9
+ ref requirement "urn:oiml:pub:r:60-1:2021#clause-5.3"
10
+ ref test-procedure "urn:oiml:pub:r:60-2:2021#clause-2.10.1"
11
+ ref calculation "urn:oiml:pub:r:60-3:2021#clause-2.1.2"
12
+ ref report-format "urn:oiml:pub:r:60-3:2021#clause-6.3"
13
+ ref report-format "urn:oiml:pub:r:60-3:2021#clause-6.4"
14
+ ref report-format "urn:oiml:pub:r:60-3:2021#table-1"
15
+ ref report-format "urn:oiml:pub:r:60-3:2021#table-2"
16
+ applicability {
17
+ accuracy_class: [A, B, C, D]
18
+ }
19
+ field electronics_power_voltage : string {
20
+ label "Power supply voltage"
21
+ description "Voltage of the power supply used during the test (AC or DC as applicable)"
22
+ }
23
+ field test_loads : array {
24
+ label "Test load measurements"
25
+ description "Per-load-point measurements. Each row records the applied test load, N runs of (indication, time), and computed aggregates (mean, repeatability). N is 3 for classes C/D, 5 for classes A/B (R 60-2, §2.10.1), resolved at runtime from the conformance test's `instances` declaration (/conf/metrological-tests/measurement-error-repeatability-mdlo); the static shape below is the class C/D table (R 60-3, 6.3)."
26
+ subform_ref load-test-row { }
27
+ }
28
+ }
29
+
@@ -0,0 +1,82 @@
1
+ form r60-3/sec-6.1 {
2
+ name "Performance Test Summary"
3
+ description "Results of the performance tests — data-derived from test form instances"
4
+ data_class FormInstance#data
5
+ section "R 60-3, 6.1"
6
+ ref report-format "urn:oiml:pub:r:60-3:2021#clause-6.1"
7
+ ref report-format "urn:oiml:pub:r:60-3:2021#clause-6.1.1"
8
+ ref report-format "urn:oiml:pub:r:60-3:2021#clause-6.1/table-1"
9
+ ref report-format "urn:oiml:pub:r:60-3:2021#clause-6.1.1/table-1"
10
+ ref report-format "urn:oiml:pub:r:60-3:2021#clause-6"
11
+ field base_tests : array {
12
+ label "Performance test results"
13
+ description "Summary of base metrological performance tests — auto-derived from test form instances"
14
+ items { object fields {
15
+ field form_id : string {
16
+ label "Form"
17
+ }
18
+ field clause : string {
19
+ label "Clause"
20
+ }
21
+ field test_name : string {
22
+ label "Performance Test"
23
+ required true
24
+ }
25
+ field temperature : string {
26
+ label "Temperature"
27
+ }
28
+ field page_no : string {
29
+ label "Report Page No."
30
+ }
31
+ field max_error_v : number {
32
+ label "Max Error (v)"
33
+ unit "v"
34
+ }
35
+ field passed : boolean {
36
+ label "Passed"
37
+ }
38
+ field failed : boolean {
39
+ label "Failed"
40
+ }
41
+ field remark : string {
42
+ label "Remark"
43
+ }
44
+ } }
45
+ }
46
+ field electronic_tests : array {
47
+ label "Digital load cell test results"
48
+ description "Summary of additional tests for digital load cells — auto-derived from test form instances"
49
+ items { object fields {
50
+ field form_id : string {
51
+ label "Form"
52
+ }
53
+ field clause : string {
54
+ label "Clause"
55
+ }
56
+ field test_name : string {
57
+ label "Performance Test"
58
+ required true
59
+ }
60
+ field temperature : string {
61
+ label "Temperature"
62
+ }
63
+ field page_no : string {
64
+ label "Report Page No."
65
+ }
66
+ field max_error_v : number {
67
+ label "Max Error (v)"
68
+ unit "v"
69
+ }
70
+ field passed : boolean {
71
+ label "Passed"
72
+ }
73
+ field failed : boolean {
74
+ label "Failed"
75
+ }
76
+ field remark : string {
77
+ label "Remark"
78
+ }
79
+ } }
80
+ }
81
+ }
82
+
@@ -0,0 +1,166 @@
1
+ form r60-3/form-6.12 {
2
+ name "Power Voltage"
3
+ description "Power voltage variation test"
4
+ data_class FormInstance#data
5
+ header r60-3/header-b
6
+ conformance_process /conf/electronic-tests/power-voltage
7
+ section "R 60-3, 6.12"
8
+ requirements { /req/electronic/power-voltage-ac /req/electronic/power-voltage-dc /req/electronic/power-voltage-variations }
9
+ ref requirement "urn:oiml:pub:r:60-1:2021#clause-5.7.2.2"
10
+ ref requirement "urn:oiml:pub:r:60-1:2021#clause-5.7.2.3"
11
+ ref requirement "urn:oiml:pub:r:60-1:2021#clause-5.7.2.4"
12
+ ref test-procedure "urn:oiml:pub:r:60-2:2021#clause-2.10.7.4"
13
+ ref calculation "urn:oiml:pub:r:60-3:2021#clause-2.2.2"
14
+ ref calculation "urn:oiml:pub:r:60-3:2021#clause-2.2.2.1"
15
+ ref calculation "urn:oiml:pub:r:60-3:2021#clause-2.2.2.2"
16
+ ref calculation "urn:oiml:pub:r:60-3:2021#clause-2.2.2.3"
17
+ ref calculation "urn:oiml:pub:r:60-3:2021#clause-2.2.2.4"
18
+ ref report-format "urn:oiml:pub:r:60-3:2021#clause-6.12"
19
+ ref report-format "urn:oiml:pub:r:60-3:2021#clause-6.12.1"
20
+ ref report-format "urn:oiml:pub:r:60-3:2021#table-15"
21
+ ref report-format "urn:oiml:pub:r:60-3:2021#clause-6.12.1/table-1"
22
+ calculation_context { dimensions true tables { mpe_tiers } }
23
+ field conversion_factor_f : number {
24
+ label "Conversion Factor F"
25
+ unit "counts/v"
26
+ required true
27
+ bind sample.test_context.conversion_factor_f
28
+ targets { /req/electronic/power-voltage-ac /req/electronic/power-voltage-dc }
29
+ }
30
+ field dmax : number {
31
+ label "Maximum test load (D_max)"
32
+ unit "g, kg, or t"
33
+ required true
34
+ measurement_method declared
35
+ bind sample.test_context.d_max
36
+ targets { /req/electronic/power-voltage-variations }
37
+ }
38
+ field plc : number {
39
+ label "Apportionment factor (p_LC)"
40
+ measurement_method declared
41
+ bind family.parameters.p_lc
42
+ targets { /req/electronic/power-voltage-variations }
43
+ default 0.7
44
+ }
45
+ field main_voltage : string {
46
+ label "Main Voltage"
47
+ required true
48
+ bind model.parameters.power_voltage
49
+ targets { /req/electronic/power-voltage-ac /req/electronic/power-voltage-dc }
50
+ }
51
+ field supply_type : enum {
52
+ label "Supply Type"
53
+ required true
54
+ targets { /req/electronic/power-voltage-ac /req/electronic/power-voltage-dc }
55
+ values { AC { label "AC" } DC { label "DC" } }
56
+ }
57
+ field preloads : array {
58
+ label "Preloads"
59
+ targets { /req/electronic/power-voltage-variations }
60
+ items { object fields {
61
+ field test_load : string {
62
+ label "Test Load"
63
+ description "D_min or D_max"
64
+ }
65
+ field indication : number {
66
+ label "Indication"
67
+ unit "counts"
68
+ }
69
+ field time : string {
70
+ label "Time"
71
+ }
72
+ } }
73
+ min_items 3
74
+ max_items 3
75
+ }
76
+ field voltage_tests : object {
77
+ label "Voltage Tests"
78
+ targets { /req/electronic/power-voltage-variations }
79
+ fields {
80
+ field initial_run : object {
81
+ label "Initial Run"
82
+ fields {
83
+ field dmin_indication : number {
84
+ label "Dmin Indication"
85
+ }
86
+ field dmax_indication : number {
87
+ label "Dmax Indication"
88
+ }
89
+ field span_counts : number {
90
+ label "Span Counts"
91
+ calculation "ocl{dmax_indication - dmin_indication}"
92
+ }
93
+ field span_vmin : number {
94
+ label "Span Vmin"
95
+ calculation "ocl{span_counts / conversion_factor_f}"
96
+ }
97
+ }
98
+ }
99
+ field lower_limit : object {
100
+ label "Lower Limit"
101
+ fields {
102
+ field dmin_indication : number {
103
+ label "Dmin Indication"
104
+ }
105
+ field dmax_indication : number {
106
+ label "Dmax Indication"
107
+ }
108
+ field span_counts : number {
109
+ label "Span Counts"
110
+ calculation "ocl{dmax_indication - dmin_indication}"
111
+ }
112
+ field span_vmin : number {
113
+ label "Span Vmin"
114
+ calculation "ocl{span_counts / conversion_factor_f}"
115
+ }
116
+ field change : number {
117
+ label "Change"
118
+ calculation "ocl{span_vmin - initial_run.span_vmin}"
119
+ }
120
+ }
121
+ }
122
+ field upper_limit : object {
123
+ label "Upper Limit"
124
+ fields {
125
+ field dmin_indication : number {
126
+ label "Dmin Indication"
127
+ }
128
+ field dmax_indication : number {
129
+ label "Dmax Indication"
130
+ }
131
+ field span_counts : number {
132
+ label "Span Counts"
133
+ calculation "ocl{dmax_indication - dmin_indication}"
134
+ }
135
+ field span_vmin : number {
136
+ label "Span Vmin"
137
+ calculation "ocl{span_counts / conversion_factor_f}"
138
+ }
139
+ field change : number {
140
+ label "Change"
141
+ calculation "ocl{span_vmin - initial_run.span_vmin}"
142
+ }
143
+ }
144
+ }
145
+ field mpc : number {
146
+ label "Mpc"
147
+ unit "v"
148
+ calculation "ocl{abs(lookup_mpe(dmax, accuracy_class, plc))}"
149
+ source_discrepancy {
150
+ summary "R 60-3, Form 6.12 note 3 and its mpc column state the power-voltage span change limit as v_min, while R 60-1, 5.7.2.4 requires measurement results to stay within the maximum permissible errors during voltage variations"
151
+ sources { "urn:oiml:pub:r:60-3:2021#clause-6.12" "urn:oiml:pub:r:60-1:2021#clause-5.7.2.4" }
152
+ resolution follows_clause_x
153
+ rationale "The form follows the normative Part 1 limit (|MPE| at D_max): R 60-1, 5.7.2.4 requires all measurement results to stay within the MPE during voltage variations, and the same tension in Form 6.11 is resolved there by note 5 defining mpc as |MPE|. The v_min wording of Form 6.12 note 3 is the dissenting print. See analysis/deep-audit-r60.md F6."
154
+ }
155
+ }
156
+ }
157
+ }
158
+ field overall_result : boolean {
159
+ label "Overall Result"
160
+ required true
161
+ true_label "Pass"
162
+ false_label "Fail"
163
+ }
164
+ pass_fail { criteria "Change of span must not exceed mpc (|MPE| at D_max) at lower/upper voltage limits — R 60-3, Form 6.12 notes 3 vs 5 discrepancy annotated on the mpc field" pass_if "ocl{abs(voltage_tests.lower_limit.change) <= voltage_tests.mpc and abs(voltage_tests.upper_limit.change) <= voltage_tests.mpc}" }
165
+ }
166
+