当前位置: 首页>>代码示例>>Java>>正文


Java NamedEntity类代码示例

本文整理汇总了Java中org.aksw.gerbil.transfer.nif.data.NamedEntity的典型用法代码示例。如果您正苦于以下问题:Java NamedEntity类的具体用法?Java NamedEntity怎么用?Java NamedEntity使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


NamedEntity类属于org.aksw.gerbil.transfer.nif.data包,在下文中一共展示了NamedEntity类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: exportToNif

import org.aksw.gerbil.transfer.nif.data.NamedEntity; //导入依赖的package包/类
public static void exportToNif(A2WDataset ds, String baseUri, WikipediaInterface wikiApi, OutputStream outputStream) {
	List<org.aksw.gerbil.transfer.nif.Document> documents = new Vector<>();

	for (int i = 0; i < ds.getSize(); i++) {
		String text = ds.getTextInstanceList().get(i);
		org.aksw.gerbil.transfer.nif.Document d = new DocumentImpl(text, baseUri + "/doc" + i);

		for (it.unipi.di.acube.batframework.data.Annotation a : ds.getA2WGoldStandardList().get(i)) {
			String title;
			try {
				title = wikiApi.getTitlebyId(a.getConcept());
			} catch (IOException e) {
				throw new RuntimeException(e);
			}
			d.addMarking(new NamedEntity(a.getPosition(), a.getLength(), getDBPediaURI(title)));
		}
		documents.add(d);
	}
	NIFWriter writer = new TurtleNIFWriter();
	writer.writeNIF(documents, outputStream);
}
 
开发者ID:marcocor,项目名称:smaph,代码行数:22,代码来源:SmaphUtils.java

示例2: annotateDocument

import org.aksw.gerbil.transfer.nif.data.NamedEntity; //导入依赖的package包/类
private boolean annotateDocument(final Document document, final Resource resource) {
	final String label = getEnglishLabel(resource.getURI());
	if (label == null) {
		LOGGER.info("Couldn't find an English label for " + resource.toString() + ". Returning null.");
		return false;
	}
	final String text = document.getText();
	final int pos = text.indexOf(label);
	if (pos < 0) {
		LOGGER.info("Couldn't find the label \"{}\" inside the given text \"{}\". Returning false.", label, text);
		// return false;
	} else {
		document.addMarking(new NamedEntity(pos, label.length(), resource.getURI()));
	}
	return true;
}
 
开发者ID:dice-group,项目名称:BENGAL,代码行数:17,代码来源:SemWeb2NLVerbalizer.java

示例3: performTypeExtraction

import org.aksw.gerbil.transfer.nif.data.NamedEntity; //导入依赖的package包/类
public Document performTypeExtraction(Document document) {
    // extract the surface forms
    // List<List<NamedEntity>> types =
    // surfaceFormExtractor.extractTypeSurfaceForms(document);
    // TypingInfoImpl typingInfo = new TypingInfoImpl();
    // // TODO find a type for every type surface form that has been found
    // List<NamedEntity> typesFound = linkTypes(types, typingInfo);
    // return new TypeExtractionResult(typesFound, typingInfo);
    Map<NamedEntity, List<ExtendedTypedNamedEntity>> extractedTypes = surfaceFormExtractor
            .extractTypeSurfaceForms(document);
    Document resultDoc = new DocumentImpl(document.getText(), document.getDocumentURI());
    List<ExtendedTypedNamedEntity> surfaceForms;
    for (NamedEntity ne : extractedTypes.keySet()) {
        surfaceForms = extractedTypes.get(ne);
        resultDoc.addMarking(typeSearcher.getAllTypes(document, ne, surfaceForms));
        resultDoc.getMarkings().addAll(surfaceForms);
    }
    return resultDoc;
}
 
开发者ID:dice-group,项目名称:Cetus,代码行数:20,代码来源:CetusAnnotator.java

示例4: endElement

import org.aksw.gerbil.transfer.nif.data.NamedEntity; //导入依赖的package包/类
@Override
public void endElement(String uri, String localName, String qName)
		throws SAXException {
	if (qName.equalsIgnoreCase(SENTENCE_ELEMENT)) {
		i++;
		documents.add(new DocumentImpl(sentence.toString(),
				"http://senseval" + i, markings));
		sentence = new StringBuilder();
	} else if (qName.equalsIgnoreCase(INSTANCE_ELEMENT)) {
		markings.add(new NamedEntity(start, length, instanceUri));
		start = sentence.length();
	} else if (qName.equalsIgnoreCase(WF_ELEMENT)) {
		start = sentence.length();

	}
	this.field = 0;
}
 
开发者ID:dice-group,项目名称:gerbil,代码行数:18,代码来源:SensevalSAXHandler.java

示例5: parseJsonStream

