Component Descriptor Schema

The Component Descriptor is the central metadata document in the Open Component Model. It describes a component version with all its resources, sources, and references to other components.

Component Descriptor vs. Component Constructor

This schema is for Component Descriptors (the final output artifact for components stored in registries).

If you’re looking for the schema to validate Component Constructor files (component-constructor.yaml used as input for ocm add componentversion), use the Configuration Schema instead.

Schema Source

This schema is sourced from the Open Component Model specification.

Download

Download Schema

component-descriptor-v2-schema.json — JSON Schema (version Draft 2020-12)

Use Cases

Component Descriptors are typically generated automatically by the OCM CLI. This schema is useful for:

  • Validation Tools — Programmatically validate component descriptors in CI/CD pipelines
  • API Development — Generate types for applications that work with OCM component descriptors
  • Documentation — Understand the structure and fields of component descriptors
  • Debugging — Inspect and validate component descriptors retrieved from registries

Schema Reference

Typeobject
RequiredNo
Additional propertiesAny type allowed

Description: Open Component Model v2 schema

PropertyPatternTypeDeprecatedDefinitionTitle/Description
+ metaNoobjectNoIn #/$defs/metaMetadata of the component descriptor
+ componentNoobjectNoIn #/$defs/componentThe component specification
- signaturesNoCombinationNo-Optional signing information for verifying component validity
- nestedDigestsNoCombinationNo-Digest information for nested components

1. Property root > meta

Typeobject
RequiredYes
Additional propertiesAny type allowed
Defined in#/$defs/meta

Description: Metadata of the component descriptor

PropertyPatternTypeDeprecatedDefinitionTitle/Description
+ schemaVersionNostringNo-Schema version of the component descriptor

1.1. Property root > meta > schemaVersion

Typestring
RequiredYes

Description: Schema version of the component descriptor

Restrictions
Must match regular expression^v2 Test

2. Property root > component

Typeobject
RequiredYes
Additional propertiesAny type allowed
Defined in#/$defs/component

Description: The component specification

Example:

name: github.com/open-component-model/podinfo
version: v1.0.0
provider: open-component-model
labels:
- name: link-to-documentation
  value: https://ocm.software/
componentReferences: []
repositoryContexts:
- baseUrl: ghcr.io
  componentNameMapping: urlPath
  subPath: open-component-model/open-component-model
  type: OCIRegistry
resources:
- name: podinfo
  relation: external
  type: ociImage
  version: 6.8.0
  access:
    type: ociArtifact
    imageReference: ghcr.io/stefanprodan/podinfo:6.8.0
  digest:
    hashAlgorithm: SHA-256
    normalisationAlgorithm: ociArtifactDigest/v1
    value: 6c1975b871efb327528c84d46d38e6dd7906eecee6402bc270eeb7f1b1a506df
  srcRefs:
  - identitySelector:
      name: podinfo
      version: 6.8.0
sources:
- name: podinfo
  type: git
  version: 6.8.0
  access:
    commit: b3396adb98a6a0f5eeedd1a600beaf5e954a1f28
    ref: refs/tags/v6.8.0
    repoUrl: github.com/stefanprodan/podinfo
    type: gitHub
PropertyPatternTypeDeprecatedDefinitionTitle/Description
+ nameNostringNoIn #/$defs/componentNameName of the component
+ versionNostringNoIn #/$defs/relaxedSemverVersion of the component
- creationTimeNoCombinationNo-Creation time of the component version
+ repositoryContextsNoCombinationNo-Previous repositories of the component
+ providerNostringNoIn #/$defs/nonEmptyStringProvider type of the component in the origin’s context
- labelsNoCombinationNo-Labels associated with the component
+ sourcesNoCombinationNo-Sources that produced the component
+ componentReferencesNoCombinationNo-References to other component versions
+ resourcesNoCombinationNo-Resources created by the component or third parties

2.1. Property root > component > name

Typestring
RequiredYes
Defined in#/$defs/componentName

Description: Name of the component

Restrictions
Max length255
Must match regular expression^[a-z][-a-z0-9]*([.][a-z][-a-z0-9]*)*[.][a-z]{2,}(/[a-z][-a-z0-9_]*([.][a-z][-a-z0-9_]*)*)+$ Test

2.2. Property root > component > version

