private void buildIndices(Iterator<UniversalPage> uPages){ while(uPages.hasNext()){ UniversalPage uPage = uPages.next(); for(LocalId localId : uPage.getLocalEntities()){ localId2ItemIdIndex.put(localId, uPage.getUnivId()); itemId2LocalIdIndex.put(uPage.getUnivId(), localId); } } }
public Title getBestEnglishTitle(LocalPageDao lpDao, boolean returnRandomLangIfEnglishNotAvailable) throws WikiBrainException { try { Language lang = getLanguageSet().getBestAvailableEnglishLang(returnRandomLangIfEnglishNotAvailable); LocalPage lp = lpDao.getById(lang, getLocalEntities(lang).iterator().next().getId()); return lp.getTitle(); }catch(DaoException e){ throw new WikiBrainException(e); } }
public String formatExplanation(Explanation explanation) throws DaoException { String[] plaintextBuilder = explanation.getFormat().split("\\?", -1); if (explanation.getInformation().size()!=plaintextBuilder.length-1){ throw new IllegalStateException("Incorrect number of information objects in explanation. Expected "+(plaintextBuilder.length-1)+" but found "+explanation.getInformation().size()); } String plaintext = plaintextBuilder[0]; for (int i = 1; i<plaintextBuilder.length; i++){ Object object = explanation.getInformation().get(i-1); //Handle the different possible types of information. //Add additional handlers as appropriate if (object instanceof LocalPage){ plaintext+=((LocalPage) object).getTitle().getCanonicalTitle(); }else if(object instanceof UniversalPage){ Language defaultlang = ((UniversalPage) object).getLanguageSet().getDefaultLanguage(); LocalId nameId = (LocalId)((UniversalPage) object).getLocalEntities(defaultlang).toArray()[0]; LocalPage namePage = localPageDao.getById(nameId.getLanguage(), nameId.getId()); plaintext+=namePage.getTitle().getCanonicalTitle(); }else { plaintext+=object.toString(); } plaintext+=plaintextBuilder[i]; } return plaintext; }
public static void main() throws DaoException, ConfigurationException { // Prepare the environment; set the root to the current directory ("."). Env env = new EnvBuilder() .setBaseDir(".") .build(); // Get the configurator that creates components and a phraze analyzer from it Configurator configurator = env.getConfigurator(); PhraseAnalyzer pa = configurator.get(PhraseAnalyzer.class); UniversalPageDao dao = configurator.get(UniversalPageDao.class); // get the most common phrases in simple Language simple = Language.getByLangCode("simple"); // simple english LinkedHashMap<LocalId, Float> resolution = pa.resolve(simple, "apple", 5); // show the closest pages System.out.println("meanings of apple:"); for (LocalId p : resolution.keySet()) { System.out.println("\t" + p + ": " + resolution.get(p)); // translate them... UniversalPage concept = dao.getByLocalPage(p.asLocalPage()); //UniversalPage concept = dao.getByLocalPage(new Local, 1); for (LocalId id : concept.getLocalEntities()) { System.out.println("\t\tin language " + id.getLanguage() + " is " + id); } } } }
public static void main() throws DaoException, ConfigurationException { // Prepare the environment; set the root to the current directory ("."). Env env = new EnvBuilder() .setBaseDir(".") .build(); // Get the configurator that creates components and a phraze analyzer from it Configurator configurator = env.getConfigurator(); PhraseAnalyzer pa = configurator.get(PhraseAnalyzer.class); UniversalPageDao dao = configurator.get(UniversalPageDao.class); // get the most common phrases in simple Language simple = Language.getByLangCode("simple"); // simple english LinkedHashMap<LocalId, Float> resolution = pa.resolve(simple, "apple", 5); // show the closest pages System.out.println("meanings of apple:"); for (LocalId p : resolution.keySet()) { System.out.println("\t" + p + ": " + resolution.get(p)); // translate them... UniversalPage concept = dao.getByLocalPage(p.asLocalPage()); //UniversalPage concept = dao.getByLocalPage(new Local, 1); for (LocalId id : concept.getLocalEntities()) { System.out.println("\t\tin language " + id.getLanguage() + " is " + id); } } } }
public static void main(String args[]) throws ConfigurationException, DaoException { Env env = new EnvBuilder().build(); Configurator configurator = env.getConfigurator(); UniversalPageDao pdao = configurator.get(UniversalPageDao.class); UniversalLinkDao ldao = configurator.get(UniversalLinkDao.class); LocalPageDao lpDao = configurator.get(LocalPageDao.class); int i = 0; for (UniversalPage page : (Iterable<UniversalPage>)pdao.get(new DaoFilter().setNameSpaces(NameSpace.ARTICLE))) { for (LocalId lId : page.getLocalEntities()){ LocalPage lPage = lpDao.getById(lId.getLanguage(), lId.getId()); System.out.println(lPage); } System.out.println(); i++; } System.out.println("Concept count: " + i); } }
public static void main(String args[]) throws ConfigurationException, DaoException { Env env = new EnvBuilder().build(); Configurator configurator = env.getConfigurator(); UniversalPageDao pdao = configurator.get(UniversalPageDao.class); UniversalLinkDao ldao = configurator.get(UniversalLinkDao.class); LocalPageDao lpDao = configurator.get(LocalPageDao.class); int i = 0; for (UniversalPage page : (Iterable<UniversalPage>)pdao.get(new DaoFilter().setNameSpaces(NameSpace.ARTICLE))) { for (LocalId lId : page.getLocalEntities()){ LocalPage lPage = lpDao.getById(lId.getLanguage(), lId.getId()); System.out.println(lPage); } System.out.println(); i++; } System.out.println("Concept count: " + i); } }
@Override public void save(UniversalPage page) throws DaoException { NameSpace nameSpace = page.getNameSpace(); for (Language language : page.getLanguageSet()) { for (LocalId localPage : page.getLocalEntities(language)) { insert( language.getId(), localPage.getId(), nameSpace.getArbitraryId(), page.getUnivId(), page.getAlgorithmId() ); } } }