import org.aksw.gerbil.transfer.nif.data.NamedEntity; //导入依赖的package包/类
private List<MeaningSpan> parseJsonStream(InputStream in) throws IOException, ParseException {
    List<MeaningSpan> annotations = new ArrayList<>();

    JSONArray namedEntities = (JSONArray) this.jsonParser.parse(new InputStreamReader(in, "UTF-8"));
    JSONObject namedEntity;
    String url;
    long start, length;
    for (Object obj : namedEntities) {
        namedEntity = (JSONObject) obj;

        start = (long) namedEntity.get("start");
        length = (long) namedEntity.get("offset");

        url = (String) namedEntity.get("disambiguatedURL");
        if (url == null) {
            annotations.add(new NamedEntity((int) start, (int) length, new HashSet<String>()));
        } else {
            annotations.add(new NamedEntity((int) start, (int) length, URLDecoder.decode(url, "UTF-8")));
        }
    }

    return annotations;
}
 
开发者ID:dice-group,项目名称:gerbil,代码行数:24,代码来源:AgdistisAnnotator.java

示例6: test

import org.aksw.gerbil.transfer.nif.data.NamedEntity; //导入依赖的package包/类
@Test
public void test() throws GerbilException, IOException {
	SensevalDataset data = new SensevalDataset(this.file);
	data.init();
	List<Document> documents = data.getInstances();
	Document doc = documents.get(docIndex);
	assertEquals(expectedSentence, doc.getText());
	List<Marking> markings = doc.getMarkings();
	String[] marks = new String[markings.size()];
	for(int i=0; i<markings.size();i++){
		NamedEntity entity = ((NamedEntity)markings.get(i));
		marks[i]=doc.getText().substring(entity.getStartPosition(), 
				entity.getStartPosition()+entity.getLength());
	}
	assertArrayEquals(expectedMarkings, 
			marks);
	data.close();

}
 
开发者ID:dice-group,项目名称:gerbil,代码行数:20,代码来源:SensevalDatasetTest.java

示例7: test

import org.aksw.gerbil.transfer.nif.data.NamedEntity; //导入依赖的package包/类
@Test
public void test() {
    ConfidenceScoreEvaluatorDecorator<NamedEntity> decorator = new ConfidenceScoreEvaluatorDecorator<NamedEntity>(
            this, EVALUTION_RESULT_NAME, this);
    EvaluationResultContainer results = new EvaluationResultContainer();
    decorator.evaluate(annotatorResults, new ArrayList<List<NamedEntity>>(), results);
    boolean evalationResultFound = false;
    boolean scoreThresholdFound = false;
    for (EvaluationResult result : results.getResults()) {
        if (EVALUTION_RESULT_NAME.equals(result.getName())) {
            evalationResultFound = true;
            Assert.assertEquals(expectedScore, result.getValue());
        }
        if (ConfidenceScoreEvaluatorDecorator.CONFIDENCE_SCORE_THRESHOLD_RESULT_NAME.equals(result.getName())) {
            scoreThresholdFound = true;
            Assert.assertEquals(expectedThreshold, result.getValue());
        }
    }
    Assert.assertTrue(evalationResultFound);
    if (expectedThreshold != null) {
        Assert.assertTrue(scoreThresholdFound);
    }
}
 
开发者ID:dice-group,项目名称:gerbil,代码行数:24,代码来源:ConfidenceScoreEvaluatorDecoratorTest.java

示例8: evaluate

import org.aksw.gerbil.transfer.nif.data.NamedEntity; //导入依赖的package包/类
@Override
public void evaluate(List<List<NamedEntity>> annotatorResults, List<List<NamedEntity>> goldStandard,
        EvaluationResultContainer results) {
    // all gold standards in this test are empty
    Assert.assertEquals(0, goldStandard.size());
    // simply count all correct named entities
    int score = 0, sum = 0;
    for (List<NamedEntity> nes : annotatorResults) {
        for (NamedEntity ne : nes) {
            if (ne.containsUri(CORRECT_MARKING)) {
                ++score;
            }
            ++sum;
        }
    }
    if (sum == 0) {
        results.addResult(new DoubleEvaluationResult(EVALUTION_RESULT_NAME, 0));
    } else {
        results.addResult(new DoubleEvaluationResult(EVALUTION_RESULT_NAME, (double) score / (double) sum));
    }
}
 
开发者ID:dice-group,项目名称:gerbil,代码行数:22,代码来源:ConfidenceScoreEvaluatorDecoratorTest.java

示例9: compare

import org.aksw.gerbil.transfer.nif.data.NamedEntity; //导入依赖的package包/类
@Override
public int compare(final NamedEntity n1, final NamedEntity n2) {
	final int diff = n1.getLength() - n2.getLength();
	if (diff < 0) {
		// n1 is shorter
		return 1;
	} else if (diff > 0) {
		return -1;
	} else {
		return 0;
	}
}
 
开发者ID:dice-group,项目名称:BENGAL,代码行数:13,代码来源:SemWeb2NLVerbalizer.java

示例10: compare

import org.aksw.gerbil.transfer.nif.data.NamedEntity; //导入依赖的package包/类
@Override
public int compare(NamedEntity n1, NamedEntity n2) {
	int diff = n1.getLength() - n2.getLength();
	if (diff < 0) {
		// n1 is shorter
		return 1;
	} else if (diff > 0) {
		return -1;
	} else {
		return 0;
	}
}
 
开发者ID:dice-group,项目名称:BENGAL,代码行数:13,代码来源:Paraphrasing.java

