load('bereinigte_texte.xml'); $wortliste = new DOMDocument(); $wortliste->load('wortliste.xml'); $xpath_xml = new DOMXPath($xml); $xpath_wortliste = new DOMXpath($wortliste); $array_lemmata = array(); $array_lemmaformen = array(); $xpath_xml->registerNamespace("tei","http://www.tei-c.org/ns/1.0"); //Abfrage aller Lemma-IDs und Speichern in einem Array $lemmata = $xpath_xml->query("//@lemmaRef"); foreach ($lemmata as $lemma) { $array_lemmata[] = $lemma->value; } $array_lemmata = array_unique($array_lemmata); sort($array_lemmata); //Abrufen der Lemma-Formen aus den MWV-Daten $verzeichnis = array(); $verzeichnis[0] = 'mwv/bmz'; $verzeichnis[1] = 'mwv/findebuch'; $verzeichnis[2] = 'mwv/lexer'; foreach ($array_lemmata as $lemma) { set_time_limit(30); // echo "Das Lemma heißt $lemma."; // echo '
'; //Wähle Wörterbuch aus switch (substr($lemma, 0, 1)) { case "B": $ordner = $verzeichnis[0]; break; case "F": $ordner = $verzeichnis[1]; break; case "L": $ordner = $verzeichnis[2]; break; } //Suche nach Dateien im Ordner $handle = opendir($ordner); $dateinamen = array(); // echo "Der Ordner heißt: $ordner."; // echo '
'; while ( false !== ($datei = readdir($handle))) { if (substr($datei, 0, 1) == strtolower(substr($lemma, 1, 1))) { $dateinamen[] = $ordner .'/' .$datei; } } closedir($handle); if ( count($dateinamen) < 1) { exit ("Es wurde keine Datei ausgewählt."); } //Durchsuche gefundene Dateien foreach ($dateinamen as $datei) { // echo "Folgende Datei wird durchsucht: $datei."; // echo '
'; $datei_xml = new DOMDocument(); $datei_xml->load($datei); $datei_xpath = new DOMXPath($datei_xml); $abfrage = $datei_xpath->query("//entry[@xml:id = '$lemma']//form[@type = 'lemma' or @type = 'reflemma']"); //echo "Es wurde(n) " .$abfrage->length ." Einträge gefunden."; //echo '
'; if ($abfrage->length > 0) { $ansatz = $abfrage->item(0)->nodeValue; $ansatz = preg_replace("/[.,;]/", "", $ansatz); $array_lemmaformen[] = $ansatz; //echo "Der Lemmaansatz heißt: ". $ansatz ."."; //echo '
'; break; } } } for ($i = 0; $i <500; $i++) { $array[$i]['lemmaID'] = $array_lemmata[$i]; $array[$i]['lemma'] = $array_lemmaformen[$i]; } //echo "
";
	//var_dump($array);
	//echo "
"; foreach ($array as $bla) { $lemma = $bla['lemma']; $lemmaid = $bla['lemmaID']; $ausdruck = "//tei:w[@lemmaRef = '$lemmaid']"; $treffer = $xpath_xml->query($ausdruck); foreach ($treffer as $wort) { $wort->setAttribute('lemma', $lemma); } } $xml->save('bereinigte_texte2.xml'); ?>