public static PearsonDictionaryEntry fromJSON(JSONObject obj) throws JSONException {
		PearsonDictionaryEntry entry = new PearsonDictionaryEntry();
		entry.headword = obj.optString(KEY_PEARSON_HEAD_WORD);
		entry.id = obj.optString(KEY_PEARSON_ID);
		entry.posTag = obj.optString(KEY_PEARSON_POS);
		entry.url = obj.optString(KEY_PEARSON_URL);
		entry.datasets = new ArrayList<String>();
		JSONArray datasets = obj.optJSONArray(KEY_PEARSON_DICT_DATASET);
		if (datasets != null) {
			for (int i = 0; i < datasets.length(); i++) {
				entry.datasets.add(datasets.optString(i));
			}
		}
		entry.senses = new ArrayList<PearsonWordSense>();
		JSONArray senses = obj.optJSONArray(KEY_PEARSON_SENSES);
		if (senses != null) {
			for (int i = 0; i < senses.length(); i++) {
				entry.senses.add(PearsonWordSense.fromJSON(senses.optJSONObject(i)));
			}
		}
		return entry;
	}