package org.openprovenance.prov.model; import java.util.List; /** * <p>Interface for PROV objects that have a role. * <p><a href="http://www.w3.org/TR/prov-dm/#concept-role">PROV-DM Definition for Role</a>: A role is the function of an entity * or agent with respect to an activity, in the context of a usage, generation, invalidation, association, start, and end. * * <p><span class="strong">Relevant class</span> * <ul> * <li>{@link Role} * </ul> */ public interface HasRole { /** * Gets the value of the role property. * * <p> * This accessor method returns a reference to the live list, * not a snapshot. Therefore, any modification made to the * returned list will be present inside the object. * This is why there is not a <CODE>set</CODE> method for the role property. * * <p> * For example, to add a new item, do as follows: * <pre> * getRole().add(newItem); * </pre> * * @return a list of objects of type * {@link Role } * * */ public List<Role> getRole(); }