aboutsummaryrefslogtreecommitdiff
path: root/rdfloader/parser2v2/parse_snippet_info.go
diff options
context:
space:
mode:
Diffstat (limited to 'rdfloader/parser2v2/parse_snippet_info.go')
-rw-r--r--rdfloader/parser2v2/parse_snippet_info.go16
1 files changed, 11 insertions, 5 deletions
diff --git a/rdfloader/parser2v2/parse_snippet_info.go b/rdfloader/parser2v2/parse_snippet_info.go
index d9c8279..a09d671 100644
--- a/rdfloader/parser2v2/parse_snippet_info.go
+++ b/rdfloader/parser2v2/parse_snippet_info.go
@@ -31,7 +31,8 @@ func (parser *rdfParser2_2) getSnippetInformationFromNode2_2(node *gordfParser.N
if err != nil {
return nil, err
}
- si.SnippetFromFileSPDXIdentifier, err = ExtractDocElementID(getLastPartOfURI(siTriple.Object.ID))
+ docElemID, err := ExtractDocElementID(getLastPartOfURI(siTriple.Object.ID))
+ si.SnippetFromFileSPDXIdentifier = docElemID.ElementRefID
case SPDX_RANGE:
// cardinality: min 1
err = parser.setSnippetRangeFromNode(siTriple.Object, si)
@@ -131,12 +132,17 @@ func (parser *rdfParser2_2) setSnippetRangeFromNode(node *gordfParser.Node, si *
return fmt.Errorf("start and end range type doesn't match")
}
+ si.Ranges = []spdx.SnippetRange{{
+ StartPointer: spdx.SnippetRangePointer{FileSPDXIdentifier: si.SnippetFromFileSPDXIdentifier},
+ EndPointer: spdx.SnippetRangePointer{FileSPDXIdentifier: si.SnippetFromFileSPDXIdentifier},
+ }}
+
if startRangeType == LINE_RANGE {
- si.SnippetLineRangeStart = start
- si.SnippetLineRangeEnd = end
+ si.Ranges[0].StartPointer.LineNumber = start
+ si.Ranges[0].EndPointer.LineNumber = end
} else {
- si.SnippetByteRangeStart = start
- si.SnippetByteRangeEnd = end
+ si.Ranges[0].StartPointer.Offset = start
+ si.Ranges[0].EndPointer.Offset = end
}
return nil
}