Publications-Theses

題名 在Eclipse平台上發展的一套編輯環境生成系統
A Generating System of Editing Environments On the Eclipse Platform
作者 黃立昇
Huang, Li-Sheng
貢獻者 陳正佳
Chen, Cheng-Chia
黃立昇
Huang, Li-Sheng
關鍵詞 編輯器
程式產生器
Editor
Code Generation
Eclipse
MDA
日期 2005
上傳時間 17-Sep-2009 14:06:57 (UTC+8)
摘要 編輯器針對標的語言提供的編輯輔助,能夠幫助使用者縮短輸入的過程,並且避免輸入的錯誤。然而此種編輯器開發不易,因此大多數特定領域語言(Domain Specific Language)並無提供編輯輔助的專屬編輯器。Eclipse為一套普遍使用的開發環境與工具整合平台,提供了文字編輯器程式框架使建造此種編輯器成為可能,然而大多數的開發者仍然無法透過此複雜的框架開發少數人使用的編輯器。基於此種因素,我們實做EGOE這一套編輯器生成系統,以標的語言的定義為基礎,使用MDA模型驅動的方式在Eclipse平台上自動生成編輯器,使之為標的語言提供結構化編輯與純文字編輯等不同的編輯方式,並且於文字編輯時提供醒目提示、內容輔助與文字喜好設定等編輯相關的輔助功能。
An editor with special editing aids for a language can increase efficiency and reduce errors while editing sources of the target language. Although of great use, this kind of editors were difficult to create as witnessed by the lack of a language-specific editor (LSE) for most domain specific languages. As the release of Eclipse, however, the situation is changing. Eclipse is an integrated development environment (IDE) firstly published in late 2001 but quickly emerged as a most used IDE. It is indeed also a tool integration platform providing, besides others, a text editor framework, thus making the development of LSEs on Eclipse possible. However, due to the complication of the platform and, especially, the editor framework, it is not easy at all to develop an LSE directly on the framework without any help. We thus in this thesis propose alternatively a generating system of editing environments on the Eclipse platform, which, when given an editing-related specification of the target language, can apply the model-driven approach as suggested by OMG`s MDA to generate an editing environment for the target language on Eclipse. The generated editor provides both structured and text editing capabilities. For text editing, we add among its functionalities those such as syntax highlight, content assist and preferences setting for the target language.
參考文獻 [1] Altova XMLSpy. Retrieved April 24, 2006. From http://www.altova.com/products_ide.html.
[2] ANTLR Parser Generator. Retrieved April 25, 2006.From http://www.antlr.org/.
[3] Aspect-Oriented Software Development Community & Conference. Retrieved May 22, 2006.From http://aosd.net/.
[4] Bergstra, J.A. and P. Klint (1998). The discrete time Toolbus -- A software coordination architecture. Science of Computer Programming 31:205--229.
[5] Borland JBuilder. Retrieved April 24, 2006. From http://www.borland.com/us/products/jbuilder/index.html.
[6] Brand, M.G.J. van den, A. van Deursen, J. Heering, H.A. de Jong, M. de Jonge, T. Kuipers, P. Klint, L. Moonen, P.A. Olivier, J. Scheerder, J.J. Vinju, E. Visser, and J. Visser (2001). The Asf+Sdf Meta-Environment: a Component-Based Language Development Environment. Compiler Construction 2001 (CC`01). 365--370. Springer-Verlag.
[7] Brand, M.G.J. van den, A. van Deursen, P. Klint, S. Klusener, and E.A. van der Meulen (1996). Industrial Applications of Asd+Sdf. Algebraic Methodology and Software Technology (AMAST`96). 9-18. Springer-Verlag.
[8] Brand, M.G.J. van den, Bas Cornelissen, P.A. Olivier, and J.J Vinju (2005). TIDE: a generic debugging framewor". Language Design Tools and Applications.
[9] Brand, M.G.J. van den, H.A. de Jong, P. Klint, and P.A. Olivier (2000a). Efficient Annotated Terms. Software -- Practice & Experience 30:259--291.
[10] Brand, M.G.J. van den, J. Heering, P. Klint, and P.A. Olivier (2002a). Compiling Rewrite Systems: The ASF+SDF Compiler. ACM Transactions on Programming Languages and Systems 24:334--368.
[11] Brand, M.G.J. van den, J. Scheerder, J.J. Vinju, and E. Visser (2002). Disambiguation Filters for Scannerless Generalized LR Parsers. Compiler Construction 2002 (CC 2002). 143--158.
[12] Brand, M.G.J. van den, P.E. Moreau, and J.J. Vinju (2003a). A generator of efficient strongly typed abstract syntax trees in Java. Technical report, SEN-E0306 .
[13] Brand, M.G.J. van den, P. Klint, and P.A. Olivier (1999). Compilation and Memory Management for ASF+SDF. Compiler Construction (CC`99). 198-213.
[14] Eclipse.org. Retrieved April 24, 2006. From http://www.eclipse.org/.
[15] Eclipse Modeling Framework. Retrieved April 25, 2006. From http://www.eclipse.org/emf/.
[16] Eclipse Platform Technical Overview. Retrieved April 24, 2006. From http://www.eclipse.org/whitepapers/eclipse-overview.pdf
[17] EditPlus. Retrieved April 24, 2006. From http://www.editplus.com/.
[18] Frank Budinsky, David Steinberg, Ed Merks, Raymond Ellersick and Timothy J. Grose. August 2003. Eclipse Modeling Framework. Addison-Wesley Pub Co.
[19] Isabelle Attali, Carine Courbis, Pascal Degenne, Alexandre Fau, Didier Parigot, and Claude Pasquier (2001). SmartTools: a Generator of Interactive Environments Tools. International Conference on Compiler Construction CC`01, volume 2027 of Lect. Notes in Computer Science.
[20] Isabelle Attali, Carine Courbis, Pascal Degenne, Alexandre Fau, Joël Fillon, Didier Parigot, Claude Pasquier, and Claudio Sacerdoti Coen. (2001). SmartTools: a development environment generator based on XML technologies. In XML Technologies and Software Engineering, Toronto, Canada, 2001. ICSE`2001, ICSE workshop proceedings.
[21] Isabelle Attali, Carine Courbis, Pascal Degenne, Alexandre Fau, Joel Fillon, Christophe Held, Didier Parigot, and Claude Pasquier (2002). Aspect and XML-oriented Semantic Framework Generator SmartTools. Electronic Notes in Theoretical Computer Science (ENTCS), 65 (3). pp. 1-20.
[22] JET Tutorial Part1 (Introduction to Jet). Retrieved May 22, 2006. From http://www.eclipse.org/articles/Article-JET/jet_tutorial1.html
[23] JET Tutorial Part2 (Write Code that Writes Code). Retrieved May 22, 2006. From http://www.eclipse.org/articles/Article-JET2/jet_tutorial2.html
[24] Jong, H.A. de and P.A Olivier (2003). Generation of abstract programming interfaces from syntax definitions. Journal of Logic and Algebraic Programming.
[25] MetaEnvironment. Retrieved May 28, 2006. From http://www.cwi.nl/htbin/sen1/twiki/bin/view/SEN1/MetaEnvironment
[26] MDA. Retrieved April 24, 2006. From http://www.omg.org/mda/.
[27] MDA Guide. Retrieved April 24, 2006. From http://www.omg.org/docs/omg/03-06-01.pdf.
[28] NetBeans.org. Retrieved June 8, 2006. From http://www.netbeans.org/.
[29] Object Management Group. Retrived April 30, 2006. From http://www.omg.org/.
[30] OMG’s MetaObject Facility (MOF) Home Page. Retrieved April 30, 2006. From http://www.omg.org/mof/.
[31] ParserTableGenerator. Retrieved May 28, 2006. From http://www.cwi.nl/htbin/sen1/twiki/bin/view/SEN1/ParsetableGenerator
[32] Placid Systems – Antlr Studio. Retrieved April 24, 2006. From http://www.placidsystems.com/.
[33] Platform Text Component. Retrieved April 25, 2006. From http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-text-home/main.html.
[34] Sherry Shavor, Jim D’Anjou, Scott Fairbrother, Dan Kehn, John Kellerman, and Pat McCarthy. September 2003. The Java Developer’s Guide to Eclipse. Addison-Wesley Pub Co.
[35] SmartTools Software Factories. Retrieved May 22, 2006. From http://www-sop.inria.fr/smartool/
[36] StringTemplate Template Engine. Retrieved May 22, 2006. From http://www.stringtemplate.org/
[37] Terence Parr. [Draft] A Functional Language For Generating Structured Text. Retrieved May 22, 2006. From http://www.cs.usfca.edu/~parrt/papers/ST.pdf
[38] Terence Parr. Enforcing Strict Model-View Separation in Template Engines. In WWW2004 Conference Proceedings p. 224, May 17-20 2004, New York City.
[39] The Data Warehousing, CWM and MOF Resource Page. Retrieved April 30, 2006. From http://www.omg.org/technology/cwm/.
[40] Tony Clark, Andy Evans, Paul Sammut, James Willans (2004). Language Driven Development and MDA. MDA Journal.
[41] UltraEdit. Retrieved April 24, 2006. From http://www.ultraedit.com/.
[42] Unified Modeling Language. Retrieved April 30, 2006. From http://www.uml.org/.
[43] XML Metadata Interchange. Retrieved April 30, 2006. From http://www.omg.org/technology/documents/formal/xmi.htm.
描述 碩士
國立政治大學
資訊科學學系
91753034
94
資料來源 http://thesis.lib.nccu.edu.tw/record/#G0917530341
資料類型 thesis
dc.contributor.advisor 陳正佳zh_TW
dc.contributor.advisor Chen, Cheng-Chiaen_US
dc.contributor.author (Authors) 黃立昇zh_TW
dc.contributor.author (Authors) Huang, Li-Shengen_US
dc.creator (作者) 黃立昇zh_TW
dc.creator (作者) Huang, Li-Shengen_US
dc.date (日期) 2005en_US
dc.date.accessioned 17-Sep-2009 14:06:57 (UTC+8)-
dc.date.available 17-Sep-2009 14:06:57 (UTC+8)-
dc.date.issued (上傳時間) 17-Sep-2009 14:06:57 (UTC+8)-
dc.identifier (Other Identifiers) G0917530341en_US
dc.identifier.uri (URI) https://nccur.lib.nccu.edu.tw/handle/140.119/32713-
dc.description (描述) 碩士zh_TW
dc.description (描述) 國立政治大學zh_TW
dc.description (描述) 資訊科學學系zh_TW
dc.description (描述) 91753034zh_TW
dc.description (描述) 94zh_TW
dc.description.abstract (摘要) 編輯器針對標的語言提供的編輯輔助,能夠幫助使用者縮短輸入的過程,並且避免輸入的錯誤。然而此種編輯器開發不易,因此大多數特定領域語言(Domain Specific Language)並無提供編輯輔助的專屬編輯器。Eclipse為一套普遍使用的開發環境與工具整合平台,提供了文字編輯器程式框架使建造此種編輯器成為可能,然而大多數的開發者仍然無法透過此複雜的框架開發少數人使用的編輯器。基於此種因素,我們實做EGOE這一套編輯器生成系統,以標的語言的定義為基礎,使用MDA模型驅動的方式在Eclipse平台上自動生成編輯器,使之為標的語言提供結構化編輯與純文字編輯等不同的編輯方式,並且於文字編輯時提供醒目提示、內容輔助與文字喜好設定等編輯相關的輔助功能。zh_TW
dc.description.abstract (摘要) An editor with special editing aids for a language can increase efficiency and reduce errors while editing sources of the target language. Although of great use, this kind of editors were difficult to create as witnessed by the lack of a language-specific editor (LSE) for most domain specific languages. As the release of Eclipse, however, the situation is changing. Eclipse is an integrated development environment (IDE) firstly published in late 2001 but quickly emerged as a most used IDE. It is indeed also a tool integration platform providing, besides others, a text editor framework, thus making the development of LSEs on Eclipse possible. However, due to the complication of the platform and, especially, the editor framework, it is not easy at all to develop an LSE directly on the framework without any help. We thus in this thesis propose alternatively a generating system of editing environments on the Eclipse platform, which, when given an editing-related specification of the target language, can apply the model-driven approach as suggested by OMG`s MDA to generate an editing environment for the target language on Eclipse. The generated editor provides both structured and text editing capabilities. For text editing, we add among its functionalities those such as syntax highlight, content assist and preferences setting for the target language.en_US
dc.description.tableofcontents 第1章 序論 1
1.1 研究動機 1
1.2 問題描述 3
1.3 論文貢獻與特色 4
1.4 論文章節架構 5
第2章 生成開發環境的需求分析與相關系統簡介 7
2.1 相關系統簡介 7
2.1.1 ASF+SDF Meta-Environment 8
2.1.2 SmartTools 8
2.1.3 EMF 9
2.2 需求分析與功能比較 10
2.2.1 開發平台 10
2.2.2 系統架構 11
2.2.3 抽象語法編輯能力 12
2.2.4 實際語法的編輯與處理 13
2.2.5 編輯器 14
2.2.6 程式碼的生成 15
2.2.7 總結 16
2.3 現代化文字編輯器的功能簡介 17
2.4 Eclipse文字編輯器框架 20
2.4.1 概觀 21
2.4.2 Model, View與Controller 23
2.5 現代化編輯環境的功能需求 26
2.6 MDA 27
第3章 系統架構 29
3.1 EMF系統架構簡介 30
3.2 系統架構 33
3.3 輸入的標的語言模型 34
3.3.1 抽象語法 34
3.3.2 實際語法 38
3.3.3 編輯設定 44
3.4 程式碼產生器 47
3.5 程式碼架構 48
第4章 系統實作 51
4.1 產生編輯器 51
4.1.1 功能需求 52
4.1.2 相關外掛程式 53
4.1.3 修改程式樣版的產出 54
4.1.4 修改外掛說明檔樣版 59
4.2 產生編輯功能程式碼 61
4.2.1 醒目提示與內容輔助程式框架 62
4.2.2 程式需求與資料物件 64
4.2.3 程式樣版 65
4.2.4 資料處理與執行樣版 67
4.2.5 內容輔助與字型喜好頁面 68
4.3 模型轉換器 69
4.4 模型處理器 71
4.5 語法分析程式產生器 74
4.6 XSLT產生器 77
第5章 範例 81
第6章 結論與未來研究方向 87
6.1 結論 87
6.2 未來研究方向 88
參考資料 91
zh_TW
dc.format.extent 48707 bytes-
dc.format.extent 117733 bytes-
dc.format.extent 103741 bytes-
dc.format.extent 122934 bytes-
dc.format.extent 270153 bytes-
dc.format.extent 701020 bytes-
dc.format.extent 689114 bytes-
dc.format.extent 688901 bytes-
dc.format.extent 253460 bytes-
dc.format.extent 196811 bytes-
dc.format.extent 31551 bytes-
dc.format.mimetype application/pdf-
dc.format.mimetype application/pdf-
dc.format.mimetype application/pdf-
dc.format.mimetype application/pdf-
dc.format.mimetype application/pdf-
dc.format.mimetype application/pdf-
dc.format.mimetype application/pdf-
dc.format.mimetype application/pdf-
dc.format.mimetype application/pdf-
dc.format.mimetype application/pdf-
dc.format.mimetype application/pdf-
dc.language.iso en_US-
dc.source.uri (資料來源) http://thesis.lib.nccu.edu.tw/record/#G0917530341en_US
dc.subject (關鍵詞) 編輯器zh_TW
dc.subject (關鍵詞) 程式產生器zh_TW
dc.subject (關鍵詞) Editoren_US
dc.subject (關鍵詞) Code Generationen_US
dc.subject (關鍵詞) Eclipseen_US
dc.subject (關鍵詞) MDAen_US
dc.title (題名) 在Eclipse平台上發展的一套編輯環境生成系統zh_TW
dc.title (題名) A Generating System of Editing Environments On the Eclipse Platformen_US
dc.type (資料類型) thesisen
dc.relation.reference (參考文獻) [1] Altova XMLSpy. Retrieved April 24, 2006. From http://www.altova.com/products_ide.html.zh_TW
dc.relation.reference (參考文獻) [2] ANTLR Parser Generator. Retrieved April 25, 2006.From http://www.antlr.org/.zh_TW
dc.relation.reference (參考文獻) [3] Aspect-Oriented Software Development Community & Conference. Retrieved May 22, 2006.From http://aosd.net/.zh_TW
dc.relation.reference (參考文獻) [4] Bergstra, J.A. and P. Klint (1998). The discrete time Toolbus -- A software coordination architecture. Science of Computer Programming 31:205--229.zh_TW
dc.relation.reference (參考文獻) [5] Borland JBuilder. Retrieved April 24, 2006. From http://www.borland.com/us/products/jbuilder/index.html.zh_TW
dc.relation.reference (參考文獻) [6] Brand, M.G.J. van den, A. van Deursen, J. Heering, H.A. de Jong, M. de Jonge, T. Kuipers, P. Klint, L. Moonen, P.A. Olivier, J. Scheerder, J.J. Vinju, E. Visser, and J. Visser (2001). The Asf+Sdf Meta-Environment: a Component-Based Language Development Environment. Compiler Construction 2001 (CC`01). 365--370. Springer-Verlag.zh_TW
dc.relation.reference (參考文獻) [7] Brand, M.G.J. van den, A. van Deursen, P. Klint, S. Klusener, and E.A. van der Meulen (1996). Industrial Applications of Asd+Sdf. Algebraic Methodology and Software Technology (AMAST`96). 9-18. Springer-Verlag.zh_TW
dc.relation.reference (參考文獻) [8] Brand, M.G.J. van den, Bas Cornelissen, P.A. Olivier, and J.J Vinju (2005). TIDE: a generic debugging framewor". Language Design Tools and Applications.zh_TW
dc.relation.reference (參考文獻) [9] Brand, M.G.J. van den, H.A. de Jong, P. Klint, and P.A. Olivier (2000a). Efficient Annotated Terms. Software -- Practice & Experience 30:259--291.zh_TW
dc.relation.reference (參考文獻) [10] Brand, M.G.J. van den, J. Heering, P. Klint, and P.A. Olivier (2002a). Compiling Rewrite Systems: The ASF+SDF Compiler. ACM Transactions on Programming Languages and Systems 24:334--368.zh_TW
dc.relation.reference (參考文獻) [11] Brand, M.G.J. van den, J. Scheerder, J.J. Vinju, and E. Visser (2002). Disambiguation Filters for Scannerless Generalized LR Parsers. Compiler Construction 2002 (CC 2002). 143--158.zh_TW
dc.relation.reference (參考文獻) [12] Brand, M.G.J. van den, P.E. Moreau, and J.J. Vinju (2003a). A generator of efficient strongly typed abstract syntax trees in Java. Technical report, SEN-E0306 .zh_TW
dc.relation.reference (參考文獻) [13] Brand, M.G.J. van den, P. Klint, and P.A. Olivier (1999). Compilation and Memory Management for ASF+SDF. Compiler Construction (CC`99). 198-213.zh_TW
dc.relation.reference (參考文獻) [14] Eclipse.org. Retrieved April 24, 2006. From http://www.eclipse.org/.zh_TW
dc.relation.reference (參考文獻) [15] Eclipse Modeling Framework. Retrieved April 25, 2006. From http://www.eclipse.org/emf/.zh_TW
dc.relation.reference (參考文獻) [16] Eclipse Platform Technical Overview. Retrieved April 24, 2006. From http://www.eclipse.org/whitepapers/eclipse-overview.pdfzh_TW
dc.relation.reference (參考文獻) [17] EditPlus. Retrieved April 24, 2006. From http://www.editplus.com/.zh_TW
dc.relation.reference (參考文獻) [18] Frank Budinsky, David Steinberg, Ed Merks, Raymond Ellersick and Timothy J. Grose. August 2003. Eclipse Modeling Framework. Addison-Wesley Pub Co.zh_TW
dc.relation.reference (參考文獻) [19] Isabelle Attali, Carine Courbis, Pascal Degenne, Alexandre Fau, Didier Parigot, and Claude Pasquier (2001). SmartTools: a Generator of Interactive Environments Tools. International Conference on Compiler Construction CC`01, volume 2027 of Lect. Notes in Computer Science.zh_TW
dc.relation.reference (參考文獻) [20] Isabelle Attali, Carine Courbis, Pascal Degenne, Alexandre Fau, Joël Fillon, Didier Parigot, Claude Pasquier, and Claudio Sacerdoti Coen. (2001). SmartTools: a development environment generator based on XML technologies. In XML Technologies and Software Engineering, Toronto, Canada, 2001. ICSE`2001, ICSE workshop proceedings.zh_TW
dc.relation.reference (參考文獻) [21] Isabelle Attali, Carine Courbis, Pascal Degenne, Alexandre Fau, Joel Fillon, Christophe Held, Didier Parigot, and Claude Pasquier (2002). Aspect and XML-oriented Semantic Framework Generator SmartTools. Electronic Notes in Theoretical Computer Science (ENTCS), 65 (3). pp. 1-20.zh_TW
dc.relation.reference (參考文獻) [22] JET Tutorial Part1 (Introduction to Jet). Retrieved May 22, 2006. From http://www.eclipse.org/articles/Article-JET/jet_tutorial1.htmlzh_TW
dc.relation.reference (參考文獻) [23] JET Tutorial Part2 (Write Code that Writes Code). Retrieved May 22, 2006. From http://www.eclipse.org/articles/Article-JET2/jet_tutorial2.htmlzh_TW
dc.relation.reference (參考文獻) [24] Jong, H.A. de and P.A Olivier (2003). Generation of abstract programming interfaces from syntax definitions. Journal of Logic and Algebraic Programming.zh_TW
dc.relation.reference (參考文獻) [25] MetaEnvironment. Retrieved May 28, 2006. From http://www.cwi.nl/htbin/sen1/twiki/bin/view/SEN1/MetaEnvironmentzh_TW
dc.relation.reference (參考文獻) [26] MDA. Retrieved April 24, 2006. From http://www.omg.org/mda/.zh_TW
dc.relation.reference (參考文獻) [27] MDA Guide. Retrieved April 24, 2006. From http://www.omg.org/docs/omg/03-06-01.pdf.zh_TW
dc.relation.reference (參考文獻) [28] NetBeans.org. Retrieved June 8, 2006. From http://www.netbeans.org/.zh_TW
dc.relation.reference (參考文獻) [29] Object Management Group. Retrived April 30, 2006. From http://www.omg.org/.zh_TW
dc.relation.reference (參考文獻) [30] OMG’s MetaObject Facility (MOF) Home Page. Retrieved April 30, 2006. From http://www.omg.org/mof/.zh_TW
dc.relation.reference (參考文獻) [31] ParserTableGenerator. Retrieved May 28, 2006. From http://www.cwi.nl/htbin/sen1/twiki/bin/view/SEN1/ParsetableGeneratorzh_TW
dc.relation.reference (參考文獻) [32] Placid Systems – Antlr Studio. Retrieved April 24, 2006. From http://www.placidsystems.com/.zh_TW
dc.relation.reference (參考文獻) [33] Platform Text Component. Retrieved April 25, 2006. From http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-text-home/main.html.zh_TW
dc.relation.reference (參考文獻) [34] Sherry Shavor, Jim D’Anjou, Scott Fairbrother, Dan Kehn, John Kellerman, and Pat McCarthy. September 2003. The Java Developer’s Guide to Eclipse. Addison-Wesley Pub Co.zh_TW
dc.relation.reference (參考文獻) [35] SmartTools Software Factories. Retrieved May 22, 2006. From http://www-sop.inria.fr/smartool/zh_TW
dc.relation.reference (參考文獻) [36] StringTemplate Template Engine. Retrieved May 22, 2006. From http://www.stringtemplate.org/zh_TW
dc.relation.reference (參考文獻) [37] Terence Parr. [Draft] A Functional Language For Generating Structured Text. Retrieved May 22, 2006. From http://www.cs.usfca.edu/~parrt/papers/ST.pdfzh_TW
dc.relation.reference (參考文獻) [38] Terence Parr. Enforcing Strict Model-View Separation in Template Engines. In WWW2004 Conference Proceedings p. 224, May 17-20 2004, New York City.zh_TW
dc.relation.reference (參考文獻) [39] The Data Warehousing, CWM and MOF Resource Page. Retrieved April 30, 2006. From http://www.omg.org/technology/cwm/.zh_TW
dc.relation.reference (參考文獻) [40] Tony Clark, Andy Evans, Paul Sammut, James Willans (2004). Language Driven Development and MDA. MDA Journal.zh_TW
dc.relation.reference (參考文獻) [41] UltraEdit. Retrieved April 24, 2006. From http://www.ultraedit.com/.zh_TW
dc.relation.reference (參考文獻) [42] Unified Modeling Language. Retrieved April 30, 2006. From http://www.uml.org/.zh_TW
dc.relation.reference (參考文獻) [43] XML Metadata Interchange. Retrieved April 30, 2006. From http://www.omg.org/technology/documents/formal/xmi.htm.zh_TW