/**
  * @param boolean $returnSXE
  * @param \SimpleXMLElement $sxe
  * @return string|\SimpleXMLElement
  */
 public function xmlSerialize($returnSXE = false, $sxe = null)
 {
     if (null === $sxe) {
         $sxe = new \SimpleXMLElement('<TestScriptSetup xmlns="http://hl7.org/fhir"></TestScriptSetup>');
     }
     parent::xmlSerialize(true, $sxe);
     if (null !== $this->metadata) {
         $this->metadata->xmlSerialize(true, $sxe->addChild('metadata'));
     }
     if (0 < count($this->action)) {
         foreach ($this->action as $action) {
             $action->xmlSerialize(true, $sxe->addChild('action'));
         }
     }
     if ($returnSXE) {
         return $sxe;
     }
     return $sxe->saveXML();
 }
 /**
  * @param boolean $returnSXE
  * @param \SimpleXMLElement $sxe
  * @return string|\SimpleXMLElement
  */
 public function xmlSerialize($returnSXE = false, $sxe = null)
 {
     if (null === $sxe) {
         $sxe = new \SimpleXMLElement('<TestScript xmlns="http://hl7.org/fhir"></TestScript>');
     }
     parent::xmlSerialize(true, $sxe);
     if (null !== $this->url) {
         $this->url->xmlSerialize(true, $sxe->addChild('url'));
     }
     if (null !== $this->version) {
         $this->version->xmlSerialize(true, $sxe->addChild('version'));
     }
     if (null !== $this->name) {
         $this->name->xmlSerialize(true, $sxe->addChild('name'));
     }
     if (null !== $this->status) {
         $this->status->xmlSerialize(true, $sxe->addChild('status'));
     }
     if (null !== $this->identifier) {
         $this->identifier->xmlSerialize(true, $sxe->addChild('identifier'));
     }
     if (null !== $this->experimental) {
         $this->experimental->xmlSerialize(true, $sxe->addChild('experimental'));
     }
     if (null !== $this->publisher) {
         $this->publisher->xmlSerialize(true, $sxe->addChild('publisher'));
     }
     if (0 < count($this->contact)) {
         foreach ($this->contact as $contact) {
             $contact->xmlSerialize(true, $sxe->addChild('contact'));
         }
     }
     if (null !== $this->date) {
         $this->date->xmlSerialize(true, $sxe->addChild('date'));
     }
     if (null !== $this->description) {
         $this->description->xmlSerialize(true, $sxe->addChild('description'));
     }
     if (0 < count($this->useContext)) {
         foreach ($this->useContext as $useContext) {
             $useContext->xmlSerialize(true, $sxe->addChild('useContext'));
         }
     }
     if (null !== $this->requirements) {
         $this->requirements->xmlSerialize(true, $sxe->addChild('requirements'));
     }
     if (null !== $this->copyright) {
         $this->copyright->xmlSerialize(true, $sxe->addChild('copyright'));
     }
     if (null !== $this->metadata) {
         $this->metadata->xmlSerialize(true, $sxe->addChild('metadata'));
     }
     if (null !== $this->multiserver) {
         $this->multiserver->xmlSerialize(true, $sxe->addChild('multiserver'));
     }
     if (0 < count($this->fixture)) {
         foreach ($this->fixture as $fixture) {
             $fixture->xmlSerialize(true, $sxe->addChild('fixture'));
         }
     }
     if (0 < count($this->profile)) {
         foreach ($this->profile as $profile) {
             $profile->xmlSerialize(true, $sxe->addChild('profile'));
         }
     }
     if (0 < count($this->variable)) {
         foreach ($this->variable as $variable) {
             $variable->xmlSerialize(true, $sxe->addChild('variable'));
         }
     }
     if (null !== $this->setup) {
         $this->setup->xmlSerialize(true, $sxe->addChild('setup'));
     }
     if (0 < count($this->test)) {
         foreach ($this->test as $test) {
             $test->xmlSerialize(true, $sxe->addChild('test'));
         }
     }
     if (null !== $this->teardown) {
         $this->teardown->xmlSerialize(true, $sxe->addChild('teardown'));
     }
     if ($returnSXE) {
         return $sxe;
     }
     return $sxe->saveXML();
 }