diff --git a/pom.xml b/pom.xml index 27ad285..18d4114 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ <groupId>pl.waw.ipipan.zil.nkjp</groupId> <artifactId>teiapi</artifactId> - <version>1.0</version> + <version>1.1</version> <name>TEI API</name> <url>http://zil.ipipan.waw.pl/TeiAPI</url> diff --git a/src/main/java/pl/waw/ipipan/zil/nkjp/teiapi/api/entities/EntitiesFactory.java b/src/main/java/pl/waw/ipipan/zil/nkjp/teiapi/api/entities/EntitiesFactory.java index 86f061b..af0d95c 100644 --- a/src/main/java/pl/waw/ipipan/zil/nkjp/teiapi/api/entities/EntitiesFactory.java +++ b/src/main/java/pl/waw/ipipan/zil/nkjp/teiapi/api/entities/EntitiesFactory.java @@ -83,6 +83,6 @@ public abstract class EntitiesFactory { List<TEIMorph> morphs, boolean isZeroSubject); public abstract TEICoreference createCoreference(String id, String type, - String dominant, List<TEIMention> mentions, TEIMention sourceMention); + String dominant, String facet, List<TEIMention> mentions, TEIMention sourceMention); } diff --git a/src/main/java/pl/waw/ipipan/zil/nkjp/teiapi/api/entities/TEICoreference.java b/src/main/java/pl/waw/ipipan/zil/nkjp/teiapi/api/entities/TEICoreference.java index f283c7b..9fe6801 100644 --- a/src/main/java/pl/waw/ipipan/zil/nkjp/teiapi/api/entities/TEICoreference.java +++ b/src/main/java/pl/waw/ipipan/zil/nkjp/teiapi/api/entities/TEICoreference.java @@ -15,6 +15,8 @@ public interface TEICoreference extends TEIEntity { String getType(); String getDominant(); + + String getFacet(); boolean isIdent(); diff --git a/src/main/java/pl/waw/ipipan/zil/nkjp/teiapi/impl/entities/EntitiesFactoryImpl.java b/src/main/java/pl/waw/ipipan/zil/nkjp/teiapi/impl/entities/EntitiesFactoryImpl.java index f39225e..a10b79e 100644 --- a/src/main/java/pl/waw/ipipan/zil/nkjp/teiapi/impl/entities/EntitiesFactoryImpl.java +++ b/src/main/java/pl/waw/ipipan/zil/nkjp/teiapi/impl/entities/EntitiesFactoryImpl.java @@ -135,8 +135,8 @@ public class EntitiesFactoryImpl extends EntitiesFactory { @Override public TEICoreference createCoreference(String id, String type, - String dominant, List<TEIMention> mentions, TEIMention sourceMention) { - return new TEICoreferenceImpl(id, type, dominant, mentions, + String dominant, String facet, List<TEIMention> mentions, TEIMention sourceMention) { + return new TEICoreferenceImpl(id, type, dominant, facet, mentions, sourceMention); } diff --git a/src/main/java/pl/waw/ipipan/zil/nkjp/teiapi/impl/entities/TEICoreferenceImpl.java b/src/main/java/pl/waw/ipipan/zil/nkjp/teiapi/impl/entities/TEICoreferenceImpl.java index 537dd0a..5d482b4 100644 --- a/src/main/java/pl/waw/ipipan/zil/nkjp/teiapi/impl/entities/TEICoreferenceImpl.java +++ b/src/main/java/pl/waw/ipipan/zil/nkjp/teiapi/impl/entities/TEICoreferenceImpl.java @@ -14,14 +14,16 @@ public class TEICoreferenceImpl implements TEICoreference { private String id; private String type; private String dominant; + private String facet; private List<TEIMention> mentions; private TEIMention sourceMention; - public TEICoreferenceImpl(String id, String type, String dominant, + public TEICoreferenceImpl(String id, String type, String dominant, String facet, List<TEIMention> mentions, TEIMention sourceMention) { this.id = id; this.type = type; this.dominant = dominant; + this.facet = facet; this.mentions = mentions; this.sourceMention = sourceMention; } @@ -55,6 +57,11 @@ public class TEICoreferenceImpl implements TEICoreference { public String getDominant() { return dominant; } + + @Override + public String getFacet() { + return facet; + } @Override public boolean isIdent() { diff --git a/src/main/java/pl/waw/ipipan/zil/nkjp/teiapi/impl/io/read/CoreferenceReader.java b/src/main/java/pl/waw/ipipan/zil/nkjp/teiapi/impl/io/read/CoreferenceReader.java index d38f93d..c6f63e1 100644 --- a/src/main/java/pl/waw/ipipan/zil/nkjp/teiapi/impl/io/read/CoreferenceReader.java +++ b/src/main/java/pl/waw/ipipan/zil/nkjp/teiapi/impl/io/read/CoreferenceReader.java @@ -59,6 +59,7 @@ public class CoreferenceReader extends BodyReader { String id; String type; String dominant = null; + String facet = null; List<TEIMention> mentions = new ArrayList<>(); TEIMention sourceMention = null; @@ -76,6 +77,9 @@ public class CoreferenceReader extends BodyReader { if (in.isStartF("dominant")) { dominant = in.readFValue(); in.nextTag(); + } else if (in.isStartF("facet")) { + facet = in.readFValue(); + in.nextTag(); } in.requireEnd(); // fs coreference @@ -98,7 +102,7 @@ public class CoreferenceReader extends BodyReader { } in.requireEnd(); // seg - return new TEICoreferenceImpl(id, type, dominant, mentions, + return new TEICoreferenceImpl(id, type, dominant, facet, mentions, sourceMention); } } diff --git a/src/main/java/pl/waw/ipipan/zil/nkjp/teiapi/impl/io/write/CoreferenceWriter.java b/src/main/java/pl/waw/ipipan/zil/nkjp/teiapi/impl/io/write/CoreferenceWriter.java index 8ed9b58..7fe6ede 100644 --- a/src/main/java/pl/waw/ipipan/zil/nkjp/teiapi/impl/io/write/CoreferenceWriter.java +++ b/src/main/java/pl/waw/ipipan/zil/nkjp/teiapi/impl/io/write/CoreferenceWriter.java @@ -58,6 +58,12 @@ public class CoreferenceWriter { out.attr("name", "dominant"); out.attr("fVal", coreference.getDominant()); } + + if (coreference.getFacet() != null) { + out.startEmpty("f"); + out.attr("name", "facet"); + out.attr("fVal", coreference.getFacet()); + } out.end(); // fs coreference