@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,189 @@
1
+ form r60-3/table-6.6 {
2
+ name "Repeatability"
3
+ description "Repeatability errors (E_R) 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.6"
8
+ requirements { /req/metrological/repeatability }
9
+ ref requirement "urn:oiml:pub:r:60-1:2021#clause-5.4"
10
+ ref test-procedure "urn:oiml:pub:r:60-2:2021#clause-2.10.1.15"
11
+ ref calculation "urn:oiml:pub:r:60-3:2021#clause-2.1.3"
12
+ ref report-format "urn:oiml:pub:r:60-3:2021#clause-6.6"
13
+ ref report-format "urn:oiml:pub:r:60-3:2021#table-4"
14
+ calculation_context { dimensions true tables { mpe_tiers } }
15
+ field conversion_factor_f : number {
16
+ label "Conversion factor (f)"
17
+ definition "Ratio of indication change to load change at 75% of Max. 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 reference_indication_75pct : number {
28
+ label "Reference indication at 75%"
29
+ definition "Average indication at the 75% load point, used to compute f."
30
+ unit "counts"
31
+ required true
32
+ measurement_method direct
33
+ }
34
+ field indication_at_dmin : number {
35
+ label "Indication at D_min"
36
+ definition "Load cell indication at minimum test load (D_min), used to compute f."
37
+ unit "counts"
38
+ required true
39
+ measurement_method direct
40
+ }
41
+ field n_lc : integer {
42
+ label "Number of verification intervals (n_LC)"
43
+ definition "Maximum number of load cell verification intervals n_LC, declared by the manufacturer."
44
+ required true
45
+ measurement_method declared
46
+ bind group.parameters.n_lc
47
+ symbol nLC
48
+ specification_reference "R 60-1, 3.5.8"
49
+ }
50
+ field y : integer {
51
+ label "Relative v_min (Y)"
52
+ definition "Ratio of the maximum measuring range to v_min (Y = (E_max - E_min)/v_min)."
53
+ measurement_method declared
54
+ bind group.parameters.y
55
+ symbol Y
56
+ specification_reference "R 60-1, 3.5.15"
57
+ }
58
+ field emax : number {
59
+ label "Maximum capacity (E_max)"
60
+ definition "Maximum capacity of the load cell."
61
+ unit "g, kg, or t"
62
+ required true
63
+ measurement_method declared
64
+ bind model.parameters.e_max
65
+ symbol Emax
66
+ specification_reference "R 60-1, 3.5.5"
67
+ }
68
+ field emin : number {
69
+ label "Minimum dead load (E_min)"
70
+ definition "Minimum dead load of the load cell."
71
+ unit "g, kg, or t"
72
+ measurement_method declared
73
+ bind family.parameters.e_min
74
+ symbol Emin
75
+ specification_reference "R 60-1, 3.5.9"
76
+ }
77
+ field vmin : number {
78
+ label "Minimum verification interval (v_min)"
79
+ definition "Minimum load cell verification interval."
80
+ unit "g, kg, or t"
81
+ required true
82
+ measurement_method declared
83
+ bind group.parameters.v_min
84
+ symbol vmin
85
+ specification_reference "R 60-1, 3.5.11"
86
+ }
87
+ field n_test_intervals : number {
88
+ label "Verification intervals of the tested range (n)"
89
+ 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."
90
+ measurement_method derived
91
+ symbol n
92
+ specification_reference "R 60-3, 2.1.2.4"
93
+ derivation "ocl{(emax - emin) / vmin}"
94
+ }
95
+ field plc : number {
96
+ label "Apportionment factor (p_LC)"
97
+ definition "Apportionment factor applied to MPE. Default 0.7 per R 60-1, 3.7.2 unless otherwise marked."
98
+ measurement_method declared
99
+ bind family.parameters.p_lc
100
+ symbol pLC
101
+ specification_reference "R 60-1, 3.7.2, 5.3.2"
102
+ default 0.7
103
+ }
104
+ field temperature_series : array {
105
+ label "Temperature test series"
106
+ definition "Repeatability error measurements at each of four test temperatures (20°C, T_1, T_2, 20°C return)"
107
+ items { object fields {
108
+ field temperature : number {
109
+ label "Temperature"
110
+ definition "Ambient temperature at which this repeatability test is conducted."
111
+ unit "degC"
112
+ required true
113
+ measurement_method direct
114
+ }
115
+ field test_loads : array {
116
+ label "Test load measurements"
117
+ definition "Repeatability error at each load point for this temperature."
118
+ items { object fields {
119
+ field test_load : number {
120
+ label "Test load"
121
+ definition "The applied test load at this measurement point."
122
+ unit "g, kg, or t"
123
+ required true
124
+ measurement_method direct
125
+ }
126
+ field runs : array {
127
+ label "Run readings"
128
+ definition "Per-run indication readings at this load point used to compute repeatability error."
129
+ items { object fields {
130
+ field run_number : integer {
131
+ label "Run number"
132
+ required true
133
+ measurement_method declared
134
+ }
135
+ field indication : number {
136
+ label "Indication (counts)"
137
+ unit "counts"
138
+ required true
139
+ measurement_method direct
140
+ }
141
+ } }
142
+ min_items 3
143
+ }
144
+ field repeatability_error_v : number {
145
+ label "Repeatability error (E_R)"
146
+ definition "Repeatability error in verification units: (max indication − min indication) / f."
147
+ unit "v"
148
+ measurement_method derived
149
+ symbol ER
150
+ specification_reference "R 60-3, 2.1.3"
151
+ calculation repeatabilityError
152
+ calculation_bindings { indications: runs.indication conversion_factor_f: conversion_factor_f }
153
+ }
154
+ field mpe : number {
155
+ label "MPE"
156
+ definition "Maximum permissible error for this test load from the accuracy class tier table (R 60-1, Table 4)."
157
+ unit "v"
158
+ measurement_method lookup
159
+ symbol MPE
160
+ specification_reference "R 60-1, 5.4, Table 4"
161
+ calculation mpe
162
+ calculation_bindings { load: test_load accuracy_class: accuracy_class p_lc: plc }
163
+ }
164
+ field within_mpe : boolean {
165
+ label "Within MPE"
166
+ definition "Evaluation: whether the repeatability error is within the MPE."
167
+ measurement_method evaluated
168
+ true_label "Yes"
169
+ false_label "No"
170
+ evaluation { rule "ocl{abs(repeatability_error_v) <= abs(mpe)}" condition "|E_R| <= |MPE|" specification_reference "R 60-1, 5.4" }
171
+ }
172
+ } }
173
+ }
174
+ } }
175
+ min_items 4
176
+ max_items 4
177
+ }
178
+ field overall_result : boolean {
179
+ label "Overall result"
180
+ definition "PASS iff |E_R| <= |MPE| at every test load at every temperature."
181
+ required true
182
+ measurement_method evaluated
183
+ true_label "Pass"
184
+ false_label "Fail"
185
+ evaluation { rule "ocl{temperature_series->forAll(t | t.test_loads->forAll(l | l.within_mpe))}" condition "All |E_R| <= |MPE| at every test load at every temperature" specification_reference "R 60-1, 5.4" }
186
+ }
187
+ pass_fail { criteria "All E_R <= |MPE| for every test load at every temperature" pass_if "ocl{temperature_series->forAll(t | t.test_loads->forAll(l | l.within_mpe))}" }
188
+ }
189
+
@@ -0,0 +1,98 @@
1
+ form r60-3/form-6.13 {
2
+ name "Short Time Power"
3
+ description "Short-time power reductions test"
4
+ data_class FormInstance#data
5
+ header r60-3/header-a
6
+ conformance_process /conf/electronic-tests/short-time-power
7
+ section "R 60-3, 6.13"
8
+ requirements { /req/electronic/disturbances }
9
+ ref requirement "urn:oiml:pub:r:60-1:2021#clause-5.7.2.5"
10
+ ref test-procedure "urn:oiml:pub:r:60-2:2021#clause-2.10.7.5"
11
+ ref calculation "urn:oiml:pub:r:60-3:2021#clause-2.2.3"
12
+ ref calculation "urn:oiml:pub:r:60-3:2021#clause-2.2.3.1"
13
+ ref calculation "urn:oiml:pub:r:60-3:2021#clause-2.2.3.2"
14
+ ref calculation "urn:oiml:pub:r:60-3:2021#clause-2.2.3.3"
15
+ ref report-format "urn:oiml:pub:r:60-3:2021#clause-6.13"
16
+ ref report-format "urn:oiml:pub:r:60-3:2021#clause-6.13.1"
17
+ ref report-format "urn:oiml:pub:r:60-3:2021#table-16"
18
+ field conversion_factor_f : number {
19
+ label "Conversion Factor F"
20
+ unit "counts/v"
21
+ required true
22
+ bind sample.test_context.conversion_factor_f
23
+ targets { /req/electronic/disturbances }
24
+ }
25
+ field dmin_value : number {
26
+ label "Dmin Value"
27
+ unit "g, kg, or t"
28
+ bind sample.test_context.d_min
29
+ targets { /req/electronic/disturbances }
30
+ }
31
+ field reference_voltage_range : number {
32
+ label "Reference Voltage Range"
33
+ unit "V"
34
+ required true
35
+ targets { /req/electronic/disturbances }
36
+ }
37
+ field disturbance_tests : array {
38
+ label "Disturbance Tests"
39
+ targets { /req/electronic/disturbances /req/electronic/no-significant-faults }
40
+ items { object fields {
41
+ field test_load : number {
42
+ label "Test Load"
43
+ unit "g, kg, or t"
44
+ }
45
+ field amplitude_pct : number {
46
+ label "Amplitude Pct"
47
+ unit "%"
48
+ }
49
+ field duration_cycles : number {
50
+ label "Duration Cycles"
51
+ unit "cycles"
52
+ }
53
+ field number_of_disturbances : integer {
54
+ label "Number Of Disturbances"
55
+ }
56
+ field indication_without : number {
57
+ label "Indication Without"
58
+ unit "counts"
59
+ }
60
+ field indication_with : number {
61
+ label "Indication With"
62
+ unit "counts"
63
+ }
64
+ field difference : number {
65
+ label "Difference"
66
+ unit "v"
67
+ calculation "ocl{(indication_with - indication_without) / conversion_factor_f}"
68
+ }
69
+ field repetition_interval_v : number {
70
+ label "Repetition Interval V"
71
+ unit "v"
72
+ }
73
+ field significant_fault : boolean {
74
+ label "Significant Fault"
75
+ true_label "Yes"
76
+ false_label "No"
77
+ calculation "ocl{abs(difference) > 1}"
78
+ }
79
+ field remarks : string {
80
+ label "Remarks"
81
+ }
82
+ } }
83
+ }
84
+ field equipment_used : text {
85
+ label "Equipment Used"
86
+ }
87
+ field remarks : text {
88
+ label "Remarks"
89
+ }
90
+ field overall_result : boolean {
91
+ label "Overall Result"
92
+ required true
93
+ true_label "Pass"
94
+ false_label "Fail"
95
+ }
96
+ pass_fail { criteria "No significant fault (> v_min) or fault detected and acted upon" pass_if "ocl{disturbance_tests->forAll(r | not r.significant_fault)}" }
97
+ }
98
+
@@ -0,0 +1,242 @@
1
+ form r60-3/form-6.19 {
2
+ name "Span Stability"
3
+ description "Span stability test measurement data"
4
+ data_class FormInstance#data
5
+ header r60-3/header-a
6
+ conformance_process /conf/electronic-tests/span-stability
7
+ section "R 60-3, 6.19"
8
+ requirements { /req/electronic/span-stability }
9
+ ref requirement "urn:oiml:pub:r:60-1:2021#clause-5.7.2.6"
10
+ ref test-procedure "urn:oiml:pub:r:60-2:2021#clause-2.10.7.11"
11
+ ref calculation "urn:oiml:pub:r:60-3:2021#clause-2.2.9"
12
+ ref calculation "urn:oiml:pub:r:60-3:2021#clause-2.2.9.1"
13
+ ref calculation "urn:oiml:pub:r:60-3:2021#clause-2.2.9.2"
14
+ ref calculation "urn:oiml:pub:r:60-3:2021#clause-2.2.9.3"
15
+ ref report-format "urn:oiml:pub:r:60-3:2021#clause-6.19"
16
+ ref report-format "urn:oiml:pub:r:60-3:2021#clause-6.19.1"
17
+ ref report-format "urn:oiml:pub:r:60-3:2021#clause-6.19.2"
18
+ ref report-format "urn:oiml:pub:r:60-3:2021#clause-6.19.3"
19
+ ref report-format "urn:oiml:pub:r:60-3:2021#clause-6.19.1/table-1"
20
+ ref report-format "urn:oiml:pub:r:60-3:2021#clause-6.19.1/table-2"
21
+ ref report-format "urn:oiml:pub:r:60-3:2021#clause-6.19.1/table-3"
22
+ ref report-format "urn:oiml:pub:r:60-3:2021#clause-6.19.1/table-4"
23
+ ref report-format "urn:oiml:pub:r:60-3:2021#clause-6.19.1/table-5"
24
+ ref report-format "urn:oiml:pub:r:60-3:2021#clause-6.19.1/table-6"
25
+ ref report-format "urn:oiml:pub:r:60-3:2021#clause-6.19.1/table-7"
26
+ ref report-format "urn:oiml:pub:r:60-3:2021#clause-6.19.1/table-8"
27
+ ref report-format "urn:oiml:pub:r:60-3:2021#table-25"
28
+ ref report-format "urn:oiml:pub:r:60-3:2021#table-26"
29
+ ref report-format "urn:oiml:pub:r:60-3:2021#table-27"
30
+ ref report-format "urn:oiml:pub:r:60-3:2021#table-28"
31
+ ref report-format "urn:oiml:pub:r:60-3:2021#table-29"
32
+ ref report-format "urn:oiml:pub:r:60-3:2021#table-30"
33
+ ref report-format "urn:oiml:pub:r:60-3:2021#table-31"
34
+ ref report-format "urn:oiml:pub:r:60-3:2021#table-32"
35
+ ref report-format "urn:oiml:pub:r:60-3:2021#table-33"
36
+ applicability {
37
+ accuracy_class: [B, C, D]
38
+ }
39
+ calculation_context { header r60-3/header-a dimensions true tables { mpe_tiers } }
40
+ field conversion_factor_f : number {
41
+ label "Conversion Factor F"
42
+ definition "Ratio of indication change to load change at 75% of Max. Converts counts to verification units (v)."
43
+ unit "counts/v"
44
+ required true
45
+ measurement_method computed
46
+ bind sample.test_context.conversion_factor_f
47
+ specification_reference "R 60-3, 2.1.2.4"
48
+ }
49
+ field dmin_value : number {
50
+ label "Minimum Test Load (D_min)"
51
+ definition "The minimum test load applied at each measurement."
52
+ unit "g, kg, or t"
53
+ measurement_method declared
54
+ bind sample.test_context.d_min
55
+ }
56
+ field dmax_value : number {
57
+ label "Maximum Test Load (D_max)"
58
+ definition "The maximum test load applied at each measurement."
59
+ unit "g, kg, or t"
60
+ measurement_method declared
61
+ bind sample.test_context.d_max
62
+ }
63
+ field measurements : array {
64
+ label "Span stability measurements"
65
+ definition "Eight repeated measurements of the load cell span over time. Each measurement records D_min and D_max indications, computes the span, and checks for drift."
66
+ items { object fields {
67
+ field measurement_no : integer {
68
+ label "Measurement No"
69
+ definition "Sequential measurement number (1-8)."
70
+ required true
71
+ measurement_method declared
72
+ }
73
+ field readings : object {
74
+ label "Readings"
75
+ definition "Individual run readings at D_min and D_max."
76
+ fields {
77
+ field dmin : array {
78
+ label "D_min readings"
79
+ definition "Load cell indication readings at minimum test load for each run."
80
+ items { object fields {
81
+ field indication : number {
82
+ label "Indication"
83
+ definition "Load cell output at D_min for this run."
84
+ unit "counts"
85
+ measurement_method direct
86
+ }
87
+ field time : string {
88
+ label "Time"
89
+ definition "Absolute time of reading (HH:MM:SS)."
90
+ measurement_method direct
91
+ pattern "\\d{2}:\\d{2}:\\d{2}"
92
+ }
93
+ } }
94
+ min_items 3
95
+ max_items 5
96
+ }
97
+ field dmax : array {
98
+ label "D_max readings"
99
+ definition "Load cell indication readings at maximum test load for each run."
100
+ items { object fields {
101
+ field indication : number {
102
+ label "Indication"
103
+ definition "Load cell output at D_max for this run."
104
+ unit "counts"
105
+ measurement_method direct
106
+ }
107
+ field time : string {
108
+ label "Time"
109
+ definition "Absolute time of reading (HH:MM:SS)."
110
+ measurement_method direct
111
+ pattern "\\d{2}:\\d{2}:\\d{2}"
112
+ }
113
+ } }
114
+ min_items 3
115
+ max_items 5
116
+ }
117
+ }
118
+ }
119
+ field avg_dmin : number {
120
+ label "Average D_min Indication"
121
+ definition "Mean of all run indications at D_min."
122
+ unit "counts"
123
+ measurement_method derived
124
+ specification_reference "R 60-3, 2.2.9"
125
+ derivation "ocl{mean(readings.dmin->collect(r | r.indication))}"
126
+ }
127
+ field avg_dmax : number {
128
+ label "Average D_max Indication"
129
+ definition "Mean of all run indications at D_max."
130
+ unit "counts"
131
+ measurement_method derived
132
+ specification_reference "R 60-3, 2.2.9"
133
+ derivation "ocl{mean(readings.dmax->collect(r | r.indication))}"
134
+ }
135
+ field span : number {
136
+ label "Span"
137
+ definition "The difference between average D_max and average D_min indications: avg_dmax - avg_dmin."
138
+ unit "counts"
139
+ measurement_method derived
140
+ specification_reference "R 60-3, 2.2.9"
141
+ derivation "ocl{avg_dmax - avg_dmin}"
142
+ }
143
+ field span_vmin : number {
144
+ label "Span (v_min)"
145
+ definition "The span expressed in verification units: span / conversion_factor_f."
146
+ unit "v"
147
+ measurement_method derived
148
+ specification_reference "R 60-3, 2.2.9"
149
+ derivation "ocl{span / conversion_factor_f}"
150
+ }
151
+ field variation : number {
152
+ label "Variation from first (v_min)"
153
+ definition "Absolute difference between this measurement's span_vmin and the first measurement's span_vmin."
154
+ unit "v"
155
+ measurement_method derived
156
+ specification_reference "R 60-1, 5.7.2.6"
157
+ derivation "ocl{abs(span_vmin - measurements[0].span_vmin)}"
158
+ }
159
+ field within_limit : boolean {
160
+ label "Within limit"
161
+ definition "Evaluation: whether the span variation is within the maximum allowable variation."
162
+ measurement_method evaluated
163
+ true_label "Yes"
164
+ false_label "No"
165
+ evaluation { rule "ocl{variation <= max_allowable_variation}" condition "variation <= max(0.5 v_min, 0.5 * |MPE|)" specification_reference "R 60-1, 5.7.2.6" }
166
+ }
167
+ field evaluator : string {
168
+ label "Evaluator"
169
+ definition "Name of the person who performed this measurement."
170
+ measurement_method declared
171
+ }
172
+ field remarks : text {
173
+ label "Remarks"
174
+ definition "Free-text notes about this measurement."
175
+ measurement_method declared
176
+ }
177
+ field conditions : object {
178
+ label "Conditions"
179
+ definition "Environmental conditions at the time of this measurement."
180
+ fields {
181
+ field date : date {
182
+ label "Date"
183
+ definition "Date of this measurement."
184
+ measurement_method direct
185
+ }
186
+ field time : string {
187
+ label "Time"
188
+ definition "Start time of this measurement."
189
+ measurement_method direct
190
+ }
191
+ field temperature : number {
192
+ label "Temperature"
193
+ definition "Ambient temperature during measurement."
194
+ unit "degC"
195
+ measurement_method direct
196
+ }
197
+ field relative_humidity : number {
198
+ label "Relative Humidity"
199
+ definition "Relative humidity during measurement."
200
+ unit "%"
201
+ measurement_method direct
202
+ }
203
+ field barometric_pressure : number {
204
+ label "Barometric Pressure"
205
+ definition "Atmospheric pressure during measurement."
206
+ unit "kPa"
207
+ measurement_method direct
208
+ }
209
+ }
210
+ }
211
+ } }
212
+ min_items 8
213
+ }
214
+ field max_allowable_variation : number {
215
+ label "Maximum Allowable Variation"
216
+ definition "The maximum permissible span variation: max(0.5 v_min, 0.5 * |MPE|) per R 60-1, 5.7.2.6."
217
+ unit "v"
218
+ measurement_method computed
219
+ specification_reference "R 60-1, 5.7.2.6"
220
+ derivation "ocl{max(0.5, lookup_mpe(dmax_value, accuracy_class, 1.0) * 0.5)}"
221
+ }
222
+ field overall_result : boolean {
223
+ label "Overall Result"
224
+ definition "PASS iff every measurement's span variation is within the maximum allowable variation."
225
+ required true
226
+ measurement_method evaluated
227
+ true_label "Pass"
228
+ false_label "Fail"
229
+ evaluation { rule "ocl{measurements->forAll(m | m.within_limit)}" condition "All variations <= max(0.5 v_min, 0.5 * |MPE|)" specification_reference "R 60-1, 5.7.2.6" }
230
+ }
231
+ pass_fail {
232
+ criteria "Span variation between any two measurements must not exceed max(0.5 v_min, 0.5 * |MPE|) per R 60-1, 5.7.2.6"
233
+ pass_if "ocl{measurements->forAll(m | m.within_limit)}"
234
+ derivation {
235
+ value span_vmin { calculation "ocl{span / conversion_factor_f}" for_each measurements unit "v" }
236
+ value variation { calculation "ocl{abs(span_vmin - measurements[0].span_vmin)}" for_each measurements unit "v" }
237
+ value max_allowable_variation { calculation "ocl{max(0.5, lookup_mpe(dmax_value, accuracy_class, 1.0) * 0.5)}" unit "v" }
238
+ value within_limit { calculation "ocl{variation <= max_allowable_variation}" for_each measurements }
239
+ }
240
+ }
241
+ }
242
+
@@ -0,0 +1,142 @@
1
+ form r60-3/form-6.15 {
2
+ name "Surge"
3
+ description "Surge test"
4
+ data_class FormInstance#data
5
+ header r60-3/header-a
6
+ conformance_process /conf/electronic-tests/surge
7
+ section "R 60-3, 6.15"
8
+ requirements { /req/electronic/disturbances }
9
+ ref requirement "urn:oiml:pub:r:60-1:2021#clause-5.7.2.5"
10
+ ref test-procedure "urn:oiml:pub:r:60-2:2021#clause-2.10.7.7"
11
+ ref calculation "urn:oiml:pub:r:60-3:2021#clause-2.2.5"
12
+ ref calculation "urn:oiml:pub:r:60-3:2021#clause-2.2.5.1"
13
+ ref calculation "urn:oiml:pub:r:60-3:2021#clause-2.2.5.2"
14
+ ref report-format "urn:oiml:pub:r:60-3:2021#clause-6.15"
15
+ ref report-format "urn:oiml:pub:r:60-3:2021#clause-6.15.1"
16
+ ref report-format "urn:oiml:pub:r:60-3:2021#table-19"
17
+ field conversion_factor_f : number {
18
+ label "Conversion Factor F"
19
+ unit "counts/v"
20
+ required true
21
+ bind sample.test_context.conversion_factor_f
22
+ targets { /req/electronic/disturbances }
23
+ }
24
+ field dmin_value : number {
25
+ label "Dmin Value"
26
+ bind sample.test_context.d_min
27
+ targets { /req/electronic/disturbances }
28
+ }
29
+ field unit : enum {
30
+ label "Unit"
31
+ values { g { label "G" } kg { label "Kg" } t { label "T" } }
32
+ }
33
+ field test_conditions : object {
34
+ label "Test Conditions"
35
+ targets { /req/electronic/disturbances }
36
+ fields {
37
+ field output_gained_method : enum {
38
+ label "Output Gained Method"
39
+ values { actual_loads { label "Actual_loads" } simulating_loading { label "Simulating_loading" } }
40
+ }
41
+ field simulating_using : string {
42
+ label "Simulating Using"
43
+ }
44
+ field cable_type : enum {
45
+ label "Cable Type"
46
+ values { symmetrical { label "Symmetrical" } unsymmetrical { label "Unsymmetrical" } }
47
+ }
48
+ field line_to_line_kv : number {
49
+ label "Line To Line Kv"
50
+ unit "kV"
51
+ }
52
+ field line_to_earth_kv : number {
53
+ label "Line To Earth Kv"
54
+ unit "kV"
55
+ }
56
+ field test_load_value : number {
57
+ label "Test Load Value"
58
+ }
59
+ }
60
+ }
61
+ field test_cycles : array {
62
+ label "Test Cycles"
63
+ targets { /req/electronic/disturbances /req/electronic/no-significant-faults }
64
+ items { object fields {
65
+ field cycle_phase : enum {
66
+ label "Cycle Phase"
67
+ values { initial { label "Initial" } during_exposure { label "During_exposure" } after { label "After" } }
68
+ }
69
+ field load : number {
70
+ label "Load"
71
+ }
72
+ field time_start : string {
73
+ label "Time Start"
74
+ }
75
+ field time_stop : string {
76
+ label "Time Stop"
77
+ }
78
+ field reference : number {
79
+ label "Reference"
80
+ }
81
+ field indicated : number {
82
+ label "Indicated"
83
+ }
84
+ field error : number {
85
+ label "Error"
86
+ unit "v"
87
+ }
88
+ field relative_error_pct : number {
89
+ label "Relative Error Pct"
90
+ unit "%"
91
+ }
92
+ field mpe_pct : number {
93
+ label "Mpe Pct"
94
+ unit "%"
95
+ }
96
+ } }
97
+ }
98
+ field observed_faults : array {
99
+ label "Observed Faults"
100
+ targets { /req/electronic/disturbances /req/electronic/no-significant-faults /req/electronic/acting-on-faults }
101
+ items { object fields {
102
+ field fault_type : enum {
103
+ label "Fault Type"
104
+ values { line_to_line_up { label "Line_to_line_up" } line_to_line_down { label "Line_to_line_down" } line_to_earth_up { label "Line_to_earth_up" } line_to_earth_down { label "Line_to_earth_down" } }
105
+ }
106
+ field fault_limit_pct : number {
107
+ label "Fault Limit Pct"
108
+ unit "%"
109
+ }
110
+ field fault_deviation : string {
111
+ label "Fault Deviation"
112
+ }
113
+ field significant : boolean {
114
+ label "Significant"
115
+ true_label "Yes"
116
+ false_label "No"
117
+ }
118
+ field acts_on_fault : boolean {
119
+ label "Acts On Fault"
120
+ true_label "Yes"
121
+ false_label "No"
122
+ }
123
+ } }
124
+ }
125
+ field omission_justification : text {
126
+ label "Omission justification"
127
+ description "Justification for not conducting the surge test, per R 60-2, 2.10.7.7 (intended use and installation details rendering the test unnecessary — e.g. no outdoor installation and no signal lines longer than 10 m). Mandatory when the test is omitted; the justification is noted in the test report."
128
+ measurement_method declared
129
+ specification_reference "R 60-2, 2.10.7.7"
130
+ }
131
+ field observations : text {
132
+ label "Observations"
133
+ }
134
+ field overall_result : boolean {
135
+ label "Overall Result"
136
+ required true
137
+ true_label "Pass"
138
+ false_label "Fail"
139
+ }
140
+ pass_fail { criteria "No significant fault or fault detected and acted upon" pass_if "ocl{observed_faults->forAll(f | not f.significant) or observed_faults->forAll(f | f.acts_on_fault)}" }
141
+ }
142
+