Skip to content
Open
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
3 changes: 3 additions & 0 deletions .github/workflows/build_docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,9 @@ on:
env:
PYTHON_VERSION_DEFAULT: "3.10"

# https://docs.github.com/en/actions/writing-workflows/choosing-what-your-workflow-does/controlling-permissions-for-github_token
permissions: {}

jobs:
docs_xml:
runs-on: ubuntu-latest
Expand Down
11 changes: 8 additions & 3 deletions .github/workflows/test_java.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,16 +14,21 @@ defaults:
run:
working-directory: tools

# https://docs.github.com/en/actions/writing-workflows/choosing-what-your-workflow-does/controlling-permissions-for-github_token
permissions: {}

jobs:
test:
test_java:
runs-on: ubuntu-latest
steps:
- name: Checkout
# see https://github.com/actions/checkout
uses: actions/checkout@v4
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
with:
persist-credentials: false
- name: Set up JDK
# see https://github.com/actions/setup-java
uses: actions/setup-java@v4
uses: actions/setup-java@be666c2fcd27ec809703dec50e508c2fdc7f6654 # v5
with:
java-version: '8'
distribution: 'zulu'
Expand Down
16 changes: 11 additions & 5 deletions .github/workflows/test_js.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,20 +16,26 @@ defaults:
run:
working-directory: tools/src/test/js

# https://docs.github.com/en/actions/writing-workflows/choosing-what-your-workflow-does/controlling-permissions-for-github_token
permissions: {}

jobs:
test:
test_js:
timeout-minutes: 30
runs-on: ubuntu-latest
steps:
- name: Checkout
# see https://github.com/actions/checkout
uses: actions/checkout@v4
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
with:
persist-credentials: false
- name: Setup Node.js
# see https://github.com/actions/setup-node
uses: actions/setup-node@v4
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6
with:
node-version: '20.x'
- name: Install Depenencies
node-version: '24.x'
package-manager-cache: false
- name: Install Dependencies
run: npm install
- name: Run test
run: npm test
13 changes: 9 additions & 4 deletions .github/workflows/test_php.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,19 +16,24 @@ defaults:
run:
working-directory: tools/src/test/php

# https://docs.github.com/en/actions/writing-workflows/choosing-what-your-workflow-does/controlling-permissions-for-github_token
permissions: {}

jobs:
test:
test_php:
timeout-minutes: 30
runs-on: ubuntu-latest
steps:
- name: Checkout
# see https://github.com/actions/checkout
uses: actions/checkout@v4
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
with:
persist-credentials: false
- name: Setup PHP
# see https://github.com/shivammathur/setup-php
uses: shivammathur/setup-php@v2
uses: shivammathur/setup-php@accd6127cb78bee3e8082180cb391013d204ef9f # v2
with:
php-version: "8.1"
php-version: "8.4"
tools: composer:v2
- name: Install Depenencies
run: composer install
Expand Down
9 changes: 7 additions & 2 deletions .github/workflows/test_proto.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,13 +16,18 @@ defaults:
run:
working-directory: tools/src/test/proto

# https://docs.github.com/en/actions/writing-workflows/choosing-what-your-workflow-does/controlling-permissions-for-github_token
permissions: {}

jobs:
test:
test_proto:
timeout-minutes: 30
runs-on: ubuntu-latest
steps:
- name: Checkout
# see https://github.com/actions/checkout
uses: actions/checkout@v4
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
with:
persist-credentials: false
- name: Run test
run: ./test.sh
6 changes: 4 additions & 2 deletions schema/bom-1.5.proto
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
syntax = "proto3";
package cyclonedx.v1_5;
package cyclonedx.v1_5; // 1.5.1
import "google/protobuf/timestamp.proto";

