1 package net.sf.quarrel.uml;
2
3 /***
4 * Represents a relationship between two entities in a model. The supplier or independent FileElement would be the target
5 * of the dependency; the client or dependent FileElement would be the source the dependency. For example, if modeling an
6 * interface and its implementation, the interface would be the supplier and the implementation would be the client.
7 * <br/>
8 * <br/>
9 * See section <b>7.3.12 Dependencies (from Dependencies)</b> in UML 2.0 specification
10 */
11 public interface Relationship {
12
13 /***
14 * Returns an object representing the type of this relationship.
15 *
16 * @return the RelationshipType object for this relationship
17 */
18 public RelationshipType getType();
19
20 /***
21 * Returns the independent element in the relationship (parent).
22 *
23 * @return the supplier, or independent, element
24 */
25 public Element getSupplier();
26
27 /***
28 * Returns the dependent FileElement in the relationship (child).
29 *
30 * @return the client, or dependent, element
31 */
32 public Element getClient();
33
34 }