Skip to content

Latest commit

 

History

History
47 lines (37 loc) · 1.8 KB

architecture.rst

File metadata and controls

47 lines (37 loc) · 1.8 KB

Architecture

This library broadly is separated into three key functional areas:

  1. Parser: Downstream tools may provide concrete implementation of the :pycyclonedx.parser.BaseParser which can easily help you build a Model from your project or ecosystem. For Python specific parser implementations see cyclonedx-python
  2. Model: Internal models used to unify data from different parsers

    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.

  3. 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
    3. From a :pycyclonedx.parser
  2. Output the Model using an :pycyclonedx.output instance that reflects the schema version and format you require

modelling schema-support outputting