- I Introduction to Ontologies Preface xi
- 1 Hierarchies and Relationships
- 1.1 Traditional Record Structures
- 1.2 The eXtensible Markup Language
- 1.3 Hierarchical Organization
- 1.4 Creating and Updating XML
- 1.5 The Meaning of a Hierarchy
- 1.6 Relationships
- 1.7 Namespaces
- 1.8 Exercises
- 2 XML Semantics
- 2.1 The Meaning of Meaning
- 2.2 Infosets
- 2.3 XML Schema
- 2.4 XML Data
- 2.5 Exercises
- 3 Rules and Inference
- 3.1 Introduction to Rule-Based Systems
- 3.2 Forward- and Backward-Chaining Rule Engines
- 3.3 Theorem Provers and Other Reasoners
- 3.4 Performance of Automated Reasoners
- 4 The Semantic Web and Bioinformatics Applications vi Contents
- 4.1 The Semantic Web in Bioinformatics
- 4.2 The Resource Description Framework
- 4.3 XML Topic Maps
- 4.4 The Web Ontology Language
- 4.5 Exercises
- 5 Survey of Ontologies in Bioinformatics
- 5.1 Bio-Ontologies
- 5.1.1 Unified Medical Language System
- 5.1.2 The Gene Ontology
- 5.1.3 Ontologies of Bioinformatics Ontologies
- 5.2 Ontology Languages in Bioinformatics
- 5.3 Macromolecular Sequence Databases
- 5.3.1 Nucleotide Sequence Databases
- 5.3.2 Protein Sequence Databases
- 5.4 Structural Databases
- 5.4.1 Nucleotide Structure Databases
- 5.4.2 Protein Structure Databases
- 5.5 Transcription Factor Databases
- 5.6 Species-Specific Databases
- 5.7 Specialized Protein Databases
- 5.8 Gene Expression Databases
- 5.8.1 Transcriptomics Databases
- 5.8.2 Proteomics Databases
- 5.9 Pathway Databases
- 5.10 Single Nucleotide Polymorphisms
- 5.1 Bio-Ontologies
- II Building and Using Ontologies
- 6 Information Retrieval
- 6.1 The Search Process
- 6.2 Vector Space Retrieval
- 6.3 Using Ontologies for Formulating Queries
- 6.4 Organizing by Citation
- 6.5 Vector Space Retrieval of Knowledge Representations
- 6.6 Retrieval of Knowledge Representations
- 7 Sequence Similarity Searching Tools Contents vii
- 7.1 Basic Concepts
- 7.2 Dynamic Programming Algorithm
- 7.3 FASTA
- 7.4 BLAST
- 7.4.1 The BLAST Algorithm
- 7.4.2 BLAST Search Types
- 7.4.3 Scores and Values
- 7.4.4 BLAST Variants
- 7.5 Exercises
- 8 Query Languages
- 8.1 XML Navigation Using XPath
- 8.2 Querying XML Using XQuery
- 8.3 Semantic Web Queries
- 8.4 Exercises
- 9 The Transformation Process
- 9.1 Experimental and Statistical Methods as Transformations
- 9.2 Presentation of Information
- 9.3 Changing the Point of View
- 9.4 Transformation Techniques
- 9.5 Automating Transformations
- 10 Transforming with Traditional Programming Languages
- 10.1 Text Transformations
- 10.1.1 Line-Oriented Transformation
- 10.1.2 Multidimensional Arrays
- 10.1.3 Perl Procedures
- 10.1.4 Pattern Matching
- 10.1.5 Perl Data Structures
- 10.2 Transforming XML
- 10.2.1 Using Perl Modules and Objects
- 10.2.2 Processing XML Elements
- 10.2.3 The Document Object Model
- 10.2.4 Producing XML
- 10.2.5 Transforming XML to XML
- 10.3 Exercises
- 10.1 Text Transformations
- 11 The XML Transformation Language viii Contents
- 11.1 Transformation as Digestion
- 11.2 Programming in XSLT
- 11.3 Navigation and Computation
- 11.4 Conditionals
- 11.5 Precise Formatting
- 11.6 Multiple Source Documents
- 11.7 Procedural Programming
- 11.8 Exercises
- 12 Building Bioinformatics Ontologies
- 12.1 Purpose of Ontology Development
- 12.2 Selecting an Ontology Language
- 12.3 Ontology Development Tools
- 12.4 Acquiring Domain Knowledge
- 12.5 Reusing Existing Ontologies
- 12.6 Designing the Concept Hierarchy
- 12.6.1 Uniform Hierarchy
- 12.6.2 Classes vs. Instances
- 12.6.3 Ontological Commitment
- 12.6.4 Strict Taxonomies
- 12.7 Designing the Properties
- 12.7.1 Classes vs. Property Values
- 12.7.2 Domain and Range Constraints
- 12.7.3 Cardinality Constraints
- 12.8 Validating and Modifying the Ontology
- 12.9 Exercises
- III Reasoning with Uncertainty
- 13 Inductive vs. Deductive Reasoning
- 13.1 Sources and Semantics of Uncertainty
- 13.2 Extensional Approaches to Uncertainty
- 13.3 Intensional Approaches to Uncertainty
- 14 Bayesian Networks
- 14.1 The Bayesian Network Formalism
- 14.2 Stochastic Inference
- 14.3 Constructing Bayesian Networks Contents ix
- 14.3.1 BN Requirements
- 14.3.2 Machine Learning
- 14.3.3 Building BNs from Components
- 14.3.4 Ontologies as BNs
- 14.3.5 BN Design Patterns
- 14.3.6 Validating and Revising BNs
- 14.4 Exercises
- 15 Combining Information
- 15.1 Combining Discrete Information
- 15.2 Combining Continuous Information
- 15.3 Information Combination as a BN Design Pattern
- 15.4 Measuring Probability
- 15.5 Dempster-Shafer Theory
- 16 The Bayesian Web
- 16.1 Introduction
- 16.2 Requirements for Bayesian Network Interoperability
- 16.3 Extending the Semantic Web
- 16.4 Ontologies for Bayesian Networks
- 17 Answers to Selected Exercises
- References
- Index
ff
(ff)
#1