<commit_before>package graphene.dao;

import graphene.model.query.EntityQuery;
import graphene.services.HyperGraphBuilder;
import graphene.services.PropertyHyperGraphBuilder;

import java.util.List;

/**
 * 
 * @author djue
 * 
 * @param <T>
 *            the object that you can cast to
 */
public interface DocumentGraphParser<T> {

	public boolean parse(Object obj, EntityQuery q);
	public abstract T populateExtraFields(T theEvent);
	public String calculateTotal(T theEvent);

	/**
	 * @return the phgb
	 */
	public HyperGraphBuilder<Object> getPhgb();

	/**<commit_msg>Created some keys for use in storing data to maps.<commit_after>package graphene.dao;

import graphene.model.query.EntityQuery;
import graphene.services.HyperGraphBuilder;
import graphene.services.PropertyHyperGraphBuilder;

import java.util.List;

/**
 * 
 * @author djue
 * 
 * @param <T>
 *            the object that you can cast to
 */
public interface DocumentGraphParser<T> {
	/**
	 * The key for storing the index+1 number of an item from a list. For
	 * example, 1 for the first entity, etc.
	 */
	public static final String NUMBER = "number";

	/**
	 * The key for storing the amount of money involved in the report. Usually
	 * stored at the top level of the report and is pre-formatted.
	 */
	public static final String TOTALAMOUNTSTR = "totalamountinvolved";

	/**
	 * The key for storing a list of dates received in the report. Since there
	 * may be multiple transactions, there can be multiple dates received.
	 */
	public static final String DATES_RECEIVED = "datesreceived";

	/**
	 * The key for storing a list of dates of the events in the report. Since
	 * there may be multiple transactions, there can be multiple dates of
	 * events.
	 */
	public static final String DATES_OF_EVENTS = "datesofevents";
	/**
	 * The key for storing a list of dates of the filings in the report. Since
	 * there may be multiple transactions, there can be multiple dates of
	 * filing.
	 */
	public static final String DATES_FILED = "datesfiled";

	/**
	 * The key for storing the numeric amount of money involved in the report,
	 * in a format that can be sorted and scaled.
	 */
	public static final String TOTALAMOUNTNBR = null;

	/**
	 * The key for storing the label used in displaying the entity.
	 */
	public static final String LABEL = "label";
	/**
	 * The key for storing an address for the entity.
	 */
	public static final String ADDRESS = "address";
	/**
	 * The key for storing a phone number for the entity.
	 */
	public static final String PHONE = "phone";

	public boolean parse(Object obj, EntityQuery q);

	public abstract T populateExtraFields(T theEvent);

	/**
	 * @return the phgb
	 */
	public HyperGraphBuilder<Object> getPhgb();

	/**
{'fraction_non_alphanumeric': 0.08625730994152046, 'fraction_numerical': 0.0007309941520467836, 'mean_word_length': 3.5616666666666665, 'pattern_counts': {'":': 0, '<': 9, '<?xml version=': 0, '>': 9, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '142939', 'n_tokens_mistral': 835, 'n_tokens_neox': 741, 'n_words': 324}