Skip to content
David Osumi-Sutherland edited this page Apr 21, 2017 · 10 revisions

Welcome to the geppetto-vfb wiki!

Queries - from VFB1 -> VFB 2

Gross typing in Neo is specified here. This gross typing controls what queries are displayed and the query return type used to specify compound queries.

label_types = {
   'Neuron': 'neuron',
   'Sensory_neuron': 'sensory neuron',
   'Motor_neuron' : 'motor neuron',
   'Peptidergic_neuron' : 'peptidergic neuron', 
   'Neuron_projection_bundle' : 'neuron projection bundle',
   'Synaptic_neuropil': 'synaptic neuropil',
   'Synaptic_neuropil_domain': 'synaptic neuropil domain',
   'Synaptic_neuropil_subdomain': 'synaptic neuropil subdomain',
   'Synaptic_neuropil_block': 'synaptic neuropil block',   
   'Clone': 'neuroblast lineage clone',
   'Cluster': 'cluster',
   'Neuroblast': 'neuroblast',
   'GMC': 'ganglion_mother_cell',
   'Anatomy': 'material anatomical entity',
   'Cell': 'cell',
   'Glial_cell': 'glial cell',
   'Expression_pattern': 'expression_pattern'
   }

To find the return type from an OWL query:

Subclasses queries all return type :Class Query that start with a class - that class specifies the return type. Look this up above. e.g.

FBbt_00005106 = neuron => label :Neuron so this query has return type :Neuron :

FBbt_00005106 that RO_0002131 some XXX.

Sub

VFB 1 queries are specified here:

Edited version of java showing VFB2 versions in comments

		//Subclasses
// Applicable to: :Class  
		ad.put("subclass", new String[]{"subclass", "Subclasses of ","subclass&XXX"});
// New		ad.put("subclass", new String[]{"subclass", "Types of ","subclass&XXX"});  
// Geppetto Return Type - inherits the types (Neo4j node Labels) of the query term (XXX).

// Applicable to: Class:Anatomy  
		ad.put("parts",
		       new String[]{"parts", "Parts of ", 
				"subclass&BFO_0000050 some XXX"
		});

// Applicable to: Class:Synaptic_neuropil or Class:Ganglion; Return: :Neuron
		ad.put("found",
				new String[]{"found in", "Neurons with some part in ",
				"subclass&FBbt_00005106 that RO_0002131 some XXX"
		});
		ad.put("synaptic",
				new String[]{"have synaptic terminals in ", "Neurons with synaptic terminals in ",
				"subclass&FBbt_00005106 that RO_0002130 some XXX"
		});
		ad.put("presynaptic",
				new String[]{"have presynaptic terminals in ", "Neurons with presynaptic terminals in ",
				"subclass&FBbt_00005106 that RO_0002113 some XXX"
		}); // or 'BFO_0000050' some XXX)"
		ad.put("postsynaptic",
				new String[]{"have postsynaptic terminals in ", "Neurons with postsynaptic terminals in ",
				"subclass&FBbt_00005106 that RO_0002110 some XXX"
		});

// Applicable to: Class:Synaptic_neuropil; Return: :Neuron_projection_bundle
		ad.put("tract",
				new String[]{"tracts in ", "Tracts/nerves innervating ",
				"subclass&FBbt_00005099 that RO_0002134 some XXX"
		});


// Applicable to: Class:Neuron_projection_bundle; Return: :Neuron

		ad.put("fasciculate",
				new String[]{"fasciculating ", "Neurons fasciculating in (the) ",
				"subclass&FBbt_00005106 that RO_0002101 some XXX"
		});


//				"subclass&FBbt_00007683 that RO_0002101 some XXX"
//		});


		//Lineage clones
// Applicable to: Class:Neuron_projection_bundle OR Class:Synaptic_Neuropil; Return: :Clone
		ad.put("lineage_clone",
				new String[]{"lineage clones", "Lineage clones found in ",
				"subclass&FBbt_00007683 that RO_0002131 some XXX"
		});
//Change to		        new String[]{"", "Lineage clones with some part in (the) ",



		//Lineage clones

