/**
  * Création de patient
  *
  * @return CCDAPOCD_MT000040_Patient
  */
 function setPatient()
 {
     $patientCDA = new CCDAPOCD_MT000040_Patient();
     $patient = self::$cda_factory->patient;
     $pn = new CCDAPN();
     $enxp = new CCDA_en_family();
     $enxp->setData($patient->_p_last_name);
     $enxp->setQualifier(array("BR"));
     if ($patient->_p_maiden_name) {
         $enxp2 = new CCDA_en_family();
         $enxp2->setQualifier(array("BR"));
         $enxp2->setData($patient->_p_maiden_name);
         $pn->append("family", $enxp2);
         $enxp->setQualifier(array("SP"));
     }
     $pn->append("family", $enxp);
     $enxp = new CCDA_en_given();
     $enxp->setData($patient->_p_first_name);
     $pn->append("given", $enxp);
     $enxp = new CCDA_en_given();
     $enxp->setData($patient->prenom_2);
     $pn->append("given", $enxp);
     $enxp = new CCDA_en_given();
     $enxp->setData($patient->prenom_3);
     $pn->append("given", $enxp);
     $enxp = new CCDA_en_given();
     $enxp->setData($patient->prenom_4);
     $pn->append("given", $enxp);
     $patientCDA->appendName($pn);
     $gender = $this->getAdministrativeGenderCode($patient->sexe);
     $patientCDA->setAdministrativeGenderCode($gender);
     $date = $this->getTimeToUtc($patient->_p_birth_date, true);
     $ts = new CCDATS();
     $ts->setValue($date);
     if (!$date) {
         $ts->setNullFlavor("NASK");
     }
     $patientCDA->setBirthTime($ts);
     $status = $this->getMaritalStatus($patient->situation_famille);
     $patientCDA->setMaritalStatusCode($status);
     $patientCDA->setBirthplace(parent::$role->setBirthPlace());
     return $patientCDA;
 }
 /**
  * Fonction permettant de tester la classe
  *
  * @return array
  */
 function test()
 {
     $tabTest = array();
     /**
      * Test avec les valeurs null
      */
     $tabTest[] = $this->sample("Test avec les valeurs null", "Document valide");
     /*-------------------------------------------------------------------------------------*/
     /**
      * Test avec un typeId correct
      */
     $this->setTypeId();
     $tabTest[] = $this->sample("Test avec un typeId correct", "Document valide");
     /*-------------------------------------------------------------------------------------*/
     /**
      * Test avec un classCode correct
      */
     $this->setClassCode();
     $tabTest[] = $this->sample("Test avec un classCode correct", "Document valide");
     /*-------------------------------------------------------------------------------------*/
     /**
      * Test avec un determinerCode correct
      */
     $this->setDeterminerCode();
     $tabTest[] = $this->sample("Test avec un determinerCode correct", "Document valide");
     /*-------------------------------------------------------------------------------------*/
     /**
      * Test avec un realmCode incorrect
      */
     $cs = new CCDACS();
     $cs->setCode(" ");
     $this->appendRealmCode($cs);
     $tabTest[] = $this->sample("Test avec un realmCode incorrect", "Document invalide");
     /*-------------------------------------------------------------------------------------*/
     /**
      * Test avec un realmCode correct
      */
     $cs->setCode("FR");
     $this->resetListRealmCode();
     $this->appendRealmCode($cs);
     $tabTest[] = $this->sample("Test avec un realmCode correct", "Document valide");
     /*-------------------------------------------------------------------------------------*/
     /**
      * Test avec un templateId incorrect
      */
     $ii = new CCDAII();
     $ii->setRoot("4TESTTEST");
     $this->appendTemplateId($ii);
     $tabTest[] = $this->sample("Test avec un templateId incorrect", "Document invalide");
     /*-------------------------------------------------------------------------------------*/
     /**
      * Test avec un templateId correct
      */
     $ii->setRoot("1.2.250.1.213.1.1.1.1");
     $this->resetListTemplateId();
     $this->appendTemplateId($ii);
     $tabTest[] = $this->sample("Test avec un templateId correct", "Document valide");
     /*-------------------------------------------------------------------------------------*/
     /**
      * Test avec un Id incorrect
      */
     $ii = new CCDAII();
     $ii->setRoot("4TESTTEST");
     $this->setId($ii);
     $tabTest[] = $this->sample("Test avec un Id incorrect", "Document invalide");
     /*-------------------------------------------------------------------------------------*/
     /**
      * Test avec un Id correct
      */
     $ii->setRoot("1.2.250.1.213.1.1.9");
     $this->setId($ii);
     $tabTest[] = $this->sample("Test avec un Id correct", "Document valide");
     /*-------------------------------------------------------------------------------------*/
     /**
      * Test avec un name incorrect
      */
     $pn = new CCDAPN();
     $pn->setUse(array("TESTTEST"));
     $this->appendName($pn);
     $tabTest[] = $this->sample("Test avec un name incorrect", "Document invalide");
     /*-------------------------------------------------------------------------------------*/
     /**
      * Test avec un name correct
      */
     $pn->setUse(array("C"));
     $this->resetListName();
     $this->appendName($pn);
     $tabTest[] = $this->sample("Test avec un name correct", "Document valide");
     /*-------------------------------------------------------------------------------------*/
     /**
      * Test avec un administrativeGenderCode incorrect
      */
     $ce = new CCDACE();
     $ce->setCode(" ");
     $this->setAdministrativeGenderCode($ce);
     $tabTest[] = $this->sample("Test avec un administrativeGenderCode incorrect", "Document invalide");
     /*-------------------------------------------------------------------------------------*/
     /**
      * Test avec un administrativeGenderCode correct
      */
     $ce->setCode("TEST");
     $this->setAdministrativeGenderCode($ce);
     $tabTest[] = $this->sample("Test avec un administrativeGenderCode correct", "Document valide");
     /*-------------------------------------------------------------------------------------*/
     /**
      * Test avec un birthTime incorrect
      */
     $ts = new CCDATS();
     $ts->setValue("TESTTEST");
     $this->setBirthTime($ts);
     $tabTest[] = $this->sample("Test avec un birthTime incorrect", "Document invalide");
     /*-------------------------------------------------------------------------------------*/
     /**
      * Test avec un birthTime correct
      */
     $ts->setValue("24141331462095.812975314545697850652375076363185459409261232419230495159675586");
     $this->setBirthTime($ts);
     $tabTest[] = $this->sample("Test avec un birthTime correct", "Document valide");
     /*-------------------------------------------------------------------------------------*/
     /**
      * Test avec un maritalStatusCode incorrect
      */
     $ce = new CCDACE();
     $ce->setCode(" ");
     $this->setMaritalStatusCode($ce);
     $tabTest[] = $this->sample("Test avec un maritalStatusCode incorrect", "Document invalide");
     /*-------------------------------------------------------------------------------------*/
     /**
      * Test avec un maritalStatusCode correct
      */
     $ce->setCode("TEST");
     $this->setMaritalStatusCode($ce);
     $tabTest[] = $this->sample("Test avec un maritalStatusCode correct", "Document valide");
     /*-------------------------------------------------------------------------------------*/
     /**
      * Test avec un religiousAffiliationCode incorrect
      */
     $ce = new CCDACE();
     $ce->setCode(" ");
     $this->setReligiousAffiliationCode($ce);
     $tabTest[] = $this->sample("Test avec un religiousAffiliationCode incorrect", "Document invalide");
     /*-------------------------------------------------------------------------------------*/
     /**
      * Test avec un religiousAffiliationCode correct
      */
     $ce->setCode("TEST");
     $this->setReligiousAffiliationCode($ce);
     $tabTest[] = $this->sample("Test avec un religiousAffiliationCode correct", "Document valide");
     /*-------------------------------------------------------------------------------------*/
     /**
      * Test avec un raceCode incorrect
      */
     $ce = new CCDACE();
     $ce->setCode(" ");
     $this->setRaceCode($ce);
     $tabTest[] = $this->sample("Test avec un raceCode incorrect", "Document invalide");
     /*-------------------------------------------------------------------------------------*/
     /**
      * Test avec un raceCode correct
      */
     $ce->setCode("TEST");
     $this->setRaceCode($ce);
     $tabTest[] = $this->sample("Test avec un raceCode correct", "Document valide");
     /*-------------------------------------------------------------------------------------*/
     /**
      * Test avec un ethnicGroupCode incorrect
      */
     $ce = new CCDACE();
     $ce->setCode(" ");
     $this->setEthnicGroupCode($ce);
     $tabTest[] = $this->sample("Test avec un ethnicGroupCode incorrect", "Document invalide");
     /*-------------------------------------------------------------------------------------*/
     /**
      * Test avec un ethnicGroupCode correct
      */
     $ce->setCode("TEST");
     $this->setEthnicGroupCode($ce);
     $tabTest[] = $this->sample("Test avec un ethnicGroupCode correct", "Document valide");
     /*-------------------------------------------------------------------------------------*/
     /**
      * Test avec un birthplace correct
      */
     $birthPlace = new CCDAPOCD_MT000040_Birthplace();
     $pla = new CCDAPOCD_MT000040_Place();
     $pla->setClassCode();
     $birthPlace->setPlace($pla);
     $this->setBirthplace($birthPlace);
     $tabTest[] = $this->sample("Test avec un birthplace correct", "Document valide");
     /*-------------------------------------------------------------------------------------*/
     /**
      * Test avec un languageCommunication correct
      */
     $language = new CCDAPOCD_MT000040_LanguageCommunication();
     $language->setTypeId();
     $this->appendLanguageCommunication($language);
     $tabTest[] = $this->sample("Test avec un languageCommunication correct", "Document valide");
     /*-------------------------------------------------------------------------------------*/
     /**
      * Test avec un guardian correct
      */
     $guard = new CCDAPOCD_MT000040_Guardian();
     $per = new CCDAPOCD_MT000040_Person();
     $per->setClassCode();
     $guard->setGuardianPerson($per);
     $this->appendGuardian($guard);
     $tabTest[] = $this->sample("Test avec un guardian correct", "Document valide");
     /*-------------------------------------------------------------------------------------*/
     return $tabTest;
 }
 /**
  * Fonction permettant de tester la classe
  *
  * @return array
  */
 function test()
 {
     $tabTest = array();
     /**
      * Test avec les valeurs null
      */
     $tabTest[] = $this->sample("Test avec les valeurs null", "Document valide");
     /*-------------------------------------------------------------------------------------*/
     /**
      * Test avec un typeId correct
      */
     $this->setTypeId();
     $tabTest[] = $this->sample("Test avec un typeId correct", "Document valide");
     /*-------------------------------------------------------------------------------------*/
     /**
      * Test avec un realmCode incorrect
      */
     $cs = new CCDACS();
     $cs->setCode(" ");
     $this->appendRealmCode($cs);
     $tabTest[] = $this->sample("Test avec un realmCode incorrect", "Document invalide");
     /*-------------------------------------------------------------------------------------*/
     /**
      * Test avec un realmCode correct
      */
     $cs->setCode("FR");
     $this->resetListRealmCode();
     $this->appendRealmCode($cs);
     $tabTest[] = $this->sample("Test avec un realmCode correct", "Document valide");
     /*-------------------------------------------------------------------------------------*/
     /**
      * Test avec un templateId incorrect
      */
     $ii = new CCDAII();
     $ii->setRoot("4TESTTEST");
     $this->appendTemplateId($ii);
     $tabTest[] = $this->sample("Test avec un templateId incorrect", "Document invalide");
     /*-------------------------------------------------------------------------------------*/
     /**
      * Test avec un templateId correct
      */
     $ii->setRoot("1.2.250.1.213.1.1.1.1");
     $this->resetListTemplateId();
     $this->appendTemplateId($ii);
     $tabTest[] = $this->sample("Test avec un templateId correct", "Document valide");
     /*-------------------------------------------------------------------------------------*/
     /**
      * Test avec un code incorrect
      */
     $ce = new CCDACE();
     $ce->setCode(" ");
     $this->setCode($ce);
     $tabTest[] = $this->sample("Test avec un code incorrect", "Document invalide");
     /*-------------------------------------------------------------------------------------*/
     /**
      * Test avec un code correct
      */
     $ce->setCode("TEST");
     $this->setCode($ce);
     $tabTest[] = $this->sample("Test avec un code correct", "Document valide");
     /*-------------------------------------------------------------------------------------*/
     /**
      * Test avec un name incorrect
      */
     $pn = new CCDAPN();
     $pn->setUse(array("TESTTEST"));
     $this->appendName($pn);
     $tabTest[] = $this->sample("Test avec un name incorrect", "Document invalide");
     /*-------------------------------------------------------------------------------------*/
     /**
      * Test avec un name correct
      */
     $pn->setUse(array("C"));
     $this->resetListName();
     $this->appendName($pn);
     $tabTest[] = $this->sample("Test avec un name correct", "Document valide");
     /*-------------------------------------------------------------------------------------*/
     /**
      * Test avec un desc incorrect
      */
     $ed = new CCDAED();
     $ed->setLanguage(" ");
     $this->setDesc($ed);
     $tabTest[] = $this->sample("Test avec un desc incorrect", "Document invalide");
     /*-------------------------------------------------------------------------------------*/
     /**
      * Test avec un desc correct
      */
     $ed->setLanguage("FR");
     $this->setDesc($ed);
     $tabTest[] = $this->sample("Test avec un desc correct", "Document valide");
     /*-------------------------------------------------------------------------------------*/
     /**
      * Test avec un determinerCode correct
      */
     $this->setDeterminerCode();
     $tabTest[] = $this->sample("Test avec un determinerCode correct", "Document valide");
     /*-------------------------------------------------------------------------------------*/
     /**
      * Test avec un classCode incorrect
      */
     $this->setClassCode("TESTTEST");
     $tabTest[] = $this->sample("Test avec un classCode incorrect", "Document invalide");
     /*-------------------------------------------------------------------------------------*/
     /**
      * Test avec un classCode correct
      */
     $this->setClassCode("HCE");
     $tabTest[] = $this->sample("Test avec un classCode correct", "Document valide");
     /*-------------------------------------------------------------------------------------*/
     /**
      * Test avec un quantity incorrect
      */
     $pq = new CCDAPQ();
     $pq->setUnit(" ");
     $this->appendQuantity($pq);
     $tabTest[] = $this->sample("Test avec un quantity incorrect", "Document invalide");
     /*-------------------------------------------------------------------------------------*/
     /**
      * Test avec un quantity correct
      */
     $pq->setUnit("TESTTEST");
     $this->resetListQuantity();
     $this->appendQuantity($pq);
     $tabTest[] = $this->sample("Test avec un quantity correct", "Document valide");
     /*-------------------------------------------------------------------------------------*/
     return $tabTest;
 }
 /**
  * Fonction permettant de tester la classe
  *
  * @return array
  */
 function test()
 {
     $tabTest = array();
     /**
      * Test avec les valeurs null
      */
     $tabTest[] = $this->sample("Test avec les valeurs null", "Document valide");
     /*-------------------------------------------------------------------------------------*/
     /**
      * Test avec un typeId correct
      */
     $this->setTypeId();
     $tabTest[] = $this->sample("Test avec un typeId correct", "Document valide");
     /*-------------------------------------------------------------------------------------*/
     /**
      * Test avec un realmCode incorrect
      */
     $cs = new CCDACS();
     $cs->setCode(" ");
     $this->appendRealmCode($cs);
     $tabTest[] = $this->sample("Test avec un realmCode incorrect", "Document invalide");
     /*-------------------------------------------------------------------------------------*/
     /**
      * Test avec un realmCode correct
      */
     $cs->setCode("FR");
     $this->resetListRealmCode();
     $this->appendRealmCode($cs);
     $tabTest[] = $this->sample("Test avec un realmCode correct", "Document valide");
     /*-------------------------------------------------------------------------------------*/
     /**
      * Test avec un templateId incorrect
      */
     $ii = new CCDAII();
     $ii->setRoot("4TESTTEST");
     $this->appendTemplateId($ii);
     $tabTest[] = $this->sample("Test avec un templateId incorrect", "Document invalide");
     /*-------------------------------------------------------------------------------------*/
     /**
      * Test avec un templateId correct
      */
     $ii->setRoot("1.2.250.1.213.1.1.1.1");
     $this->resetListTemplateId();
     $this->appendTemplateId($ii);
     $tabTest[] = $this->sample("Test avec un templateId correct", "Document valide");
     /*-------------------------------------------------------------------------------------*/
     /**
      * Test avec un classCode correct
      */
     $this->setClassCode();
     $tabTest[] = $this->sample("Test avec un classCode correct", "Document valide");
     /*-------------------------------------------------------------------------------------*/
     /**
      * Test avec un determinerCode correct
      */
     $this->setDeterminerCode();
     $tabTest[] = $this->sample("Test avec un determinerCode correct", "Document valide");
     /*-------------------------------------------------------------------------------------*/
     /**
      * Test avec un name incorrect
      */
     $pn = new CCDAPN();
     $pn->setUse(array("TESTTEST"));
     $this->appendName($pn);
     $tabTest[] = $this->sample("Test avec un name incorrect", "Document invalide");
     /*-------------------------------------------------------------------------------------*/
     /**
      * Test avec un name correct
      */
     $pn->setUse(array("C"));
     $this->resetListName();
     $this->appendName($pn);
     $tabTest[] = $this->sample("Test avec un name correct", "Document valide");
     /*-------------------------------------------------------------------------------------*/
     /**
      * Test avec un administrativeGenderCode incorrect
      */
     $ce = new CCDACE();
     $ce->setCode(" ");
     $this->setAdministrativeGenderCode($ce);
     $tabTest[] = $this->sample("Test avec un administrativeGenderCode incorrect", "Document invalide");
     /*-------------------------------------------------------------------------------------*/
     /**
      * Test avec un administrativeGenderCode correct
      */
     $ce->setCode("TESTTEST");
     $this->setAdministrativeGenderCode($ce);
     $tabTest[] = $this->sample("Test avec un administrativeGenderCode correct", "Document valide");
     /*-------------------------------------------------------------------------------------*/
     /**
      * Test avec un birthTime incorrect
      */
     $ts = new CCDATS();
     $ts->setValue("TESTTEST");
     $this->setBirthTime($ts);
     $tabTest[] = $this->sample("Test avec un birthTime incorrect", "Document invalide");
     /*-------------------------------------------------------------------------------------*/
     /**
      * Test avec un birthTime correct
      */
     $ts->setValue("24141331462095.812975314545697850652375076363185459409261232419230495159675586");
     $this->setBirthTime($ts);
     $tabTest[] = $this->sample("Test avec un birthTime correct", "Document valide");
     /*-------------------------------------------------------------------------------------*/
     return $tabTest;
 }