-
Notifications
You must be signed in to change notification settings - Fork 7
"Arguson" format
Jonathan A Rees edited this page Apr 5, 2016
·
27 revisions
ArguSON is an custom OpenTree JSON format used for communicating the structure and metadata of the synthetic tree between the server (treemachine) and the tree browser (opentree webapp). For V3, we are making this part of the public API.
The tree_of_life/subtree
method returns ArguSON when format=arguson.
An ArguSON payload is a nested JSON object reflecting the nested structure of the synthetic tree.
The top-level properties of an ArguSON object are:
- the fields of a node descriptor :
node_id
,taxon
(a taxon-descriptor; present if the node is a taxon),num_tips
, and one or more of the support-descriptorssupported_by
,conflicts_with
,resolves
,resolved_by
,partial_path_of
, andterminal
- For non-taxon nodes, a list keyed by
descendant_name_list
that is used to label nodes without taxonomic names -
lineage
: (list of dict) Each item in the list is a dictionary that describes a node on the path between the node and the root (root last). Each lineage item includes all of the fields in a node descriptor, plus (for non-taxon nodes)descendant_name_list
. -
children
: (list of dict) Each item in the list is a dictionary that describes a child of the node. This is recursive. A child item includes all of the fields in a node descriptor, plus anotherchildren
list up to the requestedmax_height
, and (for non-taxon children)descendant_name_list
.
Sample arguson (lineage truncated to save space here)
{
"arguson" : {
"lineage" : [ {
"supported_by" : {
"taxonomy" : "ott2.9draft12"
},
"taxon" : {
"tax_sources" : [ "ncbi:30412", "worms:136996", "gbif:9312", "irmng:100635" ],
"unique_name" : "Gaviidae",
"name" : "Gaviidae",
"rank" : "family",
"ott_id" : 928350
},
"num_tips" : 5,
"node_id" : "ott928350"
}, {
"supported_by" : {
"taxonomy" : "ott2.9draft12"
},
"taxon" : {
"tax_sources" : [ "ncbi:30411", "worms:148793", "gbif:7192754", "irmng:10349" ],
"unique_name" : "Gaviiformes",
"name" : "Gaviiformes",
"rank" : "order",
"ott_id" : 70684
},
"num_tips" : 5,
"node_id" : "ott70684"
},
...
{
"supported_by" : {
"taxonomy" : "ott2.9draft12"
},
"taxon" : {
"tax_sources" : [ "silva:D11377/#1", "ncbi:2759" ],
"unique_name" : "Eukaryota",
"name" : "Eukaryota",
"rank" : "domain",
"ott_id" : 304358
},
"num_tips" : 2123117,
"node_id" : "ott304358"
}, {
"taxon" : {
"tax_sources" : [ "ncbi:131567" ],
"unique_name" : "cellular organisms",
"name" : "cellular organisms",
"rank" : "no rank",
"ott_id" : 93302
},
"num_tips" : 2424255,
"node_id" : "ott93302"
} ],
"children" : [ {
"supported_by" : {
"taxonomy" : "ott2.9draft12"
},
"taxon" : {
"tax_sources" : [ "ncbi:37040", "worms:137188", "gbif:2481958", "irmng:10855603" ],
"unique_name" : "Gavia stellata",
"name" : "Gavia stellata",
"rank" : "species",
"ott_id" : 1057044
},
"num_tips" : 0,
"terminal" : {
"pg_420@tree522" : "ott1057044",
"ot_104@tree1" : "node2"
},
"node_id" : "ott1057044"
}, {
"descendant_name_list" : [ "Gavia arctica", "Gavia adamsii" ],
"children" : [ {
"descendant_name_list" : [ "Gavia arctica", "Gavia pacifica" ],
"children" : [ {
"supported_by" : {
"taxonomy" : "ott2.9draft12"
},
"taxon" : {
"tax_sources" : [ "ncbi:57069", "worms:137186", "gbif:2481959", "irmng:10934623" ],
"unique_name" : "Gavia arctica",
"name" : "Gavia arctica",
"rank" : "species",
"ott_id" : 1085739
},
"num_tips" : 0,
"terminal" : {
"pg_420@tree522" : "ott1085739",
"ot_104@tree1" : "node5"
},
"node_id" : "ott1085739"
}, {
"supported_by" : {
"taxonomy" : "ott2.9draft12"
},
"taxon" : {
"tax_sources" : [ "ncbi:85097", "gbif:2481955", "irmng:10589926" ],
"unique_name" : "Gavia pacifica",
"name" : "Gavia pacifica",
"rank" : "species",
"ott_id" : 651474
},
"num_tips" : 0,
"terminal" : {
"pg_420@tree522" : "ott651474",
"ot_104@tree1" : "node6"
},
"node_id" : "ott651474"
} ],
"supported_by" : {
"ot_104@tree1" : "node4"
},
"num_tips" : 2,
"node_id" : "mrcaott651474ott1085739"
}, {
"descendant_name_list" : [ "Gavia immer", "Gavia adamsii" ],
"children" : [ {
"supported_by" : {
"taxonomy" : "ott2.9draft12"
},
"taxon" : {
"tax_sources" : [ "ncbi:37039", "worms:137187", "gbif:2481962", "irmng:10190144" ],
"unique_name" : "Gavia immer",
"name" : "Gavia immer",
"rank" : "species",
"ott_id" : 1057518
},
"num_tips" : 0,
"terminal" : {
"pg_420@tree522" : "ott1057518",
"ot_104@tree1" : "node9"
},
"node_id" : "ott1057518"
}, {
"supported_by" : {
"taxonomy" : "ott2.9draft12"
},
"taxon" : {
"tax_sources" : [ "ncbi:372293", "worms:137185", "gbif:2481957", "irmng:10589925" ],
"unique_name" : "Gavia adamsii",
"name" : "Gavia adamsii",
"rank" : "species",
"ott_id" : 90560
},
"num_tips" : 0,
"terminal" : {
"pg_420@tree522" : "ott90560",
"ot_104@tree1" : "node8"
},
"node_id" : "ott90560"
} ],
"supported_by" : {
"ot_104@tree1" : "node7"
},
"num_tips" : 2,
"node_id" : "mrcaott90560ott1057518"
} ],
"supported_by" : {
"ot_104@tree1" : "node3"
},
"num_tips" : 4,
"node_id" : "mrcaott90560ott651474"
} ],
"supported_by" : {
"taxonomy" : "ott2.9draft12"
},
"source_id_map" : {
"pg_420@tree522" : {
"git_sha" : "e163a9245c15aefbba79defb685df98d5a73cab3",
"tree_id" : "tree522",
"study_id" : "pg_420"
},
"ot_104@tree1" : {
"git_sha" : "e163a9245c15aefbba79defb685df98d5a73cab3",
"tree_id" : "tree1",
"study_id" : "ot_104"
},
"pg_2710@tree6291" : {
"git_sha" : "e163a9245c15aefbba79defb685df98d5a73cab3",
"tree_id" : "tree6291",
"study_id" : "pg_2710"
},
"pg_2573@tree5959" : {
"git_sha" : "e163a9245c15aefbba79defb685df98d5a73cab3",
"tree_id" : "tree5959",
"study_id" : "pg_2573"
},
"taxonomy" : {
"name" : "ott",
"version" : "ott2.9draft12"
},
"pg_2822@tree6569" : {
"git_sha" : "e163a9245c15aefbba79defb685df98d5a73cab3",
"tree_id" : "tree6569",
"study_id" : "pg_2822"
}
},
"taxon" : {
"tax_sources" : [ "ncbi:37038", "worms:137057", "gbif:2481954", "irmng:1278204" ],
"unique_name" : "Gavia",
"name" : "Gavia",
"rank" : "genus",
"ott_id" : 803675
},
"num_tips" : 5,
"node_id" : "ott803675"
}
}