// Path: src/main/java/unsw/curation/api/domain/ExtractNamedEntity.java
// public class ExtractNamedEntity {
// 
// 	public ExtractNamedEntity()
// 	{
// 		
// 	}
// 	
// 	 public String word;
// 	 public String ner;
// 	 public int position;
// 	/*public ExtractNamedEntity(String word,String ner)
// 	{
// 		this.word=word;
// 		this.ner=ner;
// 	}*/
// 	public ExtractNamedEntity(String word,String ner,int position)
// 	{
// 		this.word=word;
// 		this.ner=ner;
// 		this.position=position;
// 	}
// 	 public int getPosition() {
// 		return position;
// 	}
// 	public void setPosition(int position) {
// 		this.position = position;
// 	}	 
// 	 public void setWord(String word)
// 	 {
// 		 this.word=word;
// 	 }
// 	 public String getWord()
// 	 {
// 		 return this.word;
// 	 }
// 	 
// 	 public void setNer(String ner)
// 	 {
// 		 this.ner=ner;
// 	 }
// 	 public String getNer()
// 	 {
// 		 return this.ner;
// 	 }
// }
// 
// Path: src/main/java/unsw/curation/api/domain/abstraction/INamedEntity.java
// public interface INamedEntity {
// 
// 	List<ExtractNamedEntity>ExtractNamedEntityFile(File filePath) throws Exception;
// 	//List<ExtractNamedEntity>ExtractNamedEntity(boolean useRegexNer,List<String> lstData) throws Exception;
// 	List<ExtractNamedEntity> ExtractNamedEntitySentence(String inputSentence) throws Exception;
// 	List<String> ExtractOrganization(String inputSentence) throws URISyntaxException, Exception;
// 	List<String> ExtractPerson(String inputSentence)throws URISyntaxException, Exception;
// 	List<String> ExtractLocation(String inputSentence)throws URISyntaxException, Exception;
// 	List<String> ExtractDate(String inputSentence)throws URISyntaxException, Exception;
// 	List<String> ExtractMoney(String inputSentence)throws URISyntaxException, Exception;
// 	List<String> ExtractCity(String inputSentence)throws URISyntaxException, Exception;
// 	List<String> ExtractState(String inputSentence)throws URISyntaxException, Exception;
// 	List<String> ExtractCountry(String inputSentence)throws URISyntaxException, FileNotFoundException, IOException, Exception;
// 	List<String> ExtractContinent(String inputSentence)throws URISyntaxException, Exception;
// 	List<String> ExtractCrime(String inputSentence)throws URISyntaxException, Exception;
// 	List<String> ExtractSport(String inputSentence)throws URISyntaxException, Exception;
// 	List<String> ExtractHoliday(String inputSentence)throws URISyntaxException, Exception;
// 	List<String> ExtractCompany(String inputSentence)throws URISyntaxException, Exception;
// 	List<String> ExtractNaturalDisaster(String inputSentence)throws URISyntaxException, Exception;
// 	List<String> ExtractDrug(String inputSentence)throws URISyntaxException, Exception;
// 	List<String> ExtractProduct(String inputSentence)throws URISyntaxException, Exception;
// 	//List<String> ExtractRadioProgram(String inputSentence)throws URISyntaxException, Exception;
// 	//List<String> ExtractRadioStation(String inputSentence)throws URISyntaxException, Exception;
// 	//List<String> ExtractTvShows(String inputSentence)throws URISyntaxException;
// 	List<String> ExtractMedia(String inputSentence)throws URISyntaxException, Exception;
// 	List<String> ExtractOperatingSystem(String inputSentence)throws URISyntaxException, Exception;
// 	List<String> ExtractDegree(String inputSentence)throws URISyntaxException, Exception;
// 	List<String> ExtractSportEvents(String inputSentence)throws URISyntaxException, Exception;
// 	//List<String> ExtractRegion(String inputSentence)throws URISyntaxException;
// 	//List<String> ExtractGeographicFeature(String inputSentence)throws URISyntaxException;
// 	List<String> ReadRawData(File filePath) throws Exception;
// 	
// 		
// 	
// }


import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
import java.net.URISyntaxException;
import java.util.ArrayList;
import java.util.List;
import java.util.Properties;
import java.util.stream.Collectors;
import edu.stanford.nlp.ling.CoreLabel;
import edu.stanford.nlp.ling.CoreAnnotations.NamedEntityTagAnnotation;
import edu.stanford.nlp.ling.CoreAnnotations.SentencesAnnotation;
import edu.stanford.nlp.ling.CoreAnnotations.TextAnnotation;
import edu.stanford.nlp.ling.CoreAnnotations.TokensAnnotation;
import edu.stanford.nlp.pipeline.Annotation;
import edu.stanford.nlp.pipeline.StanfordCoreNLP;
import edu.stanford.nlp.util.CoreMap;
import unsw.curation.api.domain.ExtractNamedEntity;
import unsw.curation.api.domain.abstraction.INamedEntity;

package unsw.curation.api.extractnamedentity;



public class ExtractEntityFile implements INamedEntity {

