1 /*
2 * SPDX-FileCopyrightText: none
3 * SPDX-License-Identifier: CC0-1.0
4 */
5
6 package gov.nist.secauto.metaschema.schemagen.json.impl;
7
8 import edu.umd.cs.findbugs.annotations.NonNull;
9
10 /**
11 * A JSON schema for a given Metaschema-based definition instance, that has a
12 * distinct property name, which is part of a larger JSON schema.
13 */
14 public interface IJsonSchemaPropertyNamed extends IJsonSchemaProperty {
15 /**
16 * Get the name of the JSON property.
17 *
18 * @return the JSON property name
19 */
20 @NonNull
21 String getName();
22
23 /**
24 * Determine if the property is required or not.
25 *
26 * @return {@code true} if the property is required or {@code false} otherwise
27 */
28 boolean isRequired();
29 }