Cho đến đõy, ta đó hoàn thành mục tiờu đặt ra ban đầu, đú là tổng kết lại cỏc nghiờn cứu đó cụng bố và đưa ra giải phỏp tối ưu hơn cho vấn đềđối sỏnh lược đồ. Tuy nhiờn nhưđó thấy, vấn đề này vẫn chưa được giải quyết triệt để. Ta vẫn cũn cú thể mở rộng kết quả này để thu được một giải phỏp đối sỏnh toàn diện hơn. Sau đõy là một số hướng phỏt triển cho đề tài này:
* Đối sỏnh ngụn ngữ và đối sỏnh dựa trờn ràng buộc
Về cơ bản, giải phỏp của chỳng tụi vẫn chỉ quan tõm nhiều đến đối sỏnh cấu trỳc. Vấn đề cũn lại là đối sỏnh ngụn ngữ và đối sỏnh dựa trờn ràng buộc.
Trong đối sỏnh ngụn ngữ, chỳng tụi đó sử dụng giải thuật của Hirst và St-Onge nhằm so sỏnh tờn cỏc phần tử cũng như giải phỏp của hệ thống Cupid nhằm giải quyết cỏc vấn đề như tờn phần tử cú tồn tại từ viết tắt, từ rỳt gọn, cỏc dấu chấm cõu, v.v.. Tuy vậy, để khai thỏc cỏc quan hệ từđồng nghĩa hoặc tổng quỏt nghĩa ta cũn cần phải sử dụng cỏc từ điển chuyờn đề hoặc cỏc từ điển nhưWordNet. Thờm vào đú, đối sỏnh thuật ngữ cú thể phải sử dụng cỏc từđiển chuyờn đề bao gồm tờn chung, từđồng nghĩa, từ viết tắt, v.v.. Cú thể dựa vào cỏc nghiờn cứu về từ điển chuyờn đề để thực hiện cụng việc này. Ngoài ra cũng cú thể sử dụng kết hợp cỏc phương phỏp đối sỏnh xõu thớch hợp để bổ sung cho kết quảđối sỏnh ngụn ngữ.
Trong đối sỏnh dựa trờn ràng buộc, chỳng tụi đó giới hạn trong việc phõn tớch sự tương thớch kiểu dữ liệu. Tuy vậy, ta cú thể thờm vào tập ứng viờn đối sỏnh một số ràng buộc như đơn nhất hay toàn vẹn bằng cỏch sử dụng cỏc kỹ thuật nhưđược mụ tả trong [13]. Hơn nữa, cỏc phõn tớch về ràng buộc kiểu dữ liệu của chỳng tụi cũng bị giới hạn ở một số khớa cạnh, chẳng hạn như chỳng tụi khụng xột đối sỏnh mẫu. Để mở rộng vấn đề này, ta cú thể sử dụng cỏc nghiờn cứu về biểu thức chớnh quy và đối sỏnh mẫu.
* Tương tỏc người dựng hiệu quả
Một trong những vấn đề quan trọng nhất của đối sỏnh lược đồ là tương tỏc người dựng hiệu quả. Đầu vào người dựng cần phải được đưa vào tại cỏc thời điểm then chốt mà ở đú nú là cú ớch nhất, khụng nhất thiết phải là trước và/hay sau đối sỏnh, điều này làm cho việc hiệu chỉnh sau khi đối sỏnh dễ dàng hơn vỡ cỏc phỏng đoỏn sai lệch mà khụng cú sự xỏc nhận của người dựng sẽ khụng được xột đến. Hơn nữa, sự phỏt triển mạnh mẽ của cỏc hệ thống chia sẻ dữ liệu Web sẽ làm tăng hơn nữa vấn đề tương tỏc người dựng. Trong thực tế, ngay cả nếu tồn tại một giải phỏp đối sỏnh gần hoàn hảo, người dựng vẫn phải xỏc nhận tớnh hợp lệ của một số lượng lớn cỏc kết quảđối sỏnh được đưa ra. Vấn đềởđõy là làm thế nào để giảm thiểu tương tỏc người dựng nhưng vẫn tối đa húa được ảnh hưởng của phản hồi người dựng.
* Duy trỡ ỏnh xạ
Trong cỏc mụi trường động như Web, cỏc nguồn dữ liệu cú thể thay đổi khụng chỉ về dữ liệu mà cũn cả về lược đồ và ngữ nghĩa. Cỏc thay đổi này phải được phản ỏnh lại trong ỏnh xạ. Cỏc ỏnh xạ gõy ra sự khụng nhất quỏn do sự thay đổi của lược đồ phải được phỏt hiện và hiệu chỉnh. Cú thể thấy rằng việc duy trỡ bằng tay cỏc ỏnh xạ là khụng khả thi. Điều này đũi hỏi phải phỏt triển cỏc kỹ thuật thớch ứng tựđộng cỏc ỏnh xạ khi cỏc lược đồ thay đổi.
* Đỏnh giỏ hiệu năng
Để đỏnh giỏ giải phỏp đối sỏnh lược đồ đó đưa ra một cỏch chớnh xỏc hơn, ta cần sử dụng một tập rộng cỏc ứng dụng và dữ liệu. Bờn cạnh đú, như [6] đó mụ tả, việc định lượng sự giảm bớt can thiệp người dựng trong giải phỏp đối sỏnh là rất quan trọng, do vậy ta cần cỏc phộp đo đỏnh giỏ được vấn đề này. Cuối cựng, ta cần ỏp dụng nhiều hơn nữa cỏc nghiờn cứu thực nghiệm để chỉ ra ảnh hưởng của cỏc trọng sốđó chọn lờn tiến trỡnh đối sỏnh.
Danh mục tài liệu tham khảo
[1] S. Amer-Yahia, S. Cho, D. Srivastava. Tree Pattern Relaxation, EDBT, 2002. [2] A. Budanitsky, G. Hirst. Semantic distance in WordNet: An experimental,
application oriented evaluation of five measures, 2003.
[3] D. Carmel, N. Efraty, G.M. Landau, Y.S. Maarek, Y. Mass. An Extension of the vector space model for querying XML documents via XML fragments.
Second Edition of the XML and IR Workshop, In SIGIR Forum, Volume 36 Number 2, Fall 2002.
[4] G. Cobena, S. Abiteboul, A. Marian. Detecting changes in XML Documents. In
ICDE, 2002.
[5] H.H. Do, S. Melnik, E. Rahm. Comparison of schema matching evaluations. In
Proceedings of the second International Workshop on Web Databases, 2002. [6] A.H. Doan. Learning to map between structured representations of data. PhD
thesis, University of Washington, 2002.
[7] Lexical chains as representations of context for the detection and correction of malapropisms. In: Christiane Fellbaum (editor), WordNet: An electronic lexical database, Cambridge, MA: The MIT Press, 1998.
[8] ISO, Information Processing- Text and Office systems- Standard
Generalization Markup Language (SGML), (ISO 8879:1986), International Organisation for Standardisation, Geneva, 1986.
[9] P. Leinonen. Automating XML Document Structure Transformations. In Proceedings of the ACM Symposium on Document Engineering, France, 2003.
[10] G. Linden. Structured document transformations. Report A-1997-2. CS Department of University of Helsinki, Finland, 1997.
[11] J. Madhavan, P.A. Bernstein, E. Rahm. Generic schema matching with Cupid. In Proceedings of the International Conference on Very Large Databases (VLDB), 2001.
[12] S. Melnik, H. Garcia-Molina, E. Rahm. Similarity Flooding: A versatile Graph Matching Algorithm and its Application to Schema Matching. In Proceedings of the 18th International Conference on Data Engineering, 2002.
[13] R. Miller. The Clio Project: managing heterogeneity. ACM SIGMOD Record 30(1): 78-83, 2001.
[14] A. G. Miller (1995). WordNet: A lexical Database for English. ACM 38 (11), pages 39-41, 1995.
[15] Mong Li Lee, Liang Huai Yang, Wynne Hsu, Xia Yang. XClust: Clustering XML Schemas for Effective Integration, in 11th ACM International Conference on Information and Knowledge Management, McLean, Virginia, November 2002.
[16] E. Pietriga, J-Y. Vion-Dury, V. Quint. Vxt: a visual approach to XML transformations. In Proceedings of the ACM Symposium on Document Engineering, 2001.
[17] E. Rahm, P.A. Bernstein. A survey of approaches to automatic schema matching. In VLDB Journal, pages 10: 334-350, 2001.
[18] N. Routledge, L. Bird, A. Goodchild. UML and XML Schema, ADC, 2002. [19] D. Shasha, J. Wang, K. Zhang, F. Shih. Fast algorithms for the unit cost
editing distance between trees. In Journal of Algorithms, pages 581-621, 1990. [20] L. Xu. Source Discovery and Schema Mapping for Data Integration, PhD
thesis, 2003.
[21] L. Zamboulis. XML Schema Matching & XML Data Migration & Integration: A Step Towards The Semantic Web Vision. Technical Report, 2003.
[22] A. Boukottaya, C. Vanoirbeek. Schema Matching for Transforming Structured Documents. In DocEng'05, 2-4, 2005.
[23] A. Vernet. XML transformation languages. Cú thể xem tại: http://www.scdi.org/~avernet/misc/xml-transformation. [24] XML Schema, W3C Recommendation, 2004. Cú thể xem tại:
http://www.w3.org/TR/REC-xml/.
[25] XML Schema Part 0: Primer, W3C Recommendation, 2004. Cú thể xem tại: http://www.w3.org/TR/xmlschema-0/.
[26] XML Schema Part 1: Structures, W3C Recommendation, 2004. Cú thể xem tại: http://www.w3.org/TR/xmlschema-1/.
[27] XML Schema Part 2: Datatypes, W3C Recommendation 2004. Cú thể xem tại: http://www.w3.org/TR/xmlschema-2/.
[28] XSL Transformations (XSLT), W3C Recommendation, 2004. Cú thể xem tại: http://www.w3.org/TR/xslt/.
Phụ lục A: Ngụn ngữđỏnh dấu mở rộng - XML 1. Tổng quan về XML
XML (Extensible Markup Language - ngụn ngữ định dạng mở rộng) [23], là chuẩn
đặc tả dữ liệu được sử dụng rộng rói nhất hiện nay. Cú thể thấy rằng XML cú quan hệ rất gần gũi với HTML - ngụn ngữ định dạng dựng rộng rói trong cỏc trang Web hiện nay: cả
hai đều dựa trờn chuẩn ngụn ngữ định dạng tổng quỏt SGML (Standard Generalized
Markup Language). Điểm khỏc biệt lớn nhất là cỏc thẻ HTML đó được định nghĩa trước, cũn cỏc thẻ XML là do người sử dụng định nghĩa và tựy theo mục đớch sử dụng mà cú nhiều loại định dạng khỏc nhau phỏt sinh từ cỏch thức chuẩn của XML.
Sau đõy ta xột một sốđặc trưng của XML:
- Dễ dàng trao đổi dữ liệu: XML lưu ở dạng text và cú thể dễ dàng cấu hỡnh cũng như
thay đổi chỳng bằng cỏc trỡnh soạn thảo thụng thường. XML đó được chuẩn húa, mọi người đều cú thể hiểu và sử dụng nú. Điều này giải quyết được khú khăn của việc chuyển
đổi qua lại giữa rất nhiều định dạng dữ liệu hiện nay.
- Tựy biến ngụn ngữ định dạng: cú thể tạo ra cỏc ngụn ngữ định dạng tựy biến dựa trờn XML. Khụng chỉ vậy, cú thể mở rộng chỳng, cú thể ghi chỳ thớch trong tài liệu. Đõy là một trong những khả năng mạnh nhất của XML.
- Dữ liệu cú cấu trỳc và tớch hợp: XML khụng chỉ cho phộp lưu dữ liệu vào file XML dựa trờn thẻ mà cũn tổ chức dữ liệu theo cấu trỳc, theo đú cỏc phần tử thẻ tớch hợp với nhau tạo nờn một cấu trỳc dữ liệu phõn cấp hoàn chỉnh. Điều này cho phộp ta định nghĩa dữ liệu cú cấu trỳc một cỏch hết sức thuận lợi.
Nhỡn chung XML hoàn toàn thớch hợp cho việc liờn lạc giữa cỏc mụđun, cỏc thành phần trong bất kỡ chương trỡnh ứng dụng nào dự nhỏ hay lớn.
1.1 Khuụn dạng tài liệu XML
Cỏc phần của tài liệu XML được gọi là thực thể, nú cú thể chứa dữ liệu văn bản hoặc nhị phõn nhưng khụng được cả hai. Một thực thể cú thể tham chiếu đến thực thể khỏc, cú thể dựng để phõn tớch hoặc làm dữ liệu thụng thường (khụng dựng cho mục đớch phõn tớch).
Tài liệu XML được bắt đầu bằng chỉ thị <?xml version = “1.0” ?>. Nếu toàn bộ tài liệu là một thực thể duy nhất khụng tham chiếu đến cỏc thực thể khỏc thỡ thờm chỉ thị
- Định dạng và dữ liệu kớ tự: tài liệu XML tạo thành từ thành phần định dạng và thành phần dữ liệu kớ tự, cũn dữ liệu nhị phõn chưa cú quy định cỏch đưa vào mà chỉđược tham chiếu đến bằng cỏch biểu diễn thực thể.
Định dạng bao gồm thẻ bắt đầu, thẻ kết thỳc, cỏc phần tử thẻ rỗng, cỏc tham chiếu thực thể, tham chiếu ký tự, lời chỳ thớch, phõn đoạn CDATA, khai bỏo kiểu tài liệu và chỉ
thị xử lý. Tất cả cỏc dữ liệu cũn lại trong tài liệu khụng phải là định dạng đều được xem là dữ liệu ký tự.
- Phần khởi đầu (prolog): bắt đầu ngay từ những dũng đầu của tài liệu, nhỡn chung bao gồm cỏc khai bỏo, chỳ thớch, chỉ thị xử lý, khoảng trắng và khai bỏo kiểu tư liệu (DTD). Chuẩn XML khụng yờu cầu khai bỏo prolog, tuy vậy ta nờn dựng nú, ớt nhất cũng nờn cú dũng khai bỏo phiờn bản sử dụng.
- Cỏc khai bỏo: khai bỏo XML sử dụng phần tử <?xml?>. Cú 3 kiểu khai bỏo thuộc tớnh: khai bỏo phiờn bản cho biết phiờn bản đặc tả XML, khai bỏo mó húa cho biết bộ mó
đang sử dụng (mặc định là UTF-8, cú thể sử dụng mó Unicode, UCS-2, UCS-4…), khai bỏo thực thể độc lập là “yes” nếu tài liệu khụng tham chiếu đến cỏc thực thể khỏc bờn ngoài, nếu khụng là “no”.
- Chỳ thớch: bắt đầu bằng <!--, kết thỳc bằng -->. Chỳ thớch khụng được đặt trước khai bỏo, khụng thể dựng chuỗi -- trong đoạn chỳ thớch. Chỳ thớch cú thể dựng để loại bỏ
một đoạn mó nào đú (trong nội dung chỳ thớch khụng được chứa chỳ thớch khỏc).
- Chỉ thị xử lý: bắt đầu bằng <?, kết thỳc bằng ?>, nhằm chỉ dẫn cho bộ phõn tớch cỏch xử lý tài liệu XML. Vớ dụ: <?xml-stylesheet type=”text/css” href=”filename.css”?>
- Thẻ và cỏc phần tử (element): thẻ mở cú dạng “< … >”, thẻđúng cú dạng “</ … >. Thẻ bắt đầu phải cú thẻ kết thỳc tương ứng. Tờn thẻ cú quy định chặt chẽ: bắt đầu bằng kớ tự, gạch chõn (_), dấu hai chấm (:), kế tiếp cú thể là kớ tự, kớ số, gạch chõn, gạch nối, dấu chấm, dấu hai chấm (nờn trỏnh dựng) nhưng khụng được là khoảng trắng. Thẻ phõn biệt chữ hoa và chữ thường.
Phần tử cú thể chỉ cú duy nhất một thẻ, tức là phần tử rỗng khụng kốm theo dữ liệu. Vớ dụ: <GREETING TEXT=”Hello From XML” ?>. Phần tử gốc là phần tử chứa tất cả cỏc phần tử và cỏc cặp thẻ khỏc trong tài liệu.
- Thuộc tớnh: tương tự thuộc tớnh cỏc thẻ trong HTML, cú dạng name=value. Vớ dụ: <CUSTOMER STATUS=”Good credit”>. Nhỡn chung nếu cú quỏ nhiều thuộc tớnh trong thẻ sẽ làm tài liệu khú đọc. Tờn thuộc tớnh theo đỳng quy tắc đặt tờn thẻ, cũn trị gỏn cho
thuộc tớnh là text, do vậy nếu ta gỏn cho nú một số thỡ phải đặt trong dấu nhỏy kộp. Nếu chuỗi chứa cỏc ký tựđịnh dạng, ta dựng thực thể thay thế (“'”~”‘”, “"”~”“”).
Để mụ tả về ngụn ngữ của dữ liệu, ta dựng thuộc tớnh xml:lang, vớ dụ: <p xml:lang=”en-GB”> Hello </p>
<p xml:lang=”en-US”> Hi </p>
Một số vấn đề khỏc cũng quan trọng khụng kộm nhưng do khuụn khổ phần phụ lục này ta sẽ khụng nờu ra ởđõy như khuụn dạng cấu trỳc tài liệu XML, phõn đoạn CDATA, khụng gian tờn của XML, Infoset v.v.. cú thể tham khảo trong [23].
1.2 Định nghĩa kiểu tư liệu (DTD) và tớnh hợp lệ của tài liệu XML
Định nghĩa kiểu tư liệu - DTD (Document Type Definition) là quy định cỏch thức lưu giữ dữ liệu của tài liệu XML. Khai bỏo thường đặt ở phần khởi đầu tài liệu.
Cú thểđịnh nghĩa lồng nhau cỏc phần tử DTD. Cú thểđịnh nghĩa DTD với nội dung hỗn hợp, vớ dụ: <!ELEMENT PRODUCT(#PCDATA | PRODUCT_ID)*>, hoặc định nghĩa cho cỏc phần tử rỗng, vớ dụ: <!ELEMENT CREDIT_WARNING EMPTY>. Ta cũng nờn chỳ thớch cho cỏc phần tửđịnh nghĩa DTD (giống như chỳ thớch XML).
- Định nghĩa DTD ngoại: sử dụng từ khúa SYSTEM trong chỉ thị khai bỏo <!DOCTYPE>.
- Tham chiếu DTD dựng chung: sử dụng từ khúa PUBLIC thay cho SYSTEM. Thực tế ta cú thể dựng chung hai loại tham chiếu nội và ngoại trong cựng tài liệu XML vào cựng thời điểm.
Một số vấn đề quan trọng khỏc như khụng gian tờn và cỏc định nghĩa DTD... cú thể
tham khảo trong [23].
1.3 Thực thể và thuộc tớnh DTD của tài liệu XML
- Cú hai loại thực thể: thực thể tổng quỏt - dạng & … ; và thực thể tham số - dạng % … ;. Thực thể cú thể là nội hoặc ngoại, cú thểở dạng phõn tớch hoặc khụng phõn tớch.
- Thuộc tớnh: sử dụng chỉ thị khai bỏo <!ATTLIST> để định nghĩa danh sỏch cỏc thuộc tớnh sẽ kết hợp với phần tử thẻ DTD nào đú.
- Tạo cỏc thực thể tổng quỏt nội: cú thể tạo cỏc định nghĩa tham chiếu cho thực thể
lồng nhau, nhưng khụng được theo kiểu tham chiếu vũng.
- Tạo cỏc thực thể tổng quỏt ngoại: tương tự DTD, cú thể sử dụng SYSTEM hoặc PUBLIC cho khai bỏo thực thể ngoại. Cú thể sử dụng định nghĩa FPI. Cú thể sử dụng tham chiếu thực thể ngoại để nhỳng dữ liệu từ tài liệu khỏc vào tài liệu gốc.
- Tham chiếu thực thể tổng quỏt được định nghĩa trước: ngoài năm loại đó được định nghĩa trước, ta cú thểđưa vào cỏc ký tựđặc biệt khỏc sử dụng mó kớ tự.
- Tạo cỏc thực thể tham số nội: cỏc tham chiếu thực thể tổng quỏt khụng được dựng cho cỏc định nghĩa DTD, do đú ta sử dụng tham chiếu thực thể tham số dạng % … ;.
Tuy vậy khụng thểđưa tham chiếu thực thể tham số nội vào cỏc khai bỏo DTD khỏc mà chỉ cú thể sử dụng chỳng trong phần khai bỏo DTD chớnh.
- Tạo cỏc thực thể tham số ngoại: cỏc thực thể tham số ngoại cú thể dựng ở bất cứđõu trong khai bỏo DTD, do đú trỏnh được cỏc khai bỏo lặp lại.
- Sử dụng INCLUDE và IGNORE: để thờm vào hay bỏ qua cỏc đoạn định nghĩa DTD. Cú thể sử dụng chỳng kết hợp với cỏc tham số thực thểđể tham số húa cỏc khai bỏo DTD, khi đú cú thể bỏ qua hoặc thờm vào một tập cỏc khai bỏo DTD chỉ bằng cỏch thay