示例11: compare

import org.aksw.gerbil.transfer.nif.data.NamedEntity; //导入依赖的package包/类
/**
 * Sorts Named entities descending by their length.
 */
@Override
public int compare(NamedEntity n1, NamedEntity n2) {
	int diff = n1.getLength() - n2.getLength();
	if (diff < 0) {
		// n1 is shorter
		return 1;
	} else if (diff > 0) {
		return -1;
	} else {
		return 0;
	}
}
 
开发者ID:dice-group,项目名称:BENGAL,代码行数:16,代码来源:ParaphraserImpl.java

示例12: test

import org.aksw.gerbil.transfer.nif.data.NamedEntity; //导入依赖的package包/类
@Test
public void test() {
	ParaphraserImpl paraphraser = new ParaphraserImpl(this);
	Document newDocument = paraphraser.getParaphrase(document);

	Assert.assertEquals(expectedDocument.getDocumentURI(), newDocument.getDocumentURI());
	Assert.assertEquals(expectedDocument.getText(), newDocument.getText());
	StartPosBasedComparator comparator = new StartPosBasedComparator();
	List<NamedEntity> expectedNes = expectedDocument.getMarkings(NamedEntity.class);
	List<NamedEntity> nes = newDocument.getMarkings(NamedEntity.class);
	Collections.sort(expectedNes, comparator);
	Collections.sort(nes, comparator);
	Assert.assertArrayEquals(nes.toArray(), expectedNes.toArray());
}
 
开发者ID:dice-group,项目名称:BENGAL,代码行数:15,代码来源:ParaphraserImplTest.java

示例13: getAllTypes

import org.aksw.gerbil.transfer.nif.data.NamedEntity; //导入依赖的package包/类
@Override
public TypedNamedEntity getAllTypes(Document document, NamedEntity ne, List<ExtendedTypedNamedEntity> surfaceForms) {
    TypedNamedEntity tne = new TypedNamedEntity(ne.getStartPosition(), ne.getLength(), ne.getUris(),
            new HashSet<String>());
    for(ExtendedTypedNamedEntity surfaceForm : surfaceForms) {
        tne.getTypes().addAll(surfaceForm.getUris());
    }

    try {
        // request FOX
        Response response = Request
                .Post(FOX_SERVICE)
                .addHeader("Content-type", "application/json")
                .addHeader("Accept-Charset", "UTF-8")
                .body(new StringEntity(new JSONObject().put("input", document.getText()).put("type", "text")
                        .put("task", "ner").put("output", "JSON-LD").toString(), ContentType.APPLICATION_JSON))
                .execute();

        HttpResponse httpResponse = response.returnResponse();
        HttpEntity entry = httpResponse.getEntity();

        String content = IOUtils.toString(entry.getContent(), "UTF-8");
        EntityUtils.consume(entry);

        // parse results
        JSONObject outObj = new JSONObject(content);
        if (outObj.has("@graph")) {

            JSONArray graph = outObj.getJSONArray("@graph");
            for (int i = 0; i < graph.length(); i++) {
                parseType(graph.getJSONObject(i), tne, surfaceForms);
            }
        } else {
            parseType(outObj, tne, surfaceForms);
        }
    } catch (Exception e) {
        LOGGER.error("Got an exception while communicating with the FOX web service.", e);
    }
    return tne;
}
 
开发者ID:dice-group,项目名称:Cetus,代码行数:41,代码来源:FoxBasedTypeSearcher.java

示例14: extractTypeSurfaceForms

import org.aksw.gerbil.transfer.nif.data.NamedEntity; //导入依赖的package包/类
/**
 * 
 * 
 * @param document
 * @return
 */
public synchronized Map<NamedEntity, List<ExtendedTypedNamedEntity>> extractTypeSurfaceForms(Document nifDocument) {
    // Document tmDocument = createDocument(nifDocument);
    // tmDocument = preprocessor.processDocument(tmDocument);
    // return tmDocument.getProperty(TypeSurfaceForms.class).get();
    Annotation document = new Annotation(nifDocument.getText());
    preprocessDocument(document);
    return getTypeSurfaceForms(document, nifDocument.getMarkings(NamedEntity.class));
}
 
开发者ID:dice-group,项目名称:Cetus,代码行数:15,代码来源:CetusSurfaceFormExtractor.java

示例15: getTypeSurfaceForms

import org.aksw.gerbil.transfer.nif.data.NamedEntity; //导入依赖的package包/类
private Map<NamedEntity, List<ExtendedTypedNamedEntity>> getTypeSurfaceForms(Annotation document,
        List<NamedEntity> list) {
    Map<NamedEntity, List<ExtendedTypedNamedEntity>> results = new HashMap<NamedEntity, List<ExtendedTypedNamedEntity>>();
    for (NamedEntity ne : list) {
        results.put(ne, getTypeSurfaceForms(document, ne));
    }
    return results;
}
 
开发者ID:dice-group,项目名称:Cetus,代码行数:9,代码来源:CetusSurfaceFormExtractor.java


注:本文中的org.aksw.gerbil.transfer.nif.data.NamedEntity类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。