Ontology Based Publish Subscribe Framework

The publish-subscribe paradigm has been a received considerable attention over recent years. Many different models for topics have been explored, ranging from regular expressions to hierarchical addressing. We believe that the expressiveness of the topic is a crucial factor in determining the utility of publish-subscribe systems, and we thus adopt an ontology-based system. Ontologies promise is “a shared and common understanding of a domain that can be communicated between people and application systems” [6]. The usage of ontologies in the publish-subscribe system allows publishers to generate events within a specific domain, and allows subscribers to submit subscriptions that can match a whole or partial event. Prior knowledge obtained from previous events can also be used in conjunction with a current event when evaluating subscriber queries. This means that a single event can have a different semantic meaning across different subscriptions and prior knowledge within the ontology plays a role in the evaluation process. Efficiency is a concern, however, and the challenge of providing efficient delivery of events to interested clients in content-based publish-subscribe systems presents the problem of effectively matching subscriber queries against incoming events. Doing this in such a manner as to not affect the scalability of the system while maintaining a high accuracy of query resolution. The ability to express complex events while efficiently matching these events over subscriber queries is a major obstacle when designing such a system. In this paper we present a publish-subscribe system which utilizes ontologies to classify and query published data. The framework utilizes Semantic Web technologies to provide the expressiveness and query resolution accuracy to enhance the matching of notifications to subscriptions. We also outline both publisher and subscriber client-side libraries which allow for easy and effective means of publishing events and creating subscription queries using an effective ontology query language, SPARQL. We also demonstrate the ability for publishers to control the lifetime of data within the ontology. This approach refines the ability to manage state, giving greater semantic capabilities across a collection of events.