WIBR Bioinformatics, © Whitehead Institute, 2004 Relational Databases for Biologists Robert Latek, Ph.D. Sr. Bioinformatics Scientist Whitehead Institute.

Slides:



Advertisements
Similar presentations
Union, Intersection, Difference (subquery) UNION (subquery) produces the union of the two relations. Similarly for INTERSECT, EXCEPT = intersection and.
Advertisements

Session 2Introduction to Database Technology Data Types and Table Creation.
What is a Database By: Cristian Dubon.
Relational Algebra, Join and QBE Yong Choi School of Business CSUB, Bakersfield.
Review for Final Test Indra Budi
Concepts of Database Management Sixth Edition
Concepts of Database Management Seventh Edition
Quick-and-dirty.  Commands end in a semi-colon ◦ If you forget, another prompt line shows up  Either continue the command or…  End it with a semi-colon.
Midterm Review Lecture 14b. 14 Lectures So Far 1.Introduction 2.The Relational Model 3.Disks and Files 4.Relational Algebra 5.File Org, Indexes 6.Relational.
XP Chapter 3 Succeeding in Business with Microsoft Office Access 2003: A Problem-Solving Approach 1 Analyzing Data For Effective Decision Making.
Introduction to Structured Query Language (SQL)
Databases Using MySQL Creating Tables Queries. Databases  A database is a collection of data organized for efficient access  A relational database is.
A Guide to MySQL 3. 2 Objectives Start MySQL and learn how to use the MySQL Reference Manual Create a database Change (activate) a database Create tables.
1 Chapter 2 Reviewing Tables and Queries. 2 Chapter Objectives Identify the steps required to develop an Access application Specify the characteristics.
Concepts of Database Management Sixth Edition
Microsoft Access 2010 Chapter 7 Using SQL.
DAT702.  Standard Query Language  Ability to access and manipulate databases ◦ Retrieve data ◦ Insert, delete, update records ◦ Create and set permissions.
DATABASES AND SQL. Introduction Relation: Relation means table(data is arranged in rows and columns) Domain : A domain is a pool of values appearing in.
Introduction To Databases IDIA 618 Fall 2014 Bridget M. Blodgett.
Structured Query Language (SQL) A2 Teacher Up skilling LECTURE 2.
MySQL Dr. Hsiang-Fu Yu National Taipei University of Education
Session 5: Working with MySQL iNET Academy Open Source Web Development.
Concepts of Database Management, Fifth Edition
ASP.NET Programming with C# and SQL Server First Edition
Relational DBs and SQL Designing Your Web Database (Ch. 8) → Creating and Working with a MySQL Database (Ch. 9, 10) 1.
Chapter 3 Single-Table Queries
3.1 Chapter 3: SQL Schema used in examples p (omit 3.8.2, , 3.11)
WIBR Bioinformatics, © Whitehead Institute, 2004 Relational Databases for Biologists: Efficiently Managing and Manipulating Your Data Robert Latek, Ph.D.
Analyzing Data For Effective Decision Making Chapter 3.
CHAPTER:14 Simple Queries in SQL Prepared By Prepared By : VINAY ALEXANDER ( विनय अलेक्सजेंड़र ) PGT(CS),KV JHAGRAKHAND.
1 CS 430 Database Theory Winter 2005 Lecture 12: SQL DML - SELECT.
CSC 405: Web Application And Engineering II7.1 Database Programming with SQL Aggregation and grouping with GROUP BY Aggregation and grouping with GROUP.
M Taimoor Khan Course Objectives 1) Basic Concepts 2) Tools 3) Database architecture and design 4) Flow of data (DFDs)
CSC 2720 Building Web Applications Database and SQL.
1 The Relational Database Model. 2 Learning Objectives Terminology of relational model. How tables are used to represent data. Connection between mathematical.
Concepts of Database Management Seventh Edition
Structured Query Language Chris Nelson CS 157B Spring 2008.
Database Systems Microsoft Access Practical #1 Creating Tables Nos 215.
Using Special Operators (LIKE and IN)
Concepts of Database Management Seventh Edition
1 Structured Query Language (SQL). 2 Contents SQL – I SQL – II SQL – III SQL – IV.
9/7/2012ISC329 Isabelle Bichindaritz1 The Relational Database Model.
CIS 210 Systems Analysis and Development Week 6 Part II Designing Databases,
Information Technologies and Microsoft SQL Server Day 2 by Alper Özpınar
6 1 Lecture 8: Introduction to Structured Query Language (SQL) J. S. Chou, P.E., Ph.D.
WHAT IS A DATABASE? A DATABASE IS A COLLECTION OF DATA RELATED TO A PARTICULAR TOPIC OR PURPOSE OR TO PUT IT SIMPLY A GENERAL PURPOSE CONTAINER FOR STORING.
Concepts of Database Management Eighth Edition Chapter 3 The Relational Model 2: SQL.
SE305 Database System Technology 23/10/2014 Quiz-2.
Advanced Web 2012 Lecture 3 Sean Costain What is a Database? Sean Costain 2012 A database is a structured way of dealing with structured information.
Database Fundamental & Design by A.Surasit Samaisut Copyrights : All Rights Reserved.
WIBR Bioinformatics, © Whitehead Institute, 2004 Relational Databases for Biologists Robert Latek, Ph.D. Sr. Bioinformatics Scientist Whitehead Institute.
SQL – Structured Query Language
CpSc 462/662: Database Management Systems (DBMS) (TEXNH Approach) Relational Schema and SQL Queries James Wang.
Concepts of Database Management Seventh Edition Chapter 3 The Relational Model 2: SQL.
ITEC 3220A Using and Designing Database Systems Instructor: Prof. Z. Yang Course Website: 3220a.htm
SqlExam1Review.ppt EXAM - 1. SQL stands for -- Structured Query Language Putting a manual database on a computer ensures? Data is more current Data is.
Mining real world data RDBMS and SQL. Index RDBMS introduction SQL (Structured Query language)
A Guide to SQL, Eighth Edition Chapter Four Single-Table Queries.
Database: SQL, MySQL, LINQ and Java DB © by Pearson Education, Inc. All Rights Reserved.
SQL: Structured Query Language It enables to create and operate on relational databases, which are sets of related information stored in tables. It is.
MySQL Tutorial. Databases A database is a container that groups together a series of tables within a single structure Each database can contain 1 or more.
Rationale Databases are an integral part of an organization. Aspiring Database Developers should be able to efficiently design and implement databases.
3 A Guide to MySQL.
SQL Query Getting to the data ……..
More SQL: Complex Queries,
Chapter 5 Introduction to SQL.
More SQL: Complex Queries, Triggers, Views, and Schema Modification
SQL: Structured Query Language
Database Instructor: Bei Kang.
Presentation transcript:

