Trang định dạng (stylesheet)

Một phần của tài liệu luận văn công nghệ thông tin nghiên cứu và ứng dụng uportal (Trang 34 - 37)

III. Kiến trúc uPortal

3.Trang định dạng (stylesheet)

Không những sự chuyển đổi thông tin theme mà còn thông tin về cấu trúc đều được thông qua XSLT stylesheets. Mỗi stylesheet mà được đăng ký với hệ thống uPortal đều được định nghĩa bằng một tập tin cấu hình (SDF – Stylesheet Description File).

3.1. Cấu trúc stylesheet

Cấu trúc stylesheet định nghĩa một sự biến đổi thông tin XSLT của tài liệu bố cục người dùng sang cấu trúc hiển thị tương ứng. Cấu trúc stylesheet phải chấp nhận hai thẻ định dạng gốc<layout> và <layout_fragment>. Định dạng trong tài liệu kết quả là do người dùng quyết định, tuy nhiên cần phải theo nguyên tắc sau :

Thực thể <channel/> trong tài liệu kết quả phải chứa các thuộc tính và các thực thể con mà nó được chứa trong tài

______________________________________________________________________________________

liệu bố cục người dùng. Nói khác đi, XSLT stylesheet có thể thêm các thuộc tính và thậm chí là các thực thể con vào trong thực thể <channel/> khi sao chép chúng từ tài liệu bố cục

người dùng, tuy nhiên cả thuộc tính và thực thể con không được xóa đi, hay viết lại.

Thực thể <channel/> chỉ xuất hiện ở tài liệu kết quả nếu và chỉ nếu nội dung của nó được chọn để hiển thị trên trang thông tin người dùng. Nói cách khác một trong những mục đích của chuyển đổi thông tin cấu trúc là chọn lựa tập các kênh mà nội dung của nó được hiển thị, điều này sẽ làm tăng khả năng thực thi của hệ thống, vì nó không phải quan tâm tới các kênh không cần phải hiện thị.Để xây dựng được sự hiển thị mềm dẻo và phong phú từ tài liệu bố cục trừu tượng người sử dụng, stylesheet thường cần thêm thông tin mở rộng. Thông tin này thường ở dạng đơn giản như các tham số, với những cặp tên và giá trị được đưa vào trong XSLT stylesheet. Tham số được định nghĩa trong XSLT stylesheet theo chuẩn ràng buộc <xsl:param/>, tham số này phải được mô tả trong tập tin định dạng stylesheet (SDF) và tập tin này phải được đăng ký với hệ thống uPortal. Ví dụ cấu trúc XSLT stylesheet mặc định thẻ-cột (tab-column.xsl) sẽ đinh dạng tham số “Thẻ kích hoạt” mà thẻ này cho biết người dùng đang xem thẻ đó.

Trong một vài trường hợp thông tin cần tích hợp với các thực thể và các biến tham số không đủ. Cấu trúc stylesheet có thể khai báo (trong tập tin định dạng của nó) thêm những thuộc

______________________________________________________________________________________

sử dụng. Ví dụ tập tin tab-column.sdf khai báo một thuộc tính “chiều rộng” gắn vào thực thể <folder> của bố cục người dùng và sẽ thông dịch thuộc tính đó thành độ rộng của các cột, cho tất cả những thư mục được chuyển thành các cột. Hai tham số sau luôn luôn được đưa vào trong tập tin cấu trúc stylesheet

userLayoutRoot : là một mã của bố cục người sử dụng xác định bố cục dạng cây sẽ được hiển thị. Cung cấp khả năng tập trung trên thành phần riêng lẻ của bố cục người dùng. Ví dụ khi ta muốn chọn mở lớn một kênh nào đó, thì mặc đinh thẻ-cột sẽ cung cấp cho ta khả năng này.

BaseActionURL : một URL mà tham số yêu cầu HTTP có thể được gắn vào. Nó được tạo ra để stylesheet có thể xây dựng kết quả và trả tham số yêu cầu lại cho portal.

3.2. Theme stylesheet

Làm công việc chuyển đổi các thành phần xuất ra bởi cấu trúc chuyển đổi thông tin thành một ngôn ngữ đinh dạng kết quả, do đó theme stylesheet cần phải hiểu các thông tin xuất ra của cấu trúc chuyển đổi thông tin. Bởi vì những thông tin xuất ra này rất quan trọng, nên theme stylesheet phải xác định trong tập tin mô tả của nó xem cấu trúc thông tin chuyển đổi nào mà nó có thể giao tiếp được. Theme stylesheet có thể định nghĩa thuộc tính cho tham số và kênh của nó. Tuy nhiên nó không thể đinh nghĩa được thuộc tính cho thư mục, vì sự tồn tại của thư mục sẽ không được

______________________________________________________________________________________

Một phần của tài liệu luận văn công nghệ thông tin nghiên cứu và ứng dụng uportal (Trang 34 - 37)