public void accept(Visitor visitor) {
      if (visitor.visit(this)) {
         for (SpouseRef husband : getHusbandRefs()) {
            husband.accept(visitor, true);
         }
         for (SpouseRef wife : getWifeRefs()) {
            wife.accept(visitor, false);
         }
         for (ChildRef childRef : getChildRefs()) {
            childRef.accept(visitor);
         }
         super.visitContainedObjects(visitor);
         visitor.endVisit(this);
      }
   }