The SharedCompositeParameterSet

Copyright General Electric Company 2005, 2006

A composite Parameter (see Presentation Parameters) is an Individual of type Parameter which is the object of a "hasPresentationParameterObject" Property on a PresentationObject or a higher-level composite Parameter. In some circumstances, e.g., to accomplish "brushing" of data (highlighting the same or related data in the same color for example) across two or more tables or graphs, it is desirable to have some way of identifying a set of Individuals that share a common composite Parameter, e.g., a highlight region. The mechanism for doing this is the SharedCompositeParameterSet.

In the case of brushing between tables or graphs, the HighlightRegion has the composite Parameter Region (through ObjectProperty hasRegion) with Parameters min, max, and color. HighlightRegions on two or more tables or graphs can be placed, either at ontology design time or at runtime, in a SharedCompositeParameterSet, meaning that the HighlightRegions are the objects of a "hasMember" ObjectProperty of the SharedCompositeParameterSet. The SharedCompositeParameterSet ObjectProperty hasSharedParameter will have as object an Individual of type Region. The net result will be that each HighlightRegion in the set will have the same Region Parameter. Editing this Parameter on one of the HghlightRegions will edit it for all (since they all share the same one in the ontology).

A SharedCompositeParameterSet is a subclass of the more general Set class. By calling the method getSetMembership(String setUri) or getSetMemberships(String memberUri), an AcuityController client can always get the PresentationObjects or higher-level Parameters that share a composite Parameter. This may be useful, for example, in updating the display if the shared Parameter is edited.

AcuityController Methods Supporting SharedCompositeParameterSet

A SharedCompositeParameterSet is created by calling the AcuityController method:

        Individual createSharedCompositeParameterSet(String setLocalName, String sharedParameterPropertyName, List members)

The first argument, setLocalName, can be null in which case a name will be generated. The last argument is a List of member Individuals or their URIs. The shared Parameter of the first member in the List becomes the Parameter shared by all members of the set. The method returns the Individual which is the new SharedCompositeParameterSet.

Members can be added to an existing SharedCompositeParameterSet by calling:

        boolean addSharedCompositeParameterSetMember(Individual set, Individual newMember) 

or the equivalent method taking the Set and new member's URI strings as arguments.

To remove a member from a SharedCompositeParameterSet, creating an independent version of the composite Parameter for the removed member of the set, call:

        void removeSharedCompositeParameterSetMember(Individual set, Individual removalMember)

Note: when the last member is removed from a set, the set is dissolved.

To destroy a SharedCompositeParameterSet, after first creating an independent version of the composite Parameter from each member of the set, call:

        void dissolveSharedCompositeParameterSet(Individual set)