Tiêu chuẩn về Mô tả tài nguyên dữ liệu Web Ontology Language – OWL 

Ngôn ngữ OWL (The Web Ontology Language) là một ngôn ngữ gần như XML dùng để mô tả các hệ cơ sở tri thức. OWL là một ngôn ngữ đánh dấu dùng để xuất bản và chia sẻ dữ liệu trên Internet thông qua những mô hình dữ liệu gọi là “ontology”...

I. Giới thiệu

Ngôn ngữ OWL (The Web Ontology Language) là một ngôn ngữ gần như XML dùng để mô tả các hệ cơ sở tri thức. OWL là một ngôn ngữ đánh dấu dùng để xuất bản và chia sẻ dữ liệu trên Internet thông qua những mô hình dữ liệu gọi là “ontology”. Ontology mô tả một lĩnh vực (domain) và diễn tả những đối tượng trong lĩnh vực đó cùng những mối quan hệ giữa các đối tượng này. OWL là phần mở rộng về từ vựng của RDF (Resource Description Framework - Khung Mô tả Tài nguyên) và được kế thừa từ ngôn ngữ DAML+OIL Web ontology – một dự án được hỗ trợ bởi W3C. OWL biểu diễn ý nghĩa của các thuật ngữ trong các từ vựng và mối liên hệ giữa các thuật ngữ này để đảm bảo phù hợp với quá trình xử lý bởi các phần mềm.

OWL được xem như là một kỹ thuật trọng yếu để cài đặt cho Semantic Web trong tương lai. OWL được thiết kế đặc biệt để cung cấp một cách thức thông dụng trong việc xử lý nội dung thông tin của Web. Ngôn ngữ này được kỳ vọng rằng sẽ cho phép các hệ thống máy tính có thể đọc được thay thế cho con người. Vì OWL được viết bởi XML, các thông tin OWL có thể dễ dàng trao đổi giữa các kiểu hệ thống máy tính khác nhau, sử dụng các hệ điều hành và các ngôn ngữ ứng dụng khác nhau. Mục đích chính của OWL là sẽ cung cấp các chuẩn để tạo ra một nền tảng để quản lý sở hữu, tích hợp mức doanh nghiệp và để chia sẻ cũng như tái sử dụng dữ liệu trên Web. OWL được phát triển bởi nó có nhiều tiện lợi để biểu diễn ý nghĩa và ngữ nghĩa hơn so với XML, RDF và RDFS. Do OWL ra đời sau các ngôn ngữ này, nó có khả năng biểu diễn các nội dung mà máy có thể biểu diễn được trên Web.

II. Nội dung tiêu chuẩn OWL

II.1. Các phiên bản của OWL

Hiện nay có ba loại OWL : OWL Lite, OWL DL (Description Logic), và OWL Full.

- OWL Lite: hỗ trợ cho những người dùng chủ yếu cần sự phân lớp theo thứ bậc và các ràng buộc đơn giản. Ví dụ: Trong khi nó hỗ trợ các ràng buộc về tập hợp, nó chỉ cho phép tập hợp giá trị của 0 hay 1. Điều này cho phép cung cấp các công cụ hỗ trợ OWL Lite dễ dàng hơn so với các bản khác.

- OWL DL (OWL Description Logic): hỗ trợ cho những người dùng cần sự diễn cảm tối đa trong khi cần trình tính toán toàn vẹn (tất cả các kết luận phải được đảm bảo để tính toán) và tính quyết định (tất cả các tính toán sẽ kết thúc trong khoảng thời gian hạn chế). OWL DL bao gồm tất cả các cấu trúc của ngôn ngữ OWL, nhưng chúng chỉ có thể được sử dụng với những hạn chế nào đó (Ví dụ: trong khi một lớp có thể là một lớp con của rất nhiều lớp, một lớp không thể là một thể hiện của một lớp khác). OWL DL cũng được chỉ định theo sự tương ứng với logic mô tả, một lĩnh vực nghiên cứu trong logic đã tạo nên sự thiết lập chính thức của OWL.

