Luận án Nghiên cứu Phương pháp Chuyển đổi Mô hình Mức Khái niệm và Ontology - Võ Hoàng Liên Minh

Chuyên ngành

Khoa học máy tính

Người đăng

Ẩn danh

Thể loại

Luận án tiến sĩ

2021

155
0
0

Phí lưu trữ

45 Point

Tóm tắt

I. Tổng quan về mô hình mức khái niệm và ontology trong CSDL

Mô hình mức khái niệm là nền tảng thiết kế cơ sở dữ liệu. Các mô hình phổ biến gồm ER, ER mở rộng, TimeER và biểu đồ lớp UML. Mỗi mô hình biểu diễn thực thể, thuộc tính và mối quan hệ theo cách riêng. Ontology là hệ thống tri thức hình thức, dùng ngôn ngữ OWL để biểu diễn ngữ nghĩa trên Web. OWL cung cấp khả năng suy diễn logic mà mô hình ER không có. Sự khác biệt giữa hai hệ thống tạo ra nhu cầu chuyển đổi. Nghiên cứu của Võ Hoàng Liên Minh tại Đại học Huế năm 2021 tập trung giải quyết bài toán này. Luận án đề xuất các quy tắc ánh xạ có hệ thống giữa hai miền tri thức. Mục tiêu là bảo toàn ngữ nghĩa trong quá trình chuyển đổi. Kết quả mở ra hướng tích hợp cơ sở dữ liệu truyền thống với Web ngữ nghĩa. Đây là đóng góp quan trọng cho lĩnh vực khoa học máy tính.

1.1. Các mô hình cơ sở dữ liệu mức khái niệm phổ biến

Mô hình ER do Chen đề xuất năm 1976, biểu diễn dữ liệu qua thực thể và mối quan hệ. Mô hình ER mở rộng bổ sung kế thừa và thực thể yếu. TimeER mở rộng thêm chiều thời gian cho dữ liệu động. Biểu đồ lớp UML là chuẩn công nghiệp, biểu diễn lớp đối tượng với thuộc tính và phương thức. UML hỗ trợ bốn loại quan hệ: kết hợp, kết tập, kế thừa và phụ thuộc. Mỗi mô hình phù hợp với ngữ cảnh ứng dụng khác nhau. Việc lựa chọn mô hình ảnh hưởng trực tiếp đến chiến lược chuyển đổi sang ontology.

1.2. Ontology và ngôn ngữ OWL trong Web ngữ nghĩa

Ontology định nghĩa tập khái niệm và quan hệ trong một miền tri thức cụ thể. Web ngữ nghĩa sử dụng ontology để máy tính hiểu và xử lý dữ liệu tự động. Ngôn ngữ OWL được W3C chuẩn hóa, xây dựng trên nền RDF và RDFS. OWL2 mở rộng khả năng biểu đạt với các tính năng như khóa thuộc tính và hạn chế số lượng. Trình soạn thảo Protégé hỗ trợ xây dựng và kiểm tra ontology trực quan. Reasoner tự động suy diễn tri thức từ ontology đã định nghĩa. Đây là ưu thế vượt trội so với mô hình cơ sở dữ liệu truyền thống.

II. Phân tích thách thức trong chuyển đổi mô hình sang OWL ontology

Chuyển đổi giữa mô hình mức khái niệm và ontology gặp nhiều thách thức kỹ thuật. Hai hệ thống có nền tảng ngữ nghĩa khác nhau căn bản. Mô hình ER tập trung vào cấu trúc lưu trữ, OWL tập trung vào biểu đạt tri thức. Các thành phần như thuộc tính đa trị phức hợp lồng nhau không có tương đương trực tiếp trong OWL. Mối quan hệ phản xạ và thuộc tính có yếu tố thời gian trong TimeER cần quy tắc ánh xạ đặc biệt. Chiều ngược lại, trích xuất mô hình ER từ OWL, cũng phức tạp tương đương. Các nghiên cứu trước như của Sikha Bagui chỉ đề xuất 11 quy tắc cơ bản cho OWL1. Nhiều thành phần quan trọng bị bỏ qua: thuộc tính phức hợp, mối quan hệ có thuộc tính, mối quan hệ phản xạ. Olegas Vasilecas chỉ dừng ở bảng ánh xạ tổng quát, thiếu quy tắc chi tiết. Khoảng trống nghiên cứu này là động lực chính của luận án.

