
com.wci.umls.server.model.content.Relationship Maven / Gradle / Ivy
/**
* Copyright 2015 West Coast Informatics, LLC
*/
package com.wci.umls.server.model.content;
import com.wci.umls.server.helpers.HasAlternateTerminologyIds;
/**
* Represents a relationship between two {@link ComponentHasAttributes}s.
*
* @param the "from" object type
* @param the "to" object type
*/
public interface Relationship
extends ComponentHasAttributes, HasAlternateTerminologyIds {
/**
* Returns the from.
*
* @return the from
*/
public S getFrom();
/**
* Sets the from.
*
* @param component the from
*/
public void setFrom(S component);
/**
* Returns the to.
*
* @return the to
*/
public T getTo();
/**
* Sets the to.
*
* @param component the to
*/
public void setTo(T component);
/**
* Returns the relationship label.
*
* @return the relationship label
*/
public String getRelationshipType();
/**
* Sets the relationship label.
*
* @param relationshipType the relationship label
*/
public void setRelationshipType(String relationshipType);
/**
* Returns the additional relationship label.
*
* @return the additional relationship label
*/
public String getAdditionalRelationshipType();
/**
* Sets the additional relationship label.
*
* @param additionalrelationshipType the additional relationship label
*/
public void setAdditionalRelationshipType(String additionalrelationshipType);
/**
* Returns the relationship group. This is a mechanism for binding sets of
* relationships together to either simulate one level of anonymous
* subclassing or for other purposes.
*
* @return the relationship group
*/
public String getGroup();
/**
* Sets the relationship group.
*
* @param group the relationship group
*/
public void setGroup(String group);
/**
* Indicates whether or not this is the relation direction asserted by the
* terminology.
*
* @return true
if so, false
otherwise
*/
public boolean isAssertedDirection();
/**
* Sets the asserted direction flag.
*
* @param assertedDirection the asserted direction flag
*/
public void setAssertedDirection(boolean assertedDirection);
/**
* Indicates whether the relationship is inferred.
*
* @return true
if so, false
otherwise
*/
public boolean isInferred();
/**
* Sets the inferred flag.
*
* @param inferred the inferred flag
*/
public void setInferred(boolean inferred);
/**
* Indicates whether the relationship is stated.
*
* @return true
if so, false
otherwise
*/
public boolean isStated();
/**
* Sets the stated flag.
*
* @param stated the stated flag
*/
public void setStated(boolean stated);
/**
* Indicates whether the relationship is hierarchical.
*
* @return true
if so, false
otherwise
*/
public boolean isHierarchical();
/**
* Sets the hierarchical flag.
*
* @param hierarchical the hierarchical flag
*/
public void setHierarchical(boolean hierarchical);
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy