@Override public WikidataEntity getProperty(Language language, String name) throws DaoException { name = name.toLowerCase(); for (WikidataEntity entity : getProperties().values()) { String ename = entity.getLabels().get(language); if (ename != null && ename.toLowerCase().equals(name)) { return entity; } } return null; }
@Override public WikidataEntity getProperty(Language language, String name) throws DaoException { name = name.toLowerCase(); for (WikidataEntity entity : getProperties().values()) { String ename = entity.getLabels().get(language); if (ename != null && ename.toLowerCase().equals(name)) { return entity; } } return null; }
public Map<String, List<WikidataStatement>> getStatementsInLanguage(Language language) { Map<String, List<WikidataStatement>> inLang = new HashMap<String, List<WikidataStatement>>(); for (WikidataStatement s : statements) { String label = s.getProperty().getLabels().get(language); if (label != null) { if (!inLang.containsKey(label)) { inLang.put(label, new ArrayList<WikidataStatement>()); } inLang.get(label).add(s); } } return inLang; }
public Map<String, List<WikidataStatement>> getStatementsInLanguage(Language language) { Map<String, List<WikidataStatement>> inLang = new HashMap<String, List<WikidataStatement>>(); for (WikidataStatement s : statements) { String label = s.getProperty().getLabels().get(language); if (label != null) { if (!inLang.containsKey(label)) { inLang.put(label, new ArrayList<WikidataStatement>()); } inLang.get(label).add(s); } } return inLang; }
public Collection<WikidataEntity> getPropertyByName(Language language, String name) throws DaoException { List<WikidataEntity> matches = new ArrayList<WikidataEntity>(); Map<Integer, WikidataEntity> props = getProperties(); for (WikidataEntity e : props.values()) { if (e.getAliases().containsKey(language) && e.getAliases().get(language).contains(name)) { matches.add(e); } else if (e.getLabels().containsKey(language) && e.getLabels().get(language).contains(name)) { matches.add(e); } } return matches; }
private String getPropertyName(int id) throws DaoException { String name = propertyNames.get(id); if (name != null && name.equals("__NULL__")) { return null; } else if (name != null) { return name; } WikidataEntity entity = wikidataDao.getItem(id); if (entity == null) { name = null; } else if (entity.getLabels().containsKey(Language.EN)) { name = entity.getLabels().get(Language.EN); } else if (entity.getLabels().containsKey(Language.SIMPLE)) { name = entity.getLabels().get(Language.SIMPLE); } else { name = null; } propertyNames.put(id, name == null ? "__NULL__" : name); return name; } }
public Collection<WikidataEntity> getPropertyByName(Language language, String name) throws DaoException { List<WikidataEntity> matches = new ArrayList<WikidataEntity>(); Map<Integer, WikidataEntity> props = getProperties(); for (WikidataEntity e : props.values()) { if (e.getAliases().containsKey(language) && e.getAliases().get(language).contains(name)) { matches.add(e); } else if (e.getLabels().containsKey(language) && e.getLabels().get(language).contains(name)) { matches.add(e); } } return matches; }
private String getPropertyName(int id) throws DaoException { String name = propertyNames.get(id); if (name != null && name.equals("__NULL__")) { return null; } else if (name != null) { return name; } WikidataEntity entity = wikidataDao.getItem(id); if (entity == null) { name = null; } else if (entity.getLabels().containsKey(Language.EN)) { name = entity.getLabels().get(Language.EN); } else if (entity.getLabels().containsKey(Language.SIMPLE)) { name = entity.getLabels().get(Language.SIMPLE); } else { name = null; } propertyNames.put(id, name == null ? "__NULL__" : name); return name; } }
public Collection<WikidataEntity> getPropertyByName(String name) throws DaoException { Set<WikidataEntity> matches = new HashSet<WikidataEntity>(); Map<Integer, WikidataEntity> props = getProperties(); for (WikidataEntity e : props.values()) { if (e.getLabels().values().contains(name)) { matches.add(e); continue; } if (e.getAliases().values().contains(name)) { matches.add(e); continue; } } return matches; }
public Collection<WikidataEntity> getPropertyByName(String name) throws DaoException { Set<WikidataEntity> matches = new HashSet<WikidataEntity>(); Map<Integer, WikidataEntity> props = getProperties(); for (WikidataEntity e : props.values()) { if (e.getLabels().values().contains(name)) { matches.add(e); continue; } if (e.getAliases().values().contains(name)) { matches.add(e); continue; } } return matches; }
private boolean keepEntity(WikidataEntity entity) { if (entity.getType() == WikidataEntity.Type.PROPERTY) { return true; } else if (universalIds.contains(entity.getId())) { return true; } else if (keepAllLabeledEntities && !entity.getLabels().isEmpty()) { return true; } else { return false; } }
private boolean keepEntity(WikidataEntity entity) { if (entity.getType() == WikidataEntity.Type.PROPERTY) { return true; } else if (universalIds.contains(entity.getId())) { return true; } else if (keepAllLabeledEntities && !entity.getLabels().isEmpty()) { return true; } else { return false; } }
@Override public void save(WikidataEntity entity) throws DaoException { for (Map.Entry<Language, String> entry : entity.getLabels().entrySet()) { labelLoader.load(entity.getType().code, entity.getId(), entry.getKey().getId(), entry.getValue()); } for (Map.Entry<Language, String> entry : entity.getDescriptions().entrySet()) { descLoader.load(entity.getType().code, entity.getId(), entry.getKey().getId(), entry.getValue()); } for (Map.Entry<Language, List<String>> entry : entity.getAliases().entrySet()) { for (String alias : entry.getValue()) { aliasLoader.load(entity.getType().code, entity.getId(), entry.getKey().getId(), alias); } } for (WikidataStatement stmt : entity.getStatements()) { save(stmt); } if (entity.getType() == WikidataEntity.Type.PROPERTY) { synchronized (properties) { properties.put(entity.getId(), entity); } } }
if (type == WikidataEntity.Type.PROPERTY) { if (prop.getLabels().isEmpty()) { LOG.warn("no labels for property " + id); return "unknown"; if (prop.getLabels().containsKey(language)) { return prop.getLabels().get(language); } else if (prop.getLabels().containsKey(FALLBACK_LANGUAGE)) { return prop.getLabels().get(FALLBACK_LANGUAGE); } else { return prop.getLabels().values().iterator().next();
if (type == WikidataEntity.Type.PROPERTY) { if (prop.getLabels().isEmpty()) { LOG.warn("no labels for property " + id); return "unknown"; if (prop.getLabels().containsKey(language)) { return prop.getLabels().get(language); } else if (prop.getLabels().containsKey(FALLBACK_LANGUAGE)) { return prop.getLabels().get(FALLBACK_LANGUAGE); } else { return prop.getLabels().values().iterator().next();
@Override public void save(WikidataEntity entity) throws DaoException { for (Map.Entry<Language, String> entry : entity.getLabels().entrySet()) { labelLoader.load(entity.getType().code, entity.getId(), entry.getKey().getId(), entry.getValue()); } for (Map.Entry<Language, String> entry : entity.getDescriptions().entrySet()) { descLoader.load(entity.getType().code, entity.getId(), entry.getKey().getId(), entry.getValue()); } for (Map.Entry<Language, List<String>> entry : entity.getAliases().entrySet()) { for (String alias : entry.getValue()) { aliasLoader.load(entity.getType().code, entity.getId(), entry.getKey().getId(), alias); } } for (WikidataStatement stmt : entity.getStatements()) { save(stmt); } if (entity.getType() == WikidataEntity.Type.PROPERTY) { synchronized (properties) { properties.put(entity.getId(), entity); } } }
Geometry geometry = sd.getGeometry(countryId, "wikidata", "earth"); if (geometry != null) { countryCenters.put(country.getLabels().get(Language.EN), geometry.getCentroid());
Geometry geometry = sd.getGeometry(countryId, "wikidata", "earth"); if (geometry != null) { countryCenters.put(country.getLabels().get(Language.EN), geometry.getCentroid());
if (validLanguage(v.getLanguageCode())) { Language lang = Language.getByLangCodeLenient(v.getLanguageCode()); record.getLabels().put(lang, v.getText());
if (validLanguage(v.getLanguageCode())) { Language lang = Language.getByLangCodeLenient(v.getLanguageCode()); record.getLabels().put(lang, v.getText());