1   /*
2    * SPDX-FileCopyrightText: none
3    * SPDX-License-Identifier: CC0-1.0
4    */
5   
6   package gov.nist.secauto.metaschema.databind.model.annotations;
7   
8   import static java.lang.annotation.ElementType.ANNOTATION_TYPE;
9   import static java.lang.annotation.RetentionPolicy.RUNTIME;
10  
11  import java.lang.annotation.Retention;
12  import java.lang.annotation.Target;
13  
14  import edu.umd.cs.findbugs.annotations.NonNull;
15  
16  @Retention(RUNTIME)
17  @Target(ANNOTATION_TYPE)
18  public @interface Property {
19    /**
20     * The name of the property.
21     *
22     * @return the name
23     */
24    @NonNull
25    String name();
26  
27    /**
28     * The namespace of the property's name.
29     *
30     * @return the namespace
31     */
32    @NonNull
33    String namespace();
34  
35    /**
36     * The values for the property's name and namespace.
37     *
38     * @return the namespace
39     */
40    @NonNull
41    String[] values();
42  }