2.1. Hạn chế của các nghiên cứu chuyển đổi ER sang OWL trước đây

Các nghiên cứu chuyển đổi ER sang OWL đã đạt kết quả ban đầu quan trọng. Tuy nhiên, phần lớn chỉ xử lý các thành phần cơ bản: tập thực thể, kế thừa, thuộc tính đơn giản. Thực thể yếu và mối quan hệ định danh thường bị bỏ qua. Thuộc tính đa trị phức hợp lồng nhau chưa được giải quyết triệt để. Yếu tố thời gian trong mô hình TimeER không xuất hiện trong bất kỳ nghiên cứu nào trước đó. Mối quan hệ phản xạ cũng thiếu quy tắc ánh xạ rõ ràng. Đây là các khoảng trống nghiên cứu mà luận án tập trung lấp đầy.

2.2. Thách thức trong trích xuất ngược từ OWL về mô hình khái niệm

Dữ liệu định dạng OWL không dễ thao tác hoặc truy vấn trực tiếp. Trích xuất mô hình khái niệm từ OWL là bài toán ánh xạ ngược phức tạp. OWL2 có nhiều cấu trúc không có tương đương trong mô hình ER: anonymous class, property chain, disjointness. Ánh xạ một-nhiều xảy ra khi nhiều cấu trúc OWL có thể dịch về cùng một thành phần ER. Thuộc tính khóa trong OWL2 chưa được các nghiên cứu trước xem xét đúng mức. Trích xuất biểu đồ lớp UML từ OWL đòi hỏi phân tích sâu về tương đồng cấu trúc giữa hai ngôn ngữ.

III. Phương pháp và quy tắc chuyển đổi được đề xuất trong luận án

Luận án đề xuất hệ thống quy tắc chuyển đổi toàn diện theo cả hai chiều. Chiều thuận: từ mô hình mức khái niệm sang OWL. Chiều ngược: từ OWL trích xuất về mô hình mức khái niệm. Với mô hình ER, luận án bổ sung quy tắc cho thực thể yếu, thuộc tính đa trị phức hợp lồng nhau và mối quan hệ phản xạ. Với TimeER, luận án tạo ontology ban đầu biểu diễn yếu tố thời gian, sau đó áp dụng quy tắc chuyển đổi tập thực thể và thuộc tính có thời gian. Với biểu đồ lớp UML, luận án xử lý đầy đủ bốn loại quan hệ và tính truy xuất Public, Private, Protect. Bản số trong UML được ánh xạ chính xác sang các ràng buộc số lượng trong OWL. Hướng ngược lại, luận án định nghĩa ánh xạ ngược có hệ thống từ OWL2 về mô hình ER và biểu đồ lớp UML. Toàn bộ quy tắc được kiểm chứng qua các trường hợp thử nghiệm cụ thể.

3.1. Quy tắc chuyển đổi mô hình ER và TimeER sang OWL

Mỗi tập thực thể ánh xạ thành một OWL Class tương ứng. Mối quan hệ kế thừa Is-A ánh xạ thành rdfs:subClassOf. Thuộc tính đơn trị ánh xạ thành OWL DataProperty, thuộc tính đa trị dùng ObjectProperty với lớp trung gian. Thực thể yếu ánh xạ thành lớp phụ thuộc với ràng buộc existential. Mối quan hệ phản xạ sử dụng owl:TransitiveProperty hoặc owl:ReflexiveProperty. TimeER thêm lớp TimeInterval để biểu diễn khoảng thời gian hiệu lực. Thuộc tính có thời gian được bao bọc trong lớp temporal wrapper với hai thuộc tính validFrom và validTo.

3.2. Quy tắc chuyển đổi biểu đồ lớp UML sang và từ OWL

Mỗi lớp UML ánh xạ thành OWL Class, thuộc tính Public ánh xạ thành DataProperty hoặc ObjectProperty. Quan hệ kết hợp ánh xạ thành ObjectProperty với bản số tương ứng. Quan hệ kết tập dùng owl:partOf, quan hệ kế thừa dùng rdfs:subClassOf. Phương thức không ánh xạ sang OWL vì ontology không mô hình hóa hành vi. Chiều ngược: OWL Class về lớp UML, DataProperty về thuộc tính, ObjectProperty về quan hệ kết hợp. Tính truy xuất mặc định là Public khi trích xuất từ OWL. Khóa OWL2 (owl:hasKey) ánh xạ về thuộc tính định danh trong UML.

