1*ba677afaSXin Li// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later 2*ba677afaSXin Li 3*ba677afaSXin Lipackage v2_3 4*ba677afaSXin Li 5*ba677afaSXin Liimport "github.com/spdx/tools-golang/spdx/common" 6*ba677afaSXin Li 7*ba677afaSXin Li// Snippet is a Snippet section of an SPDX Document for version 2.3 of the spec. 8*ba677afaSXin Litype Snippet struct { 9*ba677afaSXin Li 10*ba677afaSXin Li // 9.1: Snippet SPDX Identifier: "SPDXRef-[idstring]" 11*ba677afaSXin Li // Cardinality: mandatory, one 12*ba677afaSXin Li SnippetSPDXIdentifier common.ElementID `json:"SPDXID"` 13*ba677afaSXin Li 14*ba677afaSXin Li // 9.2: Snippet from File SPDX Identifier 15*ba677afaSXin Li // Cardinality: mandatory, one 16*ba677afaSXin Li SnippetFromFileSPDXIdentifier common.ElementID `json:"snippetFromFile"` 17*ba677afaSXin Li 18*ba677afaSXin Li // Ranges denotes the start/end byte offsets or line numbers that the snippet is relevant to 19*ba677afaSXin Li Ranges []common.SnippetRange `json:"ranges"` 20*ba677afaSXin Li 21*ba677afaSXin Li // 9.5: Snippet Concluded License: SPDX License Expression, "NONE" or "NOASSERTION" 22*ba677afaSXin Li // Cardinality: optional, one 23*ba677afaSXin Li SnippetLicenseConcluded string `json:"licenseConcluded,omitempty"` 24*ba677afaSXin Li 25*ba677afaSXin Li // 9.6: License Information in Snippet: SPDX License Expression, "NONE" or "NOASSERTION" 26*ba677afaSXin Li // Cardinality: optional, one or many 27*ba677afaSXin Li LicenseInfoInSnippet []string `json:"licenseInfoInSnippets,omitempty"` 28*ba677afaSXin Li 29*ba677afaSXin Li // 9.7: Snippet Comments on License 30*ba677afaSXin Li // Cardinality: optional, one 31*ba677afaSXin Li SnippetLicenseComments string `json:"licenseComments,omitempty"` 32*ba677afaSXin Li 33*ba677afaSXin Li // 9.8: Snippet Copyright Text: copyright notice(s) text, "NONE" or "NOASSERTION" 34*ba677afaSXin Li // Cardinality: mandatory, one 35*ba677afaSXin Li SnippetCopyrightText string `json:"copyrightText"` 36*ba677afaSXin Li 37*ba677afaSXin Li // 9.9: Snippet Comment 38*ba677afaSXin Li // Cardinality: optional, one 39*ba677afaSXin Li SnippetComment string `json:"comment,omitempty"` 40*ba677afaSXin Li 41*ba677afaSXin Li // 9.10: Snippet Name 42*ba677afaSXin Li // Cardinality: optional, one 43*ba677afaSXin Li SnippetName string `json:"name,omitempty"` 44*ba677afaSXin Li 45*ba677afaSXin Li // 9.11: Snippet Attribution Text 46*ba677afaSXin Li // Cardinality: optional, one or many 47*ba677afaSXin Li SnippetAttributionTexts []string `json:"-" yaml:"-"` 48*ba677afaSXin Li} 49