001/* 002 * SPDX-FileCopyrightText: none 003 * SPDX-License-Identifier: CC0-1.0 004 */ 005 006package dev.metaschema.core.model; 007 008/** 009 * Represents an assembly instance within another assembly definition. 010 * <p> 011 * An assembly instance references an assembly definition and specifies how that 012 * assembly is used within its containing assembly. 013 */ 014public interface IAssemblyInstance extends IAssembly, INamedModelInstance { 015 016 /** 017 * Retrieves the assembly definition referenced by this instance. 018 * 019 * @return the assembly definition 020 */ 021 @Override 022 IAssemblyDefinition getDefinition(); 023 024 @Override 025 default boolean isEffectiveValueWrappedInXml() { 026 // assembly instances are always wrapped 027 return true; 028 } 029}