package tr.com.srdc.mdr.core.model.iso11179; import java.util.List; import tr.com.srdc.mdr.core.api.ai.Context; import tr.com.srdc.mdr.core.model.MDRException; import tr.com.srdc.mdr.core.model.Vocabulary; import tr.com.srdc.mdr.core.model.iso11179.composite.AdministeredItemContextResource; import tr.com.srdc.mdr.core.model.iso11179.composite.AdministrationRecordResource; import tr.com.srdc.mdr.core.model.iso11179.composite.LanguageIdentificationResource; /** * A Context defines the scope within which the subject data has meaning. A * Context may be a business domain, an information subject area, an information * system, a database, file, data model, standard document, or any other * environment determined by the owner of the registry * * @author anil * */ public interface ContextResource extends AdministeredItemResource, Context { /** * Set the {@link AdministrationRecordResource} of this {@link ContextResource}. * * @param propertyAdministrationRecord * <br> * An {@link AdministrationRecordResource} of a {@link ContextResource}. */ void setAdministrationRecord( AdministrationRecordResource contextAdministrationRecord); /** * @return the {@link AdministrationRecordResource} of a {@link ContextResource}. * */ AdministrationRecordResource getAdministrationRecord(); /** * @return the {@link Vocabulary#contextDescription} of a {@link ContextResource} * */ String getContextDescription(); /** * Sets the {@link Vocabulary#contextDescription} of a {@link ContextResource}. * * @param contextDescription */ void setContextDescription(String contextDescription); /** * * @return the {@link Vocabulary#contextDescriptionLanguageIdentifier} of a * {@link ContextResource} */ LanguageIdentificationResource getContextDescriptionLanguageIdentifier(); /** * Sets the {@link Vocabulary#contextDescriptionLanguageIdentifier} of a * {@link ContextResource}. * * @param contextDescriptionLanguageIdentifier */ void setContextDescriptionLanguageIdentifier( LanguageIdentificationResource contextDescriptionLanguageIdentifier); /** * Adds {@link Vocabulary#contextAdministeredItemContext} property with * given value * * @param administeredItemContext * value of {@link Vocabulary#contextAdministeredItemContext} * property */ void addAdministeredItemContext( AdministeredItemContextResource administeredItemContext); /** * Removes {@link Vocabulary#contextAdministeredItemContext} property with * given value * * @param administeredItemContext * value of {@link Vocabulary#contextAdministeredItemContext} * property to be removed */ void removeAdministeredItemContext( AdministeredItemContextResource administeredItemContext); /** * Method for getting the list of * {@link Vocabulary#contextAdministeredItemContext} property values of the * {@link AdministeredItemContextResource} * * @return List of all {@link Vocabulary#contextAdministeredItemContext} * property values */ List<AdministeredItemContextResource> getAdministeredItemContexts() throws MDRException; }