001/* 002 * SPDX-FileCopyrightText: none 003 * SPDX-License-Identifier: CC0-1.0 004 */ 005 006package dev.metaschema.databind.model; 007 008import dev.metaschema.core.model.IFeatureContainerFlag; 009import dev.metaschema.databind.IBindingContext; 010import edu.umd.cs.findbugs.annotations.NonNull; 011 012/** 013 * Represents a field or assembly instance bound to Java data. 014 * 015 * @param <ITEM> 016 * the Java type for associated bound objects 017 */ 018public interface IBoundDefinitionModel<ITEM> 019 extends IBoundModelObject<ITEM>, IFeatureContainerFlag<IBoundInstanceFlag>, IBoundDefinition { 020 /** 021 * Get the binding context used for the definition. 022 * 023 * @return the binding context 024 */ 025 @NonNull 026 IBindingContext getBindingContext(); 027 028 @Override 029 IBoundInstanceModelNamed<ITEM> getInlineInstance(); 030 031 // 032 // @Override 033 // IBoundInstanceFlag getJsonKeyFlagInstance(); 034}