@Before public void before() throws UIMAException { jCas = JCasSingleton.getJCasInstance(); jCas.setDocumentText(DOC_TEXT); text = new Text(jCas, 12, 12 + TEXT_TEXT.length()); final Buzzword b = new Buzzword(jCas, DOC_TEXT.indexOf("text"), DOC_TEXT.indexOf("text") + "text".length()); b.addToIndexes(); final Buzzword postfix = new Buzzword( jCas, DOC_TEXT.indexOf("prefix"), DOC_TEXT.indexOf("prefix") + "prefix".length()); postfix.addToIndexes(); final Buzzword prefix = new Buzzword( jCas, DOC_TEXT.indexOf("postfix"), DOC_TEXT.indexOf("postfix") + "postfix".length()); prefix.addToIndexes(); }
/** * @generated * @param jcas JCas to which this Feature Structure belongs * @param begin offset to the begin spot in the SofA * @param end offset to the end spot in the SofA */ public Buzzword(JCas jcas, int begin, int end) { super(jcas); setBegin(begin); setEnd(end); readObject(); }
p1.addToIndexes(); Buzzword b = new Buzzword(jCas); b.setBegin(27); b.setEnd(31); b.setValue("John"); b.addToIndexes();
@Test public void testMarked() throws UIMAException { Quantity q = new Quantity(jCas); q.setBegin(18); q.setEnd(21); q.addToIndexes(); Buzzword e = new Buzzword(jCas); e.setBegin(25); e.setEnd(36); e.addToIndexes(); processJCas(); assertEquals(2, JCasUtil.select(jCas, Entity.class).size()); assertEquals(1, JCasUtil.select(jCas, Relation.class).size()); Relation r = JCasUtil.selectByIndex(jCas, Relation.class, 0); assertEquals(18, r.getBegin()); assertEquals(q, r.getSource()); assertEquals(36, e.getEnd()); assertEquals(e, r.getTarget()); assertEquals("QUANTITY", r.getRelationshipType()); } }
@Test public void testStringArray() { Buzzword bw = new Buzzword(jCas); StringArray tags = new StringArray(jCas, 2); tags.set(0, "tag1"); tags.set(1, "tag2"); bw.setTags(tags); bw.addToIndexes(); Feature f = bw.getType().getFeatureByBaseName("tags"); StringArray newTags = new StringArray(jCas, 2); newTags.set(0, "first"); newTags.set(1, "second"); NewFeatureUtils.setPrimitiveArray(jCas, bw, f, Arrays.asList(newTags.toArray())); assertEquals("first", bw.getTags(0)); assertEquals("second", bw.getTags(1)); } }
@Override public void map(JCas jCas, Element element, AnnotationCollector collector) { switch (element.tagName().toLowerCase()) { case "time": collector.add(new Temporal(jCas)); break; case "meter": collector.add(new Quantity(jCas)); break; case "dfn": collector.add(new Buzzword(jCas)); break; case "address": collector.add(new Location(jCas)); break; case "abbr": collector.add(new Buzzword(jCas)); break; case "cite": collector.add(new DocumentReference(jCas)); break; default: return; } } }
@Test public void testBuzzwordProperty() throws Exception { jCas.setDocumentText("Hello Sydney (Australia), this is a test"); processJCas(MONGO, erd, COLLECTION, MONGO_COLL, TYPE, "Buzzword"); assertEquals(1, JCasUtil.select(jCas, Buzzword.class).size()); Buzzword b = JCasUtil.selectByIndex(jCas, Buzzword.class, 0); assertEquals("Sydney (Australia", b.getValue()); assertEquals("Sydney (Australia", b.getCoveredText()); StringArray tags = b.getTags(); assertEquals(1, tags.size()); assertEquals("broken_regex", tags.get(0)); }
"linear constraints", JCasUtil.selectByIndex(jCas, Buzzword.class, 0).getCoveredText()); assertEquals("keyword", JCasUtil.selectByIndex(jCas, Buzzword.class, 0).getTags(0)); "natural numbers", JCasUtil.selectByIndex(jCas, Buzzword.class, 1).getCoveredText()); assertEquals( "linear Diophantine equations", JCasUtil.selectByIndex(jCas, Buzzword.class, 2).getCoveredText()); assertEquals( "strict inequations", JCasUtil.selectByIndex(jCas, Buzzword.class, 3).getCoveredText()); assertEquals( "nonstrict inequations", JCasUtil.selectByIndex(jCas, Buzzword.class, 4).getCoveredText()); assertEquals("Upper bounds", JCasUtil.selectByIndex(jCas, Buzzword.class, 5).getCoveredText()); assertEquals("minimal set", JCasUtil.selectByIndex(jCas, Buzzword.class, 6).getCoveredText()); assertEquals( "minimal generating sets", JCasUtil.selectByIndex(jCas, Buzzword.class, 7).getCoveredText()); assertEquals( "minimal supporting set", JCasUtil.selectByIndex(jCas, Buzzword.class, 8).getCoveredText());
@Test public void testCoref() throws Exception { jCas.setDocumentText("Lords, ladies, sirs, and madames..."); processJCas(MONGO, erd, COLLECTION, MONGO_COLL, TYPE, BUZZWORD); assertEquals(2, JCasUtil.select(jCas, Buzzword.class).size()); assertEquals(1, JCasUtil.select(jCas, ReferenceTarget.class).size()); ReferenceTarget rt = JCasUtil.selectByIndex(jCas, ReferenceTarget.class, 0); Buzzword b1 = JCasUtil.selectByIndex(jCas, Buzzword.class, 0); assertEquals("ladies", b1.getValue()); assertEquals("ladies", b1.getCoveredText()); assertEquals(rt, b1.getReferent()); Buzzword b2 = JCasUtil.selectByIndex(jCas, Buzzword.class, 1); assertEquals("sirs", b2.getValue()); assertEquals("sirs", b2.getCoveredText()); assertEquals(rt, b2.getReferent()); } }
@Test public void test() throws Exception { jCas.setDocumentText("Forty seven knights conspired against the crown."); processJCas(MONGO, erd, COLLECTION, MONGO_COLL, TYPE, BUZZWORD); assertEquals(2, JCasUtil.select(jCas, Buzzword.class).size()); Buzzword b1 = JCasUtil.selectByIndex(jCas, Buzzword.class, 0); assertEquals("knights", b1.getValue()); assertEquals("knights", b1.getCoveredText()); Buzzword b2 = JCasUtil.selectByIndex(jCas, Buzzword.class, 1); assertEquals("conspired", b2.getValue()); assertEquals("conspired", b2.getCoveredText()); }
@Test public void testProcess() throws Exception { jCas.setDocumentText( new String(Files.readAllBytes(Paths.get(getClass().getResource("turing.txt").toURI())))); processJCas(KEY_STOPWORDS, erd, PARAM_STEMMING, "ENGLISH"); JCasMetadata metadata = new JCasMetadata(jCas); Set<String> keywords = metadata.findAll(KEYWORD_METADATA_KEY); assertEquals(5, keywords.size()); assertTrue(keywords.contains("machine")); assertTrue(keywords.contains("computer")); assertTrue(keywords.contains("digital computers")); assertTrue(keywords.contains("state")); // Same score so either is valid assertTrue(keywords.contains("question") || keywords.contains("digital")); assertTrue(JCasUtil.select(jCas, Buzzword.class).size() > 0); Set<String> buzzwords = new HashSet<>(); for (Buzzword bw : JCasUtil.select(jCas, Buzzword.class)) { assertEquals("keyword", bw.getTags(0)); buzzwords.add(bw.getValue()); } assertTrue(buzzwords.contains("machines")); assertTrue(buzzwords.contains("computing")); assertTrue(buzzwords.contains("questioning")); }
assertEquals(1, block.toBlockOffset(13)); assertEquals(1, block.select(Buzzword.class).size()); assertEquals("text", block.select(Buzzword.class).iterator().next().getCoveredText());
@Override public void map(JCas jCas, Element element, AnnotationCollector collector) { switch (element.tagName().toLowerCase()) { case "time": collector.add(new Temporal(jCas)); break; case "meter": collector.add(new Quantity(jCas)); break; case "dfn": collector.add(new Buzzword(jCas)); break; case "address": collector.add(new Location(jCas)); break; case "abbr": collector.add(new Buzzword(jCas)); break; case "cite": collector.add(new DocumentReference(jCas)); break; default: return; } } }
"linear constraints", JCasUtil.selectByIndex(jCas, Buzzword.class, 0).getCoveredText()); assertEquals("keyword", JCasUtil.selectByIndex(jCas, Buzzword.class, 0).getTags(0)); "natural numbers", JCasUtil.selectByIndex(jCas, Buzzword.class, 1).getCoveredText()); assertEquals( "linear Diophantine equations", JCasUtil.selectByIndex(jCas, Buzzword.class, 2).getCoveredText()); assertEquals( "strict inequations", JCasUtil.selectByIndex(jCas, Buzzword.class, 3).getCoveredText()); assertEquals( "nonstrict inequations", JCasUtil.selectByIndex(jCas, Buzzword.class, 4).getCoveredText()); assertEquals("Upper bounds", JCasUtil.selectByIndex(jCas, Buzzword.class, 5).getCoveredText()); assertEquals("minimal set", JCasUtil.selectByIndex(jCas, Buzzword.class, 6).getCoveredText()); assertEquals( "minimal generating sets", JCasUtil.selectByIndex(jCas, Buzzword.class, 7).getCoveredText()); assertEquals( "minimal supporting set", JCasUtil.selectByIndex(jCas, Buzzword.class, 8).getCoveredText()); assertEquals( "considered types", JCasUtil.selectByIndex(jCas, Buzzword.class, 9).getCoveredText()); assertEquals("mixed types", JCasUtil.selectByIndex(jCas, Buzzword.class, 10).getCoveredText());
@Test public void testMultipleWords() throws Exception { jCas.setDocumentText("Bill and Ben entered the room on a dark and windy night."); processJCas(MONGO, erd, COLLECTION, MONGO_COLL, TYPE, BUZZWORD); assertEquals(1, JCasUtil.select(jCas, Buzzword.class).size()); Buzzword b1 = JCasUtil.selectByIndex(jCas, Buzzword.class, 0); assertEquals("entered the room", b1.getValue()); assertEquals("entered the room", b1.getCoveredText()); }
q2.addToIndexes(); Buzzword b1 = new Buzzword(jCas, 160, 165); b1.addToIndexes(); Buzzword b2 = new Buzzword(jCas, 174, 179); b2.addToIndexes();
/** * @generated * @param jcas JCas to which this Feature Structure belongs * @param begin offset to the begin spot in the SofA * @param end offset to the end spot in the SofA */ public Buzzword(JCas jcas, int begin, int end) { super(jcas); setBegin(begin); setEnd(end); readObject(); }