private boolean isInterestingReferenceParticipant(IReferenceNode object) {
   if (object != null) {
     if (object.getReferenceParticipant() != null) {
       Object element = object.getReferenceParticipant();
       if (element instanceof IAspectDefinition) {
         IAspectDefinition def = (IAspectDefinition) element;
         element =
             BeansModelUtils.getMostSpecificModelElement(
                 def.getAspectStartLineNumber(),
                 def.getAspectEndLineNumber(),
                 (IFile) def.getResource(),
                 null);
       }
       AbstractContextStructureBridge bridge = ContextCore.getStructureBridge(element);
       if (bridge != null) {
         String handle = bridge.getHandleIdentifier(element);
         IInteractionElement interestElement = ContextCore.getContextManager().getElement(handle);
         if (element != null && isInteresting(interestElement)) {
           return true;
         }
         // TODO CD uncomment this if *really* only interested
         // elements
         // should be displayed
         /*
          * else { return false; }
          */
       }
     }
     if (object.getChildren() != null && object.getChildren().length > 0) {
       for (Object child : object.getChildren()) {
         if (child instanceof IReferenceNode) {
           if (isInterestingReferenceParticipant((IReferenceNode) child)) {
             return true;
           }
         }
       }
     }
   }
   return false;
 }