001/* 002 * SPDX-FileCopyrightText: none 003 * SPDX-License-Identifier: CC0-1.0 004 */ 005 006package dev.metaschema.databind.model; 007 008import dev.metaschema.core.qname.IEnhancedQName; 009import dev.metaschema.databind.model.info.IItemValueHandler; 010import edu.umd.cs.findbugs.annotations.NonNull; 011 012/** 013 * Represents a binding of Java data to a Metaschema module construct, i.e. 014 * definition, instance, field value. 015 * 016 * @param <ITEM> 017 * the Java type for associated bound objects 018 */ 019public interface IBoundModelObject<ITEM> extends IItemValueHandler<ITEM> { 020 /** 021 * Determine if the provided XML qualified name is associated with this 022 * property. 023 * 024 * @param qname 025 * the XML qualified name of the property being parsed 026 * @return {@code true} if the instance will handle this name, or {@code false} 027 * otherwise 028 */ 029 boolean canHandleXmlQName(@NonNull IEnhancedQName qname); 030}