private static Set<Object> getTarget(@Nullable final Opinion opinion) { if (opinion != null) { final Span<Term> target = opinion.getTargetSpan(); if (target != null && !target.isEmpty()) { return ImmutableSet.copyOf(target.getTargets()); } } return NULL_TERMS; }
private static Set<Object> getExpression(@Nullable final Opinion opinion) { if (opinion != null) { final Span<Term> expr = opinion.getExpressionSpan(); if (expr != null && !expr.isEmpty()) { return ImmutableSet.copyOf(expr.getTargets()); } } return NULL_TERMS; }
public void setTargetSpan(final Span<Term> targetSpan) { if (targetSpan == null || targetSpan.isEmpty()) { this.opinionTarget = null; } else if (this.opinionTarget == null) { this.opinionTarget = new Opinion.OpinionTarget(targetSpan); } else { this.opinionTarget.setSpan(targetSpan); } }
public void setHolderSpan(final Span<Term> holderSpan) { if (holderSpan == null || holderSpan.isEmpty()) { this.opinionHolder = null; } else if (this.opinionHolder == null) { this.opinionHolder = new Opinion.OpinionHolder(holderSpan); } else { this.opinionHolder.setSpan(holderSpan); } }
private static Set<Object> getHolder(@Nullable final Opinion opinion) { if (opinion != null) { final Span<Term> holder = opinion.getHolderSpan(); if (holder != null && !holder.isEmpty()) { return ImmutableSet.copyOf(holder.getTargets()); } final OpinionExpression expr = opinion.getOpinionExpression(); if (expr != null && "implicit".equalsIgnoreCase(expr.getSentimentProductFeature())) { return IMPLICIT; } } return WRITER; // default }
public void setExpressionSpan(final Span<Term> expressionSpan) { if (this.opinionExpression != null) { this.opinionExpression.setSpan(expressionSpan != null ? expressionSpan // : KAFDocument.newTermSpan()); } else if (expressionSpan != null && !expressionSpan.isEmpty()) { this.opinionExpression = new Opinion.OpinionExpression(expressionSpan); } }
public String getStr() { String str = ""; if (!this.span.isEmpty()) { Term target = this.span.getFirstTarget(); str += target.getId() + " " + target.getStr() + " "; } str += ":"; for (Role role : this.roles) { if (!role.span.isEmpty()) { Term roleTarget = role.getSpan().getFirstTarget(); str += " " + role.getSemRole() + "[" + roleTarget.getId() + " " + roleTarget.getStr() + "]"; } } return str; }
@Nullable public static Span<Term> trimSpan(@Nullable final Span<Term> span, final int sentenceID) { if (span == null || span.isEmpty()) { return null; } boolean sameSentence = true; for (final Term term : span.getTargets()) { if (term.getSent() != sentenceID) { sameSentence = false; break; } } if (sameSentence) { return span; } final List<Term> filteredTerms = Lists.newArrayList(); for (final Term term : span.getTargets()) { if (term.getSent() == sentenceID) { filteredTerms.add(term); } } final Span<Term> result = KAFDocument.newTermSpan(filteredTerms); for (final Term head : span.getHeads()) { if (head.getSent() == sentenceID) { result.getHeads().add(head); } } return result; }
public String getStr() { String str = ""; if (!this.span.isEmpty()) { Term target = this.span.getFirstTarget(); str += target.getId() + " " + target.getStr() + " "; } str += ":"; for (Role role : this.roles) { if (!role.span.isEmpty()) { Term roleTarget = role.getSpan().getFirstTarget(); str += " " + role.getSemRole() + "[" + roleTarget.getId() + " " + roleTarget.getStr() + "]"; } } return str; }