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.ANNOTATION_TYPE; 009import static java.lang.annotation.RetentionPolicy.RUNTIME; 010 011import java.lang.annotation.Retention; 012import java.lang.annotation.Target; 013 014import edu.umd.cs.findbugs.annotations.NonNull; 015 016@Retention(RUNTIME) 017@Target(ANNOTATION_TYPE) 018public @interface Property { 019 /** 020 * The name of the property. 021 * 022 * @return the name 023 */ 024 @NonNull 025 String name(); 026 027 /** 028 * The namespace of the property's name. 029 * 030 * @return the namespace 031 */ 032 @NonNull 033 String namespace(); 034 035 /** 036 * The values for the property's name and namespace. 037 * 038 * @return the namespace 039 */ 040 @NonNull 041 String[] values(); 042}