Angular service

BiocacheService source

Description

Methods to interact with ALA biocache-service

Methods

bbox (query) -> Promise(List)

Get query longitude and latitude bounding box

Example

Input:
- query
 {
     "q": ["taxon_name:Macropus"],
     "bs": "https://biocache-ws.ala.org.au/ws",
     "ws": "https://biocache.ala.org.au"
 }
Output:
[[-180, -90], [180, 90]]

Parameters

NameTypeDescription
query Query

Biocache query

Returns

TypeDescription
Promise(List)

southWest corner and northEast corner as decimal latitude and longitude

constructSearchResultUrl (query, fqs, pageSize, offset, facet) -> Promise(String)

General search query URL

Example

Input:
- query
 {
     "q": ["Macropus"],
     "bs": "https://biocache-ws.ala.org.au/ws",
     "ws": "https://biocache.ala.org.au"
 }
- fqs
 ["geospatial_kosher:true"]
Output:
 "http://biocache-ws.ala.org.au/ws/occurrences/search?q=Macropus&fq=geospatial_kosher:true&pageSize=1&offset=0&facet=false"

Parameters

NameTypeDescription
query Query

Biocache query

fqs List

(Optional) additional fq terms

pageSize Integer

(Optional) page size (default=1)

offset Integer

(Optional) offset (default=0)

facet Boolean

(Optional) include server default facets (default=false)

Returns

TypeDescription
Promise(String)

search URL

count (query, fqs) -> Promise(Integer)

Get number of occurrences

Example

Input:
- query
 {
     "q": ["Macropus"],
     "bs": "https://biocache-ws.ala.org.au/ws",
     "ws": "https://biocache.ala.org.au"
 }
- fqs
 ["geospatial_kosher:true"]
Output:
 500

Parameters

NameTypeDescription
query Query

Biocache query

fqs List

(Optional) additional fq terms

Returns

TypeDescription
Promise(Integer)

number of occurrences

dataProviderList (query, fqs) -> Promise(List)

List data providers

Example

Input:
- query
 {
     "q": ["Macropus"],
     "bs": "https://biocache-ws.ala.org.au/ws",
     "ws": "https://biocache.ala.org.au"
 }
- fqs
 ["geospatial_kosher:true"]
Output:
 []

Parameters

NameTypeDescription
query Query

Biocache query

fqs List

(Optional) additional fq terms

Returns

TypeDescription
Promise(List)

List of data proviers

facet (facet, query) -> Promise(List)

Get facet list

Example

Input:
- facet
 "taxon_name"
- query
 {
     "q": ["taxon_name:Macropus"],
     "bs": "https://biocache-ws.ala.org.au/ws",
     "ws": "https://biocache.ala.org.au"
 }
Output:
[{
                    "name": "Macropus giganteus",
                    "count": 70654,
                    "colour": 0,
                    "fq": "taxon_name:\"Macropus giganteus\"",
                    "red": 51,
                    "blue": 204,
                    "green": 102,
                    "displayname": "Macropus giganteus"
                    },
                 {
                 "name": "Osphranter rufus",
                 "count": 47542,
                 "colour": 0,
                 "fq": "taxon_name:\"Osphranter rufus\"",
                  "red": 220,
                  "blue": 18,
                  "green": 57
                  }]

Parameters

NameTypeDescription
facet String

Facet name

query Query

Biocache query

Returns

TypeDescription
Promise(List)

facets

facetGeneral (facet, query, pageSize, offset, config) -> Promise(List)

Get pageable facet list

Example

Input:
- facet
 "taxon_name"
- query
 {
     "q": ["taxon_name:Macropus"],
     "bs": "https://biocache-ws.ala.org.au/ws",
     "ws": "https://biocache.ala.org.au"
 }
