url <- 'http://api.plos.org/search'; key = getOption('PlosApiKey')
# Facet on a single field
solr_facet(q='*:*', facet.field='journal', url=url, key=key)
# Facet on multiple fields
solr_facet(q='alcohol', facet.field='journal,subject', url=url, key=key)
# Using mincount
solr_facet(q='alcohol', facet.field='journal', facet.mincount='500', url=url, key=key)
# Using facet.query to get counts
solr_facet(q='*:*', facet.field='journal', facet.query='cell,bird', url=url, key=key)
# Date faceting
solr_facet(q='*:*', url=url, facet.date='publication_date',
facet.date.start='NOW/DAY-5DAYS', facet.date.end='NOW', facet.date.gap='+1DAY', key=key)
# Range faceting
solr_facet(q='*:*', url=url, facet.range='counter_total_all',
facet.range.start=5, facet.range.end=1000, facet.range.gap=10, key=key)
# Range faceting with > 1 field, same settings
solr_facet(q='*:*', url=url, facet.range='counter_total_all,alm_twitterCount',
facet.range.start=5, facet.range.end=1000, facet.range.gap=10, key=key)
# Range faceting with > 1 field, different settings
solr_facet(q='*:*', url=url, facet.range='counter_total_all,alm_twitterCount',
f.counter_total_all.facet.range.start=5, f.counter_total_all.facet.range.end=1000,
f.counter_total_all.facet.range.gap=10, f.alm_twitterCount.facet.range.start=5,
f.alm_twitterCount.facet.range.end=1000, f.alm_twitterCount.facet.range.gap=10, key=key)
# Get raw json or xml
## json
solr_facet(q='*:*', facet.field='journal', url=url, key=key, raw=TRUE)
## xml
solr_facet(q='*:*', facet.field='journal', url=url, key=key, raw=TRUE, wt='xml')
# Get raw data back, and parse later, same as what goes on internally if
# raw=FALSE (Default)
out <- solr_facet(q='*:*', facet.field='journal', url=url, key=key, raw=TRUE)
solr_parse(out)
out <- solr_facet(q='*:*', facet.field='journal', url=url, key=key, raw=TRUE,
wt='xml')
solr_parse(out)
# Using the USGS BISON API (http://bison.usgs.ornl.gov/services.html#solr)
## The occurrence endpoint
url="http://bisonapi.usgs.ornl.gov/solr/occurrences/select"
solr_facet(q='*:*', facet.field='year', url=url)
solr_facet(q='*:*', facet.field='state_code', url=url)
solr_facet(q='*:*', facet.field='basis_of_record', url=url)
Run the code above in your browser using DataLab