public void process(JCas aJCas) {
    
    int end = 0,start = 0;
    int counter = 0;
    int temp1;
    int temp2;
    String temp3 = null; 
    //String temp4 = null;
    
    //URL base = ClassLoader.getSystemClassLoader().getResource("");
    //temp4 =  base.toString().substring(6);
    File modelFile = new File("lingpipe/ne-en-bio-genetag.HmmChunker");
    
    ConfidenceChunker chunker = null;
    int position = 0;
    try {
      chunker = (ConfidenceChunker)AbstractExternalizable.readObject(modelFile);
    } catch (ClassNotFoundException e) {
      e.printStackTrace();
    } catch (IOException e) {
      e.printStackTrace();
    }
    /**
     *start get document from the ajcas
     *aJCas contains the whole features we want to
     */
    String docText = aJCas.getDocumentText();
    String[] b = docText.split("\n");
    for (int i = 0; i < b.length; i++) 
    {
        if(b[i].length()<14)
          continue;
        temp3 = b[i].substring(0, 14);
        b[i] = b[i].substring(15, b[i].length());
        char[] cs = b[i].toCharArray();
        Iterator<Chunk> it= chunker.nBestChunks(cs,0,cs.length,6);//I use 6-best strategy
        for (int n = 0; it.hasNext(); ++n) 
        {
            Chunk chunk = it.next();
            double conf = Math.pow(2.0,chunk.score());
            if(conf < 0.1) /**
            *I set the threshold to be 0.1,all the data confidence less than 0.1 will be rejected
            */
            {
              continue;
            }
            start = chunk.start();
            end = chunk.end();
            temp1 = calculate(cs,0,start);
            temp2 = calculate(cs,0,end-1);
            String phrase = b[i].substring(start,end);
            Sentence annotation = new Sentence(aJCas);
            //System.out.println(temp3+"|"+(start-temp1)+" "+(end-1-temp2)+"|"+phrase); //for test
            annotation.setBegin(start-temp1);
            annotation.setEnd(end-1-temp2);
            annotation.setTextstring(phrase);
            annotation.setSentenceId(temp3);
            annotation.addToIndexes();
       }
    }
    
 }