- OWL Full muốn đề cập tới những người dung cần sự diễn cảm tối đa và sự tự do của RDF mà không cần đảm bảo sự tính toán của các biểu thức. Ví dụ, trong OWL Full, một lớp có thể được xem xét đồng thời như là một tập của các cá thể và như là một cá thể trong chính bản thân nó. OWL Full cho phép một Ontology gia cố thêm ý nghiã của các từ vựng được định nghĩa trước (RDF hoặc OWL).

Các phiên bản này tách biệt về các tiện ích khác nhau, OWL Lite là phiên bản dễ hiểu nhất và phức tạp nhất là OWL Full.

Mối liên hệ giữa các ngôn ngữ con của OWL:

- Mọi Ontology hợp lệ dựa trên OWL Lite đều là Ontology hợp lệ trên OWL DL

- Mọi Ontology hợp lệ dựa trên OWL DL đều là Ontology hợp lệ trên OWL Full

- Mọi kết luận hợp lệ dựa trên OWL Lite đều là kết luận hợp lệ trên OWL DL

- Mọi kết luận hợp lệ dựa trên OWL DL đều là kết luận hợp lệ trên OWL Full

Các nhà phát triển Ontology sử dụng OWL nên xem xét ngôn ngữ con nào phù hợp nhất với nhu cầu của họ. Sự lựa chọn giữa OWL Lite và OWL DL phụ thuộc vào mức độ mà người dùng yêu cầu các cấu trúc có tính biểu cảm cao hơn được cung cấp bởi OWL DL. Sự lựa chọn giữa OWL DL và OWL Full chủ yếu phụ thuộc vào mức độ mà người dùng yêu cầu các cơ sở mô hình của lược đồ RDF (ví dụ: định nghĩa các lớp con của các lớp lớn hoặc gắn các thuộc tính vào các lớp).

OWL Full được xem như một phần mở rộng của RDF, trong khi OWL Lite và OWL DL có thể được xem như các phần mở rộng của một khung RDF giới hạn. Mỗi tài liệu OWL (Lite, DL, Full) là một tài liệu RDF và mọi tài liệu RDF là một tài liệu OWL đầy đủ, nhưng chỉ một số tài liệu RDF sẽ là một tài liệu OWL Lite hoặc OWL DL hợp pháp. Bởi vì điều này, cần chú ý khi người dùng muốn di chuyển một tài liệu RDF sang OWL.

Bài viết này mô tả các tính năng trong OWL Lite, theo sau là mô tả các tính năng được thêm vào trong OWL DL và OWL Full (OWL DL và OWL Full chứa các tính năng tương tự, nhưng OWL Full thoải mái hơn về cách các tính năng này có thể được kết hợp ).

II.2. Mô tả ngôn ngữ của OWL Lite

Phần này cung cấp một mô tả chính thức về các tính năng ngôn ngữ OWL Lite. OWL Lite chỉ sử dụng một số tính năng ngôn ngữ OWL và có nhiều hạn chế hơn về việc sử dụng các tính năng so với OWL DL hoặc OWL Full. Ví dụ, trong các lớp OWL Lite chỉ có thể được định nghĩa theo các siêu lớp được đặt tên (các siêu lớp không thể là các biểu thức tùy ý) và chỉ có thể sử dụng hạn chế một số loại lớp nhất định.

II.2.1 Tính năng lược đồ OWL Lite RDF

Các tính năng OWL Lite sau đây có liên quan đến Lược đồ RDF được bao gồm:

-rdfs: Class: Một lớp xác định một nhóm các cá nhân thuộc về nhau vì chúng cùng chia sẻ một số thuộc tính.

Ví dụ, Deborah và Frank là cả hai thành viên của lớp Person. Các lớp có thể được tổ chức theo một hệ thống phân cấp chuyên môn sử dụng subClassOf. Có một lớp tổng quát được xây dựng sẵn có tên Thing là lớp của tất cả các cá nhân và là một lớp cha của tất cả các lớp OWL.

- rdfs: subClassOf: Phân cấp lớp được tạo bằng cách thực hiện một hoặc nhiều câu lệnh rằng lớp này là lớp con của lớp khác. Ví dụ, lớp Person có thể được khai báo là một lớp con của lớp Mammal.

