SDIWG:NCBC Software Classification
NCBC Software Classification Page
The sections below are hierarchical classifications of biomedical computing software, currently focused on the NIH Roadmap National Centers for Biomedical Computing (NCBC). This effort stemmed out of a software ontology initiative and meeting minutes that were led by Ivo Dinov from the Center for Computational Biology. These data have been incorporated in the draft protege document (Daniel Rubin and Mark Musen)
NCBC Tool Meta-data
Here are the initial set of meta-data that will be saved for each of the NCBC software tools, when these are entered in the Protege's Ontology, IATR, Simbiome, etc.
- Tool Name:
- NCBC Ontology Classification:
- Input (parameters & Data Types):
- Output Data (parameters & Data Types):
- Implementation Language:
- Version, Date, Stage:
- Other Info:
Also, see the NCBC Software Classification Simbios Template
NCBC Tool Classification and Ontology
The initial NCBC Software Tool Ontology is available in OWL/Protege here
Software Organization of the NA-MIC Kit
Toolkits Insight Toolkit (itk) itk Ontology Visualization Toolkit (vtk) KWWidgets Software Engineering Tools Testing Dart2 CTest Cross-Platform Build CMake Cross-Platform Distribution CPack Cross-Language Wrapping CableSWIG
Preliminary Simbios Center software categories (non-hierarchical) 12/07/2005
Deliverable software modules
Applications Models Computational components Model-building toolsets Application-building toolsets User and developer documentation
Driving Biological Problems RNA folding Myosin dynamics Cardiovascular fluid dynamics Neuromuscular biomechanics Molecule modeling Electrostatics
Clinician Experimentalist Application developer Modeler Algorithm developer SimTK software developer
Shared memory multiprocessors Clusters
Scripting languages (tcl, perl, python) Java C++, C, Fortran
Linear Algebra (dense, sparse) Numerical Integrators (ODE, DAE, PDE, Stochastic) Monte Carlo simulation Multibody dynamics Contact modeling Meshing PDE solvers Controllers Optimizers/root finders Molecular force field calculations Computational geometry
Software development tools
Source control Multiplatform build system Regression test support Document generation
Software dissemination tools
User interaction Bug reporting Feature requests Mailing lists News Software and documentation delivery support Installation Download Upgrade Education Tutorials Course material and software Online courses
The Software Tool Ontology envisioned by the CCB is available at these three links:
- CCB Examples of Tool Metadata and Tool Classification
- CCB Ontology Classification
- Class & Function Definitions
- Protege Ontology (Thanks to Daniel Rubin from NCBO)
- NCBC Ontology TCon discussions 11/08/05
- Ontology Draft Documents
HERE IS OUR DRAFT SCHEMA:
Source Application Domain(s) License Tested on platforms Binaries Application Domain(s) License Tested on platforms
Biological Experimentation Protocol Algorithm Description Publication PUBMED ID or DOI Human Cohort Description Non-Human Experiment Description Organism Software/Technology protocols Technology white papers
Application Domains (Software)
Clinical Information Systems Natural Language Processing Predictive modeling and classification Extract, Transform, and Load Database Schema Ontology Management Service Oriented Architecture Biological Structure Structure:function and structure:disease prediction Protein interaction modeling Expression studies Disease classification/advanced histopathology Outcome prediction Pathway/gene identification for disease Integration of expression w/DNA studies DNA/Genomic studies Population study type (association/linkage etc) Scoring/predicting DNA variant functional and disease significance Comparative genomics Motif studies (TFBS/miRNA/protein domains, etc)
Aggregate Human Data DNA RNA Protein Non-image Phenoty[e Image Individual Human Data DNA (sequence and mapping) RNA Protein Non-image Phenoty[e Image Usage Non-human DNA RNA Protein Non-image Phenoty[e Image
Genomic Measurement Imaging Imaging Class
DNA (sequence and mapping)
Gene ID Non-standard descriptor
Gene ID Splice variant Non-standard descriptor
ID or AA sequence?
UMLS or other vocabulary coded Narrative text
Anonymity level Consent level
DICOM? MIME type?
The current version of our interactive tools and resources site is here: Tools and Resources review site
The site for contributing new records (and editing records that you have contributed), which requires that you be registered, is here: Tools and Resources registration site
This is an example of the new format for the same information: NCIBI Examples of Tool Metadata and Tool Classification
Tools are broken down into 2 large categories: Analyses and Databases. Each category is further specified by functionality (analyses) or content (databases). Where available, URLs are provided. For analyses, the primary input data type is indicated in parentheses next to the name of the analytical tool. Databases are accompanied by associated querying tools (such tools are not listed here as separate entries).
Analyses: Regulatory/Signaling network reconstruction
- ARACNE (gene expression), http://amdec-bioinfo.cu-genome.org/html/ARACNE.htm
- GeneClass (gene expression), http://www1.cs.columbia.edu/compbio/robust-geneclass/download.html.
Analyses: Network characterization
- NetClass/NetBoost (molecular interactions networks), http://www.columbia.edu/~chw2/.
- InfoMod (molecular interactions networks), http://www.columbia.edu/~chw2/.
Analyses: Homology-based protein sequence classification
- Bio-Kernels (protein sequences), http://www1.cs.columbia.edu/compbio/string-kernels/.
- RankProp/MotifProp (protein sequences).
Analyses: Structured-based protein classification
- Protein function pipeline (protein structure).
Analyses: Prediction of regulatory (cis) elements
- REDUCE (gene expression), http://bussemaker.bio.columbia.edu:8080/reduce/.
- MEDUSA (gene expression), http://www1.cs.columbia.edu/compbio/medusa/download.html.
Analyses: Protein structure prediction
- Protein structure pipeline (protein sequence).
- META-server (protein sequence).
- Super-NEST (protein sequence).
- Protein cavity and binding site prediction (protein structure).
Databases: Molecular interactions
- GeneWays, http://geneways.genomecenter.columbia.edu/.
- Cellular Network KB.
Databases: Gene-phenotype associations
- PhenotypeML DB.
Ontology Diff and Alignment
Biomedical Data Annotation
Progammatic Access to Ontologies
Web Access to Ontologies
The Internet Analysis Tool Registry (IATR) is a website dedicated to (trying to) provide a centrally available listing of all image analysis tools that are available to the neuroscience community in order to facilitate the development, identification, and sharing of tools that are of use to the general community. It is hoped that this helps the "tool developers" to get their tools to a larger user community and to reduce redundancy (or at least utilize tool redundancy to facilitate optimal tool design) in tool development.
As part of this effort, we have had users indicate software keywords to describe tool functionallity, funding source, interface options, operating platforms, etc. Through this collection of information, the following prototype image analysis software tool function vocabulary has been constructed.
A recently accepted paper (to appear in Neuroinformatics) provides a lingthy description of the site and it's design. File:The Internet Analysis Tools Registry revised.doc
A little picture of the schema appears here: File:Iatr 2.jpg
IATR as an example NCBC 'Yellow Pages'
We have developed project-specific entry points into the registry. Thus, with one simple URL, one can come into the site at the result of a search for a specific set of tools. Examples of this include:
- http://www.cma.mgh.harvard.edu/iatr/display.php?spec=na-mic Shows NA-MIC Tools
- http://www.cma.mgh.harvard.edu/iatr/display.php?spec=magnet Shows MAGNet Tools
- http://www.cma.mgh.harvard.edu/iatr/display.php?spec=ncbc Shows all listed NCBC Tools
IATR Tool Vocabulary
This vocabulary is a prototype, work-in-progress, suggestion, open for input and revision kind of thing. Feel free to provide (constructuve!) feedback in this effort, and it's interoperation with other similar efforts.