Package org.mitre.medfacts.zoner

Examples of org.mitre.medfacts.zoner.LineAndTokenPosition


          AnnotationIndex<Annotation> aIndex = jcas.getAnnotationIndex(assertionType);
          for (Annotation a : aIndex) {
            Assertion ai = (Assertion) a;
            int begin = ai.getBegin();
            int end = ai.getEnd();
            LineAndTokenPosition begPos = converter.convert(begin);
            LineAndTokenPosition endPos = converter.convert(end);
            writer.println("c=\"" + sofaString.substring(begin,end) + "\" " + begPos.getLine() + ":" + begPos.getTokenOffset() +
                " " + endPos.getLine() + ":" + endPos.getTokenOffset() + "||t=\"problem\"||a=\"" + ai.getAssertionType() + "\"");
          }
          writer.close();
        } catch (Exception e) {
          throw new RuntimeException(e);
          } finally {
View Full Code Here


      jcas.setSofaDataString(contents, "");
      int sentNum = 0;
      int tokNum = 0;
      for (int i=0; i < tokenArrays.length; i++) {
        Sentence sent = new Sentence(jcas);
        LineAndTokenPosition sentStart = new LineAndTokenPosition();
        sentStart.setLine(i+1);
        sentStart.setTokenOffset(0);
        LineAndTokenPosition sentEnd = new LineAndTokenPosition();
        sentEnd.setLine(i+1);
        sentEnd.setTokenOffset(tokenArrays[i].length-1);
        LineTokenToCharacterOffsetConverter.BeginAndEndCharacterOffsetPair sStart = converter.convert(sentStart);
        LineTokenToCharacterOffsetConverter.BeginAndEndCharacterOffsetPair sEnd = converter.convert(sentEnd);
        if ((sStart == null) || (sEnd == null)) {
          sent.setBegin(0);
          sent.setEnd(0);
          sent.setSentenceNumber(sentNum);
        } else {
          sent.setBegin(sStart.getBegin()); // get begin of first token
          sent.setEnd(sEnd.getEnd() + 1); // get end of last token
          sent.setSentenceNumber(sentNum);
        }
        sentNum++;
        sent.addToIndexes();
        for (int j=0; j < tokenArrays[i].length; j++) {
          WordToken tok = new WordToken(jcas);
          LineAndTokenPosition word = new LineAndTokenPosition();
          word.setLine(i+1);
          word.setTokenOffset(j);
          LineTokenToCharacterOffsetConverter.BeginAndEndCharacterOffsetPair tPos = converter.convert(word);
          if (tPos == null) {
            tok.setBegin(0);
            tok.setEnd(1);
          } else {
            tok.setBegin(tPos.getBegin());
            tok.setEnd(tPos.getEnd() + 1);
          }
          tok.setTokenNumber(tokNum);
          tokNum++; 
          tok.addToIndexes();
        }
      }
      for (Annotation a : assertions) {
        Concept assertion = new Concept(jcas);
        LineAndTokenPosition assertionStart = new LineAndTokenPosition();
        LineAndTokenPosition assertionEnd = new LineAndTokenPosition();
        assertionStart.setLine(a.getBegin().getLine());
        assertionStart.setTokenOffset(a.getBegin().getTokenOffset());
        assertionEnd.setLine(a.getEnd().getLine());
        assertionEnd.setTokenOffset(a.getEnd().getTokenOffset());
        assertion.setBegin(converter.convert(assertionStart).getBegin());
        assertion.setEnd(converter.convert(assertionEnd).getEnd() + 1);
        assertion.setConceptType("PROBLEM");
        assertion.addToIndexes();
      }
View Full Code Here

    Annotation beginTokenAnnotation = beginTokenInSentenceIterator.next();
    BaseToken beginToken = (BaseToken)beginTokenAnnotation;
    int beginTokenNumber = beginToken.getTokenNumber();
    int beginTokenWordNumber = beginTokenNumber - firstTokenInSentenceNumber;
   
    LineAndTokenPosition b = new LineAndTokenPosition();
    b.setLine(lineNumber);
    b.setTokenOffset(beginTokenWordNumber);

    return b;
  }
View Full Code Here

    int endTokenNumber = endToken.getTokenNumber();
    int endTokenWordNumber = endTokenNumber - firstTokenInSentenceNumber;
   

    ArrayList<LineAndTokenPosition> list = new ArrayList<LineAndTokenPosition>();
    LineAndTokenPosition b = new LineAndTokenPosition();
    b.setLine(lineNumber);
    b.setTokenOffset(beginTokenWordNumber);
    list.add(b);
    LineAndTokenPosition e = new LineAndTokenPosition();
    e.setLine(lineNumber);
    e.setTokenOffset(endTokenWordNumber);
    System.out.println("Adding lineTokenEnding " + lineNumber + " offset = " + endTokenWordNumber);
    list.add(e);
    return list;
  }
View Full Code Here

TOP

Related Classes of org.mitre.medfacts.zoner.LineAndTokenPosition

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.