- rdf: Thuộc tính: Thuộc tính được sử dụng để nêu mối quan hệ giữa các cá nhân hoặc từ các cá nhân với các giá trị dữ liệu. Ví dụ về các thuộc tính bao gồm hasChild, hasRelative, hasSibling và hasAge. Ba thuộc tính đầu tiên được sử dụng để liên kết một cá thể của một lớp Person với một cá thể khác của lớp Person (và do đó xuất hiện ObjectProperty) và cuối cùng (hasAge) có thể được sử dụng để liên kết một cá thể của lớp Person với một cá thể của kiểu dữ liệu Integer và do đó xuất hiện DatatypeProperty. Cả hai cú: ObjectProperty và cú: DatatypeProperty là các lớp con của lớp RDF rdf: Property.

- rdfs: subPropertyOf: Phân cấp thuộc tính được tạo bằng cách thực hiện một hoặc nhiều câu lệnh rằng một thuộc tính là một subproperty của một hoặc nhiều thuộc tính khác. Ví dụ, hasSibling có thể được coi là một subproperty của hasRelative. Từ đây có thể suy ra rằng nếu một cá nhân có liên quan đến một thuộc tính hasSibling khác, thì nó cũng liên quan đến sở hữu khác bởi thuộc tính hasRelative.

- rdfs: domain: Miền của thuộc tính giới hạn các cá nhân có thể áp dụng thuộc tính. Nếu một thuộc tính liên quan đến một cá nhân cho một cá nhân khác và thuộc tính có một lớp là một trong các miền của nó thì cá nhân đó phải thuộc về lớp đó.

- rdfs: range: Phạm vi của một thuộc tính giới hạn các cá nhân mà thuộc tính có thể có như giá trị của nó. Nếu một thuộc tính liên quan đến một cá nhân cho một cá nhân khác, và thuộc tính có một lớp là phạm vi của nó thì cá nhân kia phải thuộc về lớp phạm vi.

- Person: Các Person là các cá thể của các lớp và các thuộc tính được sử dụng để liên kết một cá nhân với một cá nhân khác. Ví dụ, một cá nhân có tên Deborah được mô tả như là một cá thể của lớp Person và thuộc tính hasEmployer có thể được sử dụng để liên kết Deborah riêng lẻ với cá nhân StanfordUniversity.

II.2.2 Sự ngang hàng và không ngang hàng của OWL Lite

Các tính năng OWL Lite sau đây có liên quan đến sự ngang hàng.

- equivalentClass: Hai lớp có thể được cho là tương đương. Các lớp tương đương có cùng các cá thể. Sự ngang hàng được sử dụng để tạo ra các lớp đồng nghĩa. Ví dụ, xe có thể được tuyên bố là tương đương lớp với ô tô.

- equivalentProperty: Hai thuộc tính có thể được cho là tương đương. Các thuộc tính tương đương liên kết một cá thể với cùng một tập hợp các cá thể khác. Sự ngang hàng được sử dụng để tạo ra các thuộc tính đồng nghĩa. Ví dụ, hasLeader được coi là tương đương Property với hasHead. Từ lý do này có thể suy ra rằng nếu X có liên quan đến Y bởi thuộc tính hasLeader, X cũng liên quan đến Y bởi thuộc tính hasHead và ngược lại.

- sameAs: Hai cá nhân được tuyên bố là giống nhau. Cấu trúc này được sử dụng để tạo một số tên khác nhau tham chiếu đến cùng một cá nhân. Ví dụ, cá nhân Deborah có thể được tuyên bố là cùng một cá nhân là DeborahMcGuinness.

- differentFrom: Một cá nhân được tuyên bố khác với các cá nhân khác. Ví dụ, cá nhân Frank được tuyên bố là khác với các cá nhân Deborah và Jim.

- AllDifferent: Một số cá nhân có thể được tuyên bố là khác biệt lẫn nhau trong một tuyên bố AllDifferent. Ví dụ, Frank, Deborah và Jim có thể được tuyên bố là khác biệt lẫn nhau bằng cách sử dụng cấu trúc AllDifferent. Không giống như tuyên bố khác biệt ở trên, điều này cũng sẽ bắt buộc Jim và Deborah là khác biệt (không chỉ Frank khác biệt với Deborah và Frank khác với Jim). Nó được sử dụng kết hợp với distinctMembers để nói rằng tất cả các thành viên của một danh sách là khác biệt và tách rời theo cặp.

