<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>SWRL-F - A Fuzzy Logic Extension of the Semantic Web Rule Language</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Tomasz Wiktor Wlodarczyk</string-name>
          <email>tomasz.w.wlodarczyk@uis.no</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Martin O'Connor</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Chunming Rong</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Mark Musen</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Stanford University</institution>
          ,
          <country country="US">USA</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>University of Stavanger</institution>
          ,
          <country country="NO">Norway</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Enhancing Semantic Web technologies with an ability to express uncertainty and imprecision is widely discussed topic. While SWRL can provide additional expressivity to OWL-based ontologies, it does not provide any way to handle uncertainty or imprecision. We introduce an extension of SWRL called SWRL-F that is based on SWRL rule language and uses SWRL's strong semantic foundation as its formal underpinning. We extend it with a SWRL-F ontology to enable fuzzy reasoning in the rule base. The resulting language provides small but powerful set of fuzzy operations that do not introduce inconsistencies in the host ontology.</p>
      </abstract>
      <kwd-group>
        <kwd>SWRL</kwd>
        <kwd>SWRL-F</kwd>
        <kwd>fuzzy logic</kwd>
        <kwd>fuzzy rules</kwd>
        <kwd>fuzzy</kwd>
        <kwd>rule language</kwd>
        <kwd>risk</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1 Introduction</title>
      <p>Fuzzy Logic (FL) has provides a way to express imprecise information and helps in
simplifying knowledge representation. For these reasons it is considered to be an
important element in Semantic Web (SW) research. Despite the existing research
work the problem of supplementing SW with FL remains without implemented,
generic, publicly available, standards-based and widely used solution.</p>
      <p>
        In this paper we present SWRL-F, a Fuzzy Logic extension of the Semantic Web
