001/* 002 * SPDX-FileCopyrightText: none 003 * SPDX-License-Identifier: CC0-1.0 004 */ 005 006package dev.metaschema.oscal.lib.model; 007 008import java.util.UUID; 009 010import dev.metaschema.oscal.lib.model.BackMatter.Resource; 011import edu.umd.cs.findbugs.annotations.NonNull; 012import edu.umd.cs.findbugs.annotations.Nullable; 013 014public interface IOscalInstance { 015 UUID getUuid(); 016 017 Metadata getMetadata(); 018 019 BackMatter getBackMatter(); 020 021 /** 022 * Lookup a backmatter resource by its UUID value. 023 * 024 * @param id 025 * the uuid value 026 * @return the resource or {@code null} if no resource matched the UUID 027 */ 028 @Nullable 029 Resource getResourceByUuid(@NonNull UUID id); 030}