II.2.3 Đặc tính sở hữu của OWL Lite

- inverseOf: Một thuộc tính có thể được coi là nghịch đảo của thuộc tính khác. Nếu thuộc tính P1 được xác định là nghịch đảo của thuộc tính P2, thì nếu X có liên quan đến Y bởi thuộc tính P2, thì Y có liên quan đến X bởi thuộc tính P1. Ví dụ, nếu hasChild là nghịch đảo của hasParent và Deborah hasParent Louise, thì một lý do có thể suy ra rằng Louise hasChild Deborah.

- TransitiveProperty: Các thuộc tính có thể được ghi là transitive (tính bắc cầu). Ví dụ: nếu cặp (x, y) là một thể hiện của thuộc tính transitive P, và cặp (y, z) là một thể hiện của P, thì cặp (x, z) cũng là một cá thể của P.

- SymmetricProperty: Các thuộc tính có thể được cho là đối xứng. Ví dụ: nếu cặp (x, y) là một thể hiện của thuộc tính đối xứng P, thì cặp (y, x) cũng là một cá thể của P.

- FunctionalProperty: Các thuộc tính có thể được khai báo để có một giá trị duy nhất. Nếu một thuộc tính là một FunctionalProperty thì nó không có nhiều hơn một giá trị cho mỗi cá nhân (nó có thể không có giá trị cho một cá nhân). Đặc điểm này được gọi là thuộc tính duy nhất.

- InverseFunctionalProperty: Các thuộc tính có thể được gọi là hàm nghịch đảo. Nếu thuộc tính nghịch đảo thì hàm nghịch đảo của thuộc tính là chức năng. Do đó, nghịch đảo của thuộc tính có nhiều nhất một giá trị cho mỗi cá nhân.

II.2.4 Giao diện lớp OWL Lite

OWL Lite chứa một hàm tạo giao nhau nhưng giới hạn việc sử dụng nó.

- intersectionOf: OWL Lite cho thấy các giao điểm và hạn chế việc đặt tên của các lớp. Ví dụ, lớp EmployedPerson có thể được mô tả như là intersectionOf Person và EmployedThings.

II.2.5 Thông tin tiêu đề OWL Lite

OWL Lite hỗ trợ các khái niệm về việc đưa vào bản thể luận, các mối quan hệ và đính kèm thông tin vào bản thể luận.

II.2.6 Thuộc tính chú thích của OWL Lite

OWL Lite cho phép chú thích trên các lớp, thuộc tính, cá nhân và các tiêu đề ontology. Việc sử dụng các chú thích này phải tuân theo các hạn chế nhất định.

II.3. Mô tả ngôn ngữ gia tăng của OWL DL và OWL Full

Cả OWL DL và OWL Full đều sử dụng cùng một từ vựng mặc dù OWL DL chịu một số hạn chế..

- oneOf: (các lớp được liệt kê): Các lớp được mô tả bằng cách liệt kê các cá thể tạo nên lớp. Các cá thể của lớp chính xác là tập hợp các cá nhân được liệt kê. Ví dụ, lớp daysOfTheWeek có thể được mô tả bằng cách liệt kê các cá nhân chủ nhật, thứ hai, thứ ba, thứ tư, thứ năm, thứ sáu, thứ bảy.

- hasValue: (giá trị thuộc tính): Một thuộc tính được yêu cầu có một cá nhân nhất định làm giá trị (được gọi là giá trị thuộc tính). Ví dụ, các trường hợp của lớp dutchCitizens có thể được mô tả là những người Netherlands như một giá trị quốc tịch của họ. (Giá trị quốc tịch, theNetherlands, là một thể hiện của lớp dân tộc).

- disjointWith: Các lớp có thể không tách rời nhau. Ví dụ, Man và Woman được coi là các lớp rời rạc.