// OLD - redundant with query on :Anatomy
//		ad.put("component_neuron",
//				new String[]{"components", "Components of ",
//				"subclass&BFO_0000050 some XXX"
//		});

// NEW
// Applicable to: Class:Clone OR Class:Expression_pattern Return type: Cell
//		ad.put("component_neuron",
//				new String[]{"components", "Component cells of ",
//				"subclassFBbt_00007002& that BFO_0000050 some XXX"
//		});

// Applicable to: Class:Clone OR Class:Expression_pattern Return type: Neuron
//		ad.put("component_neuron",
//				new String[]{"components", "Component neurons of ",
//				"subclass&FBbt_00005106 that BFO_0000050 some XXX"
//		});

// NEW
// Applicable to: Class:Neuroblast OR Class:GMC Return type: Neuron
//		ad.put("",
//				new String[]{"", "Develops from ",
//				"subclass&FBbt_00005106 that BFO_0000050 some XXX"
//		});




// The following all have the same pre-query to be used before a query across annotations (expression/phenotype).
//  To be revisited in 

		ad.put("transgene",
				new String[]{"transgenes expressed in ", "Transgenes expressed in ",
				"subclass&XXX",
				"subclass&BFO_0000050 some XXX",
				"subclass&FBbt_00007002 that RO_0002131 some XXX"
		});
		ad.put("geneex",
				new String[]{"genes expressed in ", "Genes expressed in ",
				"subclass&XXX",
				"subclass&BFO_0000050 some XXX",
				"subclass&FBbt_00007002 that RO_0002131 some XXX"
		});
		ad.put("phenotype",
				new String[]{"phenotypes expressed in ", "Phenotypes expressed in ",
				"subclass&XXX",
				"subclass&BFO_0000050 some XXX",
				"subclass&FBbt_00007002 that RO_0002131 some XXX"




// OLD
		//Cluster of Individuals that overlap some X, clustered by shape
//		ad.put("cluster_found",
//				new String[]{"found in", "Neurons with some part in XXX, clustered by shape",
		//		"individual&'exemplar_of' some ('cluster' that 'has_exemplar' some ('neuron' that // 'overlaps' some X))"
// 				"individual&c099d9d6-4ef3-11e3-9da7-b1ad5291e0b0 some (VFB_10000005 that C888C3DB-AEFA-447F-BD4C-858DFE33DBE7 some (FBbt_00005106 that RO_0002131 some XXX))"
// 		});

// NEW 
// Applicable to: Class:Synaptic_neuropil OR Class:Neuron_projection_bundle OR Class:Ganglion 
// ;  Return type = Cluster
// cluster that has_exemplar some (neuron that overlaps some 'medial antennal lobe tract')
//		ad.put("cluster_found",
//				new String[]{"found in", "Neurons with some part in XXX, clustered by shape",
		//		"individual&'exemplar_of' some ('cluster' that 'has_exemplar' some ('neuron' that // 'overlaps' some X))"
// 				"individual&VFB_10000005 that C888C3DB-AEFA-447F-BD4C-858DFE33DBE7 some (FBbt_00005106 that RO_0002131 some XXX)"
// 		});


// Applicable to: Class:Synaptic_neuropil OR Class:Neuron_projection_bundle OR Class:Ganglion 
// ;  Return type = Neuron
		//Cluster of Individuals that overlap some X - unclustered
		ad.put("ind_neuron_overlap",
				new String[]{"found in", "Images of neurons with some part in XXX",
		//		"individual&'neuron' that 'overlaps' some X"
				"individual&FBbt_00005106 that RO_0002131 some XXX"
		});

// Superseded by Cypher:
// Individual members of a cluster - queries by cluster exemplar name
//		ad.put("neuron_found",
//				new String[]{"found in", "Neurons with shape similar to XXX ",
//		//		"individual&'member_of' some ('has_exemplar' value X)"
//				"individual&RO_0002350 some (C888C3DB-AEFA-447F-BD4C-858DFE33DBE7 value XXX)"
//		});



// Superseded by Cypher query
//		ad.put("exemplar_neuron",
//				new String[]{"exemplar neurons", "Examples of XXX",  // Misuse of term exemplar...
//				"individual&XXX"
//		});

Clone this wiki locally