1 /* 2 * SPDX-FileCopyrightText: none 3 * SPDX-License-Identifier: CC0-1.0 4 */ 5 6 package gov.nist.secauto.metaschema.core.model; 7 8 import javax.xml.namespace.QName; 9 10 import edu.umd.cs.findbugs.annotations.NonNull; 11 12 /** 13 * This marker interface indicates that the instance has a flag, field, or 14 * assembly name associated with it which will be used in JSON/YAML or XML to 15 * identify the data. 16 * 17 */ 18 public interface INamedInstance extends INamedModelElement, IAttributable, IInstance { 19 /** 20 * Retrieve the definition of this instance. 21 * 22 * @return the corresponding definition 23 */ 24 @NonNull 25 IDefinition getDefinition(); 26 27 /** 28 * This represents the qualified name of a referenced definition. 29 * 30 * @return the qualified name 31 * @see IDefinition#getDefinitionQName() 32 */ 33 @NonNull 34 QName getReferencedDefinitionQName(); 35 }