sbom-cyclonedx 0.1.0 → 0.2.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 (368) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +15 -0
  3. data/.gitlab-ci.yml +49 -0
  4. data/.rspec +3 -0
  5. data/.rubocop.yml +72 -0
  6. data/.vscode/settings.json +6 -0
  7. data/CHANGELOG.md +9 -0
  8. data/CODE_OF_CONDUCT.md +132 -0
  9. data/Gemfile +26 -0
  10. data/Gemfile.lock +179 -0
  11. data/LICENSE.txt +21 -0
  12. data/README.md +39 -0
  13. data/Rakefile +36 -0
  14. data/Steepfile +14 -0
  15. data/bin/console +11 -0
  16. data/bin/rbs_spec +9 -0
  17. data/bin/setup +8 -0
  18. data/bom-1.6.schema.json +7334 -0
  19. data/lib/email_address_extension.rb +26 -0
  20. data/lib/sbom/cyclone_dx/enum.rb +2178 -0
  21. data/lib/sbom/cyclone_dx/field.rb +404 -0
  22. data/lib/sbom/cyclone_dx/pattern.rb +43 -0
  23. data/lib/sbom/cyclone_dx/record/advisory.rb +17 -0
  24. data/lib/sbom/cyclone_dx/record/annotation.rb +46 -0
  25. data/lib/sbom/cyclone_dx/record/attachment.rb +21 -0
  26. data/lib/sbom/cyclone_dx/record/base.rb +244 -0
  27. data/lib/sbom/cyclone_dx/record/cipher_suite.rb +23 -0
  28. data/lib/sbom/cyclone_dx/record/co2_measure.rb +18 -0
  29. data/lib/sbom/cyclone_dx/record/command.rb +18 -0
  30. data/lib/sbom/cyclone_dx/record/commit.rb +25 -0
  31. data/lib/sbom/cyclone_dx/record/component.rb +126 -0
  32. data/lib/sbom/cyclone_dx/record/component_data.rb +46 -0
  33. data/lib/sbom/cyclone_dx/record/component_evidence.rb +68 -0
  34. data/lib/sbom/cyclone_dx/record/component_identity_evidence.rb +36 -0
  35. data/lib/sbom/cyclone_dx/record/composition.rb +33 -0
  36. data/lib/sbom/cyclone_dx/record/condition.rb +20 -0
  37. data/lib/sbom/cyclone_dx/record/copyright.rb +16 -0
  38. data/lib/sbom/cyclone_dx/record/crypto_properties.rb +137 -0
  39. data/lib/sbom/cyclone_dx/record/data_governance.rb +21 -0
  40. data/lib/sbom/cyclone_dx/record/data_governance_responsible_party.rb +22 -0
  41. data/lib/sbom/cyclone_dx/record/declarations.rb +193 -0
  42. data/lib/sbom/cyclone_dx/record/definitions.rb +17 -0
  43. data/lib/sbom/cyclone_dx/record/dependency.rb +21 -0
  44. data/lib/sbom/cyclone_dx/record/diff.rb +18 -0
  45. data/lib/sbom/cyclone_dx/record/energy_consumption.rb +31 -0
  46. data/lib/sbom/cyclone_dx/record/energy_measure.rb +18 -0
  47. data/lib/sbom/cyclone_dx/record/energy_provider.rb +31 -0
  48. data/lib/sbom/cyclone_dx/record/environmental_consideration.rb +20 -0
  49. data/lib/sbom/cyclone_dx/record/event.rb +31 -0
  50. data/lib/sbom/cyclone_dx/record/external_reference.rb +25 -0
  51. data/lib/sbom/cyclone_dx/record/fairness_assessment.rb +22 -0
  52. data/lib/sbom/cyclone_dx/record/formula.rb +29 -0
  53. data/lib/sbom/cyclone_dx/record/graphic.rb +19 -0
  54. data/lib/sbom/cyclone_dx/record/graphics_collection.rb +19 -0
  55. data/lib/sbom/cyclone_dx/record/hash_data.rb +18 -0
  56. data/lib/sbom/cyclone_dx/record/identifiable_action.rb +21 -0
  57. data/lib/sbom/cyclone_dx/record/input.rb +34 -0
  58. data/lib/sbom/cyclone_dx/record/input_output_ml_parameter.rb +17 -0
  59. data/lib/sbom/cyclone_dx/record/issue.rb +36 -0
  60. data/lib/sbom/cyclone_dx/record/license.rb +90 -0
  61. data/lib/sbom/cyclone_dx/record/license_choice.rb +35 -0
  62. data/lib/sbom/cyclone_dx/record/metadata.rb +55 -0
  63. data/lib/sbom/cyclone_dx/record/model_card.rb +89 -0
  64. data/lib/sbom/cyclone_dx/record/note.rb +20 -0
  65. data/lib/sbom/cyclone_dx/record/organizational_contact.rb +26 -0
  66. data/lib/sbom/cyclone_dx/record/organizational_entity.rb +28 -0
  67. data/lib/sbom/cyclone_dx/record/output.rb +34 -0
  68. data/lib/sbom/cyclone_dx/record/parameter.rb +20 -0
  69. data/lib/sbom/cyclone_dx/record/patch.rb +23 -0
  70. data/lib/sbom/cyclone_dx/record/performance_metric.rb +30 -0
  71. data/lib/sbom/cyclone_dx/record/postal_address.rb +34 -0
  72. data/lib/sbom/cyclone_dx/record/property.rb +18 -0
  73. data/lib/sbom/cyclone_dx/record/rating.rb +27 -0
  74. data/lib/sbom/cyclone_dx/record/release_notes.rb +44 -0
  75. data/lib/sbom/cyclone_dx/record/resource_reference_choice.rb +22 -0
  76. data/lib/sbom/cyclone_dx/record/risk.rb +18 -0
  77. data/lib/sbom/cyclone_dx/record/root.rb +63 -0
  78. data/lib/sbom/cyclone_dx/record/secured_by.rb +20 -0
  79. data/lib/sbom/cyclone_dx/record/service.rb +54 -0
  80. data/lib/sbom/cyclone_dx/record/service_data.rb +32 -0
  81. data/lib/sbom/cyclone_dx/record/signature.rb +85 -0
  82. data/lib/sbom/cyclone_dx/record/standard.rb +72 -0
  83. data/lib/sbom/cyclone_dx/record/step.rb +24 -0
  84. data/lib/sbom/cyclone_dx/record/swid.rb +29 -0
  85. data/lib/sbom/cyclone_dx/record/task.rb +56 -0
  86. data/lib/sbom/cyclone_dx/record/tools.rb +20 -0
  87. data/lib/sbom/cyclone_dx/record/trigger.rb +48 -0
  88. data/lib/sbom/cyclone_dx/record/version.rb +24 -0
  89. data/lib/sbom/cyclone_dx/record/volume.rb +33 -0
  90. data/lib/sbom/cyclone_dx/record/vulnerability.rb +119 -0
  91. data/lib/sbom/cyclone_dx/record/vulnerability_source.rb +20 -0
  92. data/lib/sbom/cyclone_dx/record/workflow.rb +59 -0
  93. data/lib/sbom/cyclone_dx/record/workspace.rb +45 -0
  94. data/lib/sbom/cyclone_dx/record.rb +12 -0
  95. data/lib/sbom/cyclone_dx/validator/array_validator.rb +66 -0
  96. data/lib/sbom/cyclone_dx/validator/base_validator.rb +43 -0
  97. data/lib/sbom/cyclone_dx/validator/boolean_validator.rb +16 -0
  98. data/lib/sbom/cyclone_dx/validator/date_time_validator.rb +29 -0
  99. data/lib/sbom/cyclone_dx/validator/email_address_validator.rb +31 -0
  100. data/lib/sbom/cyclone_dx/validator/float_validator.rb +30 -0
  101. data/lib/sbom/cyclone_dx/validator/integer_validator.rb +30 -0
  102. data/lib/sbom/cyclone_dx/validator/record_validator.rb +26 -0
  103. data/lib/sbom/cyclone_dx/validator/string_validator.rb +33 -0
  104. data/lib/sbom/cyclone_dx/validator/union_validator.rb +39 -0
  105. data/lib/sbom/cyclone_dx/validator/uri_validator.rb +32 -0
  106. data/lib/sbom/cyclone_dx/validator.rb +32 -0
  107. data/lib/sbom/cyclone_dx/version.rb +7 -0
  108. data/lib/sbom/cyclone_dx.rb +39 -0
  109. data/rbs_collection.lock.yaml +288 -0
  110. data/rbs_collection.yaml +31 -0
  111. data/sbom-cyclone_dx.gemspec +32 -0
  112. data/sig/email_address_extension.rbs +14 -0
  113. data/sig/sbom/cyclone_dx/enum.rbs +93 -0
  114. data/sig/sbom/cyclone_dx/field.rbs +434 -0
  115. data/sig/sbom/cyclone_dx/pattern.rbs +24 -0
  116. data/sig/sbom/cyclone_dx/record/advisory.rbs +19 -0
  117. data/sig/sbom/cyclone_dx/record/annotation.rbs +63 -0
  118. data/sig/sbom/cyclone_dx/record/attachment.rbs +24 -0
  119. data/sig/sbom/cyclone_dx/record/base.rbs +62 -0
  120. data/sig/sbom/cyclone_dx/record/cipher_suite.rbs +24 -0
  121. data/sig/sbom/cyclone_dx/record/co2_measure.rbs +14 -0
  122. data/sig/sbom/cyclone_dx/record/command.rbs +19 -0
  123. data/sig/sbom/cyclone_dx/record/commit.rbs +34 -0
  124. data/sig/sbom/cyclone_dx/record/component.rbs +203 -0
  125. data/sig/sbom/cyclone_dx/record/component_data.rbs +73 -0
  126. data/sig/sbom/cyclone_dx/record/component_evidence.rbs +115 -0
  127. data/sig/sbom/cyclone_dx/record/component_identity_evidence.rbs +53 -0
  128. data/sig/sbom/cyclone_dx/record/composition.rbs +39 -0
  129. data/sig/sbom/cyclone_dx/record/condition.rbs +24 -0
  130. data/sig/sbom/cyclone_dx/record/copyright.rbs +14 -0
  131. data/sig/sbom/cyclone_dx/record/crypto_properties.rbs +268 -0
  132. data/sig/sbom/cyclone_dx/record/data_governance.rbs +24 -0
  133. data/sig/sbom/cyclone_dx/record/data_governance_responsible_party.rbs +19 -0
  134. data/sig/sbom/cyclone_dx/record/declarations.rbs +352 -0
  135. data/sig/sbom/cyclone_dx/record/definitions.rbs +14 -0
  136. data/sig/sbom/cyclone_dx/record/dependency.rbs +24 -0
  137. data/sig/sbom/cyclone_dx/record/diff.rbs +19 -0
  138. data/sig/sbom/cyclone_dx/record/energy_consumption.rbs +39 -0
  139. data/sig/sbom/cyclone_dx/record/energy_measure.rbs +14 -0
  140. data/sig/sbom/cyclone_dx/record/energy_provider.rbs +39 -0
  141. data/sig/sbom/cyclone_dx/record/environmental_consideration.rbs +19 -0
  142. data/sig/sbom/cyclone_dx/record/event.rbs +44 -0
  143. data/sig/sbom/cyclone_dx/record/external_reference.rbs +29 -0
  144. data/sig/sbom/cyclone_dx/record/fairness_assessment.rbs +29 -0
  145. data/sig/sbom/cyclone_dx/record/formula.rbs +34 -0
  146. data/sig/sbom/cyclone_dx/record/graphic.rbs +19 -0
  147. data/sig/sbom/cyclone_dx/record/graphics_collection.rbs +19 -0
  148. data/sig/sbom/cyclone_dx/record/hash_data.rbs +19 -0
  149. data/sig/sbom/cyclone_dx/record/identifiable_action.rbs +24 -0
  150. data/sig/sbom/cyclone_dx/record/input.rbs +44 -0
  151. data/sig/sbom/cyclone_dx/record/input_output_ml_parameter.rbs +14 -0
  152. data/sig/sbom/cyclone_dx/record/issue.rbs +53 -0
  153. data/sig/sbom/cyclone_dx/record/license.rbs +134 -0
  154. data/sig/sbom/cyclone_dx/record/license_choice.rbs +39 -0
  155. data/sig/sbom/cyclone_dx/record/metadata.rbs +82 -0
  156. data/sig/sbom/cyclone_dx/record/model_card.rbs +143 -0
  157. data/sig/sbom/cyclone_dx/record/note.rbs +19 -0
  158. data/sig/sbom/cyclone_dx/record/organizational_contact.rbs +29 -0
  159. data/sig/sbom/cyclone_dx/record/organizational_entity.rbs +34 -0
  160. data/sig/sbom/cyclone_dx/record/output.rbs +44 -0
  161. data/sig/sbom/cyclone_dx/record/parameter.rbs +24 -0
  162. data/sig/sbom/cyclone_dx/record/patch.rbs +24 -0
  163. data/sig/sbom/cyclone_dx/record/performance_metric.rbs +43 -0
  164. data/sig/sbom/cyclone_dx/record/postal_address.rbs +44 -0
  165. data/sig/sbom/cyclone_dx/record/property.rbs +19 -0
  166. data/sig/sbom/cyclone_dx/record/rating.rbs +39 -0
  167. data/sig/sbom/cyclone_dx/record/release_notes.rbs +64 -0
  168. data/sig/sbom/cyclone_dx/record/resource_reference_choice.rbs +19 -0
  169. data/sig/sbom/cyclone_dx/record/risk.rbs +19 -0
  170. data/sig/sbom/cyclone_dx/record/root.rbs +84 -0
  171. data/sig/sbom/cyclone_dx/record/secured_by.rbs +19 -0
  172. data/sig/sbom/cyclone_dx/record/service.rbs +99 -0
  173. data/sig/sbom/cyclone_dx/record/service_data.rbs +44 -0
  174. data/sig/sbom/cyclone_dx/record/signature.rbs +130 -0
  175. data/sig/sbom/cyclone_dx/record/standard.rbs +132 -0
  176. data/sig/sbom/cyclone_dx/record/step.rbs +29 -0
  177. data/sig/sbom/cyclone_dx/record/swid.rbs +44 -0
  178. data/sig/sbom/cyclone_dx/record/task.rbs +84 -0
  179. data/sig/sbom/cyclone_dx/record/tools.rbs +19 -0
  180. data/sig/sbom/cyclone_dx/record/trigger.rbs +69 -0
  181. data/sig/sbom/cyclone_dx/record/version.rbs +24 -0
  182. data/sig/sbom/cyclone_dx/record/volume.rbs +49 -0
  183. data/sig/sbom/cyclone_dx/record/vulnerability.rbs +209 -0
  184. data/sig/sbom/cyclone_dx/record/vulnerability_source.rbs +19 -0
  185. data/sig/sbom/cyclone_dx/record/workflow.rbs +94 -0
  186. data/sig/sbom/cyclone_dx/record/workspace.rbs +69 -0
  187. data/sig/sbom/cyclone_dx/record.rbs +161 -0
  188. data/sig/sbom/cyclone_dx/type.rbs +16 -0
  189. data/sig/sbom/cyclone_dx/validator/array_validator.rbs +31 -0
  190. data/sig/sbom/cyclone_dx/validator/base_validator.rbs +21 -0
  191. data/sig/sbom/cyclone_dx/validator/boolean_validator.rbs +9 -0
  192. data/sig/sbom/cyclone_dx/validator/date_time_validator.rbs +10 -0
  193. data/sig/sbom/cyclone_dx/validator/email_address_validator.rbs +10 -0
  194. data/sig/sbom/cyclone_dx/validator/float_validator.rbs +12 -0
  195. data/sig/sbom/cyclone_dx/validator/integer_validator.rbs +12 -0
  196. data/sig/sbom/cyclone_dx/validator/record_validator.rbs +12 -0
  197. data/sig/sbom/cyclone_dx/validator/string_validator.rbs +14 -0
  198. data/sig/sbom/cyclone_dx/validator/union_validator.rbs +24 -0
  199. data/sig/sbom/cyclone_dx/validator/uri_validator.rbs +10 -0
  200. data/sig/sbom/cyclone_dx/validator.rbs +66 -0
  201. data/sig/sbom/cyclone_dx.rbs +13 -0
  202. data/sig/types.rbs +45 -0
  203. data/spec/email_address_extension_spec.rb +27 -0
  204. data/spec/factories/factory_helper.rb +78 -0
  205. data/spec/factories/record/advisory_factory.rb +11 -0
  206. data/spec/factories/record/annotation_factory.rb +63 -0
  207. data/spec/factories/record/attachment_factory.rb +9 -0
  208. data/spec/factories/record/cipher_suite_factory.rb +26 -0
  209. data/spec/factories/record/co2_measure_factory.rb +9 -0
  210. data/spec/factories/record/command_factory.rb +10 -0
  211. data/spec/factories/record/commit_factory.rb +13 -0
  212. data/spec/factories/record/component_data_factory.rb +28 -0
  213. data/spec/factories/record/component_evidence_factory.rb +44 -0
  214. data/spec/factories/record/component_factory.rb +102 -0
  215. data/spec/factories/record/component_identity_evidence_factory.rb +25 -0
  216. data/spec/factories/record/composition_factory.rb +20 -0
  217. data/spec/factories/record/condition_factory.rb +11 -0
  218. data/spec/factories/record/copyright_factory.rb +9 -0
  219. data/spec/factories/record/crypto_properties_factory.rb +191 -0
  220. data/spec/factories/record/data_governance_factory.rb +11 -0
  221. data/spec/factories/record/data_governance_responsible_party_factory.rb +31 -0
  222. data/spec/factories/record/declarations_factory.rb +145 -0
  223. data/spec/factories/record/definitions_factory.rb +9 -0
  224. data/spec/factories/record/dependency_factory.rb +12 -0
  225. data/spec/factories/record/diff_factory.rb +24 -0
  226. data/spec/factories/record/energy_consumption_factory.rb +15 -0
  227. data/spec/factories/record/energy_measure_factory.rb +9 -0
  228. data/spec/factories/record/energy_provider_factory.rb +15 -0
  229. data/spec/factories/record/environmental_consideration_factory.rb +10 -0
  230. data/spec/factories/record/event_factory.rb +15 -0
  231. data/spec/factories/record/external_reference_factory.rb +13 -0
  232. data/spec/factories/record/fairness_assessment_factory.rb +12 -0
  233. data/spec/factories/record/formula_factory.rb +13 -0
  234. data/spec/factories/record/graphic_factory.rb +10 -0
  235. data/spec/factories/record/graphics_collection_factory.rb +10 -0
  236. data/spec/factories/record/hash_data_factory.rb +10 -0
  237. data/spec/factories/record/identifiable_action_factory.rb +11 -0
  238. data/spec/factories/record/input_factory.rb +36 -0
  239. data/spec/factories/record/input_output_ml_parameter_factory.rb +9 -0
  240. data/spec/factories/record/issue_factory.rb +22 -0
  241. data/spec/factories/record/license_choice_factory.rb +23 -0
  242. data/spec/factories/record/license_factory.rb +99 -0
  243. data/spec/factories/record/metadata_factory.rb +38 -0
  244. data/spec/factories/record/model_card_factory.rb +59 -0
  245. data/spec/factories/record/note_factory.rb +11 -0
  246. data/spec/factories/record/organizational_contact_factory.rb +12 -0
  247. data/spec/factories/record/organizational_entity_factory.rb +13 -0
  248. data/spec/factories/record/output_factory.rb +32 -0
  249. data/spec/factories/record/parameter_factory.rb +11 -0
  250. data/spec/factories/record/patch_factory.rb +12 -0
  251. data/spec/factories/record/performance_metric_factory.rb +20 -0
  252. data/spec/factories/record/postal_address_factory.rb +14 -0
  253. data/spec/factories/record/property_factory.rb +11 -0
  254. data/spec/factories/record/rating_factory.rb +14 -0
  255. data/spec/factories/record/release_notes_factory.rb +20 -0
  256. data/spec/factories/record/resource_reference_choice_factory.rb +27 -0
  257. data/spec/factories/record/risk_factory.rb +10 -0
  258. data/spec/factories/record/root_factory.rb +23 -0
  259. data/spec/factories/record/secured_by_factory.rb +10 -0
  260. data/spec/factories/record/service_data_factory.rb +16 -0
  261. data/spec/factories/record/service_factory.rb +27 -0
  262. data/spec/factories/record/signature_factory.rb +50 -0
  263. data/spec/factories/record/standard_factory.rb +37 -0
  264. data/spec/factories/record/step_factory.rb +12 -0
  265. data/spec/factories/record/swid_factory.rb +16 -0
  266. data/spec/factories/record/task_factory.rb +24 -0
  267. data/spec/factories/record/tools_factory.rb +10 -0
  268. data/spec/factories/record/trigger_factory.rb +21 -0
  269. data/spec/factories/record/version_factory.rb +19 -0
  270. data/spec/factories/record/volume_factory.rb +16 -0
  271. data/spec/factories/record/vulnerability_factory.rb +70 -0
  272. data/spec/factories/record/vulnerability_source_factory.rb +10 -0
  273. data/spec/factories/record/workflow_factory.rb +26 -0
  274. data/spec/factories/record/workspace_factory.rb +21 -0
  275. data/spec/factories/record_factory.rb +159 -0
  276. data/spec/fixtures/cipher_info.yml +948 -0
  277. data/spec/fixtures/purl_data.yml +0 -0
  278. data/spec/sbom/cyclone_dx/enum_spec.rb +30 -0
  279. data/spec/sbom/cyclone_dx/field_spec.rb +104 -0
  280. data/spec/sbom/cyclone_dx/pattern_spec.rb +18 -0
  281. data/spec/sbom/cyclone_dx/record/advisory_spec.rb +14 -0
  282. data/spec/sbom/cyclone_dx/record/annotation_spec.rb +31 -0
  283. data/spec/sbom/cyclone_dx/record/attachment_spec.rb +14 -0
  284. data/spec/sbom/cyclone_dx/record/base_spec.rb +363 -0
  285. data/spec/sbom/cyclone_dx/record/cipher_suite_spec.rb +14 -0
  286. data/spec/sbom/cyclone_dx/record/co2_measure_spec.rb +14 -0
  287. data/spec/sbom/cyclone_dx/record/command_spec.rb +14 -0
  288. data/spec/sbom/cyclone_dx/record/commit_spec.rb +14 -0
  289. data/spec/sbom/cyclone_dx/record/component_data_spec.rb +14 -0
  290. data/spec/sbom/cyclone_dx/record/component_evidence_spec.rb +14 -0
  291. data/spec/sbom/cyclone_dx/record/component_identity_evidence_spec.rb +14 -0
  292. data/spec/sbom/cyclone_dx/record/component_spec.rb +14 -0
  293. data/spec/sbom/cyclone_dx/record/composition_spec.rb +14 -0
  294. data/spec/sbom/cyclone_dx/record/condition_spec.rb +14 -0
  295. data/spec/sbom/cyclone_dx/record/copyright_spec.rb +14 -0
  296. data/spec/sbom/cyclone_dx/record/crypto_properties_spec.rb +14 -0
  297. data/spec/sbom/cyclone_dx/record/data_governance_responsible_party_spec.rb +19 -0
  298. data/spec/sbom/cyclone_dx/record/data_governance_spec.rb +14 -0
  299. data/spec/sbom/cyclone_dx/record/declarations_spec.rb +14 -0
  300. data/spec/sbom/cyclone_dx/record/definitions_spec.rb +14 -0
  301. data/spec/sbom/cyclone_dx/record/dependency_spec.rb +14 -0
  302. data/spec/sbom/cyclone_dx/record/diff_spec.rb +14 -0
  303. data/spec/sbom/cyclone_dx/record/energy_consumption_spec.rb +14 -0
  304. data/spec/sbom/cyclone_dx/record/energy_measure_spec.rb +14 -0
  305. data/spec/sbom/cyclone_dx/record/energy_provider_spec.rb +14 -0
  306. data/spec/sbom/cyclone_dx/record/environmental_consideration_spec.rb +14 -0
  307. data/spec/sbom/cyclone_dx/record/event_spec.rb +14 -0
  308. data/spec/sbom/cyclone_dx/record/external_reference_spec.rb +14 -0
  309. data/spec/sbom/cyclone_dx/record/fairness_assessment_spec.rb +14 -0
  310. data/spec/sbom/cyclone_dx/record/formula_spec.rb +14 -0
  311. data/spec/sbom/cyclone_dx/record/graphic_spec.rb +14 -0
  312. data/spec/sbom/cyclone_dx/record/graphics_collection_spec.rb +14 -0
  313. data/spec/sbom/cyclone_dx/record/hash_data_spec.rb +14 -0
  314. data/spec/sbom/cyclone_dx/record/identifiable_action_spec.rb +14 -0
  315. data/spec/sbom/cyclone_dx/record/input_output_ml_parameter_spec.rb +14 -0
  316. data/spec/sbom/cyclone_dx/record/input_spec.rb +14 -0
  317. data/spec/sbom/cyclone_dx/record/issue_spec.rb +14 -0
  318. data/spec/sbom/cyclone_dx/record/license_choice_spec.rb +26 -0
  319. data/spec/sbom/cyclone_dx/record/license_spec.rb +14 -0
  320. data/spec/sbom/cyclone_dx/record/metadata_spec.rb +14 -0
  321. data/spec/sbom/cyclone_dx/record/model_card_spec.rb +14 -0
  322. data/spec/sbom/cyclone_dx/record/note_spec.rb +14 -0
  323. data/spec/sbom/cyclone_dx/record/organizational_contact_spec.rb +14 -0
  324. data/spec/sbom/cyclone_dx/record/organizational_entity_spec.rb +14 -0
  325. data/spec/sbom/cyclone_dx/record/output_spec.rb +14 -0
  326. data/spec/sbom/cyclone_dx/record/parameter_spec.rb +14 -0
  327. data/spec/sbom/cyclone_dx/record/patch_spec.rb +14 -0
  328. data/spec/sbom/cyclone_dx/record/performance_metric_spec.rb +14 -0
  329. data/spec/sbom/cyclone_dx/record/postal_address_spec.rb +14 -0
  330. data/spec/sbom/cyclone_dx/record/property_spec.rb +14 -0
  331. data/spec/sbom/cyclone_dx/record/rating_spec.rb +14 -0
  332. data/spec/sbom/cyclone_dx/record/release_notes_spec.rb +14 -0
  333. data/spec/sbom/cyclone_dx/record/resource_reference_choice_spec.rb +14 -0
  334. data/spec/sbom/cyclone_dx/record/risk_spec.rb +14 -0
  335. data/spec/sbom/cyclone_dx/record/root_spec.rb +14 -0
  336. data/spec/sbom/cyclone_dx/record/secured_by_spec.rb +14 -0
  337. data/spec/sbom/cyclone_dx/record/service_data_spec.rb +14 -0
  338. data/spec/sbom/cyclone_dx/record/service_spec.rb +14 -0
  339. data/spec/sbom/cyclone_dx/record/signature_spec.rb +26 -0
  340. data/spec/sbom/cyclone_dx/record/standard_spec.rb +14 -0
  341. data/spec/sbom/cyclone_dx/record/step_spec.rb +14 -0
  342. data/spec/sbom/cyclone_dx/record/swid_spec.rb +14 -0
  343. data/spec/sbom/cyclone_dx/record/task_spec.rb +14 -0
  344. data/spec/sbom/cyclone_dx/record/tools_spec.rb +14 -0
  345. data/spec/sbom/cyclone_dx/record/trigger_spec.rb +14 -0
  346. data/spec/sbom/cyclone_dx/record/version_spec.rb +14 -0
  347. data/spec/sbom/cyclone_dx/record/volume_spec.rb +14 -0
  348. data/spec/sbom/cyclone_dx/record/vulnerability_source_spec.rb +14 -0
  349. data/spec/sbom/cyclone_dx/record/vulnerability_spec.rb +14 -0
  350. data/spec/sbom/cyclone_dx/record/workflow_spec.rb +14 -0
  351. data/spec/sbom/cyclone_dx/record/workspace_spec.rb +14 -0
  352. data/spec/sbom/cyclone_dx/record_spec.rb +7 -0
  353. data/spec/sbom/cyclone_dx/validator/array_validator_spec.rb +184 -0
  354. data/spec/sbom/cyclone_dx/validator/base_validator_spec.rb +71 -0
  355. data/spec/sbom/cyclone_dx/validator/boolean_validator_spec.rb +26 -0
  356. data/spec/sbom/cyclone_dx/validator/date_time_validator_spec.rb +28 -0
  357. data/spec/sbom/cyclone_dx/validator/email_address_validator_spec.rb +23 -0
  358. data/spec/sbom/cyclone_dx/validator/float_validator_spec.rb +71 -0
  359. data/spec/sbom/cyclone_dx/validator/integer_validator_spec.rb +71 -0
  360. data/spec/sbom/cyclone_dx/validator/record_validator_spec.rb +35 -0
  361. data/spec/sbom/cyclone_dx/validator/string_validator_spec.rb +94 -0
  362. data/spec/sbom/cyclone_dx/validator/union_validator_spec.rb +65 -0
  363. data/spec/sbom/cyclone_dx/validator/uri_validator_spec.rb +21 -0
  364. data/spec/sbom/cyclone_dx/validator_spec.rb +38 -0
  365. data/spec/sbom/cyclone_dx/version_spec.rb +9 -0
  366. data/spec/sbom/cyclone_dx_spec.rb +7 -0
  367. data/spec/spec_helper.rb +39 -0
  368. metadata +377 -6