IV. Kết luận và ứng dụng thực tiễn của nghiên cứu chuyển đổi ontology

Luận án hoàn thành mục tiêu đề ra với hệ thống quy tắc chuyển đổi đầy đủ và có hệ thống. Ba đóng góp chính được xác nhận. Thứ nhất: bộ quy tắc chuyển đổi ER và TimeER sang OWL bổ sung các thành phần còn thiếu trong nghiên cứu trước. Thứ hai: phương pháp trích xuất ngược từ OWL về mô hình ER và biểu đồ lớp UML được định nghĩa chặt chẽ. Thứ ba: hỗ trợ OWL2 đầy đủ, khắc phục hạn chế của các nghiên cứu chỉ dừng ở OWL1. Ứng dụng thực tiễn rất rộng. Hệ thống thông tin y tế có thể chuyển đổi cơ sở dữ liệu lâm sàng sang ontology y khoa chuẩn quốc tế. Hệ thống giáo dục dùng kết quả để tích hợp CSDL học liệu với ontology giáo dục. Doanh nghiệp áp dụng để kết nối cơ sở dữ liệu truyền thống với nền tảng Web ngữ nghĩa. Hướng nghiên cứu tiếp theo gồm tự động hóa chuyển đổi và xử lý OWL phân tán.

4.1. Đóng góp khoa học nổi bật của luận án tiến sĩ

Luận án lấp đầy khoảng trống trong chuyển đổi TimeER sang OWL, lĩnh vực chưa có công trình nào công bố trước đó. Hệ thống quy tắc cho thuộc tính đa trị phức hợp lồng nhau giải quyết bài toán khó nhất trong ánh xạ ER-OWL. Chiều ngược từ OWL2 về mô hình ER được định nghĩa đầy đủ hơn nghiên cứu của Bagui (2011). Việc xem xét thuộc tính khóa OWL2 trong trích xuất là đóng góp mới so với tất cả các công trình trước. Kết quả được kiểm chứng qua tập thử nghiệm đa dạng, đảm bảo tính đúng đắn.

4.2. Hướng ứng dụng và phát triển tiếp theo

Kết quả luận án áp dụng trực tiếp vào tích hợp dữ liệu doanh nghiệp với Web ngữ nghĩa. Các công cụ chuyển đổi tự động có thể xây dựng dựa trên bộ quy tắc đã định nghĩa. Lĩnh vực y tế và giáo dục là hai thị trường ứng dụng tiềm năng nhất. Hướng phát triển tiếp theo gồm: mở rộng sang SHACL và RDF Schema, xử lý ontology phân tán, tích hợp học máy để tự động đề xuất ánh xạ. Nghiên cứu cũng mở đường cho việc chuẩn hóa quy trình chuyển đổi giữa các hệ thống thông tin không đồng nhất.

21/04/2026

Trích đoạn nội dung tài liệu

