1   /*
2    * SPDX-FileCopyrightText: none
3    * SPDX-License-Identifier: CC0-1.0
4    */
5   
6   package dev.metaschema.oscal.lib.model;
7   
8   import java.util.UUID;
9   
10  import dev.metaschema.oscal.lib.model.BackMatter.Resource;
11  import edu.umd.cs.findbugs.annotations.NonNull;
12  import edu.umd.cs.findbugs.annotations.Nullable;
13  
14  public interface IOscalInstance {
15    UUID getUuid();
16  
17    Metadata getMetadata();
18  
19    BackMatter getBackMatter();
20  
21    /**
22     * Lookup a backmatter resource by its UUID value.
23     *
24     * @param id
25     *          the uuid value
26     * @return the resource or {@code null} if no resource matched the UUID
27     */
28    @Nullable
29    Resource getResourceByUuid(@NonNull UUID id);
30  }