Matching Web services and client requirements in the form of goals is a significant
challenge in the discovery of Semantic Web services. The most common but unsatisfactory
approach to matching is set-based, where both the client and Web service
declare what objects they require, and what objects they can provide. Matching then
becomes the simple task of comparing sets of objects. This approach is inadequate
because it says nothing about the functionality required by the client, or the functionality
provided by the Web service. As a viable alternative to the set-based approach, in
this thesis we use the F-Logic language as implemented in the FLORA-2 logic system
to specify Web service capabilities and client requirements in the form of logic statements,
clearly define what a match means in terms of logical inference, and implement
a logic based discovery agent and matching engine using the FLORA-2 system. In order
to be able to specify Semantic Web elements such as Web services, goals, ontologies,
we define a sub-language of FLORA-2, which we call FLOG4SWS. The result
is a practical, fully implemented matching engine and discovery agent based purely
on logical inference for Web service discovery, with direct applicability to Web Service
Modeling Ontology (WSMO) and Web Service Modeling Language (WSML),
since F-Logic is intimately related to both.
Before going to the implementation of new language (FLOG4SWS) and logical
inference based discovery agent we investigate the strong as well as weak aspects of
WSML in order to guide us in the search for a better alternative. In our studies into the
theory of F-Logic, we discovered a mistake in the unification algorithm for F-Logic
molecules, and we present a corrected version of the algorithm in this thesis as well.
Öz: Ag hizmetlerini ve hedefler seklinde belirtilmis¸ kullanıcı gereksinimlerini eslestirmek, semantik ag hizmetleri kes¸finde yapılması kolay olmayan bir seydir. Eslestirmede en cok kullanılan, ancak tatminkar olmayan yaklasım, kume tabanlı olandır. Bu yaklasımda, hem kullanıcı, hem de ag hizmeti istedikleri ve ihtiyac¸ duydukları nesneleri deklare ederler. Boylece, eslestirme basit nesne kumeleri karsılastırmasına donuşur. Bu yaklasım, kullanıcının ihtiyacı olan islevsellik, veya hizmetin sundugu
islevsellik hakkında hicbir sey soylememesinden dolayı yetersizdir. Bu tezde, kume
tabanlı eslestirmeye alternatif olarak, FLORA-2 mantık sisteminde gerceklestirildigi
sekliyle F-Logic dilini kullanarak, hizmet yeteneklerini ve kullanıcı isteklerini mantık
ifadeleri seklinde belirtip, eslestirmenin mantıksal cıkarım acısından ne anlama geldigini
acıkca tanımlayıp, FLORA-2 sistemini kullanan mantık tabanlı bir kesif ajanı ve
eslestirme makinesi gerceklestiriyoruz. Ag hizmetleri, hedefler ve ontolojiler gibi semantik ag elemanlarını belirtebilmek icin, FLOG4SWS adını verdigimiz bir FLORA-
2 alt dili tanımlıyoruz. Sonuc olarak ortaya cıkan gerceklestirilmesi tamamlanmıs,
tamamen mantıksal cıkarıma dayalı, F-Logic ile olan yakın iliskilerinden dolayı Web
Service Modeling Ontology (WSMO) ve Web Service Modeling Language (WSML)
diline dogrudan uyarlanabilen bir eslestirme makinesi ve kesif ajanıdır.
Tezde ayrıca, yeni dil (FLOG4SWS) ve mantıksal cıkarım tabanlı kesif ajanının
gerceklestirmesine gecmeden once, bize daha iyi bir alternatifin yolunu gostermesi acısından, WSML’in kuvvetli ve zayıf yonlerini arastırdık. F-Logic kuramı arastırmalarımız
esnasında, F-Logic molekullerinin birlestirme algoritmasında bir hata kesfettik ve bu algoritmanın duzeltilmis seklini de sunuyoruz.