Rule Language. It allows expressing imprecise information and helps in simplifying
knowledge representation in SWRL. It consists of two parts. SWRL-F ontology that
allows representing FL knowledge in the ontology and SWRL rule base, and
execution engine that integrates with Protégé [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. One of the areas where fuzzy logic
found significant application are control systems. In this work we based on the control
system approach that follows the scheme: collect crisp inputs, fuzzify inputs, perform
fuzzy inference, defuzzify inputs, apply crisp outputs [
        <xref ref-type="bibr" rid="ref10">2</xref>
        ].
      </p>
      <p>Related Work. Pan et al. [3] propose f-SWRL, a fuzzy extension to SWRL. It
includes fuzzy assertions and fuzzy rules, however, does not describe any
implementation. Moreover, that approach is criticized in Agarwal and Hitzler [4],
who explain that syntax and semantics of f-SWRL actually offer no fuzziness in
fSWRL rules. Bobillo et al. [5] present a semantic fuzzy expert system for a fuzzy
balanced scorecard. They use OWL ontology to represent knowledge about variables.
They also provide and interface to FuzzyJess to execute fuzzy rules. Protege is used
as a development platform; however, implementation focuses only on balanced
scorecard and rules are not based on SWRL. A need for more generic approach is
mentioned in conclusions. Stoilos et al. [6] discuss Fuzzy OWL and uncertainty
representation with rules. They present a fuzzy reasoning engine that implements a
reasoning algorithm for a fuzzy DL language fKD-SHIN. It handles most of OWL
features. However, the implementation is proprietary and does not connect directly
with any established Semantic Web technologies or tools like OWL, SWRL or
Protege. For additional related work one can refer to [7].</p>
      <p>Contributions. In SWRL-F we aim to provide a FL extension to SWRL, which is
based on standard OWL DL and SWRL. SWRL-F ontology enables description of FL
knowledge and its application in SWRL rules. We also implemented a test execution
engine and development environment that is publically available1.</p>
      <p>Organization of the Paper. After the Introduction, in Section 2 we explain our
design choices for SWRL-F in term of their influence on semantics of rules and
logical soundness of ontology. In Section 3 we mention basic constructs of SWRL-F
ontology. Further, in Section 4, we describe how to understand and construct fuzzy
rules with SWRL-F. We conclude in Section 5.</p>
    </sec>
    <sec id="sec-2">
      <title>2 Design Choices</title>
      <p>Connection between FL and SW technologies based on DL is a non-trivial
problem. We have made four main design choices that influence semantic of the rules
and logical soundness of the ontology.</p>
      <p>First, SWRL-F must be standard based. It includes anchoring in the well
established fuzzy logic scheme. Our leading idea was to follow fuzzy control systems
scheme: fuzzification, inference, defuzzification. Moreover, SWRL-F can be fully
expressed using OWL and SWRL, by importing SWRL-F ontology that we created.
This ontology is purely OWL-based and it is described in the Section 3.</p>
      <p>Second, fuzzy inference in SWRL-F is limited to the rules only. This way we can
avoid inconsistencies in the ontology. Ontology is used to describe fuzzy knowledge
base, however, it can be interpreted in a limited, non-fuzzy way by a DL-reasoner.
Until we connect fuzzy rule reasoner knowledge based on SWRL-F ontology has
limited use, but it does not create any inconsistencies with standard SW technologies.</p>
      <p>Third, fuzzy assertions in SWRL are represented as a standard object property
defined in SWRL-F ontology, which has special meaning when interpreted by a fuzzy
rule reasoner. It provides the most natural way of expression and can be interpreted
(though not in a fuzzy way) by a non-fuzzy rule reasoner.</p>
      <p>Fourth, we decided to reuse existing fuzzy rule engine namely FuzzyJess [8]. This
allowed us to implement our solution faster and be sure that it will be stable and
reasonably efficient. As FuzzyJess is a superset of Jess we could automatically
provide compatibility with existing extensions and built-ins available for SWRL and
SWRLJESSTab [9]. There is, though, one notable limitation of such approach: not all
the OWL constructs can be represented, which follows the limitations as described in
[10].
1 http://protege.cim3.net/cgi-bin/wiki.pl?SWRLF</p>
      <p>In order to express necessary fuzzy knowledge, namely fuzzy: sets, terms,
variables and values, we have created SWRL-F ontology. Due to limited space, we
present here only a few key elements. Representation follows Manchester syntax [11].</p>
      <p>Class: FuzzyVariable
Class: FuzzyTerm
Class: FuzzyValue
Class: FuzzySet
ObjectProperty: hasFuzzySet</p>
      <p>Domain: FuzzyTerm, FuzzyValue</p>
      <p>Range: FuzzySet
ObjectProperty: hasFuzzyTerm</p>
      <p>Domain: FuzzyVariable</p>
      <p>Range: FuzzyTerm
ObjectProperty: hasFuzzyValue</p>
      <p>Domain: FuzzyVariable</p>
      <p>Range: FuzzyValue
ObjectProperty: hasFuzzyVariable</p>
      <p>Domain: FuzzyValue</p>
      <p>Range: FuzzyVariable</p>
    </sec>
    <sec id="sec-3">
      <title>4 SWRL-F Rules</title>
      <p>Having FuzzyValues and FuzzyTerms described one can construct rules in
SWRLF. To do so we use modified SWRLJessTab. SWRL-F rules are normal SWRL rules
that make use of fuzzymatch object property from SWRL-F ontology. If executed
using standard rule engine like Jess this property acts as any other object property.
However, if run using modified version of SWRLJessTab together with FuzzyJ and
FuzzyJess packages, fuzzymatch property allows constructing fuzzy rules.</p>
      <p>ObjectProperty: fuzzymatch</p>
      <p>Domain: FuzzyValue</p>
      <p>Range: FuzzyTerm
Let us analyze a generic example:</p>
      <p>FuzzyValue (?v1) ∧ fuzzymatch(?v1, someFuzzyTerm) ∧
FuzzyValue(?v2) → fuzzymatch(?v2, otherFuzzyTerm)</p>
      <p>The fuzzymatch property is used to calculate degree of membership of FuzzyValue
?v1 in the someFuzzyTerm. FuzzyValues and FuzzyTerms are related by
FuzzyVariables. Second use of fuzzymatch allows to bind the value of
otherFuzzyTerm to the ?v2 FuzzyValue, basing on the calculated degree of
membership.</p>
      <p>Many rules can assign new values to the same FuzzyValue. In contrast with
standard SWRL where such assertions would not carry any additional semantics, in
SWRL-F the values that each rule assigns are then grouped together and collectively
defuzified into one final crisp result. Apart from simplifying management and
creation of rules, this allows to create rules in a more natural way.
5</p>
    </sec>
    <sec id="sec-4">
      <title>Conclusions</title>
      <p>In this paper we presented SWRL-F. It is an extension to SWRL that allows
constructing fuzzy rules using lexical variables described it OWL-based ontology. Its
general design is based on fuzzy control system approach and together with proper
construction of SWRL-F ontology it allows to avoid conflicts between FL and DL in
the ontology. SWRL-F can be used to extend any SW application with FL capabilities
basing on Protege editor and modified SWRLJessTab.</p>
      <p>SWRL-F does not introduce any inconsistencies into a DL-based ontology due to
limiting fuzzy inference to rules basing on SWRL-F ontology construction. However,
it has the some limitations with regards to OWL representation as explained in [10].</p>
      <p>SWRL-F allows easier knowledge management by moving numerical values from
rules to ontology. This results in simpler rules and removes hard-coding of those
numerical values in rules.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          <source>[1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] “The Protégé Ontology Editor and Knowledge Acquisition</source>
          System” Available: http://protege.stanford.edu/.
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          <string-name>
            <surname>T.J. Ross</surname>
          </string-name>
          , “
          <article-title>Fuzzy Control Systems,” Fuzzy Logic with Engineering Applications</article-title>
          , WileyBlackwell,
          <year>2004</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          <string-name>
            <given-names>J.Z.</given-names>
            <surname>Pan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>G.</given-names>
            <surname>Stamou</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Tzouvaras</surname>
          </string-name>
          ,
          <string-name>
            <surname>and I. Horrocks</surname>
          </string-name>
          , “
          <article-title>f-SWRL: A Fuzzy Extension of SWRL,”</article-title>
          <source>Artificial Neural Networks: Formal Models and Their Applications - ICANN</source>
          <year>2005</year>
          ,
          <year>2005</year>
          , pp.
          <fpage>829</fpage>
          -
          <lpage>834</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          <string-name>
            <given-names>S.</given-names>
            <surname>Agarwal</surname>
          </string-name>
          and
          <string-name>
            <given-names>P.</given-names>
            <surname>Hitzler</surname>
          </string-name>
          , “
          <article-title>Modeling Fuzzy Rules with Description Logics</article-title>
          .”
          <string-name>
            <given-names>F.</given-names>
            <surname>Bobillo</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Delgado</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Gómez-Romero</surname>
          </string-name>
          , and E. López, “
          <article-title>A semantic fuzzy expert system for a fuzzy balanced scorecard</article-title>
          ,
          <source>” Expert Syst. Appl.</source>
          , vol.
          <volume>36</volume>
          ,
          <year>2009</year>
          , pp.
          <fpage>423</fpage>
          -
          <lpage>433</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          <string-name>
            <given-names>G.</given-names>
            <surname>Stoilos</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Simou</surname>
          </string-name>
          , G. Stamou, and
          <string-name>
            <given-names>S.</given-names>
            <surname>Kollias</surname>
          </string-name>
          , “
          <article-title>Uncertainty and the Semantic Web,” IEEE Intelligent Systems</article-title>
          , vol.
          <volume>21</volume>
          ,
          <year>2006</year>
          , pp.
          <fpage>84</fpage>
          -
          <lpage>87</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          <string-name>
            <given-names>T.</given-names>
            <surname>Lukasiewicz</surname>
          </string-name>
          and U. Straccia, “
          <article-title>Managing uncertainty and vagueness in description logics for the Semantic Web,” Web Semant</article-title>
          ., vol.
          <volume>6</volume>
          ,
          <issue>2008</issue>
          , pp.
          <fpage>291</fpage>
          -
          <lpage>308</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          <string-name>
            <given-names>B.</given-names>
            <surname>Orchard</surname>
          </string-name>
          , “
          <article-title>Controlling with fuzzy rules,” Jess in Action: Java Rule-Based Systems</article-title>
          , Manning Publications,
          <year>2003</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          <string-name>
            <surname>“ProtegeWiki: SWRLJess Tab</surname>
          </string-name>
          ” Available: http://protege.cim3.net/cgibin/wiki.pl?SWRLJessTab.
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          <string-name>
            <surname>M. O'connor</surname>
            , H. Knublauch,
            <given-names>S.</given-names>
          </string-name>
          <string-name>
            <surname>Tu</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          <string-name>
            <surname>Grosof</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          <string-name>
            <surname>Dean</surname>
            ,
            <given-names>W.</given-names>
          </string-name>
          <string-name>
            <surname>Grosso</surname>
            , and
            <given-names>M.</given-names>
          </string-name>
          <string-name>
            <surname>Musen</surname>
          </string-name>
          , “
          <article-title>Supporting Rule System Interoperability on the Semantic Web with SWRL,” The Semantic Web - ISWC</article-title>
          <year>2005</year>
          ,
          <year>2005</year>
          , pp.
          <fpage>974</fpage>
          -
          <lpage>986</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          <source>“OWL 2 Web</source>
          Ontology Language Manchester Syntax” Available: http://www.w3.org/TR/owl2-manchester-syntax/.
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>