Skip to content

Support for search by source location, source groups; sorting by alexa rankings

Compare
Choose a tag to compare
@gregorleban gregorleban released this 12 Jun 17:57
· 70 commits to master since this release

Added

  • QueryArticles and QueryEvents: When creating an instance of the class using a parameter that is a list (such as conceptUri, categoryUri, ...) you can (should) now provide the list using the QueryItems.AND() or QueryItems.OR() methods to explicitly define whether Boolean AND or OR should be used between the multiple items. If just a list is provided instead, a warning will be displayed in the console output. If a single value is used for the parameter, it is still perfectly ok to provide it directly as string.
  • QueryArticles and QueryEvents: Added two new supported parameters sourceLocationUri and sourceGroupUri. Parameter sourceLocationUri can be used to specify a location URI (obtained with EventRegistry.getLocationUri) to use a set of news sources from a specific geographic location. The locations used can be cities or countries. sourceGroupUri can be used to use in search a set of news sources that belong to a manually curated list of news sources (such as top business related sources, top entertainment sources, ...). See next item to see how to find the values for this parameter.
  • EventRegistry class. Added methods suggestSourceGroups() and getSourceGroupUri() that can be used to get the list of news source groups that match a given name/uri (suggestSourceGroups()) or the single top suggestion (getSourceGroupUri()). Source groups are that can be used to find or filter content to a specific set of publishers.
  • when querying a list of articles, valid sortBy values are now also sourceAlexaGlobalRank (global rank of the news source) and sourceAlexaCountryRank (country rank of the news source).
  • SourceInfoFlags flag image was added which, if True adds image and thumbImage fields to the returned source information.

Changed

  • QueryArticles and QueryEvents: Default values for parameters conceptUri, categoryUri and other parameters that accept lists were changed from [] to None to reflect the preference for using QueryItems class when specifying an array of values.
  • QueryArticles and QueryEvents: changed method setArticleUriList() to a static method initWithArticleUriList() to avoid mistakenly creating an instance with query parameters and additionaly caling the setArticleUriList().
  • QueryArticles and QueryEvents: method initWithComplexQuery() now accepts also query as a string value, not only instances of ComplexArticleQuery and ComplexEventQuery.
  • SourceInfoFlags flag importance was changed to ranking since now we return multiple rankings for the source
  • SourceInfoFlags flag tags was changed to sourceGroups since term tags was too generic.
  • Articles data model has changed: socialScore property is now named shares to better represent the content. The returned object can now include also shares on Google Plus, Pinterest, LinkedIn. The name of the parameter socialScore in ArticleInfoFlags was also changed to shares.
  • Source data model has changed: importance property was changed to an object ranking containing multiple indicators of source importance.

Deprecated

  • when sorting articles, sortBy value sourceImportance is now deprecated. Use value sourceImportanceRank. Is is equvalent to reversed value of sourceImportance therefore also make sure to negate your existing value of sortByAsc value. The parameter was changed to make it comparable to added sorting options sourceAlexaGlobalRank and sourceAlexaCountryRank which also represent rankings (lower value means better value).

Removed

  • QueryArticles and QueryEvents: removed the conceptOper parameter. It's functionality is now replaced by providing the array of values inside QueryItems.AND() or QueryItems.OR().
  • QueryArticles and QueryEvents: removed the utility methods addConcept(), addLocation(), addCategory(), addNewsSource(), addKeyword(), setDateLimit(), setDateMentionLimit(). The values of these parameters should be set when initializing the object. The methods were removed since users used static method initWithComplexQuery() and additionally calling these methods which had no effect on the results.