Difference between revisions of "XSearchLink Specification"
(→The 'Category' Class) |
(→The 'XSearchLink' Class) |
||
Line 130: | Line 130: | ||
− | = The ' | + | = The 'XLink' Class = |
void setEntityMiningComponent (); | void setEntityMiningComponent (); | ||
− | + | void retrieveEntities (String content, HashSet<String> acceptedCategoryNames); | |
+ | |||
+ | void matchEntities (); | ||
+ | |||
+ | File storeMatchings (String filename); | ||
+ | |||
+ | void storeMatchings (File folder, String filename); | ||
+ | |||
+ | void retrieveIncomingProperties (); | ||
+ | |||
+ | void retrieveOutcomingProperties (); | ||
+ | |||
+ | void retrieveAllProperties (); | ||
+ | |||
+ | ArrayList<Entity> getEntities (); |
Revision as of 12:55, 16 June 2013
Client Example
EntityMiningComponent emc = new GateEntityMiningComponent("component_path_folder");
emc.startup(); // load entity mining tool, the categories that already exist, etc.
emc.printAvailableCategories();
XLink xlink = new XLink();
xlink.setEntityMiningComponent(emc);
HashSet<String> acceptedCategoryNames = new HashSet<String>();
acceptedCategoryNames.add("Species");
acceptedCategoryNames.add("WaterAreas");
TextExtractor extractor = new WebPageTextExtractor("http://en.wikipedia.org/wiki/Fisheries");
String content = extractor.extractText();
xlink.retrieveEntities(content, acceptedCategoryNames);
xlink.matchEntities();
ArrayList<Entity> entities = xlink.getEntities();
for (Entity entity : entities) {
System.out.println("Entity name: " + entity.getName());
System.out.println("Category: " + entity.getCategoryName());
System.out.println("Matching URIs: " + entity.getMatchingURIs());
System.out.println("-----");
}
xlink.storeMatchings(new File("folder_path"), "filename");
emc.shutdown(); // free memory
// add a new category to the component //
emc.startup();
emc.addNewCategory("shark", "url_of_sparql_endpoint", "uri_of_resource_class"); // throws CategoryAlreadyExistException, NotASparqlEndpointException, NotAURIException
acceptedCategoryNames.add("shark");
xlink.retrieveEntities(content, acceptedCategoryNames);
xlink.matchEntities();
ArrayList<Entity> entities = xlink.getEntities();
emc.shutdown(); // free memory
The 'Entity' Class
String getName ();
String getCategoryName ();
HashSet<String> getMatchingURIs ();
double getRank ();
HashMap<String, String> getProperties ();
void setName (String name);
void setCategoryName (String categoryName);
void setMatchingURIs(HashSet<String> matchingURIs);
void addMatchingURI (String uri);
void setRank (double rank);
void setProperties (HashMap<String, String> properties);
void addProperty (String propertyName, String propertyValue);
The 'Category' Class
void setName (String name);
void setEndpoint (Endpoint endpoint);
void setTemplateQuery (TemplateQuery template);
void setNamedEntities (Set<Entity> entities);
void setResourceClass (URI resourceClass);
void addNamedEntity (Entity entity);
String getName ();
Endpoint getEndpoint ();
TemplateQuery getTemplateQuery ();
Set<Entity> getNamedEntities ();
URI getResourceClass ();
The 'EntityMiningComponent' Class
void startup ();
void shutdown ();
HashSet<Category> getAvailableCategories ();
void addNewCategory (Category category);
void addNewCategory (String categoryName, URL endpoint, URI resourceClass);
void removeCategory (String categoryName);
void printAvailableCategories ();
The 'XLink' Class
void setEntityMiningComponent ();
void retrieveEntities (String content, HashSet<String> acceptedCategoryNames);
void matchEntities ();
File storeMatchings (String filename);
void storeMatchings (File folder, String filename);
void retrieveIncomingProperties ();
void retrieveOutcomingProperties ();
void retrieveAllProperties ();
ArrayList<Entity> getEntities ();