/** * Gets the entity value, or if the value has not been set then gets the covered text * * @return the entity value */ public String getValue() { if (!Strings.isNullOrEmpty(entity.getValue())) return entity.getValue(); return entity.getCoveredText(); }
/** * Gets the entity value, or if the value has not been set then gets the covered text * * @return the entity value */ public String getValue() { if (!Strings.isNullOrEmpty(entity.getValue())) return entity.getValue(); return entity.getCoveredText(); }
/** * Save entity. * * @param entity the entity * @return the DB object */ private Document saveEntity(final Entity entity) { return new Document() .append("text", entity.getCoveredText()) .append("type", entity.getTypeName()); } }
@Test public void testSingleViaCompare() { final Collection<Entity> list = Arrays.asList(chris, he); final Entity entity = ReferentUtils.singleViaCompare( list, (a, b) -> Integer.compare(a.getCoveredText().length(), b.getCoveredText().length())); assertSame(chris, entity); }
x -> { final Entity t = (Entity) x; list.add(normalize(t.getCoveredText())); });
normalize(r.getSource().getValue()), normalize(r.getTarget().getValue()), normalize(r.getSource().getCoveredText()), normalize(r.getTarget().getCoveredText()), r.getSource().getType().getShortName(), r.getTarget().getType().getShortName(),
assertEquals(HEADING.length() + 2 + ROW1.length(), first.getEnd()); assertEquals(Person.class, first.getSource().getClass()); assertEquals(R1C1, first.getSource().getCoveredText()); assertEquals(CommsIdentifier.class, first.getTarget().getClass()); assertEquals(R1C2, first.getTarget().getCoveredText()); assertEquals("emailAddress", first.getRelationshipType());
@Test public void testBracketsNone() throws Exception { AnalysisEngine cleanBracketAE = AnalysisEngineFactory.createEngine(CleanPunctuation.class); jCas.setDocumentText(TEXT); Annotations.createEntity(jCas, 0, TEXT.length(), TEXT); cleanBracketAE.process(jCas); assertEquals(1, JCasUtil.select(jCas, Entity.class).size()); Entity ent = JCasUtil.selectByIndex(jCas, Entity.class, 0); assertEquals(TEXT, ent.getCoveredText()); assertEquals(TEXT, ent.getValue()); } }
@Test public void testBracketsClose() throws Exception { AnalysisEngine cleanBracketAE = AnalysisEngineFactory.createEngine(CleanPunctuation.class); String t = "(Oh dear), we've pulled out too many (closing brackets!))"; jCas.setDocumentText(t); Annotations.createEntity(jCas, 0, t.length(), TEXT_BRACKETS); cleanBracketAE.process(jCas); assertEquals(1, JCasUtil.select(jCas, Entity.class).size()); Entity ent = JCasUtil.selectByIndex(jCas, Entity.class, 0); assertEquals("(Oh dear), we've pulled out too many (closing brackets!)", ent.getCoveredText()); assertEquals("(Oh dear), we've pulled out too many (closing brackets!)", ent.getValue()); }
public static Entity createEntity(JCas jCas, int begin, int end, String value) { Entity e = new Entity(jCas); e.setBegin(begin); e.setEnd(end); if (value != null) { e.setValue(e.getCoveredText()); } e.addToIndexes(); return e; }
@Test public void testBracketsOpen() throws Exception { AnalysisEngine cleanBracketAE = AnalysisEngineFactory.createEngine(CleanPunctuation.class); jCas.setDocumentText(TEXT_BRACKETS); Annotations.createEntity(jCas, 0, jCas.getDocumentText().length(), TEXT_BRACKETS); cleanBracketAE.process(jCas); assertEquals(1, JCasUtil.select(jCas, Entity.class).size()); Entity ent = JCasUtil.selectByIndex(jCas, Entity.class, 0); assertEquals("(Oh dear), we've (pulled out) too many opening brackets", ent.getCoveredText()); assertEquals("(Oh dear), we've (pulled out) too many opening brackets", ent.getValue()); }
assertEquals(HEADING.length() + 2 + ROW1.length(), first.getEnd()); assertEquals(Person.class, first.getSource().getClass()); assertEquals(R1C1, first.getSource().getCoveredText()); assertEquals(CommsIdentifier.class, first.getTarget().getClass()); assertEquals(R1C2, first.getTarget().getCoveredText()); assertEquals("emailAddress", first.getRelationshipType()); Relation second = iterator.next(); assertEquals(begin2 + ROW3.length(), second.getEnd()); assertEquals(Person.class, second.getSource().getClass()); assertEquals(R3C1, second.getSource().getCoveredText()); assertEquals(CommsIdentifier.class, second.getTarget().getClass()); assertEquals(R3C2, second.getTarget().getCoveredText()); assertEquals("emailAddress", second.getRelationshipType());
@Test public void testMissingType() throws Exception { AnalysisEngine regexAE = AnalysisEngineFactory.createEngine( Custom.class, Custom.PARAM_PATTERN, DIGIT_REGEX, Custom.PARAM_CASE_SENSITIVE, true); jCas.setDocumentText(TEXT); regexAE.process(jCas); assertEquals(1, JCasUtil.select(jCas, Entity.class).size()); Entity e1 = JCasUtil.selectByIndex(jCas, Entity.class, 0); assertNotNull(e1); assertEquals(P123, e1.getCoveredText()); assertEquals(P123, e1.getValue()); regexAE.destroy(); }
.map( r -> r.getSource().getCoveredText() + " " + r.getValue() + " " + r.getTarget().getCoveredText()) .forEach(System.out::println); assertTrue(r.getSource().getCoveredText().matches("Alphabet Limited|Larry Page")); assertEquals("chief executive officer", r.getValue()); assertTrue(r.getTarget().getCoveredText().matches("Alphabet Limited|Larry Page")); });
.map( r -> r.getSource().getCoveredText() + " " + r.getValue() + " " + r.getTarget().getCoveredText()) .forEach(System.out::println); assertEquals("Google", r.getSource().getCoveredText()); assertEquals("CEO", r.getValue()); assertEquals("Larry Page", r.getTarget().getCoveredText()); });
.map( r -> r.getSource().getCoveredText() + " " + r.getValue() + " " + r.getTarget().getCoveredText()) .forEach(System.out::println); assertEquals("Google", r.getSource().getCoveredText()); assertEquals("CEO", r.getValue()); assertEquals("Larry Page", r.getTarget().getCoveredText()); });
.map( r -> r.getSource().getCoveredText() + " " + r.getValue() + " " + r.getTarget().getCoveredText()) .forEach(System.out::println); assertEquals("Google", r.getSource().getCoveredText()); assertEquals("CEO", r.getValue()); assertEquals("Larry Page", r.getTarget().getCoveredText()); });
@Test public void test2() throws UIMAException { createPOS(); Person person = new Person(jCas, 0, 1); // H person.addToIndexes(); Money money = new Money(jCas, 59, 71); // $1.8 billion money.addToIndexes(); Temporal date = new Temporal(jCas, 75, 84); // September date.addToIndexes(); processJCas(); assertEquals(2, JCasUtil.select(jCas, Relation.class).size()); Relation r1 = JCasUtil.selectByIndex(jCas, Relation.class, 0); assertEquals("reckons", r1.getValue()); assertEquals(person, r1.getSource()); assertEquals("uk.gov.dstl.baleen.types.semantic.Entity", r1.getTarget().getTypeName()); assertEquals("the current account deficit", r1.getTarget().getCoveredText()); Relation r2 = JCasUtil.selectByIndex(jCas, Relation.class, 1); assertEquals("will narrow to", r2.getValue()); assertEquals("uk.gov.dstl.baleen.types.semantic.Entity", r2.getSource().getTypeName()); assertEquals("the current account deficit", r2.getSource().getCoveredText()); assertEquals(money, r2.getTarget()); }
@Test public void test1() throws UIMAException { createPOS(); Person person = new Person(jCas, 0, 2); // He person.addToIndexes(); Money money = new Money(jCas, 59, 71); // $1.8 billion money.addToIndexes(); Temporal date = new Temporal(jCas, 75, 84); // September date.addToIndexes(); processJCas(); assertEquals(2, JCasUtil.select(jCas, Relation.class).size()); Relation r1 = JCasUtil.selectByIndex(jCas, Relation.class, 0); assertEquals("reckons", r1.getValue()); assertEquals(person, r1.getSource()); assertEquals("uk.gov.dstl.baleen.types.semantic.Entity", r1.getTarget().getTypeName()); assertEquals("the current account deficit", r1.getTarget().getCoveredText()); Relation r2 = JCasUtil.selectByIndex(jCas, Relation.class, 1); assertEquals("will narrow to", r2.getValue()); assertEquals("uk.gov.dstl.baleen.types.semantic.Entity", r2.getSource().getTypeName()); assertEquals("the current account deficit", r2.getSource().getCoveredText()); assertEquals(money, r2.getTarget()); }
@Test public void test3() throws UIMAException { createPOS(); Person person = new Person(jCas, 0, 2); // He person.addToIndexes(); Money money = new Money(jCas, 54, 71); // only $1.8 billion money.addToIndexes(); Temporal date = new Temporal(jCas, 75, 84); // September date.addToIndexes(); processJCas(); assertEquals(2, JCasUtil.select(jCas, Relation.class).size()); Relation r1 = JCasUtil.selectByIndex(jCas, Relation.class, 0); assertEquals("reckons", r1.getValue()); assertEquals(person, r1.getSource()); assertEquals("uk.gov.dstl.baleen.types.semantic.Entity", r1.getTarget().getTypeName()); assertEquals("the current account deficit", r1.getTarget().getCoveredText()); Relation r2 = JCasUtil.selectByIndex(jCas, Relation.class, 1); assertEquals("will narrow to", r2.getValue()); assertEquals("uk.gov.dstl.baleen.types.semantic.Entity", r2.getSource().getTypeName()); assertEquals("the current account deficit", r2.getSource().getCoveredText()); assertEquals(money, r2.getTarget()); }