第三章 材料、方法與架構
3.4 網站架構與演算法
DIPLEX 主要分為七項功能,包含:
z Gene Look up:提供基因的相關資訊。
z Gene ID Translator:提供基因 ID 轉換的功能,相似於 MatchMiner。
z Multiple Gene Annotation:提供基因註解的功能。
z UniGene Tracer:提供查核手邊的 UniGene 是否過期。
z Gene Expression:提供基因在各個組織的表現量。
z Pathway Finder:提供搜尋統計基因相關的生化反應路徑。
Gene Look up page GeneLookup.html Gene Look up page GeneLookup.html
Gene ID Translator page GeneIDTranslator.html Gene ID Translator page GeneIDTranslator.html
Multiple Gene Annotation page GeneAnnotation.html
Multiple Gene Annotation page GeneAnnotation.html
Gene Match page GeneMatch.html Gene Match page GeneMatch.html
UniGene Tracer page UniGeneTracer.html UniGene Tracer page UniGeneTracer.html
Gene Expression page GeneExpression.html Gene Expression page GeneExpression.html
Pathway Finder page PathwayFinder.html Pathway Finder page PathwayFinder.html HTML Page
GLU.jsp GLU.jsp JSP Page
GIT.jsp (General Process) GIT.jsp (General Process) BGIT.jsp (Batch Process) BGIT.jsp (Batch Process)
GMT-I.jsp (Type I) GMT-I.jsp (Type I) GMT-II.jsp (Type II) GMT-II.jsp (Type II) GMT-III.jsp (Type III) GMT-III.jsp (Type III) MGA.jsp (General Process) MGA.jsp (General Process)
BMGA.jsp (Batch Process) BMGA.jsp (Batch Process)
MGA1.jsp (Display HTML) MGA1.jsp (Display HTML) MGA2.jsp (Display Excel) MGA2.jsp (Display Excel)
BMGA1.jsp (Display HTML) BMGA1.jsp (Display HTML) BMGA2.jsp (Display Excel) BMGA2.jsp (Display Excel)
GE.jsp GE.jsp
SPF.jsp (General Process) SPF.jsp (General Process) BSPF.jsp (Batchl Process) BSPF.jsp (Batchl Process)
GE-I.jsp ~ GE-IV.jsp GE-I.jsp ~ GE-IV.jsp
<圖3.4-1 DIPLEX SiteMap>
圖中右邊JSP Page 底下括號內的General Process,表示使用者直接在網頁中輸入資料,
而Batch Process則是處理使用者上傳的檔案。
DIPLEX 是依照三層式(3-tier)架構建立,分別為 Presentation Layer、Business Layer、Data Layer。在<圖 3.4-2 三層式架構示意圖 A >和<圖 3.4-3 三層式架構示意圖 B >中,使用者 所使用到的功能皆包含一個重要元件『Gene ID Translate BOX』,這個元件就像一個黑盒 子一樣,只要丟基因ID 進去,就會回傳所要轉換的 ID 回來,再由各功能所屬的 Middle Process Program 處理,最後輸出結果至 Result Page。<圖 3.4-2 三層式架構示意圖 A >中,
左邊Presentation Layer 列出 DIPLEX 和 Gene Info Database 有關的四項功能。右邊的 Gene Info Database,整合了 2.1 節所述之相關資料庫的資料,包括:NCBI 相關 database、Gene Ontology、HUGO..等。 Gene Match
page Gene Match
page
Middle Process Program Middle Process
Program
RequestRequest ResponseResponse
<圖3.4-2 三層式架構示意圖A>
圖中『Middle Process Program』表示各程式的一個中繼處理概念,並非指一特定程式元
件。Gene Info Database 整合所有基因相關的資料。
<圖 3.4-2 三層式架構示意圖 B >中,左邊 Presentation Layer 列出 DIPLEX 三項功能,其 中『UniGene page』直接存取 Gene Info Database 判讀 UniGene 是否已被修正。『Microarray Gene Expression page』經由 BOX 轉換 ID 後,由 Middle Process Program 存取 Gene Expression Database 後產生基因表現數據圖。『Pathway Finder page』則存取 Pathway Database。
Middle Process Program Middle Process
Program
圖中『Middle Process Program』表示各程式的一個中繼處理概念,並非指一特定程式元
件。Gene Info Database 整合所有基因ID相關的資料。Gene Expression Database收集各 組織的基因在Microarray上的表現數據資料,包含Normal和Cancer兩種不同組織的細 胞。Pathway Database 收集了KEGG和Biocarta的Pathway Map與基因對應的資料。
3.4.1 Gene ID Translate BOX
DIPLEX 最重要的核心就是『Gene ID Translate BOX』,所有的功能皆要透過這個 BOX 來轉換基因的ID,<圖 3.4.1-1 Gene ID Translate BOX Algorithm>描繪出 BOX 所用的演 算法流程,<圖 3.4.1-2>舉例詳細說明演算法的流程。BOX 所能接受的 Input Type 有 10 種,包括:EntrezGene、UniGene、Gene Symbol、Clone IMAGE、Gene Ontology、SwissProt、
OMIM Number、GenBank Accession、RefSeq、Affy Probe Set ID。Output Type 有 13 種,
包含Input Type 以及 SAGE Tage、Maps、Aliases 等。
Microarray Microarray Clone Image ID Clone Image ID Affy
AffyProbe Set IDProbe Set ID
GenBank GenBank Accession NO.
Accession NO. Entrez GeneIDEntrez GeneID
UniGene ID
SwissProt Gene OntologyGene Ontology Retrieval Connect to Connect to Entrez GeneID
<圖3.4.1-1 Gene ID Translate BOX Algorithm>
Middle Process Program 輸入資料到 BOX 後,BOX 會先判斷輸入為何種 Type,轉為 Entrez GeneID,再以Entrez GeneID回頭做Retrieval的動作。圖中藍色箭頭表示有直接
對應到Entrez GeneID,紫色線表示其它對應路徑。
Clone Image ID Clone Image ID Affy Probe Set ID Affy Probe Set ID
Microarray
Microarray GenBank GenBank
Accession NO. Entrez Gene ID Entrez Gene ID Is geneID exist?
No
Yes Yes
Map to RefSeq Map to RefSeq Map to UniGene
Map to UniGene Yes
Is RefSeq exist?
Is UniGene exist?
Is geneID exist?
Unknown EST Unknown EST
No
Is geneID exist? No
Map to Map to Entrez Gene ID Entrez Gene ID
Yes
No
No
Gene ID Translate BOX
<圖3.4.1-2 Gene ID Translate BOX Algorithm Flow Chart>
當輸入的是Clone Image ID 或是 Affy Probe Set ID時,會先轉為GenBank Accession NO,接著判斷是否有對應到Entrez GeneID,若沒有則再判斷是否有對應到RefSeq ID,
再經由RefSeq ID接著判斷是否有對應到Entrez GeneID,若沒有對應則再判斷是否有對
應到UniGene ID,再經由UniGene ID對應到 Entrez GeneID,沒有對應則為Unknown EST。演算法所有的路徑中,透過UniGene 所產生出對應 Entrez GeneID 的結果,由於
UniGene本身有可能會變動,其可信度較低,有錯誤的疑慮,因此需要定期更新。
3.4.2 Pathway Finder
Pathway Finder 整合了KEGG和BioCarta pathway database中所有的pathway maps, KEGG pathway database目前包含有179張pathway maps,和大約2,926 genes相關;
Biocarta pathway database則包含有355張pathway maps,和大約4,654 genes 相關。透 過DIPLEX的Pathway Finder,使用者輸入一串基因List後,可搜尋到所有和基因List 有關的pathway maps,並且會計算出有多少基因在哪張pathway map上。Pathway Finder 的演算法流程如<圖3.4.2>所示。
Create array for Create array for
maps maps
Is geneID in map?
Pathway Finder
Counting total Counting total pathway No.
Counting and put
GeneID into array Next?
Yes
No
Show maps
<圖3.4.2 Pathway Finder Algorithm Flow Chart >
使用者輸入基因List後,透過Gene ID Translate Box將輸入的基因轉為Entrez Gene ID, 在判斷是否有Gene ID和Pathway Map有關,並且計算相關基因的個數,最後show出 結果。