Mô tả ngữ nghĩa cho dịch vụ Web

Một phần của tài liệu Tổng hợp các dịch vụ web có ngữ nghĩa = design and implement a semantic web process composition framnework (Trang 39 - 42)

4.1 T HIEÁT KEÁ HEÄ THOÁNG

4.1.1 Mô tả ngữ nghĩa cho dịch vụ Web

Trọng tâm của hệ thống là xây dựng quá trình Web có ngữ nghĩa. Để làm được điều này trước tiên cần mô tả ngữ nghĩa cho dịch vụ Web.

Các dịch vụ Web hiện được mô tả bằng WSDL. Để mô tả ngữ nghĩa cho dịch vụ Web, luận văn này sử dụng cơ chế mở rộng của WSDL nhằm mô tả ngữ nghĩa cho toàn dịch vụ Web và cho từng phương thức của dịch vụ Web.

Ngữ nghĩa cho toàn dịch vụ Web được cung cấp thông qua cam kết tuân theo ontology nào. Ta quy định dịch vụ Web cam kết tuân theo một ontology nếu trong tài liệu WSDL mô tả dịch vụ Web này có sử dụng một namespace chỉ đến ontology. Ví dụ tài liệu WSDL như sau:

Hình 10 Cam kết tuân theo Ontology trong tài liệu WSDL

được xem như cam kết tuân theo ontology SomeDomain.daml. Ontology ở đây sử dụng cách thức mô tả như quy định bởi DAML+OIL. Namespace

<?xml version="1.0" encoding="UTF-8"?>

<definitions targetNamespace="http://www.sample.com/RealEstateWebService"

xmlns="http://schemas.xmlsoap.org/wsdl/"

xmlns:CommittedOnt=”http://www.sample.com/SomeDomain.daml”

xmlns:SemWebExt=”http://www.nhuanvn.com/SemWebExt”

>

………

</definitions>

SemanticWebOnt nhằm mục đích đưa ra các mở rộng về ngữ nghĩa cho ngôn ngữ WSDL. Các mở rộng này bao gồm các element (còn gọi là tag hay thẻ):

• semantics: là thẻ cha của các thẻ sau đây

• operation-semantics: Mô tả ngữ nghĩa của phương thức (hàm)

• input-semantics: Mô tả ngữ nghĩa của dữ liệu nhập

• output-semantics: Mô tả ngữ nghĩa của dữ liệu xuất

• precondition-semantics: Mô tả ngữ nghĩa của tiền điều kiện

• effect-semantics: Mô tả ngữ nghĩa của kết quả thực thi

• rollback-semantics: Mô tả ngữ nghĩa trong trường hợp cần rollback

Thẻ semantics là thành phần mở rộng trong WSDL, nó mở rộng (và là thẻ con) cuûa theû operation trong WSDL.

Mỗi phương thức sẽ được mô tả ngữ nghĩa dựa trên các thẻ này. Ví dụ sau trình bày một tài liệu WSDL đã sử dụng các thẻ mở rộng này nhằm biểu diễn ngữ nghĩa cho dịch vụ Web.

Hình 11 Biểu diễn ngữ nghĩa cho dịch vụ Web trong tài liệu WSDL

Để trình bày rõ hơn các thông tin mô tả ngữ nghĩa, đoạn in đậm mô tả ngữ

<?xml version="1.0" encoding="UTF-8"?>

<definitions targetNamespace="http://www.sample.com/RealEstateWebService"

xmlns = "http://schemas.xmlsoap.org/wsdl/"

xmlns:soap = "http://schemas.xmlsoap.org/wsdl/soap/"

xmlns:tns = “http://www.nhuanvn.com/ext_wsdl_ex.wsdl”

xmlns:CommittedOnt=”http://www.sample.com/SomeDomain.daml”

xmlns: SemWebExt =”http://www.nhuanvn.com/SemWebExt”>

<message name = “OperationRequest”>

<part name = “in1” type = “string” />

</message>

<message name = “OperationResponse”>

<part name = “return1” type = “string” />

</message>

<portType name = “RealEstate”>

<operation name = “FindHousePrice” parameterOrder = “in1”>

<input message = “tns:OperationRequest” name = “HouseAddress” />

<output message = “tns:OperationResponse” name = “HousePrice” />

<semantics>

<operation-semantics SemWebExt:operation-concept = “…” />

<input-semantics SemWebExt:input-concept = “…” />

<output-semantics SemWebExt:output-concept = “…” />

<precondition-semantics SemWebExt:precondition-concept=“…” />

<effect-semantics SemWebExt:effect-concept = “…” />

<rollback-semantics SemWebExt:rollback-concept = “…” />

</semantics>

</operation>

</portType>

<service name = “HQRealEstateService”>

<port binding = “HQRealEstateSoapBinding” name = “HQRealEstateWebService”>

<soap:address location = “http:localhost:8080/HQRealEstateWebService” />

</port>

</service>

</definitions>

Hình 12 Chi tiết biểu diễn ngữ nghĩa cho dịch vụ Web

Dạng mô tả như thế này cho phép kết hợp WSDL với Ontology thông qua cơ chế mở rộng của WSDL nhằm mô tả ngữ nghĩa của từng phương thức trong một dịch vụ Web.

Trong một ứng dụng thực sự, có thể cải tiến cách mô tả thông tin ngữ nghĩa này cho phù hợp hơn, ví dụ: các thẻ mô tả ngữ nghĩa có thể lồng nhau nhiều cấp; hoặc mô tả ngữ nghĩa không chỉ tập trung vào thành phần mở rộng của thẻ operation như đề nghị ở trên mà có thể phân tán vào các thẻ con của thẻ operation (ví dụ mô tả ngữ nghĩa cho dữ liệu nhập trực tiếp trong phần thẻ input chẳng hạn).

Một phần của tài liệu Tổng hợp các dịch vụ web có ngữ nghĩa = design and implement a semantic web process composition framnework (Trang 39 - 42)

Tải bản đầy đủ (PDF)

(79 trang)