function phraseArrayToWordsArray($phraseArr) { $wordsArr = array(); foreach ($phraseArr as $index => $word) { $phraseWordsArr = explode(" ", $word); if (isMultiWordStr($word)) { foreach ($phraseWordsArr as $index2 => $subPhraseWord) { $wordsArr[$subPhraseWord] = 1; } } else { $wordsArr[$word] = 1; } } return $wordsArr; }
function handleNewConceptFromRelation(&$finalConcepts, $subjectOrObject, $conceptLocationInRelation, &$notInCounceptsCounter, &$statsUniqueSubjects) { global $WORDS_TRANSLATIONS_AR_EN; $subjectOrObjectFlag = null; // SUBJECT NOT IN MASTER CONCEPTS LIST if (!isset($finalConcepts[$subject])) { if ($conceptLocationInRelation == "SUBJECT") { echoN("NOT IN CONCEPTS:S:{$subjectOrObject}"); } else { echoN("NOT IN CONCEPTS:O:{$subjectOrObject}"); } $notInCounceptsCounter++; $statsUniqueSubjects[$subjectOrObject] = 1; } $termsArr = getTermArrBySimpleWord($finalTerms, $subjectOrObject); $freq = $termsArr['FREQ']; $isQuranaPhraseConcept = false; //echoN("^&&*:".(strpos($subjectOrObject," ")!==false)); if (isMultiWordStr($subjectOrObject)) { $quranaConceptArr = getQuranaConceptEntryByARWord($subjectOrObject); $engTranslation = ucfirst($quranaConceptArr['EN']); echoN("^^{$subjectOrObject}"); $isQuranaPhraseConcept = true; } else { $uthmaniWord = getItemFromUthmaniToSimpleMappingTable($subjectOrObject); $engTranslation = ucfirst(cleanEnglishTranslation($WORDS_TRANSLATIONS_AR_EN[$uthmaniWord])); } addNewConcept($finalConcepts, $subjectOrObject, "A-BOX", "POPULATION_FROM_RELATIONS", $freq, $engTranslation); $finalConcepts[$subjectOrObject]['EXTRA']['POS'] = $subjectOrObjectFlag; $finalConcepts[$subjectOrObject]['EXTRA']['WEIGHT'] = $termsArr['WEIGHT']; if ($isQuranaPhraseConcept) { echoN($isQuranaPhraseConcept . "||||{$subjectOrObject}"); $finalConcepts[$subjectOrObject]['EXTRA']['IS_QURANA_NGRAM_CONCEPT'] = true; } }