Một câu trả lời tổng hợp
- UML là một (đồ họa) ngôn ngữ cho mô hình
- OWL là một ngôn ngữ sử dụng cho knowledge representation (KR) ở một góc độ ngữ nghĩa
Trong lần đầu tiên nơi, mục đích OWL không phải là mô hình hóa. Sử dụng kỹ thuật KR là một lựa chọn trong lĩnh vực kỹ nghệ phần mềm. Nó phải khác biệt với bất kỳ quy trình kỹ thuật phần mềm nào. Cả hai ngôn ngữ đều có các mục đích khác nhau.
Tất nhiên, bạn có thể [sử dụng] OWL để mô tả việc xây dựng [hệ thống phần mềm]. Nhưng sự quan tâm của một động thái như vậy chủ yếu là trong lý luận tự động về quy trình xây dựng phần mềm của bạn và sẽ không hữu ích lắm trong bối cảnh của một dự án duy nhất. Điều này sẽ chỉ có hiệu lực nếu được thực hiện cho tất cả các dự án của bạn để có hậu quả là knowledge base (KB).
Giải thích chi tiết
Theo W3C wiki section about OWL:
W3C Web Ontology Language (OWL) là một ngôn ngữ Semantic Web được thiết kế để đại diện cho kiến thức phong phú và phức tạp về điều gì đó, nhóm thứ và mối quan hệ giữa mọi thứ. OWL là một ngôn ngữ dựa trên logic tính toán sao cho kiến thức được thể hiện trong OWL có thể được khai thác bởi các chương trình máy tính, ví dụ, để xác minh tính nhất quán của kiến thức đó hoặc để làm cho kiến thức ngầm rõ ràng
Cần có một số tranh luận về một ngôn ngữ mô hình hóa. Ví dụ: Wikipedia article on the topic xem xét ý nghĩa rộng và cũng có thể bao gồm OWL. Tôi xem xét ở đây với thuật ngữ mô hình hóa chỉ hoạt động kỹ nghệ phần mềm (đó là hoạt động bạn tập trung vào câu hỏi của mình).
Bạn có thể cần lập mô hình để xác định bản thể luận, giống như bạn cần cho sự phát triển của dự án phần mềm. Nhưng mô hình OWL này sẽ không xem xét các yếu tố kỹ thuật phần mềm mà là các dữ liệu miền của dự án của bạn. Nói cách khác, sử dụng UML trong quy trình xây dựng phần mềm nhằm mục đích thiết lập các phần tử phần mềm.Với OWL, bạn sẽ không tập trung vào các yếu tố này, trừ khi bạn đang cố gắng tự động lập luận về xây dựng phần mềm.
Bên cạnh đó, mối quan hệ tồn tại giữa UML và OWL. A note by Walter W. Change trong khung của W3C thảo luận câu hỏi. Tôi sẽ tóm tắt câu hỏi xem xét hai quan hệ riêng biệt.
Sử dụng UML để đại diện cho kiến thức OWL
Một OMG đặc điểm kỹ thuật gọi là ODM (ví Ontology Definition metamodel) cung cấp một metamodel để xác định bản thể học. Trong khung của đặc tả này, việc sử dụng một lược tả UML được giới thiệu như một cách để thu hẹp khoảng cách giữa hai ngôn ngữ. Trong đặc điểm kỹ thuật ODM 1.1, phần 8.4.2:
Mục tiêu của một cấu hình UML từ quan điểm ODM là cung cấp cầu nối giữa UML và các đại diện tri thức trên cơ sở vững chắc, ngữ nghĩa, với mục tiêu rộng hơn của phần mềm liên quan và các phương pháp logic để đại diện cho thông tin.
Việc sử dụng hồ sơ UML được giới thiệu trong an article. Bạn có thể tìm thấy một hồ sơ như vậy trong ODM 1.0 specification resources, dưới dạng tài liệu phi quy chuẩn. Theo những gì được xem xét ở đây, hồ sơ UML này có thể là một công cụ để mô hình hóa ontology.
Sử dụng OWL/công nghệ Semantic Web để đại diện cho UML
RDF là định dạng cơ sở sử dụng để viết các ontology OWL.
Đầu (2000) academic work cung cấp tài liệu RDF ngữ nghĩa mô hình hoá các phần tử UML (dựa trên đặc tả OMG). Tác phẩm này đứng trước draft works on the OWL W3C recommendation (2002).
Cảm ơn câu trả lời của bạn - đó là một thông tin khá hữu ích! Ok, tôi có thể trộn chúng lên. Tuy nhiên nó vẫn không rõ ràng, tại sao tôi nên trộn cả hai ngôn ngữ trong quá trình SE? Có một số loại lợi ích? Tôi nghĩ rằng trộn chúng trong "một canh" kết quả sẽ trở nên rất phức tạp ... – rzo
Không. Bạn có thể mô tả những thứ mức cao trong OWL và khi cần thiết bạn có thể bước xuống UML. –
Tôi đoán câu hỏi trung tâm của bạn giống như "Tôi có thể nói những lời của Goethe bằng tiếng Pháp" hay "Tôi có thể nói những lời của Rousseau bằng tiếng Đức". Goethe đã từng nói. "Họ [người Pháp] dịch mọi thứ sang ngôn ngữ riêng của họ và từ đó về sau nó có ý nghĩa hoàn toàn khác". –