	@Override

// Path: src/main/java/unsw/curation/api/domain/ExtractNamedEntity.java
// public class ExtractNamedEntity {
// 
// 	public ExtractNamedEntity()
// 	{
// 		
// 	}
// 	
// 	 public String word;
// 	 public String ner;
// 	 public int position;
// 	/*public ExtractNamedEntity(String word,String ner)
// 	{
// 		this.word=word;
// 		this.ner=ner;
// 	}*/
// 	public ExtractNamedEntity(String word,String ner,int position)
// 	{
// 		this.word=word;
// 		this.ner=ner;
// 		this.position=position;
// 	}
// 	 public int getPosition() {
// 		return position;
// 	}
// 	public void setPosition(int position) {
// 		this.position = position;
// 	}	 
// 	 public void setWord(String word)
// 	 {
// 		 this.word=word;
// 	 }
// 	 public String getWord()
// 	 {
// 		 return this.word;
// 	 }
// 	 
// 	 public void setNer(String ner)
// 	 {
// 		 this.ner=ner;
// 	 }
// 	 public String getNer()
// 	 {
// 		 return this.ner;
// 	 }
// }
// 
// Path: src/main/java/unsw/curation/api/domain/abstraction/INamedEntity.java
// public interface INamedEntity {
// 
// 	List<ExtractNamedEntity>ExtractNamedEntityFile(File filePath) throws Exception;
// 	//List<ExtractNamedEntity>ExtractNamedEntity(boolean useRegexNer,List<String> lstData) throws Exception;
// 	List<ExtractNamedEntity> ExtractNamedEntitySentence(String inputSentence) throws Exception;
// 	List<String> ExtractOrganization(String inputSentence) throws URISyntaxException, Exception;
// 	List<String> ExtractPerson(String inputSentence)throws URISyntaxException, Exception;
// 	List<String> ExtractLocation(String inputSentence)throws URISyntaxException, Exception;
// 	List<String> ExtractDate(String inputSentence)throws URISyntaxException, Exception;
// 	List<String> ExtractMoney(String inputSentence)throws URISyntaxException, Exception;
// 	List<String> ExtractCity(String inputSentence)throws URISyntaxException, Exception;
// 	List<String> ExtractState(String inputSentence)throws URISyntaxException, Exception;
// 	List<String> ExtractCountry(String inputSentence)throws URISyntaxException, FileNotFoundException, IOException, Exception;
// 	List<String> ExtractContinent(String inputSentence)throws URISyntaxException, Exception;
// 	List<String> ExtractCrime(String inputSentence)throws URISyntaxException, Exception;
// 	List<String> ExtractSport(String inputSentence)throws URISyntaxException, Exception;
// 	List<String> ExtractHoliday(String inputSentence)throws URISyntaxException, Exception;
// 	List<String> ExtractCompany(String inputSentence)throws URISyntaxException, Exception;
// 	List<String> ExtractNaturalDisaster(String inputSentence)throws URISyntaxException, Exception;
// 	List<String> ExtractDrug(String inputSentence)throws URISyntaxException, Exception;
// 	List<String> ExtractProduct(String inputSentence)throws URISyntaxException, Exception;
// 	//List<String> ExtractRadioProgram(String inputSentence)throws URISyntaxException, Exception;
// 	//List<String> ExtractRadioStation(String inputSentence)throws URISyntaxException, Exception;
// 	//List<String> ExtractTvShows(String inputSentence)throws URISyntaxException;
// 	List<String> ExtractMedia(String inputSentence)throws URISyntaxException, Exception;
// 	List<String> ExtractOperatingSystem(String inputSentence)throws URISyntaxException, Exception;
// 	List<String> ExtractDegree(String inputSentence)throws URISyntaxException, Exception;
// 	List<String> ExtractSportEvents(String inputSentence)throws URISyntaxException, Exception;
// 	//List<String> ExtractRegion(String inputSentence)throws URISyntaxException;
// 	//List<String> ExtractGeographicFeature(String inputSentence)throws URISyntaxException;
// 	List<String> ReadRawData(File filePath) throws Exception;
// 	
// 		
// 	
// }


// Path: src/main/java/unsw/curation/api/extractnamedentity/ExtractEntityFile.java
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
import java.net.URISyntaxException;
import java.util.ArrayList;
import java.util.List;
import java.util.Properties;
import java.util.stream.Collectors;
import edu.stanford.nlp.ling.CoreLabel;
import edu.stanford.nlp.ling.CoreAnnotations.NamedEntityTagAnnotation;
import edu.stanford.nlp.ling.CoreAnnotations.SentencesAnnotation;
import edu.stanford.nlp.ling.CoreAnnotations.TextAnnotation;
import edu.stanford.nlp.ling.CoreAnnotations.TokensAnnotation;
import edu.stanford.nlp.pipeline.Annotation;
import edu.stanford.nlp.pipeline.StanfordCoreNLP;
import edu.stanford.nlp.util.CoreMap;
import unsw.curation.api.domain.ExtractNamedEntity;
import unsw.curation.api.domain.abstraction.INamedEntity;

package unsw.curation.api.extractnamedentity;



public class ExtractEntityFile implements INamedEntity {

	@Override

	public List<ExtractNamedEntity> ExtractNamedEntityFile(File filePath) throws Exception {
