Skip to content

Class: SoftwareComponent

The Software Component object describes characteristics of a software component

within a software package.

URI: ocsf:SoftwareComponent

 classDiagram
    class SoftwareComponent
    click SoftwareComponent href "../SoftwareComponent/"
      Object <|-- SoftwareComponent
        click Object href "../Object/"

      SoftwareComponent : author

      SoftwareComponent : hash





        SoftwareComponent --> "0..1" Fingerprint : hash
        click Fingerprint href "../Fingerprint/"



      SoftwareComponent : license

      SoftwareComponent : name

      SoftwareComponent : purl

      SoftwareComponent : related_component

      SoftwareComponent : relationship

      SoftwareComponent : relationship_id





        SoftwareComponent --> "0..1 _recommended_" RelationshipIdEnum : relationship_id
        click RelationshipIdEnum href "../RelationshipIdEnum/"



      SoftwareComponent : type

      SoftwareComponent : type_id





        SoftwareComponent --> "0..1 _recommended_" SoftwareComponentTypeIdEnum : type_id
        click SoftwareComponentTypeIdEnum href "../SoftwareComponentTypeIdEnum/"



      SoftwareComponent : version

Inheritance

Slots

Name Cardinality and Range Description Inheritance
author 0..1 recommended
String
The author(s) who published the software component direct
hash 0..1
Fingerprint
Cryptographic hash to identify the binary instance of a software component direct
license 0..1
String
The software license applied to this component direct
name 1
String
The software component name direct
purl 0..1 recommended
String
The Package URL (PURL) to identify the software component direct
related_component 0..1 recommended
String
The package URL (PURL) of the component that this software component has a direct
relationship 0..1
String
The relationship between two software components, normalized to the caption o... direct
relationship_id 0..1 recommended
RelationshipIdEnum
The normalized identifier of the relationship between two software components direct
type 0..1
String
The type of software component, normalized to the caption of the direct
type_id 0..1 recommended
SoftwareComponentTypeIdEnum
The type of software component direct
version 1
String
The software component version direct

Usages

used by used in type used
Sbom software_components range SoftwareComponent

In Subsets

Aliases

  • Software Component

Identifier and Mapping Information

Schema Source

Mappings

Mapping Type Mapped Value
self ocsf:SoftwareComponent
native ocsf:SoftwareComponent

LinkML Source

Direct

name: SoftwareComponent
description: 'The Software Component object describes characteristics of a software
  component

  within a software package.'
in_subset:
- objects_subset
from_schema: https://w3id.org/lmodel/ocsf
aliases:
- Software Component
is_a: Object
slots:
- author
- hash
- license
- name
- purl
- related_component
- relationship
- relationship_id
- type
- type_id
- version
slot_usage:
  author:
    name: author
    recommended: true
  hash:
    name: hash
    description: Cryptographic hash to identify the binary instance of a software
      component.
  license:
    name: license
    description: The software license applied to this component.
  name:
    name: name
    description: The software component name.
    required: true
  purl:
    name: purl
    description: 'The Package URL (PURL) to identify the software component. This
      is a URL that

      uniquely identifies the component, including the component''s name, version,
      and

      type. The URL is used to locate and retrieve the component''s metadata and

      content.'
    recommended: true
  related_component:
    name: related_component
    recommended: true
  relationship_id:
    name: relationship_id
    recommended: true
  type:
    name: type
    description: 'The type of software component, normalized to the caption of the

      <code>type_id</code> value. In the case of ''Other'', it is defined by the

      source.'
  type_id:
    name: type_id
    description: The type of software component.
    range: SoftwareComponentTypeIdEnum
    recommended: true
  version:
    name: version
    description: The software component version.
    required: true

Induced

name: SoftwareComponent
description: 'The Software Component object describes characteristics of a software
  component

  within a software package.'