Typestring
RequiredYes
Defined in#/$defs/relaxedSemver

Description: Version of the component

Examples:

v1.0.0
v1.0
1.0.0
1.0
Restrictions
Must match regular expression^[v]?(0|[1-9]\d*)(?:\.(0|[1-9]\d*))?(?:\.(0|[1-9]\d*))?(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$ Test

2.3. Property root > component > creationTime

Typecombining
RequiredNo
Formatdate-time
Additional propertiesAny type allowed

Description: Creation time of the component version

One of(Option)
item 0
item 1

2.3.1. Property root > component > creationTime > oneOf > item 0

Typestring
RequiredNo

2.3.2. Property root > component > creationTime > oneOf > item 1

Typenull
RequiredNo

2.4. Property root > component > repositoryContexts

Typecombining
RequiredYes
Additional propertiesAny type allowed

Description: Previous repositories of the component

One of(Option)
item 0
item 1

2.4.1. Property root > component > repositoryContexts > oneOf > item 0

Typearray
RequiredNo
Array restrictions
Min itemsN/A
Max itemsN/A
Items unicityFalse
Additional itemsFalse
Tuple validationSee below
Each item of this array must beDescription
repositoryContextContext information about the repository where the component is stored
2.4.1.1. root > component > repositoryContexts > oneOf > item 0 > repositoryContext
Typeobject
RequiredNo
Additional propertiesAny type allowed
Defined in#/$defs/repositoryContext

Description: Context information about the repository where the component is stored

PropertyPatternTypeDeprecatedDefinitionTitle/Description
+ typeNostringNoIn #/$defs/ocmTypeType of the repository
2.4.1.1.1. Property root > component > repositoryContexts > oneOf > item 0 > item 0 items > type
Typestring
RequiredYes
Defined in#/$defs/ocmType

Description: Type of the repository

Examples:

ociArtifact
ociArtifact/v1
OCIRegistry
my.custom.type/v1alpha1
Restrictions
Must match regular expression^([a-zA-Z0-9][a-zA-Z0-9.]*)(?:/(v[0-9]+(?:alpha[0-9]+|beta[0-9]+)?))? Test

2.4.2. Property root > component > repositoryContexts > oneOf > item 1

Typenull
RequiredNo

2.5. Property root > component > provider

Typestring
RequiredYes
Defined in#/$defs/nonEmptyString

Description: Provider type of the component in the origin’s context

Restrictions
Min length1

2.6. Property root > component > labels

Typecombining
RequiredNo
Additional propertiesAny type allowed

Description: Labels associated with the component

One of(Option)
item 0
item 1

2.6.1. Property root > component > labels > oneOf > item 0

Typearray
RequiredNo
Array restrictions
Min itemsN/A
Max itemsN/A
Items unicityFalse
Additional itemsFalse
Tuple validationSee below
Each item of this array must beDescription
labelLabel that can be set on various objects in the Open Component Model domain
2.6.1.1. root > component > labels > oneOf > item 0 > label
Typeobject
RequiredNo
Additional propertiesAny type allowed
Defined in#/$defs/label

Description: Label that can be set on various objects in the Open Component Model domain

PropertyPatternTypeDeprecatedDefinitionTitle/Description
+ nameNostringNoSame as providerName of the label
+ valueNoobjectNo--
- versionNoCombinationNo--
- signingNobooleanNo-Indicates whether the label should be included in the signature
- mergeNoobjectNoIn #/$defs/mergeConfiguration for merging this label
2.6.1.1.1. Property root > component > labels > oneOf > item 0 > item 0 items > name
Typestring
RequiredYes
Same definition asprovider

Description: Name of the label

2.6.1.1.2. Property root > component > labels > oneOf > item 0 > item 0 items > value
Typeobject
RequiredYes
Additional propertiesAny type allowed
2.6.1.1.3. Property root > component > labels > oneOf > item 0 > item 0 items > version
Typecombining
RequiredNo
Additional propertiesAny type allowed
One of(Option)
item 0
item 1
2.6.1.1.3.1. Property root > component > labels > oneOf > item 0 > item 0 items > version > oneOf > item 0
Typestring
RequiredNo

Description: Version of the label

Restrictions
Must match regular expression^v[0-9]+$ Test
2.6.1.1.3.2. Property root > component > labels > oneOf > item 0 > item 0 items > version > oneOf > item 1
Typenull
RequiredNo
2.6.1.1.4. Property root > component > labels > oneOf > item 0 > item 0 items > signing
Typeboolean
RequiredNo

Description: Indicates whether the label should be included in the signature

2.6.1.1.5. Property root > component > labels > oneOf > item 0 > item 0 items > merge
Typeobject
RequiredNo
Additional propertiesNot allowed
Defined in#/$defs/merge

Description: Configuration for merging this label

PropertyPatternTypeDeprecatedDefinitionTitle/Description
- algorithmNoobjectNo-Algorithm used for merging labels
- configNoobjectNo-Configuration specific to the merge algorithm
2.6.1.1.5.1. Property root > component > labels > oneOf > item 0 > item 0 items > merge > algorithm
Typeobject
RequiredNo
Additional propertiesAny type allowed

Description: Algorithm used for merging labels

Restrictions
Must match regular expression^[a-z][a-z0-9/_-]+$ Test
2.6.1.1.5.2. Property root > component > labels > oneOf > item 0 > item 0 items > merge > config
Typeobject
RequiredNo
Additional propertiesAny type allowed

Description: Configuration specific to the merge algorithm

2.6.2. Property root > component > labels > oneOf > item 1

Typenull
RequiredNo

2.7. Property root > component > sources

Typecombining
RequiredYes
Additional propertiesAny type allowed

Description: Sources that produced the component

One of(Option)
item 0
item 1

2.7.1. Property root > component > sources > oneOf > item 0

Typearray
RequiredNo
Array restrictions
Min itemsN/A
Max itemsN/A
Items unicityFalse
Additional itemsFalse
Tuple validationSee below
Each item of this array must beDescription
sourceDefinitionDefinition of a source artifact used to generate resources
2.7.1.1. root > component > sources > oneOf > item 0 > sourceDefinition
Typeobject
RequiredNo
Additional propertiesAny type allowed
Defined in#/$defs/sourceDefinition

Description: Definition of a source artifact used to generate resources

PropertyPatternTypeDeprecatedDefinitionTitle/Description
+ nameNostringNoIn #/$defs/identityAttributeKeyName of the source
- extraIdentityNoobjectNoIn #/$defs/identityAttributeAdditional identity attributes for the source
+ versionNostringNoSame as versionVersion of the source
+ typeNostringNoSame as typeType of the source
- labelsNoCombinationNo-Labels associated with the source
+ accessNoobjectNoIn #/$defs/accessAccess specification for the source
2.7.1.1.1. Property root > component > sources > oneOf > item 0 > item 0 items > name
Typestring
RequiredYes
Defined in#/$defs/identityAttributeKey

Description: Name of the source

Restrictions
Min length2
Must match regular expression^[a-z0-9]([-_+a-z0-9]*[a-z0-9])?$ Test
2.7.1.1.2. Property root > component > sources > oneOf > item 0 > item 0 items > extraIdentity
Typeobject
RequiredNo
Additional propertiesAny type allowed
Defined in#/$defs/identityAttribute

Description: Additional identity attributes for the source

2.7.1.1.3. Property root > component > sources > oneOf > item 0 > item 0 items > version
Typestring
RequiredYes
Same definition asversion

Description: Version of the source

2.7.1.1.4. Property root > component > sources > oneOf > item 0 > item 0 items > type
Typestring
RequiredYes
Same definition astype

Description: Type of the source

2.7.1.1.5. Property root > component > sources > oneOf > item 0 > item 0 items > labels
Typecombining
RequiredNo
Additional propertiesAny type allowed

Description: Labels associated with the source

One of(Option)
item 0
item 1
2.7.1.1.5.1. Property root > component > sources > oneOf > item 0 > item 0 items > labels > oneOf > item 0
Typearray
RequiredNo
Array restrictions
Min itemsN/A
Max itemsN/A
Items unicityFalse
Additional itemsFalse
Tuple validationSee below
Each item of this array must beDescription
labelLabel that can be set on various objects in the Open Component Model domain
2.7.1.1.5.1.1. root > component > sources > oneOf > item 0 > item 0 items > labels > oneOf > item 0 > label
Typeobject
RequiredNo
Additional propertiesAny type allowed
Same definition ascomponent_labels_oneOf_i0_items

Description: Label that can be set on various objects in the Open Component Model domain

2.7.1.1.5.2. Property root > component > sources > oneOf > item 0 > item 0 items > labels > oneOf > item 1
Typenull
RequiredNo
2.7.1.1.6. Property root > component > sources > oneOf > item 0 > item 0 items > access
Typeobject
RequiredYes
Additional propertiesAny type allowed
Defined in#/$defs/access

Description: Access specification for the source

PropertyPatternTypeDeprecatedDefinitionTitle/Description
+ typeNostringNoSame as typeType of the access method
- NoobjectNo--
2.7.1.1.6.1. Property root > component > sources > oneOf > item 0 > item 0 items > access > type
Typestring
RequiredYes
Same definition astype

Description: Type of the access method

2.7.2. Property root > component > sources > oneOf > item 1

Typenull
RequiredNo

2.8. Property root > component > componentReferences

Typecombining
RequiredYes
Additional propertiesAny type allowed

Description: References to other component versions

One of(Option)
item 0
item 1

2.8.1. Property root > component > componentReferences > oneOf > item 0

Typearray
RequiredNo
Array restrictions
Min itemsN/A
Max itemsN/A
Items unicityFalse
Additional itemsFalse
Tuple validationSee below
Each item of this array must beDescription
componentReferenceReference to another component in the registry
2.8.1.1. root > component > componentReferences > oneOf > item 0 > componentReference
Typeobject
RequiredNo
Additional propertiesNot allowed
Defined in#/$defs/componentReference

Description: Reference to another component in the registry

PropertyPatternTypeDeprecatedDefinitionTitle/Description
+ componentNameNostringNoSame as nameName of the referenced component
+ nameNostringNoIn #/$defs/identityAttributeKeyLocal name of the reference
- extraIdentityNoobjectNoSame as extraIdentityAdditional identity attributes for the reference
+ versionNostringNoSame as versionVersion of the referenced component
- labelsNoCombinationNo-Labels associated with the reference
- digestNoCombinationNo-Optional digest of the referenced component
2.8.1.1.1. Property root > component > componentReferences > oneOf > item 0 > item 0 items > componentName
Typestring
RequiredYes
Same definition asname

Description: Name of the referenced component

2.8.1.1.2. Property root > component > componentReferences > oneOf > item 0 > item 0 items > name
Typestring
RequiredYes
Defined in#/$defs/identityAttributeKey

Description: Local name of the reference

Restrictions
Min length2
Must match regular expression^[a-z0-9]([-_+a-z0-9]*[a-z0-9])?$ Test
2.8.1.1.3. Property root > component > componentReferences > oneOf > item 0 > item 0 items > extraIdentity
Typeobject
RequiredNo
Additional propertiesAny type allowed
Same definition asextraIdentity

Description: Additional identity attributes for the reference

2.8.1.1.4. Property root > component > componentReferences > oneOf > item 0 > item 0 items > version
Typestring
RequiredYes
Same definition asversion

Description: Version of the referenced component

2.8.1.1.5. Property root > component > componentReferences > oneOf > item 0 > item 0 items > labels
Typecombining
RequiredNo
Additional propertiesAny type allowed

Description: Labels associated with the reference

One of(Option)
item 0
item 1
2.8.1.1.5.1. Property root > component > componentReferences > oneOf > item 0 > item 0 items > labels > oneOf > item 0
Typearray
RequiredNo
Array restrictions
Min itemsN/A
Max itemsN/A
Items unicityFalse
Additional itemsFalse
Tuple validationSee below
Each item of this array must beDescription
labelLabel that can be set on various objects in the Open Component Model domain
2.8.1.1.5.1.1. root > component > componentReferences > oneOf > item 0 > item 0 items > labels > oneOf > item 0 > label
Typeobject
RequiredNo
Additional propertiesAny type allowed
Same definition ascomponent_labels_oneOf_i0_items

Description: Label that can be set on various objects in the Open Component Model domain

2.8.1.1.5.2. Property root > component > componentReferences > oneOf > item 0 > item 0 items > labels > oneOf > item 1
Typenull
RequiredNo
2.8.1.1.6. Property root > component > componentReferences > oneOf > item 0 > item 0 items > digest
Typecombining
RequiredNo
Additional propertiesAny type allowed

Description: Optional digest of the referenced component

One of(Option)
item 0
digestSpec
2.8.1.1.6.1. Property root > component > componentReferences > oneOf > item 0 > item 0 items > digest > oneOf > item 0
Typenull
RequiredNo
2.8.1.1.6.2. Property root > component > componentReferences > oneOf > item 0 > item 0 items > digest > oneOf > digestSpec
Typeobject
RequiredNo
Additional propertiesAny type allowed
Defined in#/$defs/digestSpec

Description: Specification of digest information including hashing algorithm and value

PropertyPatternTypeDeprecatedDefinitionTitle/Description
+ hashAlgorithmNostringNo-Algorithm used for hashing
+ normalisationAlgorithmNostringNo-Algorithm used for normalizing content before hashing
+ valueNostringNo-The actual hash value
2.8.1.1.6.2.1. Property root > component > componentReferences > oneOf > item 0 > item 0 items > digest > oneOf > item 1 > hashAlgorithm
Typestring
RequiredYes

Description: Algorithm used for hashing

2.8.1.1.6.2.2. Property root > component > componentReferences > oneOf > item 0 > item 0 items > digest > oneOf > item 1 > normalisationAlgorithm
Typestring
RequiredYes

Description: Algorithm used for normalizing content before hashing

2.8.1.1.6.2.3. Property root > component > componentReferences > oneOf > item 0 > item 0 items > digest > oneOf > item 1 > value
Typestring
RequiredYes

Description: The actual hash value

2.8.2. Property root > component > componentReferences > oneOf > item 1

Typenull
RequiredNo

2.9. Property root > component > resources

Typecombining
RequiredYes
Additional propertiesAny type allowed

Description: Resources created by the component or third parties

One of(Option)
item 0
item 1

2.9.1. Property root > component > resources > oneOf > item 0

Typearray
RequiredNo
Array restrictions
Min itemsN/A
Max itemsN/A
Items unicityFalse
Additional itemsFalse
Tuple validationSee below
Each item of this array must beDescription
resourceDefinitionBase type for resources, which are delivery artifacts intended for deployment
2.9.1.1. root > component > resources > oneOf > item 0 > resourceDefinition
Typeobject
RequiredNo
Additional propertiesAny type allowed
Defined in#/$defs/resourceDefinition

Description: Base type for resources, which are delivery artifacts intended for deployment

PropertyPatternTypeDeprecatedDefinitionTitle/Description
+ nameNostringNoIn #/$defs/identityAttributeKeyName of the resource
- extraIdentityNoobjectNoSame as extraIdentityAdditional identity attributes for the resource
+ versionNostringNoSame as versionVersion of the resource
+ typeNostringNoSame as typeType of the resource
- srcRefsNoCombinationNo-References to sources that produced this resource
+ relationNoenum (of string)No-Relation of the resource to the component (local or external)
- labelsNoCombinationNo-Labels associated with the resource
+ accessNoobjectNoSame as accessAccess specification for the resource
- digestNoCombinationNo-Optional digest of the resource
2.9.1.1.1. Property root > component > resources > oneOf > item 0 > item 0 items > name
Typestring
RequiredYes
Defined in#/$defs/identityAttributeKey

Description: Name of the resource

Restrictions
Min length2
Must match regular expression^[a-z0-9]([-_+a-z0-9]*[a-z0-9])?$ Test
2.9.1.1.2. Property root > component > resources > oneOf > item 0 > item 0 items > extraIdentity
Typeobject
RequiredNo
Additional propertiesAny type allowed
Same definition asextraIdentity

Description: Additional identity attributes for the resource

2.9.1.1.3. Property root > component > resources > oneOf > item 0 > item 0 items > version
Typestring
RequiredYes
Same definition asversion

Description: Version of the resource

2.9.1.1.4. Property root > component > resources > oneOf > item 0 > item 0 items > type
Typestring
RequiredYes
Same definition astype

Description: Type of the resource

2.9.1.1.5. Property root > component > resources > oneOf > item 0 > item 0 items > srcRefs
Typecombining
RequiredNo
Additional propertiesAny type allowed

Description: References to sources that produced this resource

One of(Option)
item 0
item 1
2.9.1.1.5.1. Property root > component > resources > oneOf > item 0 > item 0 items > srcRefs > oneOf > item 0
Typearray
RequiredNo
Array restrictions
Min itemsN/A
Max itemsN/A
Items unicityFalse
Additional itemsFalse
Tuple validationSee below
Each item of this array must beDescription
srcRefReference to a component-local source
2.9.1.1.5.1.1. root > component > resources > oneOf > item 0 > item 0 items > srcRefs > oneOf > item 0 > srcRef
Typeobject
RequiredNo
Additional propertiesNot allowed
Defined in#/$defs/srcRef

Description: Reference to a component-local source

PropertyPatternTypeDeprecatedDefinitionTitle/Description
- identitySelectorNoobjectNoSame as extraIdentitySelector for identifying the source
- labelsNoCombinationNo-Labels for further identification of the source
2.9.1.1.5.1.1.1. Property root > component > resources > oneOf > item 0 > item 0 items > srcRefs > oneOf > item 0 > item 0 items > identitySelector
Typeobject
RequiredNo
Additional propertiesAny type allowed
Same definition asextraIdentity

Description: Selector for identifying the source

2.9.1.1.5.1.1.2. Property root > component > resources > oneOf > item 0 > item 0 items > srcRefs > oneOf > item 0 > item 0 items > labels
Typecombining
RequiredNo
Additional propertiesAny type allowed

Description: Labels for further identification of the source

One of(Option)
item 0
item 1
2.9.1.1.5.1.1.2.1. Property root > component > resources > oneOf > item 0 > item 0 items > srcRefs > oneOf > item 0 > item 0 items > labels > oneOf > item 0
Typearray
RequiredNo
Array restrictions
Min itemsN/A
Max itemsN/A
Items unicityFalse
Additional itemsFalse
Tuple validationSee below
Each item of this array must beDescription
labelLabel that can be set on various objects in the Open Component Model domain
2.9.1.1.5.1.1.2.1.1. root > component > resources > oneOf > item 0 > item 0 items > srcRefs > oneOf > item 0 > item 0 items > labels > oneOf > item 0 > label
Typeobject
RequiredNo
Additional propertiesAny type allowed
Same definition ascomponent_labels_oneOf_i0_items

Description: Label that can be set on various objects in the Open Component Model domain

2.9.1.1.5.1.1.2.2. Property root > component > resources > oneOf > item 0 > item 0 items > srcRefs > oneOf > item 0 > item 0 items > labels > oneOf > item 1
Typenull
RequiredNo
2.9.1.1.5.2. Property root > component > resources > oneOf > item 0 > item 0 items > srcRefs > oneOf > item 1
Typenull
RequiredNo
2.9.1.1.6. Property root > component > resources > oneOf > item 0 > item 0 items > relation
Typeenum (of string)
RequiredYes

Description: Relation of the resource to the component (local or external)

Must be one of:

  • “local”
  • “external”
2.9.1.1.7. Property root > component > resources > oneOf > item 0 > item 0 items > labels
Typecombining
RequiredNo
Additional propertiesAny type allowed

Description: Labels associated with the resource

One of(Option)
item 0
item 1
2.9.1.1.7.1. Property root > component > resources > oneOf > item 0 > item 0 items > labels > oneOf > item 0
Typearray
RequiredNo
Array restrictions
Min itemsN/A
Max itemsN/A
Items unicityFalse
Additional itemsFalse
Tuple validationSee below
Each item of this array must beDescription
labelLabel that can be set on various objects in the Open Component Model domain
2.9.1.1.7.1.1. root > component > resources > oneOf > item 0 > item 0 items > labels > oneOf > item 0 > label
Typeobject
RequiredNo
Additional propertiesAny type allowed
Same definition ascomponent_labels_oneOf_i0_items

Description: Label that can be set on various objects in the Open Component Model domain

2.9.1.1.7.2. Property root > component > resources > oneOf > item 0 > item 0 items > labels > oneOf > item 1
Typenull
RequiredNo
2.9.1.1.8. Property root > component > resources > oneOf > item 0 > item 0 items > access
Typeobject
RequiredYes
Additional propertiesAny type allowed
Same definition asaccess

Description: Access specification for the resource

2.9.1.1.9. Property root > component > resources > oneOf > item 0 > item 0 items > digest
Typecombining
RequiredNo
Additional propertiesAny type allowed

Description: Optional digest of the resource

One of(Option)
item 0
digestSpec
2.9.1.1.9.1. Property root > component > resources > oneOf > item 0 > item 0 items > digest > oneOf > item 0
Typenull
RequiredNo
2.9.1.1.9.2. Property root > component > resources > oneOf > item 0 > item 0 items > digest > oneOf > digestSpec
Typeobject
RequiredNo
Additional propertiesAny type allowed
Same definition ascomponent_componentReferences_oneOf_i0_items_digest_oneOf_i1

Description: Specification of digest information including hashing algorithm and value

2.9.2. Property root > component > resources > oneOf > item 1

Typenull
RequiredNo

3. Property root > signatures

Typecombining
RequiredNo
Additional propertiesAny type allowed

Description: Optional signing information for verifying component validity

One of(Option)
item 0
item 1

3.1. Property root > signatures > oneOf > item 0

Typearray
RequiredNo
Array restrictions
Min itemsN/A
Max itemsN/A
Items unicityFalse
Additional itemsFalse
Tuple validationSee below
Each item of this array must beDescription
signatureSignature information for verifying component validity

3.1.1. root > signatures > oneOf > item 0 > signature

Typeobject
RequiredNo
Additional propertiesNot allowed
Defined in#/$defs/signature

Description: Signature information for verifying component validity

PropertyPatternTypeDeprecatedDefinitionTitle/Description
+ nameNostringNoSame as providerName of the signature
+ digestNoobjectNoSame as component_componentReferences_oneOf_i0_items_digest_oneOf_i1Digest information for the signature
+ signatureNoobjectNoIn #/$defs/signatureSpecSignature details
- timestampNoobjectNoIn #/$defs/timestampSpecTimestamp information for the signature
3.1.1.1. Property root > signatures > oneOf > item 0 > item 0 items > name
Typestring
RequiredYes
Same definition asprovider

Description: Name of the signature

3.1.1.2. Property root > signatures > oneOf > item 0 > item 0 items > digest
Typeobject
RequiredYes
Additional propertiesAny type allowed
Same definition ascomponent_componentReferences_oneOf_i0_items_digest_oneOf_i1

Description: Digest information for the signature

3.1.1.3. Property root > signatures > oneOf > item 0 > item 0 items > signature
Typeobject
RequiredYes
Additional propertiesAny type allowed
Defined in#/$defs/signatureSpec

Description: Signature details

PropertyPatternTypeDeprecatedDefinitionTitle/Description
+ algorithmNostringNoSame as providerAlgorithm used for signing
+ valueNostringNoSame as providerThe actual signature value
+ mediaTypeNostringNoSame as providerMedia type of the signature value
3.1.1.3.1. Property root > signatures > oneOf > item 0 > item 0 items > signature > algorithm
Typestring
RequiredYes
Same definition asprovider

Description: Algorithm used for signing

3.1.1.3.2. Property root > signatures > oneOf > item 0 > item 0 items > signature > value
Typestring
RequiredYes
Same definition asprovider

Description: The actual signature value

3.1.1.3.3. Property root > signatures > oneOf > item 0 > item 0 items > signature > mediaType
Typestring
RequiredYes
Same definition asprovider

Description: Media type of the signature value

3.1.1.4. Property root > signatures > oneOf > item 0 > item 0 items > timestamp
Typeobject
RequiredNo
Additional propertiesAny type allowed
Defined in#/$defs/timestampSpec

Description: Timestamp information for the signature

PropertyPatternTypeDeprecatedDefinitionTitle/Description
- valueNostringNoSame as providerString representation of the timestamp
- timeNostringNo-RFC 3339 formatted date-time
3.1.1.4.1. Property root > signatures > oneOf > item 0 > item 0 items > timestamp > value
Typestring
RequiredNo
Same definition asprovider

Description: String representation of the timestamp

3.1.1.4.2. Property root > signatures > oneOf > item 0 > item 0 items > timestamp > time
Typestring
RequiredNo
Formatdate-time

Description: RFC 3339 formatted date-time

3.2. Property root > signatures > oneOf > item 1

Typenull
RequiredNo

4. Property root > nestedDigests

Typecombining
RequiredNo
Additional propertiesAny type allowed

Description: Digest information for nested components

One of(Option)
item 0
item 1

4.1. Property root > nestedDigests > oneOf > item 0

Typearray
RequiredNo
Array restrictions
Min itemsN/A
Max itemsN/A
Items unicityFalse
Additional itemsFalse
Tuple validationSee below
Each item of this array must beDescription
nestedComponentDigestsDigest information for nested components

4.1.1. root > nestedDigests > oneOf > item 0 > nestedComponentDigests

Typeobject
RequiredNo
Additional propertiesAny type allowed
Defined in#/$defs/nestedComponentDigests

Description: Digest information for nested components

PropertyPatternTypeDeprecatedDefinitionTitle/Description
+ nameNostringNoSame as nameName of the component
+ versionNostringNoSame as versionVersion of the component
- digestNoobjectNoSame as component_componentReferences_oneOf_i0_items_digest_oneOf_i1Digest information for the component
- resourceDigestsNoCombinationNo-Digest information for resources in the component
4.1.1.1. Property root > nestedDigests > oneOf > item 0 > item 0 items > name
Typestring
RequiredYes
Same definition asname

Description: Name of the component

4.1.1.2. Property root > nestedDigests > oneOf > item 0 > item 0 items > version
Typestring
RequiredYes
Same definition asversion

Description: Version of the component

4.1.1.3. Property root > nestedDigests > oneOf > item 0 > item 0 items > digest
Typeobject
RequiredNo
Additional propertiesAny type allowed
Same definition ascomponent_componentReferences_oneOf_i0_items_digest_oneOf_i1

Description: Digest information for the component

4.1.1.4. Property root > nestedDigests > oneOf > item 0 > item 0 items > resourceDigests
Typecombining
RequiredNo
Additional propertiesAny type allowed

Description: Digest information for resources in the component

One of(Option)
item 0
item 1
4.1.1.4.1. Property root > nestedDigests > oneOf > item 0 > item 0 items > resourceDigests > oneOf > item 0
Typearray
RequiredNo
Array restrictions
Min itemsN/A
Max itemsN/A
Items unicityFalse
Additional itemsFalse
Tuple validationSee below
Each item of this array must beDescription
nestedDigestSpecSpecification for nested component digests
4.1.1.4.1.1. root > nestedDigests > oneOf > item 0 > item 0 items > resourceDigests > oneOf > item 0 > nestedDigestSpec
Typeobject
RequiredNo
Additional propertiesAny type allowed
Defined in#/$defs/nestedDigestSpec

Description: Specification for nested component digests

PropertyPatternTypeDeprecatedDefinitionTitle/Description
+ nameNostringNoSame as providerName of the nested component
- versionNostringNo-Version of the nested component
- extraIdentityNoobjectNoSame as extraIdentityAdditional identity attributes for the nested component
- digestNoobjectNoSame as component_componentReferences_oneOf_i0_items_digest_oneOf_i1Digest information for the nested component
4.1.1.4.1.1.1. Property root > nestedDigests > oneOf > item 0 > item 0 items > resourceDigests > oneOf > item 0 > item 0 items > name
Typestring
RequiredYes
Same definition asprovider

Description: Name of the nested component

4.1.1.4.1.1.2. Property root > nestedDigests > oneOf > item 0 > item 0 items > resourceDigests > oneOf > item 0 > item 0 items > version
Typestring
RequiredNo

Description: Version of the nested component

4.1.1.4.1.1.3. Property root > nestedDigests > oneOf > item 0 > item 0 items > resourceDigests > oneOf > item 0 > item 0 items > extraIdentity
Typeobject
RequiredNo
Additional propertiesAny type allowed
Same definition asextraIdentity

Description: Additional identity attributes for the nested component

4.1.1.4.1.1.4. Property root > nestedDigests > oneOf > item 0 > item 0 items > resourceDigests > oneOf > item 0 > item 0 items > digest
Typeobject
RequiredNo
Additional propertiesAny type allowed
Same definition ascomponent_componentReferences_oneOf_i0_items_digest_oneOf_i1

Description: Digest information for the nested component

4.1.1.4.2. Property root > nestedDigests > oneOf > item 0 > item 0 items > resourceDigests > oneOf > item 1
Typenull
RequiredNo

4.2. Property root > nestedDigests > oneOf > item 1

Typenull
RequiredNo

Generated using json-schema-for-humans on 2026-03-03 at 11:02:40 +0100