cdx-proto
    Preparing search index...

    Type Alias Pedigree

    Pedigree: Message<"cyclonedx.v1_5.Pedigree"> & {
        ancestors: cdx_15.Component[];
        commits: cdx_15.Commit[];
        descendants: cdx_15.Component[];
        notes?: string;
        patches: cdx_15.Patch[];
        variants: cdx_15.Component[];
    }

    Component pedigree is a way to document complex supply chain scenarios where components are created, distributed, modified, redistributed, combined with other components, etc. Pedigree supports viewing this complex chain from the beginning, the end, or anywhere in the middle. It also provides a way to document variants where the exact relation may not be known.

    Type declaration

    • ancestors: cdx_15.Component[]

      Describes zero or more components in which a component is derived from. This is commonly used to describe forks from existing projects where the forked version contains a ancestor node containing the original component it was forked from. For example, Component A is the original component. Component B is the component being used and documented in the BOM. However, Component B contains a pedigree node with a single ancestor documenting Component A - the original component from which Component B is derived from.

      from field: repeated cyclonedx.v1_5.Component ancestors = 1;

    • commits: cdx_15.Commit[]

      A list of zero or more commits which provide a trail describing how the component deviates from an ancestor, descendant, or variant.

      from field: repeated cyclonedx.v1_5.Commit commits = 4;

    • descendants: cdx_15.Component[]

      Descendants are the exact opposite of ancestors. This provides a way to document all forks (and their forks) of an original or root component.

      from field: repeated cyclonedx.v1_5.Component descendants = 2;

    • Optionalnotes?: string

      Notes, observations, and other non-structured commentary describing the components pedigree.

      from field: optional string notes = 6;

    • patches: cdx_15.Patch[]

      A list of zero or more patches describing how the component deviates from an ancestor, descendant, or variant. Patches may be complimentary to commits or may be used in place of commits.

      from field: repeated cyclonedx.v1_5.Patch patches = 5;

    • variants: cdx_15.Component[]

      Variants describe relations where the relationship between the components are not known. For example, if Component A contains nearly identical code to Component B. They are both related, but it is unclear if one is derived from the other, or if they share a common ancestor.

      from field: repeated cyclonedx.v1_5.Component variants = 3;

    from message cyclonedx.v1_5.Pedigree