private void compileTaxaMap(Run run, Result result) {
		taxaMap = new HashMap<>();
		Set<ToolComponent> taxonomies = run.getTaxonomies();
		if (taxonomies == null) {
			return;
		}
		List<ToolComponent> view = new ArrayList<>(taxonomies);
		Set<ReportingDescriptorReference> taxa = result.getTaxa();
		if (taxa != null) {
			for (ReportingDescriptorReference ref : taxa) {
				long idx = ref.getToolComponent().getIndex();
				if (idx >= 0 && idx < view.size()) {
					ToolComponent tc = view.get((int) idx);
					taxaMap.put(tc.getName(), ref);
				} else {
					ToolComponentReference tc = ref.getToolComponent();
					taxaMap.put(tc.getName(), ref);
				}
			}
		}
	}
Parse the SARIF log into easier to use root structures. And helper functions.
{@link SarifController} to do any additional gui interactions
Ghidra/Features/Sarif/src/main/java/sarif/model/SarifDataFrame.java