documentation for statistics service
authors.buers <s.buers@localhost>
Wed, 30 Jan 2013 11:45:26 +0000 (11:45 +0000)
committers.buers <s.buers@localhost>
Wed, 30 Jan 2013 11:45:26 +0000 (11:45 +0000)
.gitattributes
src/site/apt/rest-api-statistics.apt [new file with mode: 0644]

index 5bacb908a219f4bda40e2cc51b5bd4f59b900c74..f171f8bb2a1aa08ee16223f2cdc56a96d6a4bd31 100644 (file)
@@ -2196,6 +2196,7 @@ src/site/apt/remote/name-catalogue-default.apt -text
 src/site/apt/remote/name-catalogue-name-info.apt -text
 src/site/apt/remote/name-catalogue-taxon-info.apt -text
 src/site/apt/rest-api-name-catalogue.apt -text
+src/site/apt/rest-api-statistics.apt -text
 src/site/apt/rest-api.apt -text
 src/site/fml/faq.fml -text
 src/site/fml/troubleshooting.fml -text
diff --git a/src/site/apt/rest-api-statistics.apt b/src/site/apt/rest-api-statistics.apt
new file mode 100644 (file)
index 0000000..8f3802b
--- /dev/null
@@ -0,0 +1,286 @@
+                                    --------------
+                                    Statistics API
+                                    --------------
+                                       --------------
+                                       2013-01-29
+                                                                       --------------
+                                                                       
+CDM Taxonomic Statistics API
+
+
+       This web service endpoint provides statistic data about several different entities from CDM data.       
+
+       Request: 
+       
+       The parameters are:     
+       
+       * '<<part>>' [optional] : the two possible values are
+       
+               * <<<ALL>>>                                             : for all data base
+               
+               * <<<CLASSIFICATION>>>                          : for statistics on every classification 
+               
+       - The two values could be combined as well. 
+       - Choosing no value for this parameter, gives statistics for all database (similar to <<<ALL>>>) .
+       
+       * '<<type>>' [optional]         : this parameter could have the values  
+       
+               * <<<CLASSIFICATION>>>                          : all classification are counted. This value effects a <null> result on <<<part=CLASSIFICATION>>> as classifications must not have nested classifications
+                                                                                       
+               * <<<ALL_TAXA>>>                                        : to count all taxa, meaning accepted taxa and synonyms
+               
+               * <<<ACCEPTED_TAXA>>>                           : to count the accepted taxa (class Taxon)
+                               
+               * <<<SYNONYMS>>>                                        : to count the synonyms (class Synonym)
+                               
+               * <<<TAXON_NAMES>>>                                     : to count all names (from taxa and synonyms)
+                               
+               * <<<ALL_REFERENCES>>>                          : to count all kinds of references
+                               
+               * <<<NOMECLATURAL_REFERENCES>>>         : to count the references attached to names
+                       
+               * <<<DESCRIPTIVE_SOURCE_REFERENCES>>>: to count the references attached to any description
+               
+       - Default: If no type is set all types are choosen.
+               
+[]
+
+       Response:
+       
+       The response format can be set by appending the format extension to the service endpoint. Currently this web service supports JSON (fully implemented) and XML (partially implemented). 
+           
+       The response is a list of objects. One for each part: one object for statistics over all data base and one for each classification. 
+       Each object has the following structure:
+
+       * <<<countMap>>>                : It holds the computed response in a map list of short description of each type counted and the number of it's occurrency (e.g. "<Taxon_names: 36618>").
+
+       * <<<request>>>                 : The filter mirrows the part parameter values of the request, whereas the type holds a list of the types to be count in each part.
+
+               * <<<filter>>>          : It holds a list of the path to the object that is observed - it holds <null> for the whole data base (<[null]>). For a classification it holds <null> and the classification object because the classification belongs to the data base; e.g.: <\[null, {"class": "Classification", "created": "2010-05-27T16:59:04.000+02:00",
+ "data": \[ \], "lsid": null, "microReference": "", "protectedTitleCache": false, "titleCache": "standard view", "updated": "2013-01-29T17:03:00.358+01:00", "uuid": "534e190f-3339-49ba-95d9-fa27d5493e3e"}\]>.
+               
+               * <<<type>>>            : It provides a list of of all the types to be counted, represented by an enum class. E.g.: <\["DESCRIPTIVE_SOURCE_REFERENCES", "TAXON_NAMES"\]>.
+               
+       []
+       
+       Features: 
+       
+               With the two parameters iterating over several values in one query URL, you can make the request accurately fitting to the statistics you want.
+       
+       {Example Requests}:
+               
+               * request with no parameters:   
+                               
+                       * {{{no parameters} /statistics.json}}
+                       
+               - is similar to:
+                       
+               * request for statistics of the whole data base for all available types: 
+               
+                       * {{{no parameters} /statistics.json?part=ALL&type=CLASSIFICATION&type=ALL_TAXA&type=ACCEPTED_TAXA&type=SYNONYMS&type=TAXON_NAMES&type=ALL_REFERENCES&type=NOMECLATURAL_REFERENCES&type=DESCRIPTIVE_SOURCE_REFERENCES}}
+               
+               * request for types all taxa (including synonyms) and nomenclatural references in the classifications:
+               
+                       * {{{nomenclatural references in the classifications} /statistics.json?part=CLASSIFICATION&type=ALL_TAXA&type=NOMECLATURAL_REFERENCES}}
+               
+               * request for the types accepted taxa and all references for all data base and classifications:
+               
+                       * {{{accepted taxa and all references} /statistics.json?part=ALL&part=CLASSIFICATION&type=ACCEPTED_TAXA&type=ALL_REFERENCES}}
+               
+               
+       Example Responses:
+               
+               * request with {no parameters}: <<</statistics.json>>> 
+               
+               - similar to:
+               
+               *request for statistics of the whole data base for all available types:  <<</statistics.json?part=ALL&type=CLASSIFICATION&type=ALL_TAXA&type=ACCEPTED_TAXA&type=SYNONYMS&type=TAXON_NAMES&type=ALL_REFERENCES&type=NOMECLATURAL_REFERENCES&type=DESCRIPTIVE_SOURCE_REFERENCES>>>{{{Example Requests} (back to requests)}}
+
+---
+                                                                               
+[
+
+    {
+        "class": "Statistics",
+        "countMap": {
+            "Taxon_names": 36618,
+            "Synonyms": 30620,
+            "Accepted_taxa": 16254,
+            "Nomeclatural_references": 11969,
+            "Classifications": 2,
+            "Descriptive_source_references": 1304,
+            "References": 19443,
+            "All_taxa": 46874
+        },
+        "request": {
+            "class": "StatisticsConfigurator",
+            "filter": [
+                null
+            ],
+            "type": [
+                "CLASSIFICATION",
+                "ALL_TAXA",
+                "ACCEPTED_TAXA",
+                "SYNONYMS",
+                "TAXON_NAMES",
+                "ALL_REFERENCES",
+                "NOMECLATURAL_REFERENCES",
+                "DESCRIPTIVE_SOURCE_REFERENCES"
+            ]
+        }
+    }
+
+]
+       
+---    
+
+       *request for types all taxa (including synonyms) and {nomenclatural references in the classifications}: <<</statistics.json?part=CLASSIFICATION&type=ALL_TAXA&type=NOMECLATURAL_REFERENCES>>>{{{Example Requests} (back to requests)}}
+       
+---    
+[
+
+    {
+        "class": "Statistics",
+        "countMap": {
+            "Nomeclatural_references": 9293,
+            "All_taxa": 27563
+        },
+        "request": {
+            "class": "StatisticsConfigurator",
+            "filter": [
+                null,
+                {
+                    "class": "Classification",
+                    "created": "2010-05-27T16:59:04.000+02:00",
+                    "data": [ ],
+                    "lsid": null,
+                    "microReference": "",
+                    "protectedTitleCache": false,
+                    "titleCache": "standard view",
+                    "updated": "2013-01-29T19:18:50.857+01:00",
+                    "uuid": "534e190f-3339-49ba-95d9-fa27d5493e3e"
+                }
+            ],
+            "type": [
+                "ALL_TAXA",
+                "NOMECLATURAL_REFERENCES"
+            ]
+        }
+    },
+    {
+        "class": "Statistics",
+        "countMap": {
+            "Nomeclatural_references": 6375,
+            "All_taxa": 15900
+        },
+        "request": {
+            "class": "StatisticsConfigurator",
+            "filter": [
+                null,
+                {
+                    "class": "Classification",
+                    "created": "2010-06-03T15:15:22.000+02:00",
+                    "data": [ ],
+                    "lsid": null,
+                    "microReference": "",
+                    "protectedTitleCache": false,
+                    "titleCache": "ICN Alternative Classification",
+                    "updated": "2010-10-21T08:57:49.000+02:00",
+                    "uuid": "76b17487-3df4-41c7-8043-2bbb266eac00"
+                }
+            ],
+            "type": [
+                "ALL_TAXA",
+                "NOMECLATURAL_REFERENCES"
+            ]
+        }
+    }
+
+]
+---
+
+       *request for the types {accepted taxa and all references} for all data base and classifications:  <<</statistics.json?part=ALL&part=CLASSIFICATION&type=ACCEPTED_TAXA&type=ALL_REFERENCES>>>{{{Example Requests} (back to requests)}}
+       
+---
+
+[
+
+    {
+        "class": "Statistics",
+        "countMap": {
+            "Accepted_taxa": 16254,
+            "References": 19443
+        },
+        "request": {
+            "class": "StatisticsConfigurator",
+            "filter": [
+                null
+            ],
+            "type": [
+                "ACCEPTED_TAXA",
+                "ALL_REFERENCES"
+            ]
+        }
+    },
+    {
+        "class": "Statistics",
+        "countMap": {
+            "Accepted_taxa": 10776,
+            "References": null
+        },
+        "request": {
+            "class": "StatisticsConfigurator",
+            "filter": [
+                null,
+                {
+                    "class": "Classification",
+                    "created": "2010-05-27T16:59:04.000+02:00",
+                    "data": [ ],
+                    "lsid": null,
+                    "microReference": "",
+                    "protectedTitleCache": false,
+                    "titleCache": "standard view",
+                    "updated": "2013-01-29T18:48:50.690+01:00",
+                    "uuid": "534e190f-3339-49ba-95d9-fa27d5493e3e"
+                }
+            ],
+            "type": [
+                "ACCEPTED_TAXA",
+                "ALL_REFERENCES"
+            ]
+        }
+    },
+    {
+        "class": "Statistics",
+        "countMap": {
+            "Accepted_taxa": 4027,
+            "References": null
+        },
+        "request": {
+            "class": "StatisticsConfigurator",
+            "filter": [
+                null,
+                {
+                    "class": "Classification",
+                    "created": "2010-06-03T15:15:22.000+02:00",
+                    "data": [ ],
+                    "lsid": null,
+                    "microReference": "",
+                    "protectedTitleCache": false,
+                    "titleCache": "ICN Alternative Classification",
+                    "updated": "2010-10-21T08:57:49.000+02:00",
+                    "uuid": "76b17487-3df4-41c7-8043-2bbb266eac00"
+                }
+            ],
+            "type": [
+                "ACCEPTED_TAXA",
+                "ALL_REFERENCES"
+            ]
+        }
+    }
+
+]
+
+---    
+       
+       
\ No newline at end of file