Output:
[{
                     "fieldName": "taxon_name",
                     "fieldResult":
                        [{
                         "label": "Macropus giganteus",
                         "count": 70654,
                         "fq": "taxon_name:\"Macropus giganteus\"",
                         "displaylabel": "Macropus giganteus"
                         },
                         {
                         "label": "Osphranter rufus",
                         "count": 47542,
                         "fq": "taxon_name:\"Osphranter rufus\"",
                         "displaylabel": "Osphranter rufus"
                         }]
                     }]

Parameters

NameTypeDescription
facet String

Facet name

query Query

Biocache query

pageSize Integer

(Optional) page size (default=1)

offset Integer

(Optional) offset (default=0)

config List

(Optional) parameters for $http#get

Returns

TypeDescription
Promise(List)

facets

joinAndEncode (list) -> String

Encode and join a list of q and fq terms

Parameters

NameTypeDescription
list List

q and fqs

Returns

TypeDescription
String

query parameters as a string

newLayer (query, area, name) -> Promise(Layer)

Create a new #Layer suitable for adding to #MapService

Example

Input:
- q
 ["taxon_name:Macropus"]
Output:
 {
     "q": ["taxon_name:Macropus"],
     "bs": "https://biocache-ws.ala.org.au/ws",
     "ws": "https://biocache.ala.org.au",
     "name": ""
 }

Parameters

NameTypeDescription
query List

q and fq terms

area Area

(optional) area to limit the query

name newName

(optional) name for display

Returns

TypeDescription
Promise(Layer)

newLayerAddFq (query, fq, name) -> Promise(Layer)

Create a new query #Layer

Example

Input:
- q
 ["taxon_name:Macropus"]
Output:
 {
     "q": ["taxon_name:Macropus"],
     "bs": "https://biocache-ws.ala.org.au/ws",
     "ws": "https://biocache.ala.org.au",
     "name": ""
 }

Parameters

NameTypeDescription
query List

q and fq terms

fq String

(optional) one fq term

name newName

(optional) name for display

Returns

TypeDescription
Promise(Layer)

newQuery (query, name, wkt) -> Query

Create a new #Query

Example

Input:
- q
 ["taxon_name:Macropus"]
Output:
 {
     "q": ["taxon_name:Macropus"],
     "bs": "https://biocache-ws.ala.org.au/ws",
     "ws": "https://biocache.ala.org.au",
     "name": ""
 }

Parameters

NameTypeDescription
query List

q and fq terms

name name

(optional) name for display

wkt String

(optional) WKT search value

Returns

TypeDescription
Query

queryTitle (query, fqs) -> Promise(String)

Get the default query title

Example

Input:
- query
 {
     "q": ["Macropus"],
     "bs": "https://biocache-ws.ala.org.au/ws",
     "ws": "https://biocache.ala.org.au"
 }
- fqs
 ["geospatial_kosher:true"]
Output:
 "<span>Macropus</span>"

Parameters

NameTypeDescription
query Query

Biocache query

fqs List

(Optional) additional fq terms

Returns

TypeDescription
Promise(String)

formatted biocache-service query title

registerLayer (wsUrl, hubUrl, fqs, wkt, name) -> Promise(Layer)

Create a layer and register for qid

Example

Input:
- bs
 "https://biocache-ws.ala.org.au/ws"
- ws
 "https://biocache.ala.org.au"
- fq
 ["taxon_name:Macropus"]
Output:
 {
     "q": ["taxon_name:Macropus"],
     "bs": "https://biocache-ws.ala.org.au/ws",
     "ws": "https://biocache.ala.org.au",
     "name": ""
 }

Parameters

NameTypeDescription
wsUrl String

biocache-service URL

hubUrl String

biocache-hub URL

fqs List

q and fq terms

wkt String

(optional) WKT

name newName

(optional) name for display

Returns

TypeDescription
Promise(Layer)

registerParam (url, query, fq, wkt) -> Promise(Integer)

Get qid for a query

Example

