From 48a2e9af19f45e645a24b42a433cfcd2319eb37b Mon Sep 17 00:00:00 2001 From: vysitor Date: Thu, 20 Mar 2025 17:33:20 +0100 Subject: [PATCH] Preparations for sunburst chart --- .../gruppe_05_1/domain/html/HtmlSpeech.java | 6 ++---- .../gruppe_05_1/domain/nlp/NamedEntity.java | 17 +++++++++++++++-- 2 files changed, 17 insertions(+), 6 deletions(-) diff --git a/src/main/java/org/texttechnologylab/project/gruppe_05_1/domain/html/HtmlSpeech.java b/src/main/java/org/texttechnologylab/project/gruppe_05_1/domain/html/HtmlSpeech.java index dfc795d..ad6d126 100644 --- a/src/main/java/org/texttechnologylab/project/gruppe_05_1/domain/html/HtmlSpeech.java +++ b/src/main/java/org/texttechnologylab/project/gruppe_05_1/domain/html/HtmlSpeech.java @@ -3,10 +3,7 @@ package org.texttechnologylab.project.gruppe_05_1.domain.html; import org.bson.Document; import org.texttechnologylab.project.gruppe_05_1.database.MongoDBHandler; import org.texttechnologylab.project.gruppe_05_1.database.MongoPprUtils; -import org.texttechnologylab.project.gruppe_05_1.domain.nlp.NlpInfo; -import org.texttechnologylab.project.gruppe_05_1.domain.nlp.Sentiment; -import org.texttechnologylab.project.gruppe_05_1.domain.nlp.Token; -import org.texttechnologylab.project.gruppe_05_1.domain.nlp.Topic; +import org.texttechnologylab.project.gruppe_05_1.domain.nlp.*; import org.texttechnologylab.project.gruppe_05_1.domain.speech.SpeechMetaData; import java.util.ArrayList; @@ -69,6 +66,7 @@ public class HtmlSpeech { List dependenciesDocs = nlpDoc.get("dependencies", MongoDBHandler.DOC_LIST_CLASS); List namedEntitiesDocs = nlpDoc.get("namedEntities", MongoDBHandler.DOC_LIST_CLASS); + nlp.setNamedEntities(NamedEntity.readNamedEntitiesFromMongo(namedEntitiesDocs)); List sentimentsDocs = nlpDoc.get("sentiments", MongoDBHandler.DOC_LIST_CLASS); nlp.setSentiments(Sentiment.readSentimentsFromMongo(sentimentsDocs)); diff --git a/src/main/java/org/texttechnologylab/project/gruppe_05_1/domain/nlp/NamedEntity.java b/src/main/java/org/texttechnologylab/project/gruppe_05_1/domain/nlp/NamedEntity.java index 0f3ec5d..165df29 100644 --- a/src/main/java/org/texttechnologylab/project/gruppe_05_1/domain/nlp/NamedEntity.java +++ b/src/main/java/org/texttechnologylab/project/gruppe_05_1/domain/nlp/NamedEntity.java @@ -1,12 +1,14 @@ package org.texttechnologylab.project.gruppe_05_1.domain.nlp; +import org.bson.Document; + +import java.util.ArrayList; +import java.util.List; import java.util.Objects; import java.util.StringJoiner; public class NamedEntity { String type; // PER, LOC etc. - // int begin; // TODO: momentan nicht in MongoDB - // int end; // TODO: momentan nicht in MongoDB String text; public NamedEntity() { @@ -52,4 +54,15 @@ public class NamedEntity { .add("text='" + text + "'") .toString(); } + + public static List readNamedEntitiesFromMongo(List nadocs) { + List nes = new ArrayList<>(); + for (Document doc : nadocs) { + nes.add(new NamedEntity( + doc.getString("type"), + doc.getString("text") + )); + } + return nes; + } }