package spdxlib

import "github.com/spdx/tools-golang/spdxlib"

Package spdxlib contains convenience and utility functions for working with an SPDX document that has already been created in memory. SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later

SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later

Index

Functions

func FilterRelationships

func FilterRelationships(doc *spdx.Document, filter func(*spdx.Relationship) *common.ElementID) ([]common.ElementID, error)

FilterRelationships returns a slice of Element IDs returned by the given filter closure. The closure is passed one relationship at a time, and it can return an ElementID or nil.

func GetDescribedPackageIDs

func GetDescribedPackageIDs(doc *spdx.Document) ([]common.ElementID, error)

GetDescribedPackageIDs returns a slice of ElementIDs for all Packages in this Document that it "describes," according to SPDX rules:

func SortElementIDs

func SortElementIDs(eIDs []common.ElementID) []common.ElementID

SortElementIDs sorts and returns the given slice of ElementIDs

func ValidateDocument

func ValidateDocument(doc *spdx.Document) error

ValidateDocument returns an error if the Document is found to be invalid, or nil if the Document is valid. Currently, this only verifies that all Element IDs mentioned in Relationships exist in the Document as either a Package or an UnpackagedFile.

Source Files

described_elements.go documents.go element_ids.go relationships.go

Version
v0.5.5 (latest)
Published
Jun 17, 2024
Platform
linux/amd64
Imports
4 packages
Last checked
3 weeks ago

Tools for package owners.