Input:
- bs
 "https://biocache-ws.ala.org.au/ws"
- q
 ["taxon_name:Macropus"]
Output:
1234

Parameters

NameTypeDescription
url String

biocache-service URL

query List

q and fq terms

fq List

(optional) one fq term

wkt String

(optional) WKT search value

Returns

TypeDescription
Promise(Integer)

qid

registerQuery (query) -> Promise(Query)

Shorten a query

Example

Input:
- query
 {
     "q": ["taxon_name:Macropus"],
     "bs": "https://biocache-ws.ala.org.au/ws",
     "ws": "https://biocache.ala.org.au"
 }
Output:
{
     "q": ["taxon_name:Macropus"],
     "bs": "https://biocache-ws.ala.org.au/ws",
     "ws": "https://biocache.ala.org.au",
     "qid": 1234
 }

Parameters

NameTypeDescription
query Query

Biocache query

Returns

TypeDescription
Promise(Query)

qid

searchForOccurrences (query, fqs, pageSize, offset, facet) -> Promise(Map)

Get search query output

Example

Input:
- query
 {
     "q": ["taxon_name:Macropus"],
     "bs": "https://biocache-ws.ala.org.au/ws",
     "ws": "https://biocache.ala.org.au"
 }
- pageSize
 0
Output:
{
 "pageSize": 0,
 "startIndex": 0,
 "totalRecords": 736,
 "sort": "score",
 "dir": "asc",
 "status": "OK",
 "occurrences": [],
 "facetResults": [],
 "query": "?q=taxon_name%3AMacropus",
 "urlParameters": "?q=taxon_name%3AMacropus",
 "queryTitle": "Scientific name:Macropus",
 "activeFacetMap": {}
 }

Parameters

NameTypeDescription
query Query

Biocache query

fqs List

(Optional) additional fq terms

pageSize Integer

(Optional) page size (default=1)

offset Integer

(Optional) offset (default=0)

facet Boolean

(Optional) include server default facets (default=false)

Returns

TypeDescription
Promise(Map)

search results

speciesCount (query, fqs) -> Promise(Integer)

Get the number of unique species (by facet names_and_lsid)

Example

Input:
- query
 {
     "q": ["Macropus"],
     "bs": "https://biocache-ws.ala.org.au/ws",
     "ws": "https://biocache.ala.org.au"
 }
- fqs
 ["geospatial_kosher:true"]
Ouput:
 10

Parameters

NameTypeDescription
query Query

Biocache query

fqs List

(Optional) additional fq terms

Returns

TypeDescription
Promise(Integer)

Number of unique species

speciesCountEndemic (query, fqs) -> Promise(Integer)

Get the number of unique endemic species (by facet names_and_lsid)

Example

Input:
- query
 {
     "q": ["Macropus"],
     "bs": "https://biocache-ws.ala.org.au/ws",
     "ws": "https://biocache.ala.org.au"
 }
- fqs
 ["geospatial_kosher:true"]
Ouput:
 2

Parameters

NameTypeDescription
query Query

Biocache query

fqs List

(Optional) additional fq terms

Returns

TypeDescription
Promise(Integer)

Number of unique endemic species

speciesList (query, fqs, config) -> Promise(String)

Get species list CSV

Example

Input:
- query
 {
     "q": ["Macropus"],
     "bs": "https://biocache-ws.ala.org.au/ws",
     "ws": "https://biocache.ala.org.au"
 }
- fqs
 ["geospatial_kosher:true"]