@@ -0,0 +1,268 @@
1
+ module SBOM
2
+ module CycloneDX
3
+ module Record
4
+ class CryptoProperties < Base
5
+ class AlgorithmProperties < Base
6
+ def initialize: (?primitive: String?, ?parameter_set_identifier: String?, ?curve: String?, ?execution_environment: String?, ?implementation_platform: String?, ?certification_level: Array[String]?, ?mode: String?, ?padding: String?, ?crypto_functions: Array[String]?, ?classical_security_level: Integer?, ?nist_quantum_security_level: Integer?) -> void
7
+
8
+ def primitive: () -> String?
9
+ def primitive=: (String?) -> String?
10
+ def primitive?: () -> bool
11
+ def primitive_valid?: () -> bool
12
+
13
+ def parameter_set_identifier: () -> String?
14
+ def parameter_set_identifier=: (String?) -> String?
15
+ def parameter_set_identifier?: () -> bool
16
+ def parameter_set_identifier_valid?: () -> bool
17
+
18
+ def curve: () -> String?
19
+ def curve=: (String?) -> String?
20
+ def curve?: () -> bool
21
+ def curve_valid?: () -> bool
22
+
23
+ def execution_environment: () -> String?
24
+ def execution_environment=: (String?) -> String?
25
+ def execution_environment?: () -> bool
26
+ def execution_environment_valid?: () -> bool
27
+
28
+ def implementation_platform: () -> String?
29
+ def implementation_platform=: (String?) -> String?
30
+ def implementation_platform?: () -> bool
31
+ def implementation_platform_valid?: () -> bool
32
+
33
+ def certification_level: () -> Array[String]?
34
+ def certification_level=: (Array[String]?) -> Array[String]?
35
+ def certification_level?: () -> bool
36
+ def certification_level_valid?: () -> bool
37
+
38
+ def mode: () -> String?
39
+ def mode=: (String?) -> String?
40
+ def mode?: () -> bool
41
+ def mode_valid?: () -> bool
42
+
43
+ def padding: () -> String?
44
+ def padding=: (String?) -> String?
45
+ def padding?: () -> bool
46
+ def padding_valid?: () -> bool
47
+
48
+ def crypto_functions: () -> Array[String]?
49
+ def crypto_functions=: (Array[String]?) -> Array[String]?
50
+ def crypto_functions?: () -> bool
51
+ def crypto_functions_valid?: () -> bool
52
+
53
+ def classical_security_level: () -> Integer?
54
+ def classical_security_level=: (Integer?) -> Integer?
55
+ def classical_security_level?: () -> bool
56
+ def classical_security_level_valid?: () -> bool
57
+
58
+ def nist_quantum_security_level: () -> Integer?
59
+ def nist_quantum_security_level=: (Integer?) -> Integer?
60
+ def nist_quantum_security_level?: () -> bool
61
+ def nist_quantum_security_level_valid?: () -> bool
62
+ end
63
+
64
+ class CertificateProperties < Base
65
+ def initialize: (?subject_name: String?, ?issuer_name: String?, ?not_valid_before: dateTime?, ?not_valid_after: dateTime?, ?signature_algorithm_ref: String?, ?subject_public_key_ref: String?, ?certificate_format: String?, ?certificate_extension: String?) -> void
66
+
67
+ def subject_name: () -> String?
68
+ def subject_name=: (String?) -> String?
69
+ def subject_name?: () -> bool
70
+ def subject_name_valid?: () -> bool
71
+
72
+ def issuer_name: () -> String?
73
+ def issuer_name=: (String?) -> String?
74
+ def issuer_name?: () -> bool
75
+ def issuer_name_valid?: () -> bool
76
+
77
+ def not_valid_before: () -> dateTime?
78
+ def not_valid_before=: (dateTime?) -> dateTime?
79
+ def not_valid_before?: () -> bool
80
+ def not_valid_before_valid?: () -> bool
81
+
82
+ def not_valid_after: () -> dateTime?
83
+ def not_valid_after=: (dateTime?) -> dateTime?
84
+ def not_valid_after?: () -> bool
85
+ def not_valid_after_valid?: () -> bool
86
+
87
+ def signature_algorithm_ref: () -> String?
88
+ def signature_algorithm_ref=: (String?) -> String?
89
+ def signature_algorithm_ref?: () -> bool
90
+ def signature_algorithm_ref_valid?: () -> bool
91
+
92
+ def subject_public_key_ref: () -> String?
93
+ def subject_public_key_ref=: (String?) -> String?
94
+ def subject_public_key_ref?: () -> bool
95
+ def subject_public_key_ref_valid?: () -> bool
96
+
97
+ def certificate_format: () -> String?
98
+ def certificate_format=: (String?) -> String?
99
+ def certificate_format?: () -> bool
100
+ def certificate_format_valid?: () -> bool
101
+
102
+ def certificate_extension: () -> String?
103
+ def certificate_extension=: (String?) -> String?
104
+ def certificate_extension?: () -> bool
105
+ def certificate_extension_valid?: () -> bool
106
+ end
107
+
108
+ class ProtocolProperties < Base
109
+ class IKEv2TransformType < Base
110
+ def initialize: (?encr: Array[String]?, ?prf: Array[String]?, ?integ: Array[String]?, ?ke: Array[String]?, ?esn: bool?, ?auth: Array[String]?) -> void
111
+
112
+ def encr: () -> Array[String]?
113
+ def encr=: (Array[String]?) -> Array[String]?
114
+ def encr?: () -> bool
115
+ def encr_valid?: () -> bool
116
+
117
+ def prf: () -> Array[String]?
118
+ def prf=: (Array[String]?) -> Array[String]?
119
+ def prf?: () -> bool
120
+ def prf_valid?: () -> bool
121
+
122
+ def integ: () -> Array[String]?
123
+ def integ=: (Array[String]?) -> Array[String]?
124
+ def integ?: () -> bool
125
+ def integ_valid?: () -> bool
126
+
127
+ def ke: () -> Array[String]?
128
+ def ke=: (Array[String]?) -> Array[String]?
129
+ def ke?: () -> bool
130
+ def ke_valid?: () -> bool
131
+
132
+ def esn: () -> bool?
133
+ def esn=: (bool?) -> bool?
134
+ def esn?: () -> bool
135
+ def esn_valid?: () -> bool
136
+
137
+ def auth: () -> Array[String]?
138
+ def auth=: (Array[String]?) -> Array[String]?
139
+ def auth?: () -> bool
140
+ def auth_valid?: () -> bool
141
+ end
142
+ def initialize: (?type: String?, ?version: String?, ?cipher_suites: Array[CipherSuite]?, ?ikev2_transform_types: IKEv2TransformType?, ?crypto_ref_array: Array[String]?) -> void
143
+
144
+ def type: () -> String?
145
+ def type=: (String?) -> String?
146
+ def type?: () -> bool
147
+ def type_valid?: () -> bool
148
+
149
+ def version: () -> String?
150
+ def version=: (String?) -> String?
151
+ def version?: () -> bool
152
+ def version_valid?: () -> bool
153
+
154
+ def cipher_suites: () -> Array[CipherSuite]?
155
+ def cipher_suites=: (Array[CipherSuite]?) -> Array[CipherSuite]?
156
+ def cipher_suites?: () -> bool
157
+ def cipher_suites_valid?: () -> bool
158
+
159
+ def ikev2_transform_types: () -> IKEv2TransformType?
160
+ def ikev2_transform_types=: (IKEv2TransformType?) -> IKEv2TransformType?
161
+ def ikev2_transform_types?: () -> bool
162
+ def ikev2_transform_types_valid?: () -> bool
163
+
164
+ def crypto_ref_array: () -> Array[String]?
165
+ def crypto_ref_array=: (Array[String]?) -> Array[String]?
166
+ def crypto_ref_array?: () -> bool
167
+ def crypto_ref_array_valid?: () -> bool
168
+ end
169
+
170
+ class RelatedCryptoMaterialProperties < Base
171
+ def initialize: (?type: String?, ?id: String?, ?state: String?, ?algorithm_ref: String?, ?creation_date: dateTime?, ?activation_date: dateTime?, ?update_date: dateTime?, ?expiration_date: dateTime?, ?value: String?, ?asset_size: Integer?, ?format: String?, ?secured_by: SecuredBy?) -> void
172
+
173
+ def type: () -> String?
174
+ def type=: (String?) -> String?
175
+ def type?: () -> bool
176
+ def type_valid?: () -> bool
177
+
178
+ def id: () -> String?
179
+ def id=: (String?) -> String?
180
+ def id?: () -> bool
181
+ def id_valid?: () -> bool
182
+
183
+ def state: () -> String?
184
+ def state=: (String?) -> String?
185
+ def state?: () -> bool
186
+ def state_valid?: () -> bool
187
+
188
+ def algorithm_ref: () -> String?
189
+ def algorithm_ref=: (String?) -> String?
190
+ def algorithm_ref?: () -> bool
191
+ def algorithm_ref_valid?: () -> bool
192
+
193
+ def creation_date: () -> dateTime?
194
+ def creation_date=: (dateTime?) -> dateTime?
195
+ def creation_date?: () -> bool
196
+ def creation_date_valid?: () -> bool
197
+
198
+ def activation_date: () -> dateTime?
199
+ def activation_date=: (dateTime?) -> dateTime?
200
+ def activation_date?: () -> bool
201
+ def activation_date_valid?: () -> bool
202
+
203
+ def update_date: () -> dateTime?
204
+ def update_date=: (dateTime?) -> dateTime?
205
+ def update_date?: () -> bool
206
+ def update_date_valid?: () -> bool
207
+
208
+ def expiration_date: () -> dateTime?
209
+ def expiration_date=: (dateTime?) -> dateTime?
210
+ def expiration_date?: () -> bool
211
+ def expiration_date_valid?: () -> bool
212
+
213
+ def value: () -> String?
214
+ def value=: (String?) -> String?
215
+ def value?: () -> bool
216
+ def value_valid?: () -> bool
217
+
218
+ def asset_size: () -> Integer?
219
+ def asset_size=: (Integer?) -> Integer?
220
+ def asset_size?: () -> bool
221
+ def asset_size_valid?: () -> bool
222
+
223
+ def format: () -> String?
224
+ def format=: (String?) -> String?
225
+ def format?: () -> bool
226
+ def format_valid?: () -> bool
227
+
228
+ def secured_by: () -> SecuredBy?
229
+ def secured_by=: (SecuredBy?) -> SecuredBy?
230
+ def secured_by?: () -> bool
231
+ def secured_by_valid?: () -> bool
232
+ end
233
+
234
+ def initialize: (asset_type: String, ?algorithm_properties: AlgorithmProperties?, ?certificate_properties: CertificateProperties?, ?related_crypto_material_properties: RelatedCryptoMaterialProperties?, ?protocol_properties: ProtocolProperties?, ?oid: String?) -> void
235
+
236
+ def asset_type: () -> String
237
+ def asset_type=: (String) -> String
238
+ def asset_type?: () -> bool
239
+ def asset_type_valid?: () -> bool
240
+
241
+ def algorithm_properties: () -> AlgorithmProperties?
242
+ def algorithm_properties=: (AlgorithmProperties?) -> AlgorithmProperties?
243
+ def algorithm_properties?: () -> bool
244
+ def algorithm_properties_valid?: () -> bool
245
+
246
+ def certificate_properties: () -> CertificateProperties?
247
+ def certificate_properties=: (CertificateProperties?) -> CertificateProperties?
248
+ def certificate_properties?: () -> bool
249
+ def certificate_properties_valid?: () -> bool
250
+
251
+ def related_crypto_material_properties: () -> RelatedCryptoMaterialProperties?
252
+ def related_crypto_material_properties=: (RelatedCryptoMaterialProperties?) -> RelatedCryptoMaterialProperties?
253
+ def related_crypto_material_properties?: () -> bool
254
+ def related_crypto_material_properties_valid?: () -> bool
255
+
256
+ def protocol_properties: () -> ProtocolProperties?
257
+ def protocol_properties=: (ProtocolProperties?) -> ProtocolProperties?
258
+ def protocol_properties?: () -> bool
259
+ def protocol_properties_valid?: () -> bool
260
+
261
+ def oid: () -> String?
262
+ def oid=: (String?) -> String?
263
+ def oid?: () -> bool
264
+ def oid_valid?: () -> bool
265
+ end
266
+ end
267
+ end
268
+ end
@@ -0,0 +1,24 @@
1
+ module SBOM
2
+ module CycloneDX
3
+ module Record
4
+ class DataGovernance < Base
5
+ def initialize: (?custodians: Array[DataGovernanceResponsibleParty]?, ?stewards: Array[DataGovernanceResponsibleParty]?, ?owners: Array[DataGovernanceResponsibleParty]?) -> void
6
+
7
+ def custodians: () -> Array[DataGovernanceResponsibleParty]?
8
+ def custodians=: (Array[DataGovernanceResponsibleParty]?) -> Array[DataGovernanceResponsibleParty]?
9
+ def custodians?: () -> bool
10
+ def custodians_valid?: () -> bool
11
+
12
+ def stewards: () -> Array[DataGovernanceResponsibleParty]?
13
+ def stewards=: (Array[DataGovernanceResponsibleParty]?) -> Array[DataGovernanceResponsibleParty]?
14
+ def stewards?: () -> bool
15
+ def stewards_valid?: () -> bool
16
+
17
+ def owners: () -> Array[DataGovernanceResponsibleParty]?
18
+ def owners=: (Array[DataGovernanceResponsibleParty]?) -> Array[DataGovernanceResponsibleParty]?
19
+ def owners?: () -> bool
20
+ def owners_valid?: () -> bool
21
+ end
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,19 @@
1
+ module SBOM
2
+ module CycloneDX
3
+ module Record
4
+ class DataGovernanceResponsibleParty < Base
5
+ def initialize: (?organization: OrganizationalEntity?, ?contact: OrganizationalContact?) -> void
6
+
7
+ def organization: () -> OrganizationalEntity?
8
+ def organization=: (OrganizationalEntity?) -> OrganizationalEntity?
9
+ def organization?: () -> bool
10
+ def organization_valid?: () -> bool
11
+
12
+ def contact: () -> OrganizationalContact?
13
+ def contact=: (OrganizationalContact?) -> OrganizationalContact?
14
+ def contact?: () -> bool
15
+ def contact_valid?: () -> bool
16
+ end
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,352 @@
1
+ module SBOM
2
+ module CycloneDX
3
+ module Record
4
+ class Declarations < Base
5
+ class Affirmation < Base
6
+ class Signatory < Base
7
+ def initialize: (?name: String?, ?role: String?, ?signature: Signature::signatureChoice?, ?organization: OrganizationalEntity?, ?external_reference: ExternalReference?) -> void
8
+
9
+ def name: () -> String?
10
+ def name=: (String?) -> String?
11
+ def name?: () -> bool
12
+ def name_valid?: () -> bool
13
+
14
+ def role: () -> String?
15
+ def role=: (String?) -> String?
16
+ def role?: () -> bool
17
+ def role_valid?: () -> bool
18
+
19
+ def signature: () -> Signature::signatureChoice?
20
+ def signature=: (Signature::signatureChoice?) -> Signature::signatureChoice?
21
+ def signature?: () -> bool
22
+ def signature_valid?: () -> bool
23
+
24
+ def organization: () -> OrganizationalEntity?
25
+ def organization=: (OrganizationalEntity?) -> OrganizationalEntity?
26
+ def organization?: () -> bool
27
+ def organization_valid?: () -> bool
28
+
29
+ def external_reference: () -> ExternalReference?
30
+ def external_reference=: (ExternalReference?) -> ExternalReference?
31
+ def external_reference?: () -> bool
32
+ def external_reference_valid?: () -> bool
33
+ end
34
+ def initialize: (?statement: String?, ?signatories: Array[Signatory]?, ?signature: Signature::signatureChoice?) -> void
35
+
36
+ def statement: () -> String?
37
+ def statement=: (String?) -> String?
38
+ def statement?: () -> bool
39
+ def statement_valid?: () -> bool
40
+
41
+ def signatories: () -> Array[Signatory]?
42
+ def signatories=: (Array[Signatory]?) -> Array[Signatory]?
43
+ def signatories?: () -> bool
44
+ def signatories_valid?: () -> bool
45
+
46
+ def signature: () -> Signature::signatureChoice?
47
+ def signature=: (Signature::signatureChoice?) -> Signature::signatureChoice?
48
+ def signature?: () -> bool
49
+ def signature_valid?: () -> bool
50
+ end
51
+
52
+ class Assessor < Base
53
+ def initialize: (?bom_ref: String?, ?third_party: bool?, ?organization: OrganizationalEntity?) -> void
54
+
55
+ def bom_ref: () -> String?
56
+ def bom_ref=: (String?) -> String?
57
+ def bom_ref?: () -> bool
58
+ def bom_ref_valid?: () -> bool
59
+
60
+ def third_party: () -> bool?
61
+ def third_party=: (bool?) -> bool?
62
+ def third_party?: () -> bool
63
+ def third_party_valid?: () -> bool
64
+
65
+ def organization: () -> OrganizationalEntity?
66
+ def organization=: (OrganizationalEntity?) -> OrganizationalEntity?
67
+ def organization?: () -> bool
68
+ def organization_valid?: () -> bool
69
+ end
70
+
71
+ class Attestation < Base
72
+ class Map < Base
73
+ class Confidence < Base
74
+ def initialize: (?score: Float?, ?rationale: String?) -> void
75
+
76
+ def score: () -> Float?
77
+ def score=: (Float?) -> Float?
78
+ def score?: () -> bool
79
+ def score_valid?: () -> bool
80
+
81
+ def rationale: () -> String?
82
+ def rationale=: (String?) -> String?
83
+ def rationale?: () -> bool
84
+ def rationale_valid?: () -> bool
85
+ end
86
+
87
+ class Conformance < Base
88
+ def initialize: (?score: Float?, ?rationale: String?, ?mitigation_strategies: Array[String]?) -> void
89
+
90
+ def score: () -> Float?
91
+ def score=: (Float?) -> Float?
92
+ def score?: () -> bool
93
+ def score_valid?: () -> bool
94
+
95
+ def rationale: () -> String?
96
+ def rationale=: (String?) -> String?
97
+ def rationale?: () -> bool
98
+ def rationale_valid?: () -> bool
99
+
100
+ def mitigation_strategies: () -> Array[String]?
101
+ def mitigation_strategies=: (Array[String]?) -> Array[String]?
102
+ def mitigation_strategies?: () -> bool
103
+ def mitigation_strategies_valid?: () -> bool
104
+ end
105
+ def initialize: (?requirement: String?, ?claims: Array[String]?, ?counter_claims: Array[String]?, ?conformance: Conformance?, ?confidence: Confidence?) -> void
106
+
107
+ def requirement: () -> String?
108
+ def requirement=: (String?) -> String?
109
+ def requirement?: () -> bool
110
+ def requirement_valid?: () -> bool
111
+
112
+ def claims: () -> Array[String]?
113
+ def claims=: (Array[String]?) -> Array[String]?
114
+ def claims?: () -> bool
115
+ def claims_valid?: () -> bool
116
+
117
+ def counter_claims: () -> Array[String]?
118
+ def counter_claims=: (Array[String]?) -> Array[String]?
119
+ def counter_claims?: () -> bool
120
+ def counter_claims_valid?: () -> bool
121
+
122
+ def conformance: () -> Conformance?
123
+ def conformance=: (Conformance?) -> Conformance?
124
+ def conformance?: () -> bool
125
+ def conformance_valid?: () -> bool
126
+
127
+ def confidence: () -> Confidence?
128
+ def confidence=: (Confidence?) -> Confidence?
129
+ def confidence?: () -> bool
130
+ def confidence_valid?: () -> bool
131
+ end
132
+ def initialize: (?summary: String?, ?assessor: String?, ?requirements_map: Array[Map]?, ?signature: Signature::signatureChoice?) -> void
133
+
134
+ def summary: () -> String?
135
+ def summary=: (String?) -> String?
136
+ def summary?: () -> bool
137
+ def summary_valid?: () -> bool
138
+
139
+ def assessor: () -> String?
140
+ def assessor=: (String?) -> String?
141
+ def assessor?: () -> bool
142
+ def assessor_valid?: () -> bool
143
+
144
+ def requirements_map: () -> Array[Map]?
145
+ def requirements_map=: (Array[Map]?) -> Array[Map]?
146
+ def requirements_map?: () -> bool
147
+ def requirements_map_valid?: () -> bool
148
+
149
+ def signature: () -> Signature::signatureChoice?
150
+ def signature=: (Signature::signatureChoice?) -> Signature::signatureChoice?
151
+ def signature?: () -> bool
152
+ def signature_valid?: () -> bool
153
+ end
154
+
155
+ class Claim < Base
156
+ def initialize: (?bom_ref: String?, ?target: String?, ?predicate: String?, ?mitigation_strategies: Array[String]?, ?reasoning: String?, ?evidence: Array[String]?, ?counter_evidence: Array[String]?, ?external_references: Array[ExternalReference]?, ?signature: Signature::signatureChoice?) -> void
157
+
158
+ def bom_ref: () -> String?
159
+ def bom_ref=: (String?) -> String?
160
+ def bom_ref?: () -> bool
161
+ def bom_ref_valid?: () -> bool
162
+
163
+ def target: () -> String?
164
+ def target=: (String?) -> String?
165
+ def target?: () -> bool
166
+ def target_valid?: () -> bool
167
+
168
+ def predicate: () -> String?
169
+ def predicate=: (String?) -> String?
170
+ def predicate?: () -> bool
171
+ def predicate_valid?: () -> bool
172
+
173
+ def mitigation_strategies: () -> Array[String]?
174
+ def mitigation_strategies=: (Array[String]?) -> Array[String]?
175
+ def mitigation_strategies?: () -> bool
176
+ def mitigation_strategies_valid?: () -> bool
177
+
178
+ def reasoning: () -> String?
179
+ def reasoning=: (String?) -> String?
180
+ def reasoning?: () -> bool
181
+ def reasoning_valid?: () -> bool
182
+
183
+ def evidence: () -> Array[String]?
184
+ def evidence=: (Array[String]?) -> Array[String]?
185
+ def evidence?: () -> bool
186
+ def evidence_valid?: () -> bool
187
+
188
+ def counter_evidence: () -> Array[String]?
189
+ def counter_evidence=: (Array[String]?) -> Array[String]?
190
+ def counter_evidence?: () -> bool
191
+ def counter_evidence_valid?: () -> bool
192
+
193
+ def external_references: () -> Array[ExternalReference]?
194
+ def external_references=: (Array[ExternalReference]?) -> Array[ExternalReference]?
195
+ def external_references?: () -> bool
196
+ def external_references_valid?: () -> bool
197
+
198
+ def signature: () -> Signature::signatureChoice?
199
+ def signature=: (Signature::signatureChoice?) -> Signature::signatureChoice?
200
+ def signature?: () -> bool
201
+ def signature_valid?: () -> bool
202
+ end
203
+
204
+ class Evidence < Base
205
+ class EvidenceData < Base
206
+ class Contents < Base
207
+ def initialize: (?attachment: Attachment?, ?url: uri?) -> void
208
+
209
+ def attachment: () -> Attachment?
210
+ def attachment=: (Attachment?) -> Attachment?
211
+ def attachment?: () -> bool
212
+ def attachment_valid?: () -> bool
213
+
214
+ def url: () -> uri?
215
+ def url=: (uri?) -> uri?
216
+ def url?: () -> bool
217
+ def url_valid?: () -> bool
218
+ end
219
+ def initialize: (?name: String?, ?contents: Contents?, ?classification: String?, ?sensitive_data: Array[String]?, ?governance: DataGovernance?) -> void
220
+
221
+ def name: () -> String?
222
+ def name=: (String?) -> String?
223
+ def name?: () -> bool
224
+ def name_valid?: () -> bool
225
+
226
+ def contents: () -> Contents?
227
+ def contents=: (Contents?) -> Contents?
228
+ def contents?: () -> bool
229
+ def contents_valid?: () -> bool
230
+
231
+ def classification: () -> String?
232
+ def classification=: (String?) -> String?
233
+ def classification?: () -> bool
234
+ def classification_valid?: () -> bool
235
+
236
+ def sensitive_data: () -> Array[String]?
237
+ def sensitive_data=: (Array[String]?) -> Array[String]?
238
+ def sensitive_data?: () -> bool
239
+ def sensitive_data_valid?: () -> bool
240
+
241
+ def governance: () -> DataGovernance?
242
+ def governance=: (DataGovernance?) -> DataGovernance?
243
+ def governance?: () -> bool
244
+ def governance_valid?: () -> bool
245
+ end
246
+ def initialize: (?bom_ref: String?, ?property_name: String?, ?description: String?, ?data: Array[EvidenceData]?, ?created: dateTime?, ?expires: dateTime?, ?author: OrganizationalContact?, ?reviewer: OrganizationalContact?, ?signature: Signature::signatureChoice?) -> void
247
+
248
+ def bom_ref: () -> String?
249
+ def bom_ref=: (String?) -> String?
250
+ def bom_ref?: () -> bool
251
+ def bom_ref_valid?: () -> bool
252
+
253
+ def property_name: () -> String?
254
+ def property_name=: (String?) -> String?
255
+ def property_name?: () -> bool
256
+ def property_name_valid?: () -> bool
257
+
258
+ def description: () -> String?
259
+ def description=: (String?) -> String?
260
+ def description?: () -> bool
261
+ def description_valid?: () -> bool
262
+
263
+ def data: () -> Array[EvidenceData]?
264
+ def data=: (Array[EvidenceData]?) -> Array[EvidenceData]?
265
+ def data?: () -> bool
266
+ def data_valid?: () -> bool
267
+
268
+ def created: () -> dateTime?
269
+ def created=: (dateTime?) -> dateTime?
270
+ def created?: () -> bool
271
+ def created_valid?: () -> bool
272
+
273
+ def expires: () -> dateTime?
274
+ def expires=: (dateTime?) -> dateTime?
275
+ def expires?: () -> bool
276
+ def expires_valid?: () -> bool
277
+
278
+ def author: () -> OrganizationalContact?
279
+ def author=: (OrganizationalContact?) -> OrganizationalContact?
280
+ def author?: () -> bool
281
+ def author_valid?: () -> bool
282
+
283
+ def reviewer: () -> OrganizationalContact?
284
+ def reviewer=: (OrganizationalContact?) -> OrganizationalContact?
285
+ def reviewer?: () -> bool
286
+ def reviewer_valid?: () -> bool
287
+
288
+ def signature: () -> Signature::signatureChoice?
289
+ def signature=: (Signature::signatureChoice?) -> Signature::signatureChoice?
290
+ def signature?: () -> bool
291
+ def signature_valid?: () -> bool
292
+ end
293
+
294
+ class Target < Base
295
+ def initialize: (?organizations: Array[OrganizationalEntity]?, ?components: Array[Component]?, ?services: Array[Service]?) -> void
296
+
297
+ def organizations: () -> Array[OrganizationalEntity]?
298
+ def organizations=: (Array[OrganizationalEntity]?) -> Array[OrganizationalEntity]?
299
+ def organizations?: () -> bool
300
+ def organizations_valid?: () -> bool
301
+
302
+ def components: () -> Array[Component]?
303
+ def components=: (Array[Component]?) -> Array[Component]?
304
+ def components?: () -> bool
305
+ def components_valid?: () -> bool
306
+
307
+ def services: () -> Array[Service]?
308
+ def services=: (Array[Service]?) -> Array[Service]?
309
+ def services?: () -> bool
310
+ def services_valid?: () -> bool
311
+ end
312
+
313
+ def initialize: (?assessors: Array[Assessor]?, ?attestations: Array[Attestation]?, ?claims: Array[Claim]?, ?evidence: Array[Evidence]?, ?targets: Array[Target]?, ?affirmation: Affirmation?, ?signature: Signature::signatureChoice?) -> void
314
+
315
+ def assessors: () -> Array[Assessor]?
316
+ def assessors=: (Array[Assessor]?) -> Array[Assessor]?
317
+ def assessors?: () -> bool
318
+ def assessors_valid?: () -> bool
319
+
320
+ def attestations: () -> Array[Attestation]?
321
+ def attestations=: (Array[Attestation]?) -> Array[Attestation]?
322
+ def attestations?: () -> bool
323
+ def attestations_valid?: () -> bool
324
+
325
+ def claims: () -> Array[Claim]?
326
+ def claims=: (Array[Claim]?) -> Array[Claim]?
327
+ def claims?: () -> bool
328
+ def claims_valid?: () -> bool
329
+
330
+ def evidence: () -> Array[Evidence]?
331
+ def evidence=: (Array[Evidence]?) -> Array[Evidence]?
332
+ def evidence?: () -> bool
333
+ def evidence_valid?: () -> bool
334
+
335
+ def targets: () -> Array[Target]?
336
+ def targets=: (Array[Target]?) -> Array[Target]?
337
+ def targets?: () -> bool
338
+ def targets_valid?: () -> bool
339
+
340
+ def affirmation: () -> Affirmation?
341
+ def affirmation=: (Affirmation?) -> Affirmation?
342
+ def affirmation?: () -> bool
343
+ def affirmation_valid?: () -> bool
344
+
345
+ def signature: () -> Signature::signatureChoice?
346
+ def signature=: (Signature::signatureChoice?) -> Signature::signatureChoice?
347
+ def signature?: () -> bool
348
+ def signature_valid?: () -> bool
349
+ end
350
+ end
351
+ end
352
+ end
@@ -0,0 +1,14 @@
1
+ module SBOM
2
+ module CycloneDX
3
+ module Record
4
+ class Definitions < Base
5
+ def initialize: (?standards: Array[Standard]?) -> void
6
+
7
+ def standards: () -> Array[Standard]?
8
+ def standards=: (Array[Standard]?) -> Array[Standard]?
9
+ def standards?: () -> bool
10
+ def standards_valid?: () -> bool
11
+ end
12
+ end
13
+ end
14
+ end