package tr.com.srdc.mdr.core.model.iso11179.composite; import java.util.List; import tr.com.srdc.mdr.core.model.Abbreviation; import tr.com.srdc.mdr.core.model.MDRException; import tr.com.srdc.mdr.core.model.MDRResource; import tr.com.srdc.mdr.core.model.Vocabulary; import tr.com.srdc.mdr.core.model.iso11179.ConceptualDomainResource; /** * * ConceptualDomainRelationshipAssociation represents the relation between * <ul> * <li>ConceptualDomain Relationship</li> * <li>Association Among ConceptualDomain s</li> * </ul> * <br> * Since {@link Abbreviation} backed by Jena TripleStore, such an holder class is * required for n-ary relations * * @author anil * */ public interface ConceptualDomainRelationshipAssociationResource extends MDRResource { /** * Sets {@link Vocabulary#describedByConceptualDomainRelationship} * property with given value * * @param describedByConceptualDomainRelationship */ void setDescribedByConceptualDomainRelationship( ConceptualDomainRelationshipResource describedByConceptualDomainRelationship); /** * * @return Value of * {@link Vocabulary#describedByConceptualDomainRelationship} * property */ ConceptualDomainRelationshipResource getDescribedByConceptualDomainRelationship(); /** * Adds {@link Vocabulary#relatingConceptualDomainRelationship} property * with given value * * @param relatingConceptualDomainRelationship */ void addRelatingConceptualDomainRelationship( ConceptualDomainResource relatingConceptualDomainRelationship); /** * Removes {@link Vocabulary#relatingConceptualDomainRelationship} * property with given value * * @param relatingConceptualDomainRelationship */ void removeRelatingConceptualDomainRelationship( ConceptualDomainResource relatingConceptualDomainRelationship); /** * * @return {@link List} of all * {@link Vocabulary#relatingConceptualDomainRelationship} * property values * @throws MDRException */ List<ConceptualDomainResource> getRelatingConceptualDomainRelationships() throws MDRException; }