ĐẠI HỌC HUẾ TRƯỜNG ĐẠI HỌC KHOA HỌC VÕ HOÀNG LIÊN MINH NGHIÊN CỨU PHƯƠNG PHÁP CHUYỂN ĐỔI GIỮA MÔ HÌNH MỨC KHÁI NIỆM VÀ ONTOLOGY NGÀNH: KHOA HỌC MÁY TÍNH MÃ NGÀNH: 9.01 LUẬN ÁN TIẾN SĨ KHOA HỌC MÁY TÍNH Người hướng dẫn khoa học: 1. HOÀNG HỮU HẠNH HUẾ - NĂM 2021 LỜI CAM ĐOAN Tôi xin cam đoan đây là công trình nghiên cứu của riêng cá nhân tôi. Nội dung tham khảo từ các công trình khác đều được trích dẫn rõ ràng. Các kết quả viết chung với các tác giả khác đều được sự đồng ý trước khi đưa vào luận án. Các kết quả của luận án là trung thực và chưa được công bố trong các công trình khác ngoài các công trình của tác giả. Nghiên cứu sinh Võ Hoàng Liên Minh i LỜI CẢM ƠN Trong quá trình thực hiện luận án tiến sĩ, tôi đã nhận được sự hỗ trợ quý báu từ nhiều cá nhân, cơ quan và đơn vị. Trước hết tôi xin bày tỏ lòng biết ơn sâu sắc đến PGS. Hoàng Quang và PGS. Hoàng Hữu Hạnh đã hướng dẫn tận tình cho tôi các phương pháp nghiên cứu, phương pháp viết bài báo khoa học và phương pháp tổng hợp tri thức trong quá trình học tập, nghiên cứu. Tôi xin chân thành cảm ơn lãnh đạo trường Đại học Khoa học – Đại học Huế đã tạo điều kiện thuận lợi trong suốt quá trình học tập và thực hiện luận án, xin cảm ơn tập thể thầy cô giáo Khoa Công nghệ thông tin của Trường đã giúp đỡ và động viên, đóng góp các ý kiến quí giá để hoàn thiện công trình nghiên cứu này. Tôi xin gửi lời cảm ơn đến cơ quan công tác, tất cả người thân, bạn bè và những người xung quanh luôn chia sẻ, động viên trong những lúc khó khăn. Cuối cùng, xin bày tỏ lòng biết ơn vô hạn đối với cha mẹ và gia đình đã luôn ủng hộ, giúp đỡ trong suốt quá trình thực hiện luận án. Nghiên cứu sinh Võ Hoàng Liên Minh ii MỤC LỤC LỜI CAM ĐOAN . ii MỤC LỤC . iii DANH MỤC CHỮ VIẾT TẮT. vi DANH MỤC THUẬT NGỮ . viii DANH MỤC KÝ HIỆU . ix DANH MỤC HÌNH ẢNH . xi DANH MỤC BẢNG BIỂU . xiv PHẦN MỞ ĐẦU . TỔNG QUAN VỀ MÔ HÌNH CƠ SỞ DỮ LIỆU MỨC KHÁI NIỆM VÀ ONTOLOGY .1 Giới thiệu các mô hình cơ sở dữ liệu mức khái niệm .1 Mô hình ER .2 Mô hình ER mở rộng .3 Giới thiệu mô hình TimeER .4 Biểu đồ lớp UML .2 Giới thiệu về Web ngữ nghĩa và Ontology .5 Ngôn ngữ của ontology.7 Ngôn ngữ OWL .9 Trình soạn thảo ontology .3 Tổng quan về các nghiên cứu chuyển đổi các mô hình .1 Các kết quả đề xuất chuyển đổi mô hình thực thể - mối quan hệ sang OWL 27 1.2 Các kết quả đề xuất chuyển đổi biểu đồ lớp UML sang OWL.3 Các kết quả đề xuất trích xuất mô hình cơ sở dữ liệu mức khái niệm từ OWL 34 1.4 Tổng kết chương 1 . CHUYỂN ĐỔI MÔ HÌNH THỰC THỂ - MỐI QUAN HỆ SANG OWL .2 Các nghiên cứu trước đây .1 Chuyển đổi tập thực thể .2 Chuyển đổi mối quan hệ kế thừa (Is-A) .3 Chuyển đổi thuộc tính .4 Chuyển đổi mối quan hệ .3 Các quy tắc chuyển đổi bổ sung.1 Chuyển đổi thực thể yếu và mối quan hệ định danh.2 Chuyển đổi thuộc tính đa trị phức hợp lồng nhau .3 Chuyển đổi mối quan hệ phản xạ .4 Chuyển đổi mô hình TimeER sang OWL .1 Tạo ontology ban đầu biểu diễn yếu tố thời gian .2 Chuyển đổi tập thực thể có yếu tố thời gian .3 Chuyển đổi thuộc tính có yếu tố thời gian .4 Chuyển đổi mối quan hệ có yếu tố thời gian .5 Chuyển đổi thuộc tính có yếu tố thời gian của mối quan hệ .5 Kết quả thực nghiệm .6 Tổng kết chương 2 . CHUYỂN ĐỔI BIỂU ĐỒ LỚP UML SANG OWL .1 Các nghiên cứu trước đây .1 Chuyển đổi lớp .2 Chuyển đổi thuộc tính .3 Chuyển đổi quan hệ giữa các lớp .2 Các quy tắc chuyển đổi bổ sung.1 Chuyển đổi thuộc tính có cấu trúc .2 Chuyển đổi quan hệ kết hợp phản xạ .3 Chuyển đổi quan hệ kết tập chia sẻ .4 Chuyển đổi quan hệ kết hợp có yếu tố hạn định.3 Kết quả thực nghiệm .4 Tổng kết Chương 3 . TRÍCH XUẤT MÔ HÌNH CƠ SỞ DỮ LIỆU MỨC KHÁI NIỆM TỪ OWL ONTOLOGY .1 Trích xuất mô hình EER từ OWL .1 Các quy tắc trích xuất đã đề xuất .2 Các quy tắc trích xuất bổ sung .3 Thuật toán trích xuất mô hình EER .4 Ví dụ minh họa .2 Trích xuất biểu đồ lớp UML từ OWL .1 Trích xuất lớp .2 Trích xuất thuộc tính .3 Trích xuất quan hệ giữa các lớp .4 Ví dụ minh họa .3 Tổng kết chương 4 .128 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN .129 DANH MỤC CÁC CÔNG TRÌNH KHOA HỌC CỦA TÁC GIẢ.131 TÀI LIỆU THAM KHẢO .132 v DANH MỤC CHỮ VIẾT TẮT Từ Nội dung viết tắt tiếng Diễn giải tiếng Việt viết Anh tắt BT BiTemporal Thời gian hợp lệ và thời gian giao tác CSDL Cơ sở dữ liệu LS LifeSpan Thời gian sống là thời gian mà một thực thể tồn tại trong thực tế. Lse LifeSpan end Thời gian sống kết thúc LSs LifeSpan start Thời gian sống bắt đầu LT Lifespan and Transaction Thời gian sống và thời gian giao tác time MDA Model Driven Architecture Kiến trúc hướng mô hình OCL Object Constraint Language Ngôn ngữ ràng buộc đối tượng Ngôn ngữ xây dựng mô hình phần mềm được định nghĩa như một chuẩn thêm vào UML cho phân tích và thiết kế hướng đối tượng. ODM Ontology Definition Đặc tả của Object Management Group Metamodel (OMG) để tạo ra các khái niệm về kiến trúc hướng mô hình có thể áp dụng cho việc xây dựng ontology. OWL Web Ontology Language Ngôn ngữ ontology QVT OMG's Bộ ngôn ngữ tiêu chuẩn để chuyển đổi mô Query/View/Transformation hình được xác định bởi Object Management Group. SASD Structured Analysis and Phân tích và thiết kế cấu trúc Structured Design TT Transaction Time Thời gian giao tác là thời gian mà một thực thể/sự kiện là hiện thời trong CSDL TTe Transaction Time end Thời gian kết thúc giao tác TTs Transaction Time start Thời gian bắt đầu giao tác UML Unified Modeling Language Ngôn ngữ mô hình hóa thống nhất VT Valid Time Thời gian hợp lệ là thời gian mà một sự kiện được xem là đúng trong thực tế. vi VTe Valid Time end Thời gian kết thúc hợp lệ VTs Valid Time start Thời gian bắt đầu hợp lệ W3C World Wide Web Tổ chức tiêu chuẩn quốc tế về World Wide Consortium Web. XMI XML Metadata Interchange Một chuẩn OMG cho việc trao đổi siêu dữ liệu metadata giữa các công cụ, kho dữ liệu và các ứng dụng, cho phép người dùng mô tả đối tượng bằng XML. vii DANH MỤC THUẬT NGỮ Thuật ngữ Diễn giải tiếng Việt Close World Assumption Giả thiết thế giới đóng CSDL Cơ sở dữ liệu Data property Thuộc tính dữ liệu disjoint Phân ly Domain Miền xác định (của thuộc tính) Miền của một thuộc tính chỉ định tập hợp các đối tượng có thể liên quan đến các giá trị khác với thuộc tính. Object property Thuộc tính đối tượng Open World Assumption Giả thiết thế giới mở overlap Chồng lấp Range Phạm vi (của thuộc tính) Phạm vi của thuộc tính chỉ định tập hợp các đối tượng hoặc giá trị dữ liệu có thể liên quan đến từ các đối tượng khác với thuộc tính. viii DANH MỤC KÝ HIỆU Ký hiệu Diễn giải tiếng Việt attE Thuộc tính đơn trị attE của tập thực thể E. attU Thuộc tính attU của lớp U trong biểu đồ lớp UML. C(E) Lớp C(E) trong OWL, được chuyển đổi từ tập thực thể E của mô hình ER. C(U) Lớp C(U) trong OWL, được chuyển đổi từ lớp U của biểu đồ lớp UML. COWL Tập các lớp trong OWL DP(attE) Thuộc tính dữ liệu DP(attE) trong OWL, được chuyển đổi từ thuộc tính đơn trị attE của mô hình ER. DP(attU) Thuộc tính dữ liệu DP(attU) trong OWL, được chuyển đổi từ thuộc tính attU của biểu đồ lớp UML. DP_attEOWL Tập các thuộc tính dữ liệu trong OWL. E Tập thực thể mạnh E của mô hình ER. ER Mô hình ER mở rộng để thực hiện chuyển đổi (đầu vào của thuật toán). fileER, Là các file xml mô tả cho các mô hình EER, biểu đồ lớp UML và fileUML, OWL ontology fileOWL keyE Thuộc tính khóa keyE của tập thực thể E. OP_attEOWL Tập các thuộc tính đối tượng trong OWL OWL OWL ontology (đầu ra của thuật toán). Q Yếu tố hạn định Q trong quan hệ kết hợp giữa lớp tổng thể A với lớp bộ phận F R Mối quan hệ nhị nguyên R của mô hình ER. R Quan hệ R trong biểu đồ lớp UML. role Vai trò của quan hệ trong biểu đồ lớp UML sub_attU Thuộc tính thuộc tính thành phần sub_attU là con thuộc tính attU của lớp U trong biểu đồ lớp UML. sub_E Tập thực thể sub_E kế thừa từ tập thực thể E TimeER Mô hình có yếu tố thời gian TimeER để thực hiện chuyển đổi (đầu vào của thuật toán). ix U Lớp U của biểu đồ lớp UML. UML Biểu đồ lớp UML để thực hiện chuyển đổi (đầu vào của thuật toán). UML Biểu đồ lớp UML để thực hiện chuyển đổi (đầu vào của thuật toán). W Tập thực thể yếu W. x DANH MỤC HÌNH ẢNH Hình 1.1 Biểu diễn lớp cha và lớp con trong mô hình EER .2 Ký hiệu chuyên biệt hóa và các lớp con trong mô hình EER .3 Ví dụ hai tập thực thể CAR và TRUCK .4 Ví dụ tổng quát hoá.5 Ví dụ về vai trò trong quan hệ .6 Ví dụ về quan hệ tổng quát hóa .7 Ví dụ về quan hệ kết hợp .8 Ví dụ về quan hệ kết tập thông thường .9 Ví dụ về quan hệ kết tập chia sẻ .10 Biểu diễn thuộc tính kiểu dữ liệu name của lớp StaffMember .11 Biểu diễn thuộc tính đối tượng isTaughtBy.1 Kiến trúc các bước chuyển đổi từ mô hình CSDL mức khái niệm sang OWL .2 Chuyển đổi tập thực thể con trong mối quan hệ kế thừa.3 Chuyển đổi ràng buộc phân ly trong cấu trúc chuyên biệt hóa/tổng quát hóa .4 Chuyển đổi tập thực thể con trong ràng buộc phân ly trong cấu trúc Chuyên biệt hóa/Tổng quát hóa .5 Chuyển đổi tập thực thể con trong ràng buộc chồng lấp trong cấu trúc Chuyên biệt hóa/Tổng quát hóa .6 Ví dụ chuyển đổi ràng buộc chồng lấp trong cấu trúc Chuyên biệt hóa/Tổng quát hóa .7 Chuyển đổi tập thực thể Employee và thuộc tính.8 Ví dụ chuyển đổi thuộc tính đa trị .9 Ví dụ chuyển đổi thuộc tính phức hợp .10 Ví dụ chuyển đổi mối quan hệ không có thuộc tính .11 Ví dụ chuyển đổi mối quan hệ nhị nguyên có thuộc tính.12 Chuyển đổi tập thực thể yếu và mối quan hệ định danh.13 Ví dụ thuộc tính đa trị phức hợp lồng nhau .

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