- config
Ouput:
 "names_and_lsid","Species Name","Scientific Name Authorship","Taxon Rank","Kingdom","Phylum","Class","Order","Family","Genus","Vernacular Name","Number of records","Conservation","Invasive"
 "Macropus giganteus|urn:lsid:biodiversity.org.au:afd.taxon:23f4784e-1116-482c-8e3e-b6b12733f588|Eastern Grey Kangaroo|Animalia|Macropodidae","Macropus giganteus","Shaw, 1790","species","ANIMALIA","CHORDATA","MAMMALIA","DIPROTODONTIA","MACROPODIDAE","Macropus","Eastern Grey Kangaroo","70654","South Australia : Conservation Status",""
 "Osphranter rufus|urn:lsid:biodiversity.org.au:afd.taxon:e6aff6af-ff36-4ad5-95f2-2dfdcca8caff|Red Kangaroo|Animalia|Macropodidae","Osphranter rufus","(Desmarest, 1822)","species","ANIMALIA","CHORDATA","MAMMALIA","DIPROTODONTIA","MACROPODIDAE","Osphranter","Red Kangaroo","47542","Northern Territory : Conservation Status",""

Parameters

NameTypeDescription
query Query

Biocache query

fqs List

(Optional) additional fq terms

config Map

(Optional) parameters for $http#get

Returns

TypeDescription
Promise(String)

Species list CSV

speciesListEndemic (query, fqs) -> Promise(String)

Get the endemic species list as CSV

Example

Input:
- query
 {
     "q": ["Macropus"],
     "bs": "https://biocache-ws.ala.org.au/ws",
     "ws": "https://biocache.ala.org.au"
 }
- fqs
 ["geospatial_kosher:true"]
Output:
 ```
 names_and_lsid    Species Name    Scientific Name Authorship    Taxon Rank    Kingdom    Phylum    Class    Order    Family    Genus    Vernacular Name    Number of records
 Notamacropus agilis agilis|urn:lsid:biodiversity.org.au:afd.taxon:471127b3-a2c1-430e-931d-938cce4e58e8||Animalia|Macropodidae"    Notamacropus agilis agilis    (Gould, 1842)    subspecies    ANIMALIA    CHORDATA    MAMMALIA    DIPROTODONTIA    MACROPODIDAE    Notamacropus        130
 Notamacropus agilis jardinii|urn:lsid:biodiversity.org.au:afd.taxon:bfe816bf-2b7e-47cb-87f8-ac386af751ab||Animalia|Macropodidae"    Notamacropus agilis jardinii    (De Vis, 1884)    subspecies    ANIMALIA    CHORDATA    MAMMALIA    DIPROTODONTIA    MACROPODIDAE    Notamacropus        451
 ```

Parameters

NameTypeDescription
query Query

Biocache query

fqs List

(Optional) additional fq terms

Returns

TypeDescription
Promise(String)

CSV of endemic species list

speciesListEndemicUrl (query, fqs) -> Promise(String)

Build URL to GET endemic species list CSV

Example

Input:
- query
 {
     "q": ["Macropus"],
     "bs": "https://biocache-ws.ala.org.au/ws",
     "ws": "https://biocache.ala.org.au"
 }
- fqs
 ["geospatial_kosher:true"]
Output:
 "http://biocache.ala.org.au/ws/explore/endemic/species/1234.csv?facets=names_and_lsid&lookup=true&count=true&lists=true"

Parameters

NameTypeDescription
query Query

Biocache query

fqs List

(Optional) additional fq terms

Returns

TypeDescription
Promise(String)

GET URL to endemic species list CSV

speciesListUrl (query, fqs) -> Promise(String)

Build URL to GET species list CSV

Example

Input:
- query
 {
     "q": ["Macropus"],
     "bs": "https://biocache-ws.ala.org.au/ws",
     "ws": "https://biocache.ala.org.au"
 }
- fqs
 ["geospatial_kosher:true"]
Output:
 "https://biocache-ws.ala.org.au/ws/occurrences/facets/download?facets=names_and_lsid&lookup=true&count=true&lists=true&q=Macropus&fq=geospatial_kosher:true"

Parameters

NameTypeDescription
query Query

Biocache query

fqs List

(Optional) additional fq terms

Returns

TypeDescription
Promise(String)

GET URL to species list CSV