Mapping Policies to Web Rules: A Case of the KAoS Policy Language

Mapping Policies to Web Rules: A Case of the KAoS Policy Language

Nima Kaviani (University of British Columbia, Canada), Dragan Gasevic (Athabasca University, Canada) and Marek Hatala (Simon Fraser University, Canada)
DOI: 10.4018/978-1-60566-402-6.ch024
OnDemand PDF Download:
List Price: $37.50


Web rule languages have recently emerged to enable different parties with different business rules and policy languages to exchange their rules and policies. Describing the concepts of a domain through using vocabularies is another feature supported by Web rule languages. Combination of these two properties makes web rule languages appropriate mediums to make a hybrid representation of both context and rules of a policy-aware system. On the other hand, policies in the domain of autonomous computing are enablers to dynamically regulate the behaviour of a system without any need to interfere with the internal code of the system. Knowing that policies are also defined through rules and facts, Web rules and policy languages come to a point of agreement, where policies can be defined through using web rules. This chapter focuses on analyzing some of the most known policy languages (especially, KAoS policy language) and describes the mappings from the concepts for KAoS policy language to those of REWERSE Rule Markup Language (R2ML), one of the two proposals to Web rule languages.
Chapter Preview

Introduction And Motivation

Rules are among the most frequently used knowledge representation techniques. They can generally be categorized as reaction rules (event-condition-actions), integrity rules (rules of consistency checking), derivation rules (implicitly, derived rules), and production rules (Boley, Tabet, & Wagner, 2001). Facts can also be regarded as derivation rules with no premises.

Recently, rule markup languages have started to be considered as the vehicle for using rules on the Web and in other distributed systems, forming a new category of rule languages, referred to as Web rule languages (Wagner, Giurca, & Lukichev, 2006). The main strength of markup languages is their machine readability combined with their inherent potentials to easily be linked to distributed knowledge sources also represented in the form of markup languages (e.g., Data Type Definition (DTD), XML Schema (Fallside & Walmsley, 2004), Resource Description Framework (RDF) (Lassila & Swick, 1999), and Web Ontology Language (OWL) (Smith, Welty, & McGuinness, 2004)). Rule markup languages allow for the reuse, interchange, and publication of rules as well as their communication and execution in a distributed environment. More specifically, rule markup languages allow for specifying business rules as modular, standalone, units in a declarative way, and publishing and interchanging them between different systems and tools (Wagner, Giurca, & Lukichev, 2006). Rule markup languages play an important role in facilitating business-to-customer (B2C) and business-to-business (B2B) interactions over the Internet by enabling information exchange across various stakeholders. For example, they may be used to express derivation rules for enriching Web ontologies by adding definitions of derived concepts, or for defining data access permissions; to describe and publish the reactive behaviour of a system in the form of reaction rules; and to provide a complete XML-based specification of a software agent (Wagner, Giurca, & Lukichev, 2005).

RuleML and REWERSE Rule Markup Language (R2ML) are two newly and rapidly emerging Web rule languages that help with interchanging various types of rules from one rule domain to another. RuleML represents an initiative for creating a general rule markup language that will support different types of rules and different semantics (Boley, Tabet, & Wagner, 2001). R2ML more or less follows a similar idea to RuleML; however, its design follows Model Driven Architecture (MDA) defined by the Object Management Group (OMG) (Miller & Mukerji, 2003). Moreover, R2ML is a trial to cover a more comprehensive set of atoms and elements required to develop and define rules, thus bringing more flexibility to rule definition. These rule languages are designed to be conformant and compatible with the guidelines and use cases defined by the Rule Interchange Format (RIF) working group (Ginsberg, Hirtle, McCabe, & Patranjan, 2006).

Policies in the domain of autonomous computing are guiding plans that restrict the behaviour of autonomous agents in accessing the resources (Toninelli, Bradshaw, Kagal, & Montanari, 2005). The main advantage in using policies is the possibility to dynamically change the behaviour of the system by adjusting the policies without interfering with the internal code of the system. They can authorize/oblige the users to, or prohibit/dispense them from, accessing the resources or taking particular actions in the system. Policy languages can be considered as instructional sets that enable phrasing and putting systematic guidelines in place for a target agent. KAoS (Uszok, et al., 2003) is one of the most known policy languages that goes beyond the traditional policy systems by giving special care to the context to which the policies are applied. This is done by enabling these policy languages to use domain knowledge (a.k.a, vocabularies) readily available on the Internet and represented in knowledge representation markup languages such as XML-Schemas, RDF, and OWL.

Key Terms in this Chapter

RIF: Rule Interchange Format is W3C initiative that should define an intermediary language between various rule languages, but it should not provide a formally defined semantic foundation for reasoning on the Web such as OWL for ontologies.

MOF 2: a metadata management framework, and a set of metadata services that enable the development and interoperability of model- and metadata-driven systems.

QVT: a standard for model transformation languages

OWL: Web Ontology Language designed for use by applications that need to process the content of information instead of just presenting information to humans. OWL can be used to explicitly represent the meaning of terms in vocabularies and the relationships between those terms. This representation of terms and their interrelationships is called an ontology.

R2ML: a MOF-defined general rule language that captures integrity, derivation, production, and reaction rules. It is a well-known proposal for RIF.

KAoS: KAOS language is a multi-paradigm specification language with a two-level structure: an outer semantic net layer for declaring concepts, their attributes and links to other concepts and an inner formal assertion layer for formally defining the concept.

MDA: an approach to application design and implementation that encourages efficient use of system models in the software development process, and it supports reuse of best practices when creating families of systems.

Complete Chapter List

Search this Book: