public static String getFeature(String line) throws IOException {
		BufferedReader br = new BufferedReader(new FileReader(
				Parameters.searchQuery));
		Map<String, Integer> queryVector = new HashMap<String, Integer>();
		String query = "";
		while ((query = br.readLine()) != null) {
			
			Matcher m = Pattern.compile("\\w+Mention\\b").matcher(query);
			while (m.find()) {
				queryVector.put(m.group(), 1);
			}
		}
		br.close();
		String[] docId = line.split("\\s+");
		Map<String, Integer> docVector = new HashMap<String, Integer>();
		try {
			File fXmlFile = new File(Parameters.searchDocument);
			DocumentBuilderFactory dbFactory = DocumentBuilderFactory
					.newInstance();
			DocumentBuilder dBuilder = dbFactory.newDocumentBuilder();
			Document doc = dBuilder.parse(fXmlFile);

			doc.getDocumentElement().normalize();

			NodeList nList = doc.getElementsByTagName("doc");
			for (int temp = 0; temp < nList.getLength(); temp++) {

				Node nNode = nList.item(temp);

				if (nNode.getNodeType() == Node.ELEMENT_NODE) {

					Element eElement = (Element) nNode;

					if (docId[1].trim().equals(
							eElement.getElementsByTagName("field").item(0)
									.getTextContent())) {
						String about = eElement.getElementsByTagName("field")
								.item(5).getTextContent();
						String[] aboutMentions = about.split(";");
						for(int i=0;i<aboutMentions.length; i++){
							docVector.put(aboutMentions[i].trim(), 1);
						}

					}

				}
			}
		} catch (Exception e) {
			e.printStackTrace();
		}
        
		double vsm = computeCosineSimilarity(queryVector, docVector);
		return ""+vsm;
	}