WIBR Bioinformatics, © Whitehead Institute, 2004 Relational Databases for Biologists Robert Latek, Ph.D. Sr. Bioinformatics Scientist Whitehead Institute for Biomedical Research Session 2 SQL To Data Mine A Database

WIBR Bioinformatics, © Whitehead Institute, 2004 Session 2 Outline Database Basics Review E-R Diagrams And db4bio Data Types And Values Connecting To MySQL Relational Algebra Data Mining SQL

WIBR Bioinformatics, © Whitehead Institute, 2004 Database Basics Databases Are Composed Of Tables (Relations) Relations Are Entities That Have Attributes (Column Labels) And Tuples (Records) Databases Can Be Designed From E-R Diagrams That Are Easily Converted To Tables Primary Keys Uniquely Identify Individual Tuples And Represent Links Between Tables

WIBR Bioinformatics, © Whitehead Institute, 2004 Building An E-R Diagram Identify Data Attributes Conceptualize Entities By Grouping Related Attributes Identify Relationships/Links Draw Preliminary E-R Diagram Add Cardinalities And References Refine E-R Diagram By Applying Design Principles

WIBR Bioinformatics, © Whitehead Institute, 2004 db4bio E-R Diagram II RefSeqs Targets Ontologies Data gbId. linkId gbId ntRefSeq affyId exptId aaRefSeq goAcc description affyId uId linkId goAcc gbId level source linkId GO_Descr LocusLinks Unigenes UniSeqs description Semi-Static Annotation Experimental LocusDescr linkId uId Sources species linkId exptId Descriptions gbId species description species UniDescr uId description

