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.FIELD;
9   import static java.lang.annotation.ElementType.METHOD;
10  import static java.lang.annotation.RetentionPolicy.RUNTIME;
11  
12  import java.lang.annotation.Documented;
13  import java.lang.annotation.Retention;
14  import java.lang.annotation.Target;
15  
16  /**
17   * Indicates that the target of this annotation is a Java property that is to be
18   * used as the JSON or YAML property/item name in for a collection of similar
19   * objects/items.
20   */
21  // TODO: remove this and move this to MetaschemaField/MetaschemaAssembly
22  @Documented
23  @Retention(RUNTIME)
24  @Target({ FIELD, METHOD })
25  public @interface JsonKey {
26    // no fields
27  }