@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,114 @@
1
+ requirement_class /req/classification {
2
+ title "Classification requirements"
3
+ name "Classification requirements for load cells"
4
+ description "Requirements for classifying load cells into accuracy classes (A, B, C, D) with supplementary classifications for loading type, temperature, and humidity."
5
+ subject "load cell classification"
6
+ }
7
+
8
+ requirement /req/classification/accuracy-classes {
9
+ name "Accuracy classes and their symbols"
10
+ statement "Load cells shall be ranked according to their overall performance capabilities into one of the four accuracy classes whose designations are as follows: Class A; Class B; Class C; Class D."
11
+ binds_to { group.classification.accuracy_class }
12
+ parameters {
13
+ param accuracy_class: enum { description "The accuracy class designation determines n_LC limits, MPE breakpoints, number of test runs, and temperature increment requirements." bind "group.classification.accuracy_class" enum_values { A B C D } }
14
+ }
15
+ verification { method definitional description "Accuracy class is a classification decision, not a testable property. The class is assigned based on the load cell's n_LC and test performance." }
16
+ ref derives-from "urn:oiml:pub:r:60-1:2021#clause-5.1.1"
17
+ ref derives-from "urn:oiml:pub:r:60-1:2021#clause-5.1"
18
+ ref derives-from "urn:oiml:pub:r:60-1:2021#clause-5.1.1"
19
+ }
20
+
21
+ requirement /req/classification/max-verification-intervals {
22
+ name "Maximum number of load cell verification intervals"
23
+ statement "The maximum number of load cell verification intervals, n_LC, into which the maximum measuring range E_max - E_min can be divided in a measuring system shall be within the limits: Class A >= 50,000 (unlimited); Class B 5,000 to 100,000; Class C 500 to 10,000; Class D 100 to 1,000."
24
+ binds_to { group.parameters.n_lc group.classification.accuracy_class }
25
+ limit {
26
+ expression "ocl{group.parameters.n_lc >= lookupProfile('n_LC_range', group.classification.accuracy_class).min and (lookupProfile('n_LC_range', group.classification.accuracy_class).max.oclIsUndefined() or group.parameters.n_lc <= lookupProfile('n_LC_range', group.classification.accuracy_class).max)}"
27
+ uses { group.parameters.n_lc group.classification.accuracy_class profile:n_LC_range formula:lookupProfile }
28
+ }
29
+ parameters {
30
+ param n_LC: integer { description "Maximum number of load cell verification intervals. Ranges by class: A: ≥ 50000 (unlimited); B: [5000, 100000]; C: [500, 10000]; D: [100, 1000]." unit "intervals" bind "group.parameters.n_lc" }
31
+ }
32
+ acceptance_criteria {
33
+ type: "tiered"
34
+ description: "n_LC must fall within the range prescribed for the declared accuracy class.\n"
35
+ variable: "n_LC"
36
+ variable_unit: "intervals"
37
+ tiers:
38
+ - range:
39
+ min: 50000
40
+ limit:
41
+ expression: "Class A: n_LC ≥ 50000"
42
+ - range:
43
+ min: 5000
44
+ max: 100000
45
+ limit:
46
+ expression: "Class B: 5000 ≤ n_LC ≤ 100000"
47
+ - range:
48
+ min: 500
49
+ max: 10000
50
+ limit:
51
+ expression: "Class C: 500 ≤ n_LC ≤ 10000"
52
+ - range:
53
+ min: 100
54
+ max: 1000
55
+ limit:
56
+ expression: "Class D: 100 ≤ n_LC ≤ 1000"
57
+ }
58
+ verification { method computational description "n_LC = (E_max - E_min) / v_min. Verified by computing from manufacturer's declared values." }
59
+ ref derives-from "urn:oiml:pub:r:60-1:2021#clause-5.1.2"
60
+ ref derives-from "urn:oiml:pub:r:60-1:2021#clause-5.1.2"
61
+ ref derives-from "urn:oiml:pub:r:60-1:2021#clause-table-1"
62
+ }
63
+
64
+ requirement /req/classification/min-verification-interval {
65
+ name "Minimum load cell verification interval"
66
+ statement "The minimum load cell verification interval, v_min, shall be specified by the manufacturer."
67
+ binds_to { group.parameters.v_min }
68
+ verification { method inspection description "v_min is a manufacturer-declared value. Verified by checking it is specified in the accompanying documentation." }
69
+ ref derives-from "urn:oiml:pub:r:60-1:2021#clause-5.1.3"
70
+ }
71
+
72
+ requirement /req/classification/supplementary-loading {
73
+ name "Supplementary classifications for loading type"
74
+ statement "Load cells shall also be classified by the intended manner in which a load is applied to the load cell wherever there would be a risk of confusing the manner of loading (i.e. compression loading, tension loading or universal). A load cell may bear different classifications according to the intended manner in which a load is applied. For multiple capacity load cells, each capacity shall be classified separately."
75
+ binds_to { group.classification.load_type }
76
+ parameters {
77
+ param load_type: enum { description "Type of loading the load cell is designed for. Required when not clearly apparent from construction." bind "group.classification.load_type" enum_values { compression tension universal beam } }
78
+ }
79
+ verification { method inspection description "Loading type classification is inspected from the load cell markings and documentation." }
80
+ ref derives-from "urn:oiml:pub:r:60-1:2021#clause-5.1.4"
81
+ ref derives-from "urn:oiml:pub:r:60-1:2021#clause-5.1.4"
82
+ ref derives-from "urn:oiml:pub:r:60-1:2021#clause-table-6"
83
+ }
84
+
85
+ requirement /req/classification/complete-classification {
86
+ name "Complete load cell classification"
87
+ statement "The load cell shall be classified corresponding to the following six parameters: accuracy class designation; maximum number of load cell verification intervals; intended manner of the application of the load, if necessary; special limits of working temperature, if applicable; humidity symbol, if applicable; and additional characterisation information."
88
+ binds_to { group.classification.accuracy_class group.parameters.n_lc group.classification.load_type family.parameters.t_min family.parameters.t_max family.classification.humidity_class }
89
+ dependencies { /req/classification/accuracy-classes /req/classification/max-verification-intervals /req/classification/supplementary-loading }
90
+ verification { method inspection description "Complete classification is verified by inspecting all six parameters in the documentation and markings." }
91
+ ref derives-from "urn:oiml:pub:r:60-1:2021#clause-5.1.5"
92
+ }
93
+
94
+ requirement /req/classification/standard-classification {
95
+ name "Standard classification"
96
+ statement "Standard classifications shall be used."
97
+ guidance "Examples: C2 (Class C, 2000 intervals); C3 with arrows and temperature range; C2 NH (Class C, 2000 intervals, not subjected to humidity test)."
98
+ binds_to { group.classification.accuracy_class group.parameters.n_lc }
99
+ verification { method inspection description "Verified by checking that the classification designation follows the standard format per R 60-1, 5.1.6." }
100
+ ref derives-from "urn:oiml:pub:r:60-1:2021#clause-5.1.6"
101
+ ref derives-from "urn:oiml:pub:r:60-1:2021#clause-5.1.6"
102
+ ref derives-from "urn:oiml:pub:r:60-1:2021#clause-table-2"
103
+ }
104
+
105
+ requirement /req/classification/multiple-classifications {
106
+ name "Multiple classifications"
107
+ statement "Load cells that have comprehensive classifications for the manner in which the load is applied to the load cell shall be accompanied by the relative information for each classification."
108
+ binds_to { group.classification.load_type }
109
+ verification { method inspection description "Verified by checking that documentation covers all declared classification variants." }
110
+ ref derives-from "urn:oiml:pub:r:60-1:2021#clause-5.1.7"
111
+ ref derives-from "urn:oiml:pub:r:60-1:2021#clause-5.1.7"
112
+ ref derives-from "urn:oiml:pub:r:60-1:2021#clause-table-3"
113
+ }
114
+
@@ -0,0 +1,222 @@
1
+ requirement_class /req/electronic {
2
+ title "Electronic load cell requirements"
3
+ name "Requirements for analogue-active and digital load cells"
4
+ description "Additional requirements applicable to analogue-active and digital load cells, covering faults, durability, warm-up time, power supply variations, electromagnetic disturbances, and span stability."
5
+ subject "electronic load cell"
6
+ guidance "These requirements apply in addition to the base metrological requirements."
7
+ applicability {
8
+ technology: [analogue-active, digital]
9
+ }
10
+ dependencies { /req/metrological }
11
+ }
12
+
13
+ requirement /req/electronic/p-lc-constraint {
14
+ name "Apportioning factor constraint for electronic load cells"
15
+ statement "The MPE shall be determined using an apportioning factor p_LC greater than or equal to 0.7 and less than or equal to 0.8 (0.7 <= p_LC <= 0.8) substituted for the apportioning factor declared by the manufacturer."
16
+ binds_to { family.parameters.p_lc family.classification.technology }
17
+ limit {
18
+ expression "ocl{family.parameters.p_lc >= 0.7 and family.parameters.p_lc <= 0.8}"
19
+ uses { family.parameters.p_lc family.classification.technology }
20
+ }
21
+ parameters {
22
+ param p_LC: number { description "Apportioning factor for electronic load cells. Must be in range [0.7, 0.8] — overrides any value declared by the manufacturer." unit "dimensionless" bind "family.parameters.p_lc" default 0.7 range { min 0.7 max 0.8 } }
23
+ }
24
+ acceptance_criteria {
25
+ type: "threshold"
26
+ description: "p_LC shall be within [0.7, 0.8] for electronic load cells.\n"
27
+ limit:
28
+ expression: "p_LC"
29
+ operator: "gte"
30
+ threshold_expression: "0.7"
31
+ unit: "dimensionless"
32
+ }
33
+ verification { method computational description "Verified by checking the declared p_LC value in the test report against the allowed range." }
34
+ ref derives-from "urn:oiml:pub:r:60-1:2021#clause-5.7.1"
35
+ }
36
+
37
+ requirement /req/electronic/no-significant-faults {
38
+ name "Faults"
39
+ statement "An analogue-active load cell shall be designed and manufactured such that when it is exposed to electrical disturbances either significant faults do not occur, or significant faults are detected and acted upon."
40
+ guidance "The choice of whether faults must not occur or must be detected and acted upon is left to the manufacturer. A fault in value that is equal to or smaller than v_min is allowed."
41
+ binds_to { group.parameters.v_min family.classification.technology }
42
+ acceptance_criteria {
43
+ type: "qualitative"
44
+ description: "Either no significant faults occur during disturbance tests, or significant faults are detected and acted upon (fault ≤ v_min is allowed).\n"
45
+ items:
46
+ - description: "No significant fault occurs during electrical disturbances"
47
+ reference: "urn:oiml:pub:r:60-1:2021#clause-5.7.1.1"
48
+ - description: "Significant faults are detected and acted upon automatically"
49
+ reference: "urn:oiml:pub:r:60-1:2021#clause-5.7.1.1"
50
+ }
51
+ verification { method testing description "Verified by EMC susceptibility tests per R 60-2, 2.10.7." }
52
+ ref derives-from "urn:oiml:pub:r:60-1:2021#clause-5.7.1.1"
53
+ ref derives-from "urn:oiml:pub:r:60-1:2021#clause-5.7"
54
+ ref derives-from "urn:oiml:pub:r:60-1:2021#clause-5.7.1.1"
55
+ }
56
+
57
+ requirement /req/electronic/acting-on-faults {
58
+ name "Acting upon significant faults"
59
+ statement "When a significant fault has been detected, either the load cell shall be made inoperative automatically or a fault detection output shall be issued automatically. This fault detection output shall continue until the fault has been resolved."
60
+ binds_to { model.parameters.output_signal }
61
+ acceptance_criteria {
62
+ type: "qualitative"
63
+ description: "Fault response mechanism must activate automatically and persist until the fault is resolved.\n"
64
+ items:
65
+ - description: "Load cell becomes inoperative automatically upon significant fault"
66
+ reference: "urn:oiml:pub:r:60-1:2021#clause-5.7.1.2"
67
+ - description: "Fault detection output is issued automatically and persists"
68
+ reference: "urn:oiml:pub:r:60-1:2021#clause-5.7.1.2"
69
+ }
70
+ verification { method inspection description "Inspected during type evaluation by reviewing design documentation and functional testing." }
71
+ ref derives-from "urn:oiml:pub:r:60-1:2021#clause-5.7.1.2"
72
+ ref derives-from "urn:oiml:pub:r:60-1:2021#clause-5.7.1.4"
73
+ ref derives-from "urn:oiml:pub:r:60-1:2021#clause-5.7.1.5"
74
+ }
75
+
76
+ requirement /req/electronic/durability {
77
+ name "Durability"
78
+ statement "The load cell shall be suitably durable so that the requirements of this Recommendation may be met in accordance with the intended use of the load cell."
79
+ binds_to { group.parameters.mpe }
80
+ acceptance_criteria {
81
+ type: "qualitative"
82
+ description: "Load cell shall maintain compliance with all requirements throughout its intended service life.\n"
83
+ items:
84
+ - description: "Load cell meets all metrological requirements after durability testing"
85
+ }
86
+ verification { method deferred description "Assessed through the overall type evaluation process; no single specific test. Durability is inferred from successful completion of all test procedures." }
87
+ ref derives-from "urn:oiml:pub:r:60-1:2021#clause-5.7.1.3"
88
+ }
89
+
90
+ requirement /req/electronic/warm-up-time {
91
+ name "Warm-up time"
92
+ statement "During the designed warm-up time of an analogue-active load cell there shall be no transmission of measurement results."
93
+ binds_to { model.parameters.warm_up_time }
94
+ acceptance_criteria {
95
+ type: "qualitative"
96
+ description: "No measurement results shall be transmitted during warm-up period.\n"
97
+ items:
98
+ - description: "No measurement output during manufacturer-specified warm-up time"
99
+ }
100
+ verification { method inspection description "Inspected by reviewing design documentation and verifying warm-up behavior during test." }
101
+ ref derives-from "urn:oiml:pub:r:60-1:2021#clause-5.7.2.1"
102
+ ref derives-from "urn:oiml:pub:r:60-1:2021#clause-5.7.2"
103
+ ref derives-from "urn:oiml:pub:r:60-1:2021#clause-5.7.2.1"
104
+ }
105
+
106
+ requirement /req/electronic/power-voltage-ac {
107
+ name "Mains power supply (AC)"
108
+ statement "An analogue-active load cell that operates from a mains power supply shall be designed to comply with the metrological requirements if the mains power supply varies in voltage from -15% to +10% of the supply voltage."
109
+ binds_to { model.parameters.power_voltage group.parameters.mpe }
110
+ limit {
111
+ expression "ocl{abs(e_l) <= abs(group.parameters.mpe)}"
112
+ uses { observable:e_l model.parameters.power_voltage group.parameters.mpe formula:lookupMPE table:mpe_tiers }
113
+ }
114
+ parameters {
115
+ param voltage_variation_low: number { description "Maximum negative voltage variation from nominal" unit "%" default -15 range { min -15 max -15 } }
116
+ param voltage_variation_high: number { description "Maximum positive voltage variation from nominal" unit "%" default 10 range { min 10 max 10 } }
117
+ }
118
+ acceptance_criteria {
119
+ type: "threshold"
120
+ description: "All metrological requirements met with mains voltage varying from -15% to +10% of nominal.\n"
121
+ limit:
122
+ expression: "|E_L|"
123
+ operator: "lte"
124
+ threshold_expression: "MPE"
125
+ referenced_function: "lookupMPE"
126
+ unit: "v"
127
+ per_condition: "when mains voltage varies -15% to +10% of nominal"
128
+ }
129
+ ref derives-from "urn:oiml:pub:r:60-1:2021#clause-5.7.2.2"
130
+ }
131
+
132
+ requirement /req/electronic/power-voltage-dc {
133
+ name "Battery power supply (DC)"
134
+ statement "An analogue-active load cell that operates from a battery power supply shall either continue to function correctly, or not provide a measurement result whenever the voltage is below the value specified by the manufacturer."
135
+ binds_to { model.parameters.power_voltage }
136
+ acceptance_criteria {
137
+ type: "qualitative"
138
+ description: "Either correct operation maintained, or measurement output suppressed when battery voltage drops below threshold.\n"
139
+ items:
140
+ - description: "Load cell functions correctly at low battery voltage"
141
+ reference: "urn:oiml:pub:r:60-1:2021#clause-5.7.2.3"
142
+ - description: "No measurement result provided when voltage below manufacturer's threshold"
143
+ reference: "urn:oiml:pub:r:60-1:2021#clause-5.7.2.3"
144
+ }
145
+ verification { method testing description "Verified by DC voltage variation test per R 60-2, 2.10.7." }
146
+ ref derives-from "urn:oiml:pub:r:60-1:2021#clause-5.7.2.3"
147
+ }
148
+
149
+ requirement /req/electronic/power-voltage-variations {
150
+ name "Maximum allowable variations during voltage variations"
151
+ statement "All functions shall operate as designed. All measurement results shall be within maximum permissible errors."
152
+ binds_to { model.parameters.power_voltage group.parameters.mpe }
153
+ limit {
154
+ expression "ocl{abs(e_l) <= abs(group.parameters.mpe)}"
155
+ uses { observable:e_l model.parameters.power_voltage group.parameters.mpe formula:lookupMPE table:mpe_tiers }
156
+ }
157
+ acceptance_criteria {
158
+ type: "threshold"
159
+ description: "All functions operate correctly and errors remain within MPE during voltage variations.\n"
160
+ limit:
161
+ expression: "|E_L|"
162
+ operator: "lte"
163
+ threshold_expression: "MPE"
164
+ referenced_function: "lookupMPE"
165
+ unit: "v"
166
+ per_condition: "during AC/DC voltage variations"
167
+ }
168
+ ref derives-from "urn:oiml:pub:r:60-1:2021#clause-5.7.2.4"
169
+ }
170
+
171
+ requirement /req/electronic/disturbances {
172
+ name "Disturbances"
173
+ statement "When an analogue-active load cell is subjected to the disturbances specified in R 60-2, 2.10.7.5 to 2.10.7.10, the difference between the load cell output due to a disturbance and the load cell output without disturbance (fault) shall satisfy the conditions in section 5.7.1.1."
174
+ guidance "Disturbances include: short-time power reductions, bursts (electrical fast transients), surge, electrostatic discharge, electromagnetic susceptibility, and immunity to conducted electromagnetic fields."
175
+ binds_to { group.parameters.v_min }
176
+ limit {
177
+ expression "ocl{abs(fault) <= 1}"
178
+ notes "Significant-fault limit is one verification interval (1 v, R 60-1, 5.7.1.1 NOTE); the fault difference is expressed in v units — not the v_min mass value."
179
+ uses { observable:fault group.parameters.v_min }
180
+ }
181
+ acceptance_criteria {
182
+ type: "threshold"
183
+ description: "Fault (output difference due to disturbance) shall not exceed the significant fault threshold per section 5.7.1.1.\n"
184
+ limit:
185
+ expression: "|fault|"
186
+ operator: "lte"
187
+ threshold_expression: "v_min"
188
+ unit: "v"
189
+ per_condition: "for each EMC disturbance type per R 60-2, 2.10.7.5–2.10.7.10"
190
+ }
191
+ ref derives-from "urn:oiml:pub:r:60-1:2021#clause-5.7.2.5"
192
+ }
193
+
194
+ requirement /req/electronic/span-stability {
195
+ name "Span stability"
196
+ statement "When an analogue-active load cell is subjected to the span stability test specified in R 60-2, 2.10.7.11, the variation in the load cell span measurement results shall not exceed the greater of: half the load cell verification interval; or half the absolute value of the MPE for the applied test load D_max."
197
+ guidance "Not applicable to Class A load cells. p_LC = 1.0 for span stability tests."
198
+ binds_to { group.parameters.mpe sample.test_context.d_max group.classification.accuracy_class }
199
+ limit {
200
+ expression "ocl{abs(span_variation) <= max(0.5, 0.5 * abs(lookupMPE(sample.test_context.d_max, group.classification.accuracy_class, 1.0)))}"
201
+ uses { observable:span_variation group.parameters.mpe group.classification.accuracy_class sample.test_context.d_max formula:lookupMPE formula:maxAllowableSpanVariation table:mpe_tiers }
202
+ }
203
+ parameters {
204
+ param p_LC_span: number { description "p_LC used for span stability MPE — always 1.0, regardless of manufacturer's declared value." default 1 range { min 1 max 1 } }
205
+ }
206
+ applicability {
207
+ accuracy_class: [B, C, D]
208
+ }
209
+ acceptance_criteria {
210
+ type: "threshold"
211
+ description: "Span variation ≤ max(0.5v, 0.5 × |MPE|) using p_LC = 1.0.\n"
212
+ limit:
213
+ expression: "|Δspan|"
214
+ operator: "lte"
215
+ threshold_expression: "max(0.5, 0.5 × |MPE|)"
216
+ referenced_function: "maxAllowableSpanVariation"
217
+ unit: "v"
218
+ per_condition: "over duration test period per R 60-2, 2.10.7.11"
219
+ }
220
+ ref derives-from "urn:oiml:pub:r:60-1:2021#clause-5.7.2.6"
221
+ }
222
+