use of mom.trd.opentheso.core.alignment.SelectedResource in project opentheso by miledrousset.
the class AgrovocHelper method getTraductions.
/**
* récupération des traductions
*
* @param jsonDatas
* @param entity
* @param languages
* @return
*/
private ArrayList<SelectedResource> getTraductions(String xmlDatas, ArrayList<String> languages) {
ArrayList<SelectedResource> traductions = new ArrayList<>();
ArrayList<SelectedResource> descriptions = new ArrayList<>();
String lang;
String value;
InputStream inputStream;
SKOSXmlDocument sxd;
try {
inputStream = new ByteArrayInputStream(xmlDatas.getBytes("UTF-8"));
// / read XML SKOS
ReadRdf4j readRdf4j = new ReadRdf4j(inputStream, 0);
sxd = readRdf4j.getsKOSXmlDocument();
for (SKOSResource resource : sxd.getConceptList()) {
for (SKOSLabel label : resource.getLabelsList()) {
switch(label.getProperty()) {
case SKOSProperty.prefLabel:
lang = label.getLanguage();
value = label.getLabel();
if (lang == null || value == null || lang.isEmpty() || value.isEmpty())
continue;
if (languages.contains(lang)) {
SelectedResource selectedResource = new SelectedResource();
selectedResource.setIdLang(lang);
selectedResource.setGettedValue(value);
traductions.add(selectedResource);
}
break;
default:
break;
}
}
for (SKOSDocumentation sd : resource.getDocumentationsList()) {
if (sd.getProperty() == SKOSProperty.definition) {
value = sd.getText();
lang = sd.getLanguage();
if (lang == null || value == null || lang.isEmpty() || value.isEmpty())
continue;
if (languages.contains(lang)) {
SelectedResource selectedResource = new SelectedResource();
selectedResource.setIdLang(lang);
selectedResource.setGettedValue(value);
descriptions.add(selectedResource);
}
}
}
}
} catch (UnsupportedEncodingException ex) {
Logger.getLogger(DownloadBean.class.getName()).log(Level.SEVERE, null, ex);
} catch (IOException ex) {
Logger.getLogger(OpenthesoHelper.class.getName()).log(Level.SEVERE, null, ex);
}
resourceDefinitions = descriptions;
return traductions;
}
use of mom.trd.opentheso.core.alignment.SelectedResource in project opentheso by miledrousset.
the class GettyAATHelper method getDescriptions.
/**
* permet de récupérer les descriptions de wikidata
*
* @param jsonDatas
* @param entity
* @param languages
* @return
*/
private ArrayList<SelectedResource> getDescriptions(String jsonDatas, String entity, ArrayList<String> languages) {
ArrayList<SelectedResource> descriptions = new ArrayList<>();
JsonHelper jsonHelper = new JsonHelper();
JsonObject jsonObject = jsonHelper.getJsonObject(jsonDatas);
// JsonObject test = jsonObject.getJsonObject("entities");
JsonObject jsonObject1;
JsonValue jsonValue;
String lang;
String value;
try {
jsonObject1 = jsonObject.getJsonObject("entities").getJsonObject(entity).getJsonObject("descriptions");
} catch (Exception e) {
// System.err.println(e.toString());
return null;
}
for (String language : languages) {
try {
SelectedResource selectedResource = new SelectedResource();
jsonValue = jsonObject1.getJsonObject(language).get("language");
lang = jsonValue.toString().replace("\"", "");
selectedResource.setIdLang(lang);
jsonValue = jsonObject1.getJsonObject(language).get("value");
value = jsonValue.toString().replace("\"", "");
selectedResource.setGettedValue(value);
descriptions.add(selectedResource);
} catch (Exception e) {
}
}
return descriptions;
}
use of mom.trd.opentheso.core.alignment.SelectedResource in project opentheso by miledrousset.
the class OpenthesoHelper method getImages.
/**
* permet de récupérer les images de Wikidata
*
* @param jsonDatas
* @param entity
* @return
*/
private ArrayList<SelectedResource> getImages(String jsonDatas, String entity) {
// pour construire l'URL de Wikimedia, il faut ajouter
// http://commons.wikimedia.org/wiki/Special:FilePath/
// puis le nom de l'image
String fixedUrl = "https://commons.wikimedia.org/wiki/Special:FilePath/";
JsonHelper jsonHelper = new JsonHelper();
JsonObject jsonObject = jsonHelper.getJsonObject(jsonDatas);
// JsonObject test = jsonObject.getJsonObject("entities");
JsonObject jsonObject1;
JsonObject jsonObject2;
JsonValue jsonValue;
ArrayList<SelectedResource> imagesUrls = new ArrayList<>();
try {
// .getJsonObject("P18");
jsonObject1 = jsonObject.getJsonObject("entities").getJsonObject(entity).getJsonObject("claims");
} catch (Exception e) {
// System.err.println(e.toString());
return null;
}
try {
JsonArray jsonArray = jsonObject1.getJsonArray("P18");
for (int i = 0; i < jsonArray.size(); i++) {
SelectedResource selectedResource = new SelectedResource();
jsonObject2 = jsonArray.getJsonObject(i);
jsonValue = jsonObject2.getJsonObject("mainsnak").getJsonObject("datavalue").get("value");
selectedResource.setGettedValue(fixedUrl + jsonValue.toString().replace("\"", ""));
imagesUrls.add(selectedResource);
}
} catch (Exception e) {
}
return imagesUrls;
}
use of mom.trd.opentheso.core.alignment.SelectedResource in project opentheso by miledrousset.
the class OpenthesoHelper method getTraductions.
/**
* récupération des traductions
*
* @param jsonDatas
* @param entity
* @param languages
* @return
*/
private ArrayList<SelectedResource> getTraductions(String jsonDatas, String entity, ArrayList<String> languages) {
ArrayList<SelectedResource> traductions = new ArrayList<>();
JsonHelper jsonHelper = new JsonHelper();
JsonObject jsonObject = jsonHelper.getJsonObject(jsonDatas);
// JsonObject test = jsonObject.getJsonObject("entities");
JsonObject jsonObject1;
JsonValue jsonValue;
String lang;
String value;
try {
jsonObject1 = jsonObject.getJsonObject("entities").getJsonObject(entity).getJsonObject("labels");
} catch (Exception e) {
// System.err.println(e.toString());
return null;
}
for (String language : languages) {
try {
SelectedResource selectedResource = new SelectedResource();
jsonValue = jsonObject1.getJsonObject(language).get("language");
lang = jsonValue.toString().replace("\"", "");
selectedResource.setIdLang(lang);
jsonValue = jsonObject1.getJsonObject(language).get("value");
value = jsonValue.toString().replace("\"", "");
selectedResource.setGettedValue(value);
traductions.add(selectedResource);
} catch (Exception e) {
}
}
return traductions;
}
use of mom.trd.opentheso.core.alignment.SelectedResource in project opentheso by miledrousset.
the class GemetHelper method getImages.
/**
* permet de récupérer les images de Wikidata
*
* @param jsonDatas
* @param entity
* @return
*/
private ArrayList<SelectedResource> getImages(String jsonDatas) {
// pour construire l'URL de Wikimedia, il faut ajouter
// http://commons.wikimedia.org/wiki/Special:FilePath/
// puis le nom de l'image
String fixedUrl = "https://commons.wikimedia.org/wiki/Special:FilePath/";
JsonHelper jsonHelper = new JsonHelper();
// JsonObject jsonObject = jsonHelper.getJsonObject(jsonDatas);
// JsonObject test = jsonObject.getJsonObject("entities");
JsonObject jsonObject1;
JsonObject jsonObject2;
JsonValue jsonValue;
ArrayList<SelectedResource> imagesUrls = new ArrayList<>();
/*
try {
jsonObject1 = jsonObject.getJsonObject("entities").getJsonObject(entity).getJsonObject("claims");//.getJsonObject("P18");
} catch (Exception e) {
//System.err.println(e.toString());
return null;
}
try {
JsonArray jsonArray = jsonObject1.getJsonArray("P18");
for (int i = 0; i < jsonArray.size(); i++) {
SelectedResource selectedResource = new SelectedResource();
jsonObject2 = jsonArray.getJsonObject(i);
jsonValue = jsonObject2.getJsonObject("mainsnak").getJsonObject("datavalue").get("value");
selectedResource.setGettedValue(fixedUrl + jsonValue.toString().replace("\"", ""));
imagesUrls.add(selectedResource);
}
} catch (Exception e) {
}*/
return imagesUrls;
}
Aggregations