Lớp duyệt (Navigation class)

Một phần của tài liệu XÂY DỰNG hệ QUẢN TRỊ HYPERMEDIA HƯỚNG đối TƯỢNG (Trang 26 - 30)

13. PHA THIẾT KẾ DUYỆ T

13.1.Lớp duyệt (Navigation class)

Lớp duyệt (navigation class, tức là node) được ký hiệu bằng ký hiệu lớp với một ô vuông ở góc trên bên phải. Thuộc tính đa trị trong mô hình quan niệm được ánh xạ thành các thuộc tính khác nhau của lớp duyệt.

OOHDM cho phép node được định nghĩa bằng cách kết hợp các thuộc tính của các lớp riêng biệt có liên quan nhau trong mô hình quan niệm. Node sở hữu các thuộc tính đơn, link anchor, và có thể là

KHOA CNTT –

ĐH KHTN

Sinh viên thc hin: Cao Th Thu Liên - Nguyn Thế Vũ Trang 27

atomic hoặc composite. Anchor là thể hiện của lớp Anchor (hoặc một trong những lớp con của nó) và được tham số hoá bằng loại link nó sở hữu. Hành vi duyệt chuẩn khi một node nhận được thông điệp

“anchorSelected()” là giao phó thông điệp này cho anchor tương ứng, để nó hoạt hoá link tương ứng. Có thể định nghĩa lại hành vi chuẩn của anchor hay node để thực hiện kiểm tra trước khi quá trình duyệt diễn ra.

Đây là một trong những cải tiến chính của OOHDM, nhận ra các đối tượng mà người dùng duyệt không phải là đối tượng mức quan niệm. Do đó, thuộc tính node được định nghĩa như là những khung nhìn hướng đối tượng của các lớp mức quan niệm, bằng ngôn ngữ truy vấn. Điều này cho phép node được định nghĩa bằng cách cung cấp truy cập đến thuộc tính của các lớp riêng biệt có liên quan nhau trong lược đồ quan niệm.

Link phản ánh những mối quan hệ mức quan niệm dự kiến sẽ được duyệt bởi người dùng cuối. Các ứng dụng khác nhau (trên cùng một lĩnh vực) có thể chứa không gian duyệt khác nhau tuỳ theo người dùng. Ví dụ, website về kiến trúc có thể chứa thông tin phân loại công trình cho các chuyên gia, và không chứa thông tin này đối với người dùng thông thường.

Link kết nối các đối tượng duyệt và có thể là quan hệ 1-1 hay 1-n. Cấu trúc truy cập (index hay guided tour) được định nghĩa như lớp, mô tả các cách duyệt thay thế trong ứng dụng hypermedia. Quan hệ giữa node và các đối tượng mức quan niệm, giữa link và các quan hệ trong lược đồ được diễn tả bằng Observer Design Pattern. Cú pháp chung định nghĩa thuộc tính node như sau (tương tự đối với link):

NODE name [FROM className: varName] [INHERITS FROM

KHOA CNTT –

ĐH KHTN

Sinh viên thc hin: Cao Th Thu Liên - Nguyn Thế Vũ Trang 28

attri: type1 [SELECT name1] [FROM class1:varName1, classj: varNamej

WHERE logical expression] attr2: type2 [SELECT name2]... ...

attrn: typen [idem]

END

Trong đó:

- name: tên lớp của node đang tạo.

- className: tên lớp mức quan niệm (từ đó node được ánh xạ). - nodeClass: tên super-class

- attri: tên thuộc tính của lớp, typei là loại thuộc tính.

- namei: chủ thể cho biểu thức truy vấn, vari là các biến diễn tả điều kiện logic.

- logical expression: cho phép định nghĩa lớp có thể hiện là kết hợp của các đối tượng được định nghĩa trong lược đồ quan niệm, khi những điều kiện trên các thuộc tính và/hay quan hệ của chúng có hiệu lực.

Ví dụ, một lớp node Story, chứa như là thuộc tính của nó name

bio của Person viết nó, và một anchor của một link đến Person đó. Trong mô hình quan niệm, namebio của Person là thuộc tính của lớp này.

KHOA CNTT –

ĐH KHTN

Sinh viên thc hin: Cao Th Thu Liên - Nguyn Thế Vũ Trang 29

NODE Story [FROM Story:St] [INHERITS FROM Person]

author: String [SELECT Name] [FROM Person:Pr WHERE Pr Is Author of St] (adsbygoogle = window.adsbygoogle || []).push({});

auhtor_bio: String [SELECT Bio] [FROM Person:Pr WHERE Pr Is Author of St]

.... (các thuộc tính khác được giữ lại từ lớp Story mức quan niệm)

toAuthor: Anchor (Is Author of)

END

Giá trị thuộc tính toAuthor là một anchor được tham số hoá với lớp Link Is Author of. Khi định nghĩa thể hiện giao diện của lớp node

Story ta có thể để anchor xuất hiện như một button ẩn phía trên tên tác giả (thuộc tính author). Mặc dù có vẻ như hai thuộc tính có cùng hành vi, nhưng chỉ anchor là hồi đáp lại sự kiện giao diện.

KHOA CNTT –

ĐH KHTN

Sinh viên thc hin: Cao Th Thu Liên - Nguyn Thế Vũ Trang 30 Hình 2. 2 – Mô hình duyt cho tp chí trc tuyến.

Lp Person không xut hin, và thuc tính ca Author bây gi là b phn ca lp Story. Tương t vi lp Interview.

Một phần của tài liệu XÂY DỰNG hệ QUẢN TRỊ HYPERMEDIA HƯỚNG đối TƯỢNG (Trang 26 - 30)