001/*
002 * SPDX-FileCopyrightText: none
003 * SPDX-License-Identifier: CC0-1.0
004 */
005
006package gov.nist.secauto.metaschema.databind.model.annotations;
007
008import static java.lang.annotation.ElementType.FIELD;
009import static java.lang.annotation.ElementType.METHOD;
010import static java.lang.annotation.RetentionPolicy.RUNTIME;
011
012import java.lang.annotation.Documented;
013import java.lang.annotation.Retention;
014import java.lang.annotation.Target;
015
016/**
017 * Indicates that the target of this annotation is a flag whose value should be
018 * the property/item name of the field's value in JSON or YAML.
019 * <p>
020 * Use of this annotation is mutually exclusive with the {@link BoundFieldValue}
021 * annotation.
022 */
023// TODO: remove this and move this to MetaschemaField
024@Documented
025@Retention(RUNTIME)
026@Target({ FIELD, METHOD })
027public @interface JsonFieldValueKeyFlag {
028  // no fields
029}