@Search
    public Observation search(
        @RequiredParam(name = "subject") ReferenceParam theSubject,
        @RequiredParam(name = "name") TokenOrListParam theName) {
      Observation o = new Observation();
      o.setId("1");

      o.getSubject().setReference(theSubject.getResourceType() + "/" + theSubject.getIdPart());
      for (BaseCodingDt next : theName.getListAsCodings()) {
        o.getName().getCoding().add(new CodingDt(next));
      }

      return o;
    }
 public List<FamilyMemberHistory> searchFamilyHistoryByPerson(ReferenceParam id) {
   FamilyMemberHistoryService familyHistoryService =
       Context.getService(FamilyMemberHistoryService.class);
   return familyHistoryService.searchFamilyHistoryByPersonId(id.getIdPart());
 }