public WF getHeadWF() { return this.span.getHead(); }
public Term getHead() { return span.getHead(); }
public WF getHeadWF() { return this.span.getHead(); }
public boolean hasHead() { return (span.getHead() != null); }
public boolean hasHead() { return (span.getHead() != null); }
public Term getHead() { return span.getHead(); }
/** Converts a Span into a Target list */ static List<Target> span2TargetList(Span<Term> span) { List<Target> list = new ArrayList<Target>(); for (Term t : span.getTargets()) { list.add(KAFDocument.createTarget(t, (t==span.getHead()))); } return list; }
/** * Converts a Span into a Target list */ static List<Target> span2TargetList(Span<Term> span) { List<Target> list = new ArrayList<Target>(); for (Term t : span.getTargets()) { list.add(KAFDocument.createTarget(t, (t == span.getHead()))); } return list; }
Coref(Coref coref, HashMap<String, Term> terms) { this.coid = coref.coid; /* Copy references */ String id = coref.getId(); this.mentions = new ArrayList<Span<Term>>(); for (Span<Term> span : coref.getSpans()) { /* Copy span */ List<Term> targets = span.getTargets(); List<Term> copiedTargets = new ArrayList<Term>(); for (Term term : targets) { Term copiedTerm = terms.get(term.getId()); if (copiedTerm == null) { throw new IllegalStateException("Term not found when copying " + id); } copiedTargets.add(copiedTerm); } if (span.hasHead()) { Term copiedHead = terms.get(span.getHead().getId()); this.mentions.add(new Span<Term>(copiedTargets, copiedHead)); } else { this.mentions.add(new Span<Term>(copiedTargets)); } } }
OpinionHolder(OpinionHolder oh, HashMap<String, Term> terms) { /* Copy span */ Span<Term> span = oh.span; List<Term> targets = span.getTargets(); List<Term> copiedTargets = new ArrayList<Term>(); for (Term term : targets) { Term copiedTerm = terms.get(term.getId()); if (copiedTerm == null) { throw new IllegalStateException( "Term not found when copying opinion_holder"); } copiedTargets.add(copiedTerm); } if (span.hasHead()) { Term copiedHead = terms.get(span.getHead().getId()); this.span = new Span<Term>(copiedTargets, copiedHead); } else { this.span = new Span<Term>(copiedTargets); } }
OpinionTarget(OpinionTarget ot, HashMap<String, Term> terms) { /* Copy span */ Span<Term> span = ot.span; List<Term> targets = span.getTargets(); List<Term> copiedTargets = new ArrayList<Term>(); for (Term term : targets) { Term copiedTerm = terms.get(term.getId()); if (copiedTerm == null) { throw new IllegalStateException( "Term not found when copying opinion_target"); } copiedTargets.add(copiedTerm); } if (span.hasHead()) { Term copiedHead = terms.get(span.getHead().getId()); this.span = new Span<Term>(copiedTargets, copiedHead); } else { this.span = new Span<Term>(copiedTargets); } }
OpinionExpression(OpinionExpression oe, HashMap<String, Term> terms) { this.polarity = oe.polarity; this.strength = oe.strength; this.subjectivity = oe.subjectivity; this.sentimentSemanticType = oe.sentimentSemanticType; this.sentimentProductFeature = oe.sentimentProductFeature; /* Copy span */ Span<Term> span = oe.span; List<Term> targets = span.getTargets(); List<Term> copiedTargets = new ArrayList<Term>(); for (Term term : targets) { Term copiedTerm = terms.get(term.getId()); if (copiedTerm == null) { throw new IllegalStateException( "Term not found when copying opinion_expression"); } copiedTargets.add(copiedTerm); } if (span.hasHead()) { Term copiedHead = terms.get(span.getHead().getId()); this.span = new Span<Term>(copiedTargets, copiedHead); } else { this.span = new Span<Term>(copiedTargets); } }
Coref(Coref coref, HashMap<String, Term> terms) { super(coref.getId()); /* Copy references */ String id = coref.getId(); this.mentions = new ArrayList<Span<Term>>(); for (Span<Term> span : coref.getSpans()) { /* Copy span */ List<Term> targets = span.getTargets(); List<Term> copiedTargets = new ArrayList<Term>(); for (Term term : targets) { Term copiedTerm = terms.get(term.getId()); if (copiedTerm == null) { throw new IllegalStateException("Term not found when copying " + id); } copiedTargets.add(copiedTerm); } if (span.hasHead()) { Term copiedHead = terms.get(span.getHead().getId()); this.mentions.add(new Span<Term>(copiedTargets, copiedHead)); } else { this.mentions.add(new Span<Term>(copiedTargets)); } } }
OpinionHolder(final OpinionHolder oh, final HashMap<String, Term> terms) { /* Copy span */ final Span<Term> span = oh.span; final List<Term> targets = span.getTargets(); final List<Term> copiedTargets = new ArrayList<Term>(); for (final Term term : targets) { final Term copiedTerm = terms.get(term.getId()); if (copiedTerm == null) { throw new IllegalStateException("Term not found when copying opinion_holder"); } copiedTargets.add(copiedTerm); } if (span.hasHead()) { final Term copiedHead = terms.get(span.getHead().getId()); this.span = new Span<Term>(copiedTargets, copiedHead); } else { this.span = new Span<Term>(copiedTargets); } this.externalReferences = new ArrayList<ExternalRef>(); for (final ExternalRef externalRef : oh.getExternalRefs()) { this.externalReferences.add(new ExternalRef(externalRef)); } }
OpinionTarget(final OpinionTarget ot, final HashMap<String, Term> terms) { /* Copy span */ final Span<Term> span = ot.span; final List<Term> targets = span.getTargets(); final List<Term> copiedTargets = new ArrayList<Term>(); for (final Term term : targets) { final Term copiedTerm = terms.get(term.getId()); if (copiedTerm == null) { throw new IllegalStateException("Term not found when copying opinion_target"); } copiedTargets.add(copiedTerm); } if (span.hasHead()) { final Term copiedHead = terms.get(span.getHead().getId()); this.span = new Span<Term>(copiedTargets, copiedHead); } else { this.span = new Span<Term>(copiedTargets); } this.externalReferences = new ArrayList<ExternalRef>(); for (final ExternalRef externalRef : ot.getExternalRefs()) { this.externalReferences.add(new ExternalRef(externalRef)); } }
Term copiedHead = terms.get(span.getHead().getId()); this.references.add(new Span<Term>(copiedTargets, copiedHead));
Term copiedHead = terms.get(span.getHead().getId()); this.references.add(new Span<Term>(copiedTargets, copiedHead));
Chunk(Chunk chunk, HashMap<String, Term> terms) { this.cid = chunk.cid; this.phrase = chunk.phrase; this.chunkcase = chunk.chunkcase; /* Copy span */ String id = chunk.getId(); Span<Term> span = chunk.span; List<Term> targets = span.getTargets(); List<Term> copiedTargets = new ArrayList<Term>(); for (Term term : targets) { Term copiedTerm = terms.get(term.getId()); if (copiedTerm == null) { throw new IllegalStateException("Term not found when copying " + id); } copiedTargets.add(copiedTerm); } if (span.hasHead()) { Term copiedHead = terms.get(span.getHead().getId()); this.span = new Span<Term>(copiedTargets, copiedHead); } else { this.span = new Span<Term>(copiedTargets); } }
Chunk(Chunk chunk, HashMap<String, Term> terms) { super(chunk.getId()); this.phrase = chunk.phrase; this.chunkcase = chunk.chunkcase; /* Copy span */ String id = chunk.getId(); Span<Term> span = chunk.span; List<Term> targets = span.getTargets(); List<Term> copiedTargets = new ArrayList<Term>(); for (Term term : targets) { Term copiedTerm = terms.get(term.getId()); if (copiedTerm == null) { throw new IllegalStateException("Term not found when copying " + id); } copiedTargets.add(copiedTerm); } if (span.hasHead()) { Term copiedHead = terms.get(span.getHead().getId()); this.span = new Span<Term>(copiedTargets, copiedHead); } else { this.span = new Span<Term>(copiedTargets); } }
private static <T extends IdentifiableAnnotation> Element spanToDOM(Span<T> span) { Element spanElem = new Element("span"); for ( T target : span.getTargets()) { Element targetElem = new Element("target"); targetElem.setAttribute("id", target.getId()); if (target == span.getHead()) { targetElem.setAttribute("head", "yes"); } spanElem.addContent(targetElem); } return spanElem; }