From 5644701cfdb8646cd2df57ea55cd166dcca0c314 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A9r=C3=B4me=20Euzenat?= <Jerome.Euzenat@inria.fr> Date: Sat, 10 Mar 2012 15:53:15 +0000 Subject: [PATCH] - implemented XML/RDF output --- .../exmo/align/impl/eval/DiffEvaluator.java | 27 ++++++++++++++++--- 1 file changed, 23 insertions(+), 4 deletions(-) diff --git a/src/fr/inrialpes/exmo/align/impl/eval/DiffEvaluator.java b/src/fr/inrialpes/exmo/align/impl/eval/DiffEvaluator.java index 4307fa20..c4128e68 100644 --- a/src/fr/inrialpes/exmo/align/impl/eval/DiffEvaluator.java +++ b/src/fr/inrialpes/exmo/align/impl/eval/DiffEvaluator.java @@ -158,8 +158,7 @@ public class DiffEvaluator extends BasicEvaluator implements Evaluator { return result; } - - private String writeCellsHTML(Set<Cell> set, String what) { + private String writeCellsHTML( Set<Cell> set, String what ) { String result = ""; try { result += " <dt> " + what + "</dt><dd>\n"; @@ -173,10 +172,30 @@ public class DiffEvaluator extends BasicEvaluator implements Evaluator { return result; } + public void printAsCells ( String what, Set<Cell> set, PrintWriter writer ) { + writer.println(" <"+what+" rdf:parseType=\"Collection\">"); + for ( Cell c : truepositive ){ + try { + writer.println(" <Cell>"); + writer.println(" <entity1 rdf:resource=\""+c.getObject1AsURI()+"\">"); + writer.println(" <entity2 rdf:resource=\""+c.getObject2AsURI()+"\">"); + writer.println(" <relation>"+c.getRelation().getRelation()+"</relation>"); + writer.println(" </Cell>"); + } catch (AlignmentException e) { + e.printStackTrace(); + } + } + writer.println(" </"+what+">"); + } - public void write(PrintWriter writer) throws java.io.IOException { - // Cassia: here you can put your display as XML But this is not compulsory + public void write( PrintWriter writer ) throws java.io.IOException { writer.println("<?xml version='1.0' encoding='utf-8' standalone='yes'?>"); + writer.println("<DiffAlignment>"); + // Should be good to add the reference alignments + printAsCells( "truePositive", truepositive, writer ); + printAsCells( "falsePositive", falsepositive, writer ); + printAsCells( "falseNegative", falsenegative, writer ); + writer.println("</DiffAlignment>"); } public Properties getResults() { -- GitLab