WIBR Bioinformatics, © Whitehead Institute, 2004 Number Data Types INT –Signed to –Unsigned FLOAT/DOUBLE[(M,D)] –Decimal values, 1.234, E+5 –M is display size, D is number of decimals DATE/DATETIME –‘ :00:00’ to ‘ :59:59’ –‘YYYY-MM-DD HH:MM:SS’ TIMESTAMP –YYYYMMDDHHMMSS

WIBR Bioinformatics, © Whitehead Institute, 2004 Character Data Types VARCHAR(M) –M characters is length, Text up to 255 characters –VARCHAR(5) Will store Apple as ‘Apple’ Will store Pineapple as ‘Pinea’ TEXT –Text up to characters VARCHARs and TEXTs must always be described inside of quotes, single or double –Food = “Apple”

WIBR Bioinformatics, © Whitehead Institute, 2004 Data Values NULL vs. NOT NULL –Data can either require a value for each tuple or not need one. KEY –Primary keys must be NOT NULL Default –If an attribute was specified as NULL its default is automatically NULL (characters) or empty (numbers). –If an attribute was specified as NOT NULL its default value is automatically “” (characters) or zero (numbers). –The default value can also be specified manually.

WIBR Bioinformatics, © Whitehead Institute, 2004 Connecting To MySQL If No Local MySQL, In Terminal Window –% ssh hebrides.wi.mit.edu -l username Connect to MySQL Database Server –% mysql -u username -p -D db4bio –mysql> SQL Commands Are Case-Insensitive Tables And Attributes Are Case- Sensitive

WIBR Bioinformatics, © Whitehead Institute, 2004 > DESCRIBE Table; > DESCRIBE Data; > DESCRIBE LocusDescr; | Field | Type | Null | Key | Default | Extra | | affyId | varchar(30) | | PRI | | | | exptId | varchar(10) | | PRI | | | | level | int(11) | | | 0 | | | Field | Type | Null | Key | Default | Extra | | linkId | int(11) | | PRI | 0 | | | description | varchar(100) | YES | | NULL | | | species | varchar(20) | YES | | NULL | |

WIBR Bioinformatics, © Whitehead Institute, 2004 Relational Algebra Restrict Project Restrict: Remove Tuples That Don’t Fit a Specific Criteria. Project: Remove Specific Attributes

WIBR Bioinformatics, © Whitehead Institute, 2004 Table Product And Divide Product: Merge Tuples From Two Tables In Every Possible Way Divide: Separate Tuples That Have Every Tuple In Another Table ABCABC XYXY A X A Y B X B Y C X C Y A X A Y A Z B X B Y C Z XYZXYZ A Product Divided by

WIBR Bioinformatics, © Whitehead Institute, 2004 Table Join Similar To Product Except That Merged Tuples Must Satisfy A Specific Requirement A1 B1 A2 B2 A3 B3 B1 C1 B2 C2 B3 C3 A1 B1 C1 A2 B2 C2 A3 B3 C2 Join

WIBR Bioinformatics, © Whitehead Institute, 2004 Table Algebra Union Intersection Difference Union: Combine Tuples From Both Tables Without Duplicates Intersection: Remove Tuples That Are Not Found In Both Tables Difference: Remove Tuples That Are Not Shared In One Of The Tables

WIBR Bioinformatics, © Whitehead Institute, 2004 Aggregates Aggregates Act On An Attribute –AVG() AVG(level) –COUNT() COUNT(affyId) –MAX() MAX(level) –MIN() MIN(species) –SUM() SUM(level)

WIBR Bioinformatics, © Whitehead Institute, 2004 Project List Nucleotide RefSeqs In RefSeqs Table | linkId | ntRefSeq | aaRefSeq | | 1 | NM_ | NP_ | | 2 | NM_ | NP_ | | 3 | NG_ | | | 9 | NM_ | NP_ | | 10 | NM_ | NP_ | > SELECT ntRefSeq FROM RefSeqs LIMIT 5; | ntRefSeq | | NM_ | | NM_ | | NG_ | | NM_ | | NM_ |

WIBR Bioinformatics, © Whitehead Institute, 2004 Project With Math List Expression Levels And Twice Level In Data Table > SELECT level, level*2 FROM Data LIMIT 5; | affyId | exptId | level | | AFFX-MurIL2_at | hs-cer-1 | 20 | | AFFX-MurIL10_at | hs-cer-1 | 8 | | AFFX-MurIL4_at | hs-cer-1 | 77 | | AFFX-MurFAS_at | hs-cer-1 | 30 | | AFFX-BioB-5_at | hs-cer-1 | 258 | | level | level*2 | | 20 | 40 | | 8 | 16 | | 77 | 154 | | 30 | 60 | | 258 | 516 |

