/** * Reads a MultiText from the XmlNode $sxeNode given by the element 'gloss' * * @param \SimpleXMLElement $sxeNode * @param LexMultiText $multiText * @param ArrayOf $inputSystems * @throws \Exception */ public function readMultiTextGloss($sxeNode, $multiText, $inputSystems = null) { CodeGuard::checkTypeAndThrow($multiText, 'Api\\Model\\Languageforge\\Lexicon\\LexMultiText'); if ($sxeNode->getName() != 'gloss') { throw new \Exception("'" . $sxeNode->getName() . "' is not a gloss"); } $inputSystemTag = (string) $sxeNode['lang']; $multiText->form($inputSystemTag, (string) $sxeNode->{'text'}); $this->project->addInputSystem($inputSystemTag); if (isset($inputSystems)) { $inputSystems->ensureValueExists($inputSystemTag); } }