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}