WIBR Bioinformatics, © Whitehead Institute, 2004 Restrict List All Human Tuples in Targets > SELECT * FROM Targets WHERE species=“Hs” LIMIT 5; | affyId | gbId | species | | 100_g_at | Y08200 | Hs | | 1000_at | X60188 | Hs | | _at | AI | Mm | | _at | M18228 | Mm | | _at | X70393 | Mm | | affyId | gbId | species | | 100_g_at | Y08200 | Hs | | 1000_at | X60188 | Hs | | 1001_at | X60957 | Hs | | 1002_f_at | X65962 | Hs | | 1003_s_at | X68149 | Hs |

WIBR Bioinformatics, © Whitehead Institute, 2004 Using WHERE Restricts Queries Having Lists, Ranges, Inequalities, Patterns > SELECT ntRefSeq, aaRefSeq FROM RefSeqs WHERE linkId = 10; > SELECT * FROM RefSeqs WHERE linkId LIKE “105%” LIMIT 5; | ntRefSeq | aaRefSeq | | NM_ | NP_ | | linkId | ntRefSeq | aaRefSeq | | 1050 | NM_ | NP_ | | 1051 | NM_ | NP_ | | 1052 | NM_ | NP_ | | 1053 | NM_ | NP_ | | 1054 | NM_ | NP_ |

WIBR Bioinformatics, © Whitehead Institute, 2004 Using WHERE > SELECT * FROM GO_Descr WHERE description = “collagen”; > SELECT * FROM Data WHERE affyId = “1000_at”; | goAcc | description | | GO: | collagen | | GO: | collagen | | affyId | exptId | level | | 1000_at | hs-cer-1 | 960 | | 1000_at | hs-hrt-1 | 441 | | 1000_at | hs-liv-1 | 744 |

WIBR Bioinformatics, © Whitehead Institute, 2004 Using ORDER BY Lists Results In Numerical/Alphabetical Order According To Specified Tuples > SELECT ntRefSeq, aaRefSeq FROM RefSeqs WHERE linkId LIKE “105%” ORDER BY linkId DESC; > SELECT ntRefSeq, aaRefSeq FROM RefSeqs WHERE linkId LIKE “105%” ORDER BY aaRefSeq DESC; | linkId | ntRefSeq | aaRefSeq | | | XM_ | XP_ | | | XM_ | XP_ | | | XM_ | XP_ | | | XM_ | XP_ | | | XM_ | XP_ | | linkId | ntRefSeq | aaRefSeq | | | NM_ | NP_ | | | XM_ | XP_ | | | XM_ | XP_ | | | XM_ | XP_ | | | XM_ | XP_ |

WIBR Bioinformatics, © Whitehead Institute, 2004 Advanced WHERE > SELECT affyId, level FROM Data WHERE level between 80 and 100 LIMIT 5; > SELECT * FROM UniSeqs WHERE gbId NOT LIKE “NM_%” LIMIT 5; | affyId | level | | AFFX-BioB-3_at | 97 | | AFFX-HUMTFRR/M11507_3_at | 90 | | AFFX-HSAC07/X00351_M_st | 86 | | 31324_at | 91 | | 31356_at | 91 | | uId | gbId | | Hs.2 | D90042 | | Hs.4 | X03350 | | Hs.11 | D90278 | | Hs.11 | L00693 | | Hs.21 | M16652 |

WIBR Bioinformatics, © Whitehead Institute, 2004 Mining With WHERE > SELECT * FROM Data WHERE level between 80 and 100 OR level < 21 LIMIT 5; > SELECT affyId, level FROM Data WHERE exptId != “hs-cer-1” AND level BETWEEN 250 AND 300 LIMIT 5; | affyId | level | | AFFX-M27830_3_at | 271 | | AFFX-HUMGAPDH/M33197_3_st | 277 | | 31315_at | 250 | | 31362_at | 256 | | 31510_s_at | 257 | | affyId | exptId | level | | AFFX-MurIL2_at | hs-cer-1 | 20 | | AFFX-MurIL10_at | hs-cer-1 | 8 | | AFFX-BioB-3_at | hs-cer-1 | 97 | | AFFX-BioB-5_st | hs-cer-1 | 20 | | AFFX-BioB-M_st | hs-cer-1 | 20 |

