|
75 | 75 | }, |
76 | 76 | "definitions": { |
77 | 77 | "$ref": "#/$defs/cyclonedx-definition-2.0/$defs/definitions" |
| 78 | + }, |
| 79 | + "citations": { |
| 80 | + "$ref": "#/$defs/cyclonedx-citation-2.0/$defs/citations" |
78 | 81 | } |
79 | 82 | }, |
80 | 83 | "$defs": { |
|
765 | 768 | } |
766 | 769 | } |
767 | 770 | }, |
| 771 | + "cyclonedx-citation-2.0": { |
| 772 | + "type": "null", |
| 773 | + "title": "CycloneDX Citation Model", |
| 774 | + "$defs": { |
| 775 | + "citations": { |
| 776 | + "type": "array", |
| 777 | + "items": { |
| 778 | + "$ref": "#/$defs/cyclonedx-citation-2.0/$defs/citation" |
| 779 | + }, |
| 780 | + "uniqueItems": true, |
| 781 | + "title": "Citations", |
| 782 | + "description": "A collection of attributions indicating which entity supplied information for specific fields within the BOM." |
| 783 | + }, |
| 784 | + "citation": { |
| 785 | + "type": "object", |
| 786 | + "title": "Citation", |
| 787 | + "description": "Details a specific attribution of data within the BOM to a contributing entity or process.", |
| 788 | + "additionalProperties": false, |
| 789 | + "properties": { |
| 790 | + "bom-ref": { |
| 791 | + "$ref": "#/$defs/cyclonedx-common-2.0/$defs/refType", |
| 792 | + "title": "BOM Reference" |
| 793 | + }, |
| 794 | + "pointers": { |
| 795 | + "type": "array", |
| 796 | + "items": { |
| 797 | + "type": "string", |
| 798 | + "title": "Field Reference", |
| 799 | + "description": "A [JSON Pointer](https://datatracker.ietf.org/doc/html/rfc6901) identifying the BOM field to which the attribution applies." |
| 800 | + }, |
| 801 | + "minItems": 1, |
| 802 | + "title": "Field References", |
| 803 | + "description": "One or more [JSON Pointers](https://datatracker.ietf.org/doc/html/rfc6901) identifying the BOM fields to which the attribution applies.\nExactly one of the \"pointers\" or \"expressions\" elements must be present." |
| 804 | + }, |
| 805 | + "expressions": { |
| 806 | + "type": "array", |
| 807 | + "items": { |
| 808 | + "type": "string", |
| 809 | + "title": "Path Expression", |
| 810 | + "description": "Specifies a [JSONPath](https://datatracker.ietf.org/doc/html/rfc9535) expression used to locate a value within a BOM." |
| 811 | + }, |
| 812 | + "minItems": 1, |
| 813 | + "title": "Path Expressions", |
| 814 | + "description": "One or more path expressions used to locate values within a BOM.\nExactly one of the \"pointers\" or \"expressions\" elements must be present." |
| 815 | + }, |
| 816 | + "timestamp": { |
| 817 | + "type": "string", |
| 818 | + "format": "date-time", |
| 819 | + "title": "Timestamp", |
| 820 | + "description": "The date and time when the attribution was made or the information was supplied." |
| 821 | + }, |
| 822 | + "attributedTo": { |
| 823 | + "$ref": "#/$defs/cyclonedx-common-2.0/$defs/refLinkType", |
| 824 | + "title": "Attributed To", |
| 825 | + "description": "The `bom-ref` of an object, such as a component, service, tool, organisational entity, or person that supplied the cited information.\nAt least one of the \"attributedTo\" or \"process\" elements must be present." |
| 826 | + }, |
| 827 | + "process": { |
| 828 | + "$ref": "#/$defs/cyclonedx-common-2.0/$defs/refLinkType", |
| 829 | + "title": "Process Reference", |
| 830 | + "description": "The `bom-ref` to a process (such as a formula, workflow, task, or step) defined in the `formulation` section that executed or generated the attributed data.\nAt least one of the \"attributedTo\" or \"process\" elements must be present." |
| 831 | + }, |
| 832 | + "note": { |
| 833 | + "type": "string", |
| 834 | + "title": "Note", |
| 835 | + "description": "A description or comment about the context or quality of the data attribution." |
| 836 | + }, |
| 837 | + "signature": { |
| 838 | + "$ref": "#/$defs/cyclonedx-common-2.0/$defs/signature", |
| 839 | + "title": "Signature", |
| 840 | + "description": "A digital signature verifying the authenticity or integrity of the attribution." |
| 841 | + } |
| 842 | + }, |
| 843 | + "required": [ |
| 844 | + "timestamp" |
| 845 | + ], |
| 846 | + "anyOf": [ |
| 847 | + { |
| 848 | + "required": [ |
| 849 | + "attributedTo" |
| 850 | + ] |
| 851 | + }, |
| 852 | + { |
| 853 | + "required": [ |
| 854 | + "process" |
| 855 | + ] |
| 856 | + } |
| 857 | + ], |
| 858 | + "oneOf": [ |
| 859 | + { |
| 860 | + "required": [ |
| 861 | + "pointers" |
| 862 | + ] |
| 863 | + }, |
| 864 | + { |
| 865 | + "required": [ |
| 866 | + "expressions" |
| 867 | + ] |
| 868 | + } |
| 869 | + ] |
| 870 | + } |
| 871 | + } |
| 872 | + }, |
768 | 873 | "cyclonedx-common-2.0": { |
769 | 874 | "type": "null", |
770 | 875 | "title": "CycloneDX Common Model", |
|
6679 | 6784 | }, |
6680 | 6785 | "definitions": { |
6681 | 6786 | "$ref": "#/$defs/cyclonedx-definition-2.0/$defs/definitions" |
| 6787 | + }, |
| 6788 | + "citations": { |
| 6789 | + "$ref": "#/$defs/cyclonedx-citation-2.0/$defs/citations" |
6682 | 6790 | } |
6683 | 6791 | } |
6684 | 6792 | } |
|
0 commit comments