public static List<String> expandWithThesaurusBroader(String node)
			throws JSONException {
		List<String> resultsList = new ArrayList<String>();
		List<String> expandedNodes = new ArrayList<String>();
		List<String> expandedTerms = new ArrayList<String>();
		List<String> broader = searchBroader(node);
		List<String> toExpand = broader;
		expandedNodes.add(node);
		expandedNodes.addAll(toExpand);
		List<String> queryList = toExpand;

		// List of concept nodes are expanded into their narrower nodes
		for (int i = 1; i <= 10; i++) {
			if (queryList.size() > 0) {
				for (int a = 0; a < queryList.size(); a++) {
					resultsList.addAll(searchBroader(queryList.get(a)));
				}
			} else {
				break;
			}
			queryList.clear();
			queryList.addAll(resultsList);
			expandedNodes.addAll(resultsList);
			resultsList.clear();
		}
		AuxiliaryMethods.removeDuplicates(expandedNodes);
		// Here we extract the labeled nodes corresponding for each concept
		// node and the preferred and alternative terms of the labeled nodes
		for (int idx = 0; idx < expandedNodes.size(); idx++) {
			List<String> expanded = extractTerms(getLabeledNodes(expandedNodes
					.get(idx)));
			expandedTerms.addAll(expanded);
		}
		AuxiliaryMethods.removeDuplicates(expandedTerms);
		return expandedTerms;
	}