// Specifies attributes of the text
Expand Down Expand Up @@ -960,7 +960,7 @@ message VulnerabilityAffectedVersions {
oneof choice {
// A single version of a component or service.
string version = 1;
// A version range specified in Package URL Version Range syntax (vers) which is defined at https://github.com/package-url/purl-spec/VERSION-RANGE-SPEC.rst
// A version range specified in Package URL Version Range syntax (vers) which is defined at https://github.com/package-url/vers-spec
string range = 2;
}
// The vulnerability status for the version or range of versions. Defaults to VULNERABILITY_AFFECTED_STATUS_AFFECTED if not specified.
Expand Down Expand Up @@ -1009,6 +1009,8 @@ message ModelCard {
optional QuantitativeAnalysis quantitativeAnalysis = 3;
// What considerations should be taken into account regarding the model's construction, training, and application?
optional ModelCardConsiderations considerations = 4;
// Specifies optional, custom, properties
repeated Property properties = 5;

message ModelParameters {
// The overall approach to learning used by the model for problem solving.
Expand Down
4 changes: 2 additions & 2 deletions schema/bom-1.5.schema.json
Original file line number Diff line number Diff line change
Expand Up @@ -2284,7 +2284,7 @@
"$ref": "#/definitions/version"
},
"range": {
"description": "A version range specified in Package URL Version Range syntax (vers) which is defined at https://github.com/package-url/purl-spec/VERSION-RANGE-SPEC.rst",
"description": "A version range specified in Package URL Version Range syntax (vers) which is defined at https://github.com/package-url/vers-spec",
"$ref": "#/definitions/range"
},
"status": {
Expand Down Expand Up @@ -2326,7 +2326,7 @@
"maxLength": 1024
},
"range": {
"description": "A version range specified in Package URL Version Range syntax (vers) which is defined at https://github.com/package-url/purl-spec/VERSION-RANGE-SPEC.rst",
"description": "A version range specified in Package URL Version Range syntax (vers) which is defined at https://github.com/package-url/vers-spec",
"type": "string",
"minLength": 1,
"maxLength": 1024
Expand Down
26 changes: 18 additions & 8 deletions schema/bom-1.5.xsd
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ limitations under the License.
targetNamespace="http://cyclonedx.org/schema/bom/1.5"
vc:minVersion="1.0"
vc:maxVersion="1.1"
version="1.5.0">
version="1.5.1">

<xs:import namespace="http://cyclonedx.org/schema/spdx" schemaLocation="http://cyclonedx.org/schema/spdx"/>

Expand Down Expand Up @@ -2433,12 +2433,12 @@ limitations under the License.
</xs:enumeration>
<xs:enumeration value="incomplete_first_party_proprietary_only">
<xs:annotation>
<xs:documentation>The relationship is incomplete. Only relationships for third-party components, services, or their dependencies are represented, limited specifically to those that are proprietary.</xs:documentation>
<xs:documentation>The relationship is incomplete. Only relationships for first-party components, services, or their dependencies are represented, limited specifically to those that are proprietary.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="incomplete_first_party_opensource_only">
<xs:annotation>
<xs:documentation>The relationship is incomplete. Only relationships for third-party components, services, or their dependencies are represented, limited specifically to those that are opensource.</xs:documentation>
<xs:documentation>The relationship is incomplete. Only relationships for first-party components, services, or their dependencies are represented, limited specifically to those that are opensource.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="incomplete_third_party_only">
Expand Down Expand Up @@ -2885,7 +2885,7 @@ limitations under the License.
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="user" type="xs:string" minOccurs="0" maxOccurs="1" />
<xs:element name="user" type="xs:string" minOccurs="0" maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
</xs:element>
Expand All @@ -2897,7 +2897,7 @@ limitations under the License.
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="useCase" type="xs:string" minOccurs="0" maxOccurs="1" />
<xs:element name="useCase" type="xs:string" minOccurs="0" maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
</xs:element>
Expand All @@ -2911,7 +2911,7 @@ limitations under the License.
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="technicalLimitation" type="xs:string" minOccurs="0" maxOccurs="1" />
<xs:element name="technicalLimitation" type="xs:string" minOccurs="0" maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
</xs:element>
Expand All @@ -2923,7 +2923,7 @@ limitations under the License.
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="performanceTradeoff" type="xs:string" minOccurs="0" maxOccurs="1" />
<xs:element name="performanceTradeoff" type="xs:string" minOccurs="0" maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
</xs:element>
Expand Down Expand Up @@ -3008,6 +3008,16 @@ limitations under the License.
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="properties" type="bom:propertiesType" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation>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. 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.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attribute name="bom-ref" type="bom:refType">
<xs:annotation>
Expand Down Expand Up @@ -3644,7 +3654,7 @@ limitations under the License.
</xs:element>
<xs:element name="range" type="xs:normalizedString" minOccurs="1" maxOccurs="1">
<xs:annotation>
<xs:documentation>A version range specified in Package URL Version Range syntax (vers) which is defined at https://github.com/package-url/purl-spec/VERSION-RANGE-SPEC.rst</xs:documentation>
<xs:documentation>A version range specified in Package URL Version Range syntax (vers) which is defined at https://github.com/package-url/vers-spec</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
Expand Down
10 changes: 6 additions & 4 deletions schema/bom-1.6.proto
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
syntax = "proto3";
package cyclonedx.v1_6; // version 1.6.1
package cyclonedx.v1_6; // version 1.6.2
import "google/protobuf/timestamp.proto";

// Specifies attributes of the text
message AttachedText {
// Specifies the format and nature of the data being attached, helping systems correctly interpret and process the content. Common content type examples include `application/json` for JSON data and `text/plain` for plan text documents. [RFC 2045 section 5.1](https://www.ietf.org/rfc/rfc2045.html#section-5.1) outlines the structure and use of content types. For a comprehensive list of registered content types, refer to the [IANA media types registry](https://www.iana.org/assignments/media-types/media-types.xhtml).
// Specifies the format and nature of the data being attached, helping systems correctly interpret and process the content. Common content type examples include `application/json` for JSON data and `text/plain` for plain text documents. [RFC 2045 section 5.1](https://www.ietf.org/rfc/rfc2045.html#section-5.1) outlines the structure and use of content types. For a comprehensive list of registered content types, refer to the [IANA media types registry](https://www.iana.org/assignments/media-types/media-types.xhtml).
optional string content_type = 1;
// Specifies the optional encoding the text is represented in
optional string encoding = 2;
Expand Down Expand Up @@ -888,7 +888,7 @@ message Vulnerability {
optional Source source = 3;
// Zero or more pointers to vulnerabilities that are the equivalent of the vulnerability specified. Oftentimes, the same vulnerability may exist in multiple sources of vulnerability intelligence but have different identifiers. References provide a way to correlate vulnerabilities across multiple sources of vulnerability intelligence.
repeated VulnerabilityReference references = 4;
// List of vulnerability ratings
// List of vulnerability ratings. Consumers SHOULD consider ratings in prioritization decisions; source ratings may differ and aid prioritization.
repeated VulnerabilityRating ratings = 5;
// List of Common Weaknesses Enumerations (CWEs) codes that describe this vulnerability. For example, 399 (of https://cwe.mitre.org/data/definitions/399.html)
repeated int32 cwes = 6;
Expand Down Expand Up @@ -1093,7 +1093,7 @@ message VulnerabilityAffectedVersions {
oneof choice {
// A single version of a component or service.
string version = 1;
// A version range specified in Package URL Version Range syntax (vers), which is defined at https://github.com/package-url/purl-spec/VERSION-RANGE-SPEC.rst
// A version range specified in Package URL Version Range syntax (vers), which is defined at https://github.com/package-url/vers-spec
string range = 2;
}
// The vulnerability status for the version or range of versions. Defaults to VULNERABILITY_AFFECTED_STATUS_AFFECTED if not specified.
Expand Down Expand Up @@ -1152,6 +1152,8 @@ message ModelCard {
optional QuantitativeAnalysis quantitativeAnalysis = 3;
// What considerations should be taken into account regarding the model's construction, training, and application?
optional ModelCardConsiderations considerations = 4;
// Specifies optional, custom, properties
repeated Property properties = 5;

message ModelParameters {
// The overall approach to learning used by the model for problem-solving.
Expand Down
14 changes: 7 additions & 7 deletions schema/bom-1.6.schema.json
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@
"type": "string",
"title": "CycloneDX Specification Version",
"description": "The version of the CycloneDX specification the BOM conforms to.",
"examples": ["1.6.1"]
"examples": ["1.6"]
},
"serialNumber": {
"type": "string",
Expand Down Expand Up @@ -536,7 +536,7 @@
"description": "Identifier for referable and therefore interlinkable elements.\nValue SHOULD not start with the BOM-Link intro 'urn:cdx:' to avoid conflicts with BOM-Links.",
"type": "string",
"minLength": 1,
"$comment": "TODO (breaking change): add a format constraint that prevents the value from staring with 'urn:cdx:'"
"$comment": "TODO (breaking change): add a format constraint that prevents the value from starting with 'urn:cdx:'"
},
"refLinkType": {
"description": "Descriptor for an element identified by the attribute 'bom-ref' in the same BOM document.\nIn contrast to `bomLinkElementType`.",
Expand Down Expand Up @@ -1161,7 +1161,7 @@
"contentType": {
"type": "string",
"title": "Content-Type",
"description": "Specifies the format and nature of the data being attached, helping systems correctly interpret and process the content. Common content type examples include `application/json` for JSON data and `text/plain` for plan text documents.\n [RFC 2045 section 5.1](https://www.ietf.org/rfc/rfc2045.html#section-5.1) outlines the structure and use of content types. For a comprehensive list of registered content types, refer to the [IANA media types registry](https://www.iana.org/assignments/media-types/media-types.xhtml).",
"description": "Specifies the format and nature of the data being attached, helping systems correctly interpret and process the content. Common content type examples include `application/json` for JSON data and `text/plain` for plain text documents.\n [RFC 2045 section 5.1](https://www.ietf.org/rfc/rfc2045.html#section-5.1) outlines the structure and use of content types. For a comprehensive list of registered content types, refer to the [IANA media types registry](https://www.iana.org/assignments/media-types/media-types.xhtml).",
"default": "text/plain",
"examples": [
"text/plain",
Expand Down Expand Up @@ -2237,7 +2237,7 @@
"aggregate": {
"$ref": "#/definitions/aggregateType",
"title": "Aggregate",
"description": "Specifies an aggregate type that describe how complete a relationship is."
"description": "Specifies an aggregate type that describes how complete a relationship is."
},
"assemblies": {
"type": "array",
Expand Down Expand Up @@ -2681,7 +2681,7 @@
"ratings": {
"type": "array",
"title": "Ratings",
"description": "List of vulnerability ratings",
"description": "List of vulnerability ratings. Consumers SHOULD consider ratings in prioritization decisions; source ratings may differ and aid prioritization.",
"items": {
"$ref": "#/definitions/rating"
}
Expand Down Expand Up @@ -2928,7 +2928,7 @@
},
"range": {
"title": "Version Range",
"description": "A version range specified in Package URL Version Range syntax (vers) which is defined at https://github.com/package-url/purl-spec/VERSION-RANGE-SPEC.rst",
"description": "A version range specified in Package URL Version Range syntax (vers) which is defined at https://github.com/package-url/vers-spec",
"$ref": "#/definitions/versionRange"
},
"status": {
Expand Down Expand Up @@ -2983,7 +2983,7 @@
]
},
"versionRange": {
"description": "A version range specified in Package URL Version Range syntax (vers) which is defined at https://github.com/package-url/purl-spec/VERSION-RANGE-SPEC.rst",
"description": "A version range specified in Package URL Version Range syntax (vers) which is defined at https://github.com/package-url/vers-spec",
"type": "string",
"minLength": 1,
"maxLength": 4096,
Expand Down
Loading
Loading