WIBR Bioinformatics, © Whitehead Institute, 2004 Using GROUP BY Operates Only On The Tuples That Were Not Removed By a Where > SELECT * FROM Data WHERE level < 100 GROUP BY level,affyId LIMIT 5; > SELECT * FROM Data WHERE level < 100 GROUP BY affyId, level LIMIT 5; | affyId | exptId | level | | _s_at | mm-liv-1 | 1 | | _at | mm-hrt-1 | 1 | | _at | mm-cer-1 | 1 | | _at | mm-hrt-1 | 1 | | _at | mm-cer-1 | 1 | | affyId | exptId | level | | _at | mm-hrt-1 | 5 | | _at | mm-cer-1 | 20 | | _at | mm-hrt-1 | 20 | | _at | mm-hrt-1 | 20 | | _at | mm-liv-1 | 68 |

WIBR Bioinformatics, © Whitehead Institute, 2004 Using HAVING Sets The Conditions For the GROUP BY Clause Like WHERE Sets Conditions For SELECT CAN Use Aggregates > SELECT description FROM GO_Descr GROUP BY description HAVING COUNT(description)>1 LIMIT 5; | description | | 1-phosphatidylinositol-4-phosphate kinase, class I | | 2-oxo-delta3-4,5,5-trimethylcyclopentenylacetyl-Co | | 3-methyl-2-oxobutanoate dehydrogenase (lipoamide) | | actin modification | | activation of transcription on exit from mitosis, |

WIBR Bioinformatics, © Whitehead Institute, 2004 Natural Joins Table Joining Links Tables Together Through Their Relationships And Allows You To Traverse Your Schema/Database Use SELECT And FROM To Join Tables Join Through Common Attributes With WHERE And AND Using Theta Operators: =,,!=,>=, <= Traverse From Descriptions To Sources Descriptions gbId description Targets gbId affyId species Data affyId exptId level Sources exptId source

WIBR Bioinformatics, © Whitehead Institute, | description | species | gbId | | granulysin | Hs | A00142 | | lipase, gastric | Hs | A01046 | | serine (or cysteine) proteinase inhibitor | Hs | A03911 | | albumin | Hs | A06977 | | S100 calcium binding protein A8 | Hs | A12027 | Binary Table Join > SELECT LocusDescr.description, LocusDescr.species, LocusLinks.gbId FROM LocusDescr, LocusLinks WHERE LocusDescr.linkId = LocusLinks.linkId GROUP BY LocusLinks.gbId LIMIT 5; LocusDescr linkId description species LocusLinks linkId gbId

WIBR Bioinformatics, © Whitehead Institute, 2004 Binary Table Join > SELECT GO_Descr.description, Ontologies.linkId FROM GO_Descr, Ontologies WHERE Ontologies.goAcc=GO_Descr.goAcc LIMIT 5; Ontologies linkId goAcc GO_Descr goAcc description | description | linkId | | protein carrier | 2 | | arylamine N-acetyltransferase | 9 | | arylamine N-acetyltransferase | 10 | | serine protease inhibitor | 12 | | enzyme | 13 |

WIBR Bioinformatics, © Whitehead Institute, 2004 Multiple Table Join > SELECT Descriptions.description AS gene_description, GO_Descr.description AS GO_description FROM Descriptions, GO_Descr, LocusLinks, Ontologies, Targets WHERE Descriptions.gbId=Targets.gbId AND Targets.gbId=LocusLinks.gbId AND LocusLinks.linkId=Ontologies.linkId AND Ontologies.goAcc=GO_Descr.goAcc LIMIT 5; Ontologies linkId goAcc GO_Descr goAcc description | gene_description | GO_description | | HSLFBPS7 Human fructose-1,6-biphosphatase | fructose-2,6-bisphosphate 2-phosphatase | | HSU30872 Human mitosin mRNA, complete cds | regulation of mitosis | | HSU33052 Human lipid-activated, protein kinase | protein kinase | | HSU33053 Human lipid-activated protein kinase | protein kinase | | HSU33920 Human clone lambda 5 semaphorin mRNA, | extracellular space | LocusLinks linkId gbId Targets affyId gbId Descriptions description gbId

