Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 7 additions & 2 deletions schema/bom-1.7.proto
Original file line number Diff line number Diff line change
Expand Up @@ -559,6 +559,11 @@ enum LicensingTypeEnum {
}

message Metadata {
message DistributionConstraints {
// The Traffic Light Protocol (TLP) classification that controls the sharing and distribution of the data that the BOM describes.
optional TlpClassification tlp = 1;
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

tlpClassification or tlpLabel is a bit verbose but could be easy to understand without the need for a help text.

}

// The date and time (timestamp) when the document was created.
optional google.protobuf.Timestamp timestamp = 1;
// The tool(s) used in the creation of the BOM.
Expand All @@ -580,8 +585,8 @@ message Metadata {
repeated Lifecycles lifecycles = 9;
// The organization that created the BOM. Manufacturer is common in BOMs created through automated processes. BOMs created through manual means may have '.authors' instead.
optional OrganizationalEntity manufacturer = 10;
// The Traffic Light Protocol (TLP) classification that controls the sharing and distribution of the data that the BOM describes.
optional TlpClassification distribution = 11;
// Conditions and constraints governing the sharing and distribution of the data or components described by this BOM.
optional DistributionConstraints distributionConstraints = 11;
}

message Lifecycles {
Expand Down
15 changes: 11 additions & 4 deletions schema/bom-1.7.schema.json
Original file line number Diff line number Diff line change
Expand Up @@ -723,10 +723,17 @@
"description": "Provides the ability to document properties in a name-value store. This provides flexibility to include data not officially supported in the standard without having to use additional namespaces or create extensions. Unlike key-value stores, properties support duplicate names, each potentially having different values. Property names of interest to the general public are encouraged to be registered in the [CycloneDX Property Taxonomy](https://github.com/CycloneDX/cyclonedx-property-taxonomy). Formal registration is optional.",
"items": {"$ref": "#/definitions/property"}
},
"distribution": {
"title": "Distribution",
"description": "The Traffic Light Protocol (TLP) classification that controls the sharing and distribution of the data that the BOM describes.",
"$ref": "#/definitions/tlpClassification"
"distributionConstraints": {
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

How about distributionTerms or sharingPolicies rather than constraints?

"title": "Distribution Constraints",
"description": "Conditions and constraints governing the sharing and distribution of the data or components described by this BOM.",
"type": "object",
"properties": {
"tlp": {
"$ref": "#/definitions/tlpClassification",
"description": "The Traffic Light Protocol (TLP) classification that controls the sharing and distribution of the data that the BOM describes."
}
},
"additionalProperties": false
}
}
},
Expand Down
20 changes: 17 additions & 3 deletions schema/bom-1.7.xsd
Original file line number Diff line number Diff line change
Expand Up @@ -256,11 +256,25 @@ limitations under the License.
Formal registration is optional.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="distribution" type="bom:tlpClassificationType" default="CLEAR" minOccurs="0" maxOccurs="1">
<xs:element name="distributionConstraints" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation>The Traffic Light Protocol (TLP) classification that controls the sharing and distribution
of the data that the BOM describes.</xs:documentation>
<xs:documentation>
Conditions and constraints governing the sharing and distribution of the data or components
described by this BOM.
</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="tlp" type="bom:tlpClassificationType" default="CLEAR" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation>
The Traffic Light Protocol (TLP) classification that controls the sharing and
distribution of the data that the BOM describes.
</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,9 @@
"serialNumber": "urn:uuid:3e671687-395b-41f5-a30f-a58921a69b79",
"version": 1,
"metadata": {
"distribution": "RED"
"distributionConstraints": {
"tlp": "RED"
}
},
"components": []
}
Original file line number Diff line number Diff line change
Expand Up @@ -5,5 +5,7 @@ spec_version: "1.7"
version: 1
serial_number: "urn:uuid:3e671687-395b-41f5-a30f-a58921a69b79"
metadata {
distribution: TLP_CLASSIFICATION_RED
distributionConstraints {
tlp: TLP_CLASSIFICATION_RED
}
}
Original file line number Diff line number Diff line change
@@ -1,7 +1,9 @@
<?xml version="1.0"?>
<bom serialNumber="urn:uuid:3e671687-395b-41f5-a30f-a58921a69b79" version="1" xmlns="http://cyclonedx.org/schema/bom/1.7">
<metadata>
<distribution>RED</distribution>
<distributionConstraints>
<tlp>RED</tlp>
</distributionConstraints>
</metadata>
<components />
</bom>