- unionOf, complementOf, intersectionOf (các kết hợp Boolean): OWL DL và OWL Full cho phép các kết hợp Boolean tùy ý của các lớp và các hạn chế: unionOf, complementOf và intersectionOf. Ví dụ, sử dụng unionOf, chúng ta có thể nói rằng một lớp chứa những thứ hoặc là USCitizens hoặc DutchCitizens. Sử dụng complementOf, chúng ta có thể nói rằng trẻ em không phải là SeniorCitizens. (tức là lớp Trẻ em là một phân lớp của sự bổ sung của SeniorCitizens).

- các lớp phức tạp: Trong nhiều cấu trúc, OWL Lite hạn chế cú pháp thành các tên lớp đơn (ví dụ: trong các câu lệnh subClassOf hoặc equivalentClass). OWL Full mở rộng hạn chế này để cho phép các mô tả lớp phức tạp tùy ý, bao gồm các lớp được liệt kê, các hạn chế thuộc tính và các kết hợp Boolean. Ngoài ra, OWL Full cho phép các lớp được sử dụng như các cá thể ( nhưng OWL DL và OWL Lite thì không cho phép).

III. Kết Luận

Web Ontology Language (OWL) là ngôn ngữ đánh dấu được sử dụng để xuất  bản và chia sẻ dữ liệu sử dụng các ontology trên Internet. OWL là một bộ từ vựng mở rộng của khung mô tả tài nguyên (RDF) và được kế thừa từ ngôn ngữ DAML+OIL Web ontology – một dự án được hỗ trợ bởi W3C. OWL biểu diễn ý nghĩa của các thuật ngữ trong các từ vựng và mối liên hệ giữa các thuật ngữ này để đảm bảo phù hợp với quá trình xử lý bởi các phần mềm. OWL được xem như là một kỹ thuật trọng yếu để cài đặt cho Semantic Web trong tương lai. OWL được thiết kế đặc biệt để cung cấp một cách thức thông dụng trong việc xử lý nội dung thông tin của Web.

 Ngôn ngữ này được kỳ vọng rằng sẽ cho phép các hệ thống máy tính có thể đọc được thay thế cho con người. Vì OWL được viết bởi XML, các thông tin OWL có thể dễ dàng trao đổi giữa các kiểu hệ thống máy tính khác nhau, sử dụng các hệ điều hành và các ngôn ngữ ứng dụng khác nhau. Mục đích chính của OWL là sẽ cung cấp các chuẩn để tạo ra một nền tảng để quản lý tài sản, tích hợp mức doanh nghiệp và để chia sẻ cũng như tái sử dụng dữ liệu trên Web. OWL được phát triển bởi nó có nhiều tiện lợi để biểu diễn ý nghĩa và ngữ nghĩa hơn so với XML, RDF và RDFS, và vì OWL ra đời sau các ngôn ngữ này, nó có khả năng biểu diễn tốt hơn các nội dung mà máy có thể biểu diễn được trên Web.

Trong Thông tư số 39/2017/TT-BTTTT ngày 15/12/2017 của Bộ trưởng Bộ Thông tin và Truyền thông Công bố Danh mục tiêu chuẩn kỹ thuật về ứng dụng công nghệ thông tin trong cơ quan nhà nước quy định Khuyến nghị áp dụng tiêu chuẩn Web Ontology Language, thuộc mục 2.6 Mô tả tài nguyên dữ liệu và được xếp vào nhóm Tiêu chuẩn về tích hợp dữ liệu.

 

Nguyễn Thị Thu Trang

 

Tài liệu tham khảo

[1] OWL Web Ontology Language Overview,W3C Recommendation, 10 February 2004.

http://www.w3.org/TR/2004/REC-owl-features-20040210/

[2] RDF Vocabulary Description Language 1.0: RDF Schema, W3C Recommendation, 10 February 2004.  http://www.w3.org/TR/2004/REC-rdf-schema-20040210/

106 Go top

Ý kiến về Trang thông tin điện tử Cục Tin học hóa?



THÔNG KÊ TRUY CẬP
  • Người trực tuyến Người trực tuyến
    • Khách Khách 31
    • Thành viên Thành viên 0
    • Tổng Tổng 31
    • Tổng lượt truy cập: Tổng lượt truy cập: 10409826