package tr.com.srdc.mdr.core.api.ai; import tr.com.srdc.mdr.core.model.iso11179.RepresentationClassResource; /** * Representation Class is the Classification Scheme for representation. The set * of classes make it easy to distinguish among the elements in the registry. * For instance, a data element categorized with the representation class * 'amount' is different from an element categorized as 'number'. It probably * won't make sense to compare the contents of these elements, or perform * calculations using them together.<br> * As an Administered Item, a Representation Class carries its own * Administration Record information, allowing it to be identified, named, * defined and optionally classified in a Classification Scheme.<br> * The major intent of Representation class is to provide a discrete and * complete set of high-level (coarse granularity) definitions for data * element/value domain categorization. This is an aid to the user in terms of * application of business rules.<br> * Representation Class is a mechanism by which the functional and/or * presentational category of an item may be conveyed to a user.<br> * An informational list of representation class terms is provided in ISO/IEC * 11179-5. The list below has been expanded to provide a more comprehensive * list of examples.<br> * <ul> * <li>Code -– A system of valid symbols that substitute for specified values * e.g. alpha, numeric, symbols and/or combinations.</li> * <li>Count –- Non-monetary numeric value arrived at by counting.</li> * <li>Currency –- Monetary representation</li> * <li>Date –- Calendar representation e.g. YYYY-MM-DD</li> * <li>Graphic –- Diagrams, graphs, mathematical curves, or the like – usually a * vector image.</li> * <li>Icon –- A sign or representation that stands for its object by virtue of * a resemblance or analogy to it</li> * <li>Picture –- A visual representation of a person, object, or scene – * usually a raster image.</li> * <li>Quantity –- A continuous number such as the linear dimensions, * capacity/amount (non-monetary) of an object</li> * <li>Text – A text field that is usually unformatted.</li> * <li>Time –- Time of day or duration eg HH:MM:SS.SSSS.</li> * </ul> * None of the terms in this list is required in any specific implementation of * representation class. By using representation class, enhanced semantic * control over the contents of value domains can be maintained. Rules can be * drawn against representation classes that allow enforcement of content within * and among value domains. For example:<br> * “A number-class data element cannot be used in a calculation.” “A date-class * data element must be in the format YYYY-MM-DD.” “A relationship must exist * between a code representation and the specific form of the value meanings * which the code represents.” * * @author anil * */ public interface RepresentationClass extends AdministeredItem { @Override /** * @return the {@link RepresentationClassResource} version this instance. */ RepresentationClassResource asMDRResource(); }