Architecture

This library broadly is separated into three key functional areas:

  1. Model: Internal models used to unify data.

    Note: As of version 4.0.0 of this library we support deserialization from JSON and XML as well as serialization to JSON and XML.

  2. Output: Choose and configure an output which allows you to define output format as well as the CycloneDX schema version

When wishing to generate a BOM, the process is as follows:

  1. Generate a Model by either:
    1. Programmatically using this library

    2. By deserializing from an existing CycloneDX BOM document

  2. Output the Model using an cyclonedx.output instance that reflects the schema version and format you require