In this dissertation, we mainly reincarnated the Semantic Web Service Choreography
that had been abandoned for a decade in spite of its interesting utility, especially
in today’s dominant web service-based applications. We took the original Abstract
State Machine-based (ASM) choreography execution algorithm of Web Service Modeling
Ontology (WSMO), determined its weaknesses and improved it so that it can
be used effectively in the context of semantic web services. We then implemented a
completely new choreography engine based on our improved algorithm.
Our work has been done in two phases. First, we concentrated on the “capability”
component of WSMO and used Frame Logic (F-Logic) to specify it. The new model
allows very short but expressive descriptions of both goals and web service capabilities,
which are then used by a matching engine to discover which web services can satisfy a
given goal. The matching engine, using the meta-level F-logic inferencing capabilities
of the underlying Flora-2 reasoner, is very efficient and has a very concise definition
itself.
In the second phase, we again used F-Logic for specifying ASM-based modeling
of interactions between a requester of service and provider of service, also called
choreography, of semantic web services described in conformance to WSMO. Our
choreography execution engine, implemented in Flora-2, remains loyal to the parallelism
and branching paradigms of ASMs (unlike previous implementations), and is
based on our improved choreography execution algorithm, which has the following
novelties over the original algorithm: (i) it introduces the concept of initial state in the
execution of ASM and links it to the precondition of the goal, (ii) it introduces the
concept of a final state in the execution of ASM and links it to the post-condition of the
goal, (iii) it modifies the execution of ASM so that it stops when the final state conditions
are satisfied by the current configuration of the machine, as opposed to stopping
only when the machine has no more moves.
As part of our work, we also developed a visual tool for specifying web service
choreographies in Flora-2, provided a mapping between JSON and Flora-2 Web Service
specification, and lastly defined a formal mapping between traditional ASMs and
ontological ASMs that are the basis of choreography specifications and proved their
equivalence, which was missing in the literature before.
Keywords: Semantic web, web services, service matching, service choreography, abstract
state machine, Flora-2, F-logic, web reasoning
ÖZ:
Bu tez çalı¸smasında, özellikle bugünün baskın web hizmeti tabanlı uygulamalarında
ilginç yararına ra˘gmen, on yıl boyunca terk edilmi¸s Semantik Web Hizmeti Koreografisini
yeniden canlandırdık. Web Service Modeling Ontology’nin (WSMO) orijinal
Abstract State Machine tabanlı (ASM) koreografi yürütme algoritmasını aldık,
zayıf yönlerini belirledik ve semantik web hizmetleri ba˘glamında etkin bir ¸sekilde kullanılabilecek
¸sekilde geli¸stirdik. Ardından, geli¸stirilmi¸s algoritmamızı temel alarak
tamamen yeni bir koreografi motoru hazırladık.
Çalı¸smalarımız iki a¸samalı olarak gerçekle¸stirildi. ˙Ilk olarak, WSMO’nun "yetenek"
bile¸senine yo˘gunla¸stık ve onu belirtmek için Çerçeve Mantı˘gı (F-Logic) kullandık.
Yeni model, hem hedeflerin hem de web hizmet yeteneklerinin çok kısa ancak
somut tanımlamalarına izin verir; bunlar da e¸sle¸sme motoru tarafından hangi web
hizmetlerinin belirli hangi hedefle uyumlu oldu˘gunu ke¸sfetmek için kullanılır. Altta
yatan Flora-2 mantı˘gının meta düzeyinde F-Logic çıkarım yeteneklerini kullanan e¸sle¸sme
motoru çok verimli ve çok özlü bir tanımlamaya sahiptir.
˙Ikinci a¸samada, yine F-Logic’i, WSMO’ya uygun olarak tanımlanan semantik
web servislerinin, koreografi olarak da adlandırılan, hizmet talep eden ve hizmet
sa˘glayıcısı arasındaki etkile¸simlerin ASM tabanlı modellemesini belirtmek için tekrar
kullandık. Flora-2’de uygulanan koreografi yürütme motorumuz ASM’lerin paralellik
ve dallanma paradigmalarına (önceki uygulamalardan farklı olarak) sadık kalmaktadır
ve orjinal algoritma üzerinde a¸sa˘gıdaki yenilikleri içeren geli¸stirilmi¸s koreografi
yürütme algoritmamızı temel almaktadır: (i) ASM’nin yürütülmesinde nihai bir durum
kavramını getirir ve hedefin son durumuna ba˘glar; (ii) ASM’nin uygulanmasında
ba¸slangıç hali kavramını getirir ve onu hedefin ön ko¸suluna ba˘glar; (iii) sadece makine
daha fazla hareket olmadı˘gında durdurulması yerine, makinenin geçerli konfigürasyonu
ile nihai durum ko¸sulları yerine getirildi˘ginde ASM’nin çalı¸smasını durdurur.
Çalı¸smamızın bir parçası olarak, ayni zamanda Flora-2’de web hizmeti Koreografilerini
belirlemek için görsel bir araç geli¸stirdik, JSON ve Flora-2 Web Hizmeti
spesifikasyonu arasında bir e¸sleme yaptık ve son olarak daha önce literatürde eksik olan
geleneksel ASM’ler ve ontolojik ASM’ler arasındaki formel bir haritalama tanımladık
ve e¸sde˘gerliklerini ispatladık.
Anahtar Kelimeler: Semantik web, web servisler, servis e¸sle¸stirme, servis koreografi,
Soyut durum makinesi, Flora-2, F-Logic, webde mantik yürütme