001/* 002 * SPDX-FileCopyrightText: none 003 * SPDX-License-Identifier: CC0-1.0 004 */ 005 006package dev.metaschema.core.model; 007 008import edu.umd.cs.findbugs.annotations.NonNull; 009 010/** 011 * Represents a model instance that has a JSON property name. 012 * <p> 013 * This interface provides access to the name used when the instance appears in 014 * JSON or YAML serialization. 015 */ 016@FunctionalInterface 017public interface IJsonInstance { 018 /** 019 * Get the name used for the instance in JSON/YAML serialization. 020 * 021 * @return the JSON property name 022 */ 023 @NonNull 024 String getJsonName(); 025}