27.03.2014 Views

SEKE 2012 Proceedings - Knowledge Systems Institute

SEKE 2012 Proceedings - Knowledge Systems Institute

SEKE 2012 Proceedings - Knowledge Systems Institute

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

will never be bound again. An undecided feature means that it is<br />

currently not in the bound state, but still has the chance to be bound or<br />

removed in later binding-times. In addition, we use “tailoring” to<br />

denote the action of changing a feature’s binding state from undecided<br />

to removed,use“binding” to denote the action of changing a feature’s<br />

binding state from undecided to bound [11].<br />

III.<br />

SEMANTIC FEATURE MODELING<br />

A. Description Logics<br />

Description logics play an important role in Semantic Web since<br />

they are the basis of the OWL 1 (Web ontology language). DLs offer<br />

considerable expressive power, while reasoning is still decidable [12].<br />

Concepts and roles are basic elements in DLs. The syntax and<br />

semantics of a description logic are summarized in table 1, where C<br />

and R are concepts and roles respectively.<br />

TABLE I.<br />

SYNTAX AND SEMANTICS FORDLS CONSTRUCTORS<br />

Constructor Syntax Semantics<br />

top concept<br />

<br />

Δ I<br />

bottom concept <br />

concept negation ¬C Δ I \ C I<br />

intersection CD C I D I<br />

union CD C I D I<br />

existential restriction R.C {aΔ I |b.(a,b) R I bC I }<br />

value restriction R.C {aΔ I |b.(a,b) R I b C I }<br />

set { a 1,…,a n }<br />

A knowledge base K of DLs is constituted by the Tbox T and the<br />

Abox A, denoted as K=(T, A), where the TBox introduces the<br />

terminology (that is, concepts), as well as axioms like general concept<br />

inclusion (GCI) and general role inclusion (GRI); while the ABox<br />

contains assertions about named individuals in terms of this vocabulary<br />

[12]. In TBox, there are concepts definition and axioms. Inclusion<br />

axioms are of the form “C D”. GCI and GRI axioms express the<br />

inclusion relation between concepts and roles respectively. For<br />

example, axiom “Woman Person” indicates that Woman is a subconcept<br />

of Person.<br />

In ABox, each assertion states a fact. Assertions are divided into<br />

two types: concept assertions (written as “C(x)”) and role assertions<br />

(written as “r(x,y)”). For example, the assertion ”Woman(mary)” states<br />

that mary is an individual (instance) that belongs to the concept Woman,<br />

while “hasMother(peter, mary)” states that peter has mother mary.<br />

B. Semantic feature modeling based on DLs<br />

Our DLs-based feature model is composed of two levels: the<br />

feature meta-model and models. The feature meta-model is domainindependent,<br />

and defined in TBox. Feature models are domaindependent<br />

and built in ABox. The domain engineers instantiate models<br />

according to the meta-model.<br />

1) Feature class<br />

In DLs, the feature in meta-model is expressed as a concept, and its<br />

definition is as follows. The concept Feature has role hasBindTime,<br />

1 http://www.w3.org/TR/owl-guide/<br />

whose range is the concept BindTime, and has role hasState, whose<br />

range is the concept BindState.<br />

Feature::= hasBindTime.BindTime hasState.BindState<br />

The binding time consists of reuse-time, compile-time and run-time.<br />

So the concept BindTime is defined by using the set constructor as:<br />

BindTime ::= {reuse-time, compile-time, run-time}<br />

The binding state consists of bound, removed, undecided and<br />

conflict. A new state conflict is appended, which is used for consistency<br />

verification (see conflict-rule in detail). So the concept BindState is<br />

defined by using the set constructor as:<br />

BindState ::= {bound, removed, undecided,conflict}<br />

A dimension feature has variable behavior. The dimension feature<br />

concept DimFeature is the sub-class of concept Feature, anditis<br />

associated with some value features DimValue.<br />

DimFeature::=Feature hasValue.DimValue<br />

The concept DimValue is the sub-class of concept Feature too. The<br />

sub-class relation is defined in GCI axiom as:<br />

DimValue Feature.<br />

Figure 2 depicts the concepts of feature meta-model.<br />

BindState<br />

hasState<br />

DimFeature<br />

Figure 2.<br />

Feature<br />

hasPart<br />

hasValue<br />

DimValue<br />

concept role<br />

sub-concept/role<br />

BindTime<br />

hasBindingTime<br />

Semantic feature meta-model (concepts)<br />

2) Relations between features<br />

The features are organized in hierarchy. For example, the feature<br />

graph-manipulate is composed of graph-add, graph-select and graphmove.<br />

The whole-part relation is described as role hasPart, whose<br />

domain and range are both Feature.<br />

hasPart<br />

require<br />

mutex<br />

hasValue<br />

Feature<br />

hasOptionalPart<br />

hasMandatoryPart<br />

hasPart<br />

hasAlternativeValue<br />

concept role<br />

sub-concept/role<br />

Figure3.<br />

Semantic feature meta-model (roles and constraints).<br />

There are two kinds of whole-part relations: optional and<br />

mandatory. These two relations are defined as role hasOptionalPart<br />

and hasMandatoryPart. Both of them are sub-role of hasPart, written<br />

as following GRI axioms:<br />

423

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!