package tr.com.srdc.mdr.core.api.ai; import tr.com.srdc.mdr.core.api.composite.Datatype; import tr.com.srdc.mdr.core.api.composite.UnitOfMeasure; import tr.com.srdc.mdr.core.model.iso11179.ValueDomainResource; /** * One of the key components of a representation is the Value Domain. A Value * Domain provides representation, but has no implication as to what Data * Element Concept the values are associated nor what the values mean.<br> * A Value Domain is associated with a Conceptual Domain. A Value Domain * provides a representation for the Conceptual Domain. An example of a * Conceptual Domain and a set of Value Domains is ISO 3166, Codes for the * representation of names of countries. For instance, ISO 3166 describes the * set of seven Value Domains: short name in English, official name in English, * short name in French, official name in French, alpha-2 code, alpha-3 code, * and numeric code.<br> * As an Administered Item, a Value Domain carries its own Administration Record * information, allowing it to be identified, named, defined and optionally * classified in a Classification Scheme.<br> * A Value Domain may be associated with other Value Domains, via the Value * Domain Relationship. The nature of the relationship is described using the * value domain relationship type description. Through the Value Domain * Relationship, a Value Domain may be composed of other Value Domains or may be * a member (component) of a larger Value Domain. * * @author anil * */ public interface ValueDomain extends AdministeredItem { @Override /** * @return the {@link ValueDomainResource} version this instance. */ ValueDomainResource asMDRResource(); /** * @return {@link Datatype} object used by this ValueDomain */ Datatype getDatatype(); /** * @return the {@link ConceptualDomain} which this ValueDomain is * representing */ ConceptualDomain getConceptualDomain(); /** * * @return {@link UnitOfMeasure} object used of this ValueDomain */ UnitOfMeasure getUnitOfMeasure(); // /** // * @return {@link ConceptualDomain} represented by this ValueDomain // */ // ConceptualDomain getConceptualDomain(); // // /** // * @return {@link Datatype} attribute, which is the type for all values in // * the domain. // */ // Datatype getDataType(); }