WIBR Bioinformatics, © Whitehead Institute, 2004 Mega Table Join > SELECT Descriptions.description, Sources.source, RefSeqs.ntRefSeq FROM Descriptions, Sources, RefSeqs, Targets, LocusLinks, Data WHERE Descriptions.gbId=Targets.gbId AND Targets.gbId=LocusLinks.gbId AND LocusLinks.linkId=RefSeqs.linkId AND Targets.affyId=Data.affyId AND Data.exptId=Sources.exptId LIMIT 5; RefSeqs linkId ntRefSeq aaRefSeq Data affyId level,exptId LocusLinks linkId gbId Targets affyId gbId Descriptions description gbId | description | source | ntRefSeq | | Homo sapiens immunoglobulin lambda gene locus DNA, clone:288A10 | Human liver | NG_ | | HSIGVL009 Human rearranged immunoglobulin lambda light chain mRNA | Human heart | NG_ | | Homo sapiens immunoglobulin lambda gene locus DNA, clone:31F3 | Human liver | NG_ | | Homo sapiens immunoglobulin lambda gene locus DNA, clone:288A10 | Human brain | NG_ | | HSIGVL009 Human rearranged immunoglobulin lambda light chain mRNA | Human liver | NG_ | Sources source exptId

WIBR Bioinformatics, © Whitehead Institute, 2004 Table Self Join > SELECT Data1.affyId, Data1.exptId as exptId1, Data2.exptId as exptId2, Data1.level as level1, Data2.level as level2 FROM Data Data1, Data Data2 WHERE Data1.affyId=Data2.affyId AND Data1.level >= Data2.level*2 LIMIT 5; Data affyId exptId level | affyId | exptId1 | exptId2 | level1| level2| | AFFX-MurIL10_at | hs-cer-1 | hs-hrt-1 | 8 | 4 | | AFFX-MurIL4_at | hs-cer-1 | hs-hrt-1 | 77 | 20 | | AFFX-BioB-M_at | hs-cer-1 | mm-cer-1 | 214 | 20 | | AFFX-BioB-M_at | hs-cer-1 | mm-hrt-1 | 214 | 48 | | AFFX-BioB-M_at | hs-cer-1 | mm-liv-1 | 214 | 20 | Data affyId exptId level Identify Relationships Between Data Within A Single Table

WIBR Bioinformatics, © Whitehead Institute, 2004 Master Table Self Join > SELECT Data1.affyId, Data1.exptId as exptId1, Data2.exptId as exptId2, Data1.level as level1, Data2.level as level2 FROM Data Data1, Data Data2 WHERE Data1.affyId=Data2.affyId AND Data1.level BETWEEN Data2.level*2 AND Data2.level*3 ORDER BY Data1.affyId LIMIT 5; Data1 affyId exptId level Data2 affyId exptId level | affyId | exptId1 | exptId2 | level1| level2| | _at | mm-hrt-1 | mm-liv-1 | 52 | 20 | | _at | mm-cer-1 | mm-liv-1 | 55 | 20 | | _at | mm-cer-1 | mm-hrt-1 | 943 | 396 | | _at | mm-cer-1 | mm-liv-1 | 943 | 468 | | _at | mm-hrt-1 | mm-liv-1 | 306 | 111 |

WIBR Bioinformatics, © Whitehead Institute, 2004 Summary Tables Store Data Of Specific Types Data Can Have Default Values And Be NOT NULL Restricted Restrict And Project Use WHERE Or HAVING To Constrain SELECT Table Joins Highlight The Relationships Between Data In A Database Restrict Project

WIBR Bioinformatics, © Whitehead Institute, 2004 Next Week Build Your Own Database! Use SQL To CREATE Tables And Specify Their Structure Use SQL To INSERT and DELETE Data Into Your Database Use SQL To UPDATE/Modify Your Database Input Data Files Directly Into Your Database

WIBR Bioinformatics, © Whitehead Institute, 2004 Exercise Your SQL RefSeqs Targets Ontologies Data gbId. linkId gbId ntRefSeq affyId exptId aaRefSeq goAcc description affyId uId linkId goAcc gbId level source linkId GO_Descr LocusLinks Unigenes UniSeqs description Semi-Static Annotation Experimental LocusDescr linkId uId Sources species linkId exptId Descriptions gbId species description species UniDescr uId description