in_subset:
- objects_subset
from_schema: https://w3id.org/lmodel/ocsf
aliases:
- Software Component
is_a: Object
slot_usage:
  author:
    name: author
    recommended: true
  hash:
    name: hash
    description: Cryptographic hash to identify the binary instance of a software
      component.
  license:
    name: license
    description: The software license applied to this component.
  name:
    name: name
    description: The software component name.
    required: true
  purl:
    name: purl
    description: 'The Package URL (PURL) to identify the software component. This
      is a URL that

      uniquely identifies the component, including the component''s name, version,
      and

      type. The URL is used to locate and retrieve the component''s metadata and

      content.'
    recommended: true
  related_component:
    name: related_component
    recommended: true
  relationship_id:
    name: relationship_id
    recommended: true
  type:
    name: type
    description: 'The type of software component, normalized to the caption of the

      <code>type_id</code> value. In the case of ''Other'', it is defined by the

      source.'
  type_id:
    name: type_id
    description: The type of software component.
    range: SoftwareComponentTypeIdEnum
    recommended: true
  version:
    name: version
    description: The software component version.
    required: true
attributes:
  author:
    name: author
    description: The author(s) who published the software component.
    from_schema: https://w3id.org/lmodel/ocsf
    aliases:
    - Author
    rank: 1000
    alias: author
    owner: SoftwareComponent
    domain_of:
    - SoftwareComponent
    range: string
    recommended: true
  hash:
    name: hash
    description: Cryptographic hash to identify the binary instance of a software
      component.
    from_schema: https://w3id.org/lmodel/ocsf
    aliases:
    - Hash
    rank: 1000
    alias: hash
    owner: SoftwareComponent
    domain_of:
    - Package
    - SoftwareComponent
    - Container
    range: Fingerprint
  license:
    name: license
    description: The software license applied to this component.
    from_schema: https://w3id.org/lmodel/ocsf
    aliases:
    - Software License
    rank: 1000
    alias: license
    owner: SoftwareComponent
    domain_of:
    - Package
    - SoftwareComponent
    range: string
  name:
    name: name
    description: The software component name.
    from_schema: https://w3id.org/lmodel/ocsf
    aliases:
    - Name
    rank: 1000
    alias: name
    owner: SoftwareComponent
    domain_of:
    - AnalysisTarget
    - Observable
    - Os
    - Osint
    - Package
    - Parameter
    - PrivilegeInfo
    - San
    - Scim
    - Script
    - ServicePrivilegeAnalysis
    - SoftwareComponent
    - Sso
    - StartupItem
    - ThreatActor
    - Token
    - Entity
    - Resource
    - Account
    - Agent
    - AiModel
    - Aircraft
    - Analytic
    - ApplicationObject
    - Assessment
    - AutonomousSystem
    - Campaign
    - Check
    - CisBenchmark
    - CisBenchmarkResult
    - CisControl
    - ClassifierDetails
    - Container
    - D3fTactic
    - D3fTechnique
    - Database
    - Databucket
    - DomainContact
    - Edge
    - Endpoint
    - Enrichment
    - EnvironmentVariable
    - Evidences
    - Extension
    - Feature
    - File
    - Graph
    - Group
    - HttpCookie
    - HttpHeader
    - Idp
    - Image
    - Job
    - Kernel
    - KeyValueObject
    - LoadBalancer
    - Logger
    - Malware
    - ManagedEntity
    - MessageContext
    - Metric
    - Mitigation
    - NetworkInterface
    - Node
    - Organization
    - PeripheralDevice
    - Policy
    - ProcessEntity
    - Product
    - QueryInfo
    - Reporter
    - ResourceDetails
    - Rule
    - Scan
    - Service
    - SubTechnique
    - Table
    - Tactic
    - Technique
    - Trait
    - TransformationInfo
    - UnmannedAerialSystem
    - User
    - WebResource
    - Device
    - FtpActivity
    - RegValue
    - WinResource
    - WinService
    - PrefetchQuery
    range: string
    required: true
  purl:
    name: purl
    description: 'The Package URL (PURL) to identify the software component. This
      is a URL that

      uniquely identifies the component, including the component''s name, version,
      and

      type. The URL is used to locate and retrieve the component''s metadata and

      content.'
    from_schema: https://w3id.org/lmodel/ocsf
    aliases:
    - Package URL
    rank: 1000
    alias: purl
    owner: SoftwareComponent
    domain_of:
    - Package
    - SoftwareComponent
    range: string
    recommended: true
  related_component:
    name: related_component
    description: 'The package URL (PURL) of the component that this software component
      has a

      relationship with.'
    from_schema: https://w3id.org/lmodel/ocsf
    aliases:
    - Related Component
    rank: 1000
    alias: related_component
    owner: SoftwareComponent
    domain_of:
    - SoftwareComponent
    range: string
    recommended: true
  relationship:
    name: relationship
    description: 'The relationship between two software components, normalized to
      the caption of

      the <code>relationship_id</code> value. In the case of ''Other'', it is defined

      by the source.'
    from_schema: https://w3id.org/lmodel/ocsf
    aliases:
    - Relationship
    rank: 1000
    alias: relationship
    owner: SoftwareComponent
    domain_of:
    - SoftwareComponent
    range: string
  relationship_id:
    name: relationship_id
    annotations:
      sibling:
        tag: sibling
        value: relationship
    description: The normalized identifier of the relationship between two software
      components.
    from_schema: https://w3id.org/lmodel/ocsf
    aliases:
    - Relationship ID
    rank: 1000
    alias: relationship_id
    owner: SoftwareComponent
    domain_of:
    - SoftwareComponent
    range: RelationshipIdEnum
    recommended: true
  type:
    name: type
    description: 'The type of software component, normalized to the caption of the

      <code>type_id</code> value. In the case of ''Other'', it is defined by the

      source.'
    from_schema: https://w3id.org/lmodel/ocsf
    aliases:
    - Type
    rank: 1000
    alias: type
    owner: SoftwareComponent
    domain_of:
    - AnalysisTarget
    - Observable
    - Os
    - Osint
    - Package
    - PrivilegeInfo
    - ProgrammaticCredential
    - RelatedEvent
    - San
    - Sbom
    - Script
    - SoftwareComponent
    - StartupItem
    - ThreatActor
    - Ticket
    - Timespan
    - TlsExtension
    - Token
    - Dns
    - Resource
    - Account
    - Agent
    - Analytic
    - ApplicationObject
    - AuthenticationToken
    - ClassifierDetails
    - Cve
    - Database
    - Databucket
    - DiscoveryDetails
    - DnsAnswer
    - DomainContact
    - EncryptionDetails
    - Endpoint
    - Enrichment
    - File
    - Graph
    - Group
    - Ja4Fingerprint
    - Kernel
    - ManagedEntity
    - Metadata
    - Module
    - NetworkEndpoint
    - NetworkInterface
    - Node
    - PeripheralDevice
    - Policy
    - Rule
    - Scan
    - Trait
    - UnmannedAerialSystem
    - UnmannedSystemOperatingArea
    - User
    - WebResource
    - Device
    - DatastoreActivity
    - FtpActivity
    - RegValue
    - WinResource
    range: string
  type_id:
    name: type_id
    annotations:
      sibling:
        tag: sibling
        value: type
    description: The type of software component.
    from_schema: https://w3id.org/lmodel/ocsf
    aliases:
    - Type ID
    rank: 1000
    alias: type_id
    owner: SoftwareComponent
    domain_of:
    - Observable
    - Os
    - Osint
    - Package
    - PrivilegeInfo
    - Sbom
    - Script
    - SoftwareComponent
    - StartupItem
    - ThreatActor
    - Ticket
    - Timespan
    - TlsExtension
    - Token
    - Account
    - Agent
    - Analytic
    - AuthenticationToken
    - Database
    - Databucket
    - DomainContact
    - Endpoint
    - File
    - Ja4Fingerprint
    - Kernel
    - ManagedEntity
    - NetworkEndpoint
    - NetworkInterface
    - PeripheralDevice
    - Scan
    - UnmannedAerialSystem
    - UnmannedSystemOperatingArea
    - User
    - Device
    - DatastoreActivity
    - RegValue
    - WinResource
    range: SoftwareComponentTypeIdEnum
    recommended: true
  version:
    name: version
    description: The software component version.
    from_schema: https://w3id.org/lmodel/ocsf
    aliases:
    - Version
    rank: 1000
    alias: version
    owner: SoftwareComponent
    domain_of:
    - Os
    - Package
    - RpcInterface
    - Sbom
    - Scim
    - SoftwareComponent
    - Tls
    - Agent
    - AiModel
    - Analytic
    - Api
    - ApplicationObject
    - Attack
    - Certificate
    - Check
    - CisControl
    - CisCsc
    - Cvss
    - D3fend
    - Databucket
    - Epss
    - Extension
    - Feature
    - File
    - HttpRequest
    - Logger
    - ManagedEntity
    - Metadata
    - Policy
    - Product
    - ResourceDetails
    - Rule
    - Service
    - NtpActivity
    range: string
    required: true