<!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>A Mmoodel-driven Eennggiinneeering Bbaasseedd RCA Pprocess ffoorr Bbii--lleevveell Mmoddeellss Eelleements / Mmeeta-elements: AApppplliiccaattiioonn ttoo Ddeessccrriippttiioonn Llooggicicss</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>X. Dolques</string-name>
          <email>dolques@lirmm.fr</email>
        </contrib>
        <contrib contrib-type="author">
          <string-name>J.-R. FNaloleAriu</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>thMor. GHiuvc</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>hnard</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>C. Nebut</string-name>
          <email>nebut@lirmm.fr</email>
        </contrib>
      </contrib-group>
      <pub-date>
        <year>2008</year>
      </pub-date>
      <fpage>109</fpage>
      <lpage>120</lpage>
      <abstract>
        <p>Relational Concept Analysis (RCA) facilitates the discovery of new abstractions in data descriptions including relations. A model driven approach for RCA implementation makes possible to deal with most input data (models) simply by configuring the transformation for the chosen input data type (metamodel). Until now, we only applied this approach to one-level models (mainly class models). In this paper we study RCA applied to bi-levels models, which mix elements and metaelements (class-instance models, e.g. OWL models). We propose a model hybridisation approach to tackle the encoding problems and we provide a case study showing the results obtained on OWL models.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>Introduction
Programs and models are easier to understand and maintain when they are
organised using abstractions. Relational Concept Analysis (RCA) is one of the
existing approaches to automatically detect such abstractions. RCA is an
extension of Formal Concept Analysis (FCA) taking into account the relations linking
the analysed entities.</p>
      <p>To apply RCA, the analysed entities have first to be encoded into contexts
containing information on the attributes of the entities and on the relations
linking the entities. Then RCA is applied and builds concept lattices containing
the discovered entities, that are then decoded towards the initial language for
the entities.</p>
      <p>
        A model-driven engineering (MDE) based approach has been proposed [
        <xref ref-type="bibr" rid="ref1 ref2">1,2</xref>
        ]
to provide a generic mecanism for the encoding and decoding part of the process,
that has just to be configured to be adapted to a given language. In this approach,
to apply RCA to a given model m, two inputs are needed (in addition to m): the
metamodel for m (that can be seen as the structural definition of the language in
which m is written), and the configuration making precise which meta-elements
of this metamodel have to be taken into account during the RCA process (for
example: names of elements, roles of associations, etc).
      </p>
      <p>
        Until now, such an RCA-MDE process has been successfully applied to class
models. The contribution of this paper is to study its application to bi-level
models where entities and meta-entities co-exist [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]. Such models are frequently
found in cases when we want to represent in the same model a concept and an
instance of it, for example in UML instance diagrams [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ], RDFS resources [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] or
ODM ontologies [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]. We focus in this paper on applying RCA-MDE to individuals
in the sense of description logics. The idea is thus to look for abstractions among
individuals, each individual being typed by a class. The main issue is to deal with
two levels of abstraction: the level of individuals (classically named M0) and the
one of classes (M1). The presence of two levels complexifies the application of the
RCA-MDE process, as we will show in this paper. After providing background
on our approach, we detail two ways to apply RCA-MDE on bi-level models: a
naive one, directly inspired from mono-level models, and a more elaborated one
giving more relevant results, and that is based on an automated hybridation of
the input model and metamodel. We explain how this process is implemented in
our RCA-MDE platform, and provide results on two real-world ontologies.
2
      </p>
      <p>
        Background : Relational Concept Analysis and
description logics
Relational Concept Analysis (RCA) Relational Concept Analysis [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] is one of the
extensions of Formal Concept Analysis [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ] that considers links between objects
in the concept construction. Connections can be made with other FCA-based
proposals for dealing with relational descriptions or complex structures including
[
        <xref ref-type="bibr" rid="ref10 ref11 ref12 ref9">9,10,11,12</xref>
        ] to mention just a few. RCA uses a natural representation of data in
the form of tables that constitute a relational context family. Some of these tables
represent objects of several categories described by binary attributes (formal
contexts) while the other tables represent relations between objects from the
categories (relational contexts). We illustrate RCA with an example including a
single formal context (Knature, see Fig.1) and two relational contexts, Reat and
Rlive, shown in Figures 3 and 4.
      </p>
      <p>Initialisation step. Lattices are built at this step using FCA. For each formal
context Ki, a lattice Li0 is created (in our example, it is shown in Fig. 2).
Step n+1. For each relational context Rj = (Ok, Ol, Ij), an enhanced relational
context Rjs = (Ok, A, I) is created. A is the concept set of the lattice Lln (created
at step n). In the case of Reat, we obtain Resats = (Onature, Lnature, I). I
contains the set of pairs (o, a) s.t. S(R(o), Extent(a)) is true, where S is a scaling
operator. We consider here two scaling operators: S∃(R(o), Extent(a)), which is
true iff ∃x ∈ R(o), x ∈ Extent(a), and S∀∃(R(o), Extent(a)), which is true iff
∀x ∈ R(o), x ∈ Extent(a) ∧ ∃x ∈ R(o), x ∈ Extent(a).</p>
      <p>We give a first example using S∃ to compute Resat. Initialisation step allows
us to discover the abstraction represented by the concept C2 (plants). As we
have (berry) ∈ Reat(bear) with berry ∈ Extent(C2), (bear, C2) ∈ I. For similar
reasons, (rabbit, C2) ∈ I. This highlights the fact that bears and rabbits eat at
least one kind of plant.</p>
      <p>Now we examine a computation based on the scaling operator S∀∃. As
(sheep) ∈ Reat(bear) and sheep %∈ Extent(C2), now (bear, C2) %∈ I. Reversely,
since Reat(rabbit) = {herb} ⊆ Extent(C2), we still have (rabbit, C2) ∈ I. This
indicates that rabbits only eat plants, while bears do not only eat plants: but
also sheep.</p>
      <p>Applying FCA to Kk ∪ {Rjs = (Ok, A, I)} creates new concepts that are
added to Lkn to obtain Lkn+1. For example, still using the scaling operator S∀∃
on the concatenation of Knature, Resat and Rlsive (Fig. 5), we obtain the concept
({sheep, rabbit}, {Animal, eat : C1, eat : C2, live : C1, live : C3}). This concept
represents objects that are animals, eat only plants and live only in places (here
mountain due to the very restricted example). As the process goes on, more and
more complex information on relational structuring emerges. The process stops
when lattices at step n are equivalent to those at step n − 1 i.e. when no new
concept appear.</p>
      <p>
        Description logics Description logics [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ] allow knowledge representation with
Concepts, Individuals and Roles. Concepts, included in the terminological box
(or TBox), are primitive ones (like P lant, Animal), constants (), ⊥) or defined
using several constructors, such as negation (¬), disjunction (+), or
conjunction (,). Here we are especially interested in constructors composed with roles:
universal role quantification (∀R.C, where R is a role and C is a concept) and
existential quantification (∃R.C). F L−E is the description logic we will consider
in the paper. If eat is a role, the concept Herbivorous can be defined with
expression Herbivorous := Animal , ∃eat.) , ∀eat.P lant, since an herbivorous
is an animal which eats at least one thing and which only eats plants.
Assertion box (or ABox) contains instanciations. An individual (for example herb) is
defined by its type (for example P lant(herb)), which is a concept of the TBox,
while a role is defined by a set of individual pairs like eat(rabbit, herb).
3
      </p>
      <p>
        Adapting RCA-MDE to bi-level models
RCA in a model-driven engineering approach Lessons learned from previous
prototypes [
        <xref ref-type="bibr" rid="ref14 ref15 ref16">14,15,16</xref>
        ] highlighted the need to easily encode data from a large
range of models (UML class models in several UML versions, component models,
description logics, etc.) into relational context families as well as to parameterise
RCA application. The RCA-MDE approach proposes a generic solution to these
issues [
        <xref ref-type="bibr" rid="ref1 ref2">1,2</xref>
        ]. An overview is given in Figure 6.
!: conforms to
ref : refers to
      </p>
      <p>input
metamodel mm(m)</p>
      <p>!</p>
      <p>To apply RCA to a model m, one just need to provide the corresponding
metamodel mm(m) and the RCA configuration config(mm(m)) for this metamodel.
config(mm(m)) defines the meta-elements of mm(m) which are considered for
analysis. Converting the model into a relational context family is done in two
steps. In the first step, a formal context is created for each meta-class indicated
in config(mm(m)). Binary attributes are the meta-class attributes mentioned in
config(mm(m)). A specialization/generalization link can be specified for a given
meta-class. This link allows to compute the inherited relational attributes. In
the second step, a relational context is created for every meta-relation indicated
in config(mm(m)).</p>
      <p>
        Until now, RCA-MDE has been applied to models owning entities of a single
level, i.e. that do not mix entities and meta-entities. In this paper, we show how
to apply RCA-MDE on bi-levels models. Such models can be found in models
representing instances like ODM [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] that allows to represent ontologies, or UML
instance diagrams [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]. We illustrate the approach with description logics : we
aim at refactoring models owning individuals based on classes. Those models are
composed of a TBox and an ABox (TAB models). We show in this section why
a naive adaption based on the one applied for mono-level models is surprisingly
not well-suited, and propose an original way to correctly apply it.
Naive adaptation, based on the mono-level modeling To apply RCA to a TAB
model, the first (naive) adaptation consists in providing to RCA-MDE a
metamodel where coexist: classes, indivuals, relations, and instances of relations, as
illustrated at the right of Figure 7. Note that we work with a simplified
metamodel of description logics. The model of animals is thus an instance of this
metamodel, an excerpt is given at the left of Figure 7, where we only see the
animals that live in the moutain.
      </p>
      <p>We also need to provide a configuration model for this metamodel. All the
entities of the metamodel (Class, Individual, Instance of Relation and Relation)
correspond to a formal context. The inter-entity links give rise to relational
contexts, and for each relational context, the scaling operator is chosen and defined
in the configuration model. We take into account the following associations:
Input model</p>
      <p>Place:Class</p>
      <p>type
Mountain:Individualtarget
target tatragregtet BLM:RelationInstance</p>
      <p>source Bear:Individual
ir0 ir1 ir2 ir3 ir4 ir5 ir6 ir7 ir8 ir9 ir10 iirr01
ir2
ir3
ir4
X X X X X X X X X iiirrr567
ir8 X
ir9
ir10</p>
      <p>X
X
X</p>
      <p>X
X</p>
      <p>X
berry mountain sheep lichen wolf rabbit bear herb</p>
      <p>X
X</p>
      <p>X</p>
      <p>X</p>
      <p>eat live
ir0 X
ir1 X
ir2 X
ir3 X
ir4 X
ir5 X
ir6 X
ir7 X
ir8 X
ir9 X
ir10 X</p>
      <p>We thus have a single formal context for all the instances of relations. The
relation context relation type represents the links between those instances of
relations and the relations (see Figure 8). Yet if abstractions can be found with this
configuration, others cannot, that could however be discovered applying RCA in
a classical way, i.e. filling the contexts without taking into account the way input
data are modeled. The problems arise when using a scaling operator different
from S∃. For example, let us refer to animals linked to their habitation and their
diet. Using RCA, we hope obvious abstractions to appear with operator S∀∃, e.g.
herbivorous (animals such that, whatever they eat, it is plant), carnivorous
(animals such that whatever they eat, it is animal) and omnivorous (animals eating
both vegetal and animal food). However, all the relation instances (links) are
1 type is in fact a role of this association.</p>
      <p>A Model-driven Engineering Based RCA Process for Bi-level Models 115</p>
      <p>Elements / Meta-elements: Application to Description Logics
represented by the same metaclass in the metamodel and they belong to a single
formal context. As a first consequence we cannot apply different scaling
operators to the relations (e.g. S∀∃ for eat and S∃ for live). As a second consequence,
some concepts built by original RCA (on relational context family like in Section
2) cannot be found. While original RCA builds a concept including sheep and
rabbit (because all eat links end at herb which is included in C2 extent), naive
modeling of RCA-MDE cannot (because all links ends are not included in a non
trivial concept extent : eat links go towards herb while live links go towards
mountain).</p>
      <p>The source of the problem comes from the following causes. First, our
approach, due to a genericity matter, creates the formal contexts from the elements
of a metamodel. Second, we use a model with two levels of abstraction, and the
instanciation relation allowing to go from one level to the other is defined in
the metamodel by a simple association. In our case, it clearly appears that an
instanciation relation exists between the relations and the instances of relations,
but the relations do not belong to the metamodel, thus it is not possible to create
a formal context for each relation. We thus propose in the next section a more
complex yet more adequate solution.</p>
      <p>Adaptation for bi-levels models: hybridisation of the input metamodel with the
input model We propose to promote a part of the model, i.e. to move the relations
in the metamodel, in the form of relation of model, and to transform the relation
relation type into an instanciation relation. We thus hybridise a part of the input
model with a part of the input metamodel, as illustrated in Figure 9. The input
model is then also modified as shown in the right of Figure 9. The hybridisation
transformation aims at deleting the reification of the relations in a model (by the
concept Instance of relation) since it is not relevant to look for new abstractions.</p>
      <p>The configuration model follows the same idea as the transformation: we only
take into account two entities of the metamodel: Class and Individual, and the
following relations:
– type linking Individual to Class. We associate it the scaling operator S∃. The
relational context Rtype will thus be created, associated to the operator S∃ ;
– live linking Individual to Individual, with a scaling operator (e.g. S∀∃).
– eat linking Individual to Individual, with a scaling operator (e.g. S∀∃).</p>
      <p>This solution does not imply to modify the RCA-MDE process, we only
modify input models. Those modifications result in a relational context of each
relation of the input model (in our example: exactly the contexts of Figures
3 and 4). Reading the tables is easier, because the instances of relations are
represented by a table per relation, and this table owns the source and the
target of the instance of relation.</p>
      <p>Hybridising the model has then for consequence to obtain back the model
elements leveling while still keeping the same information on the input model ;
and the relations of the input model that were semantically relations on instances
become actual relations on instances. The hybrid model with its metamodel is
then a mono-level model on which the RCA-MDE process can be applied in a
M2
M1
inputMM
Class ty*pe instance* Individual</p>
      <p>source1 1 target
is source of! has for target"
Relation TR*yeplaetion * Rel*ation Ins*tance</p>
      <p>MoIndpèulet md'oednetréle
Live:Relation
&lt;&lt;instance of&gt;&gt;</p>
      <p>Eat:Relation
(excerpt)</p>
      <p>Hybridised input MM</p>
      <p>live
Class ty*pe instance* Individual</p>
      <p>eat
Input model
Place:Class
type</p>
      <p>live
Mountainli:vIendividuallivelive</p>
      <p>&lt;&lt;instance of&gt;&gt;
Animal:Class type
type type
type
classical way. The new definitions of concepts in the context of the individuals
will depend on a single relation. In our example, we will be able to define a
concept to which sheep belongs and which gathers all the individuals that only eat
plants, independently from the other types of relations like live. This modeling
corresponds to what can be obtained with a classical application of RCA.
4</p>
    </sec>
    <sec id="sec-2">
      <title>Platform and experimentations</title>
      <p>
        Platform The platform implementing RCA-MDE uses the modeling framework
EMF [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ]. It is based on the meta-modeling language Ecore to read models and
their metamodels.
      </p>
      <p>
        To represent description logics models, we use the OWL language (Web
Ontology Language, [
        <xref ref-type="bibr" rid="ref18">18</xref>
        ]). OWL is intensively used in Web technologies as
knowledge representation language, and many modeling tools exist for OWL, as well
as many OWL models. Our metamodel is included, renaming the entities, in the
one proposed in the Eclipse plugin [
        <xref ref-type="bibr" rid="ref19">19</xref>
        ] that allows to handle OWL models with
EMF. In this way, a TAB model can easily be translated into an OWL model,
renaming Class into OWLClass, etc.
      </p>
      <p>To adapt the RCA-MDE platform to TAB models, keeping in mind that we
want the process to remain generic (adaptable to other input data), we have to
define the hybridisation transformation of the OWL metamodel for a given TAB
model (see Figure 10), and a configuration making explicit which meta-elements
have to be taken into account by the RCA. The hybridisation transformation is
fully automated, it is written in Java and uses EMF to handle models. It takes
as input the OWL metamodel, a TAB model and the configuration model and
generates both the hybridised metamodel, the new TAB model conform to the
hybridisation
hybrid metainmpoudtel hmm(hm) ref cocnofingf(ihgmmmo(dheml)) metRaCmFodel</p>
      <p>! !
input hybrid model mh 1 encoding</p>
      <p>Concept_6
type: Concept_0</p>
      <p>Concept_9
type: Concept_4
mountain
Concept_x
!"#$%&amp;#'(&amp;))*+,-.-/&amp;#-0+.&amp;%1.#-.#
23#-.#</p>
      <p>Concept_0</p>
      <p>Concept_7
type: Concept_3
berry
lichen
herb
Concept_1
nom: Thing</p>
      <p>Thing</p>
      <p>Concept_3
nom: Vegetal</p>
      <p>Vegetal</p>
      <p>Concept_4
nom: Place</p>
      <p>Place</p>
      <p>Concept_5
nom: Animal</p>
      <p>Animal</p>
      <p>Concept_10
type: Concept_5
(forall)eat: Concept_6
(forall)live: Concept_6
(forall)live: Concept_9</p>
      <p>bear</p>
      <p>Concept_11
(forall)eat: Concept_7
sheep
rabbit</p>
      <p>Concept_12
(forall)eat: Concept_10
(forall)eat: Concept_11
wolf
hybridised metamodel, and the corresponding configuration. As shown in Figure
9, the hybridisation transformation lists all the relations and puts them up a
level of abstraction higher, so that they appear in the hybridised metamodel.
This transformation only modifies the relations and the instances of relation.
The transformation also impacts the configuration model, since it refers to a
given metamodel. The metamodel being hybridised, the configuration must also
be hybridised. The obtained configuration can then be modified by the final user,
in particular for the choice of the scaling operators.</p>
      <p>Concept_2</p>
      <p>Concept_8</p>
      <p>Figure 11 shows, using Hasse diagrams, the lattices obtained applying
RCAMDE on the example of animals. The lattice we focus on is the one obtained
from the context of the Individuals. We see that concepts have been created
to group the elements of same type: Concept_7 groups the elements of type
vegetal, Concept_9 groups those of type place and Concept_10 groups those of
type animal. Concept_11 groups animals that eat only vegetals. Concept_12
groups the animals that eat only animals, in particular animals of Concept_11.
From the intent of the new concepts, we can infer in an automatic way a logical
formula defining them.</p>
      <p>The platform resulting from this work allows us to analyse bi-level models
in an automatic way: as well as for the analysis of mono-level models, we just
need to configure the RCA with a configuration model, so we kept the generic
approach. Our experiments showed us that the configuration for bi-level models
is slightly more complex since it frequently handles several scaling operators.
We have tested our approach of hybridisation on some real ontologies in OWL
format (Tab.1). We compare the result4 obtained using Formal Concept Analysis
(we take the results obtained after the first iteration of the RCA process) to those
obtained using Relational Concept Analysis. In the following we will concentrate
on the lattice from Individual context, as the lattice from the Class lattice cannot
produce new concepts (there is no relation in the metamodel with Class elements
as source).</p>
      <p>On the Model Ontology, FCA would generate 31 concepts. Nearly each class is
transformed in one concept, except for 3 classes which have the same extent. Our
approach generated 55 concepts using a S∃ operator of scaling and 65 concepts
using a S∃ and a S∀∃ operator of scaling. From the concepts obtained by FCA,
7 of them have a more precise intent with RCA.</p>
      <p>We note that concept intents here describe the presence of relation between
individuals more than a value of the relation. This is caused by the fact that a
lot of classes do not have subclasses.</p>
      <p>The use of S∀∃ scaling in addition with S∃ scaling gives us a way to know
the most specialized type for the target of a relation. To deduce the type of a
relation target, you need to know the target type of all the instances of this
relation.
2 http://loki.cae.drexel.edu/˜wbs/ontology/model.htm
3 http://gaia.isti.cnr.it/˜straccia/Teaching/IS/2007/Exercises/autos.owl
4 all the lattices can be found at http://www.lirmm.fr/˜dolques/publications/data/cla08
A Model-driven Engineering Based RCA Process for Bi-level Models 119</p>
      <p>Elements / Meta-elements: Application to Description Logics</p>
      <p>The RCA approach applied on bi-level models produces a different type of
result from applied on mono-level. On bi-level models we take a set of elements,
and the process produces new subsets depending on the properties of the
elements. On the examples we studied in OWL, the partitioning depends on the
type of the individuals, and the Object Property (name of relations in OWL
vocabulary) of which they are sources. For instance FCA can produce a
concept that groups the individuals of type ModelingSystem and that are linked by
the Object Property hasModel to another individual. RCA shows us that the
individual of this concept are all linked by the ObjectProperty hasModel to
Individuals of type Model which all have an Individual of type Organisation as a
developer (concept NMWithAv_Dev_Org_ModelDim).</p>
      <p>This kind of result could help to complete under-specified ontologies in an
approach by-example, by showing which kind of data is missing in individual
description and by restricting the domain and range of an Object Property.
5</p>
    </sec>
    <sec id="sec-3">
      <title>Conclusion</title>
      <p>Until now, building abstractions using an RCA process and an MDE paradigm
has been applied to models with a single level of abstraction, i.e. models that
do not mix entities and meta-entities. In this paper, we have studied how to
use an RCA-MDE approach for bi-level models, where co-exist meta-entities
and their instances. We based our work on the example of description logics:
we focused on models mixing individuals and links between individuals with the
classes typing the individuals and the relations defining the links. We have shown
that a direct application of the approach does not give the expected results, and
proposed a more complex solution giving results similar to those obtained with
an application of RCA with a manual encoding of data. This solution is based
on the promotion of the instances of relations from the input model up to the
input metamodel.</p>
      <p>In this paper, we worked with description logics with minimal expressivity;
in particular we do not take into account language elements existing in OWL
like the specialization relation that could be applied to classes, or the constraints
that could be added on the sources and targets of the relations. Future work will
consist in dealing with more complex description logics, as well as in integrating
the obtained results in the original model. We also plan to make the
hybridisation generic instead of specific to our description logics metamodel, in order to
validate our approach with other kinds of bi-level models such as UML models
with classes and instances.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Arévalo</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Falleri</surname>
            ,
            <given-names>J.R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Huchard</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Nebut</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          :
          <article-title>Building abstractions in class models: Formal concept analysis in a model-driven approach</article-title>
          .
          <source>In: Proc. of the MoDELS'06 conference</source>
          . (
          <year>2006</year>
          )
          <fpage>513</fpage>
          -
          <lpage>527</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Falleri</surname>
            ,
            <given-names>J.R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Huchard</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Nebut</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Arévalo</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          :
          <article-title>Use of Model Driven Engineering in Building Generic FCA/RCA Tools</article-title>
          . In Diatta, J.,
          <string-name>
            <surname>Eklund</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Liquière</surname>
          </string-name>
          , M., eds.
          <source>: Proc. of CLA'07: Fifth International Conference on Concept Lattices and Their Applications</source>
          .
          <article-title>(</article-title>
          <year>2007</year>
          )
          <fpage>225</fpage>
          -
          <lpage>236</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Dolques</surname>
            ,
            <given-names>X.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Falleri</surname>
            ,
            <given-names>J.R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Huchard</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Nebut</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          :
          <article-title>Adaptation d'un processus de construction d'abstractions basé idm à des modèles bi-niveaux éléments / métaéléments : Application aux logiques de description</article-title>
          .
          <source>In: LMO Conference</source>
          .
          <article-title>(</article-title>
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <source>OMG: UML 2</source>
          .
          <article-title>0 superstructure</article-title>
          .
          <source>Technical report</source>
          , Object Management Group (
          <year>2004</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Brickley</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Guha</surname>
            ,
            <given-names>R.V.</given-names>
          </string-name>
          :
          <source>RDF Vocabulary Description Language 1</source>
          .0:
          <string-name>
            <given-names>RDF</given-names>
            <surname>Schema</surname>
          </string-name>
          .
          <source>Technical report, W3C</source>
          (
          <year>2004</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6. OMG:
          <article-title>Ontology definition metamodel</article-title>
          .
          <source>Technical report</source>
          , Object Management Group (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Huchard</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hacene</surname>
            ,
            <given-names>M.R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Roume</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Valtchev</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          :
          <article-title>Relational concept discovery in structured datasets</article-title>
          .
          <source>Ann. Math. Artif. Intell</source>
          .
          <volume>49</volume>
          (
          <issue>1-4</issue>
          ) (
          <year>2007</year>
          )
          <fpage>39</fpage>
          -
          <lpage>76</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Ganter</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wille</surname>
          </string-name>
          , R.:
          <source>Formal Concept Analysis, Mathematical Foundations</source>
          . Springer, Berlin (
          <year>1999</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Priss</surname>
            ,
            <given-names>U.</given-names>
          </string-name>
          :
          <article-title>Classification of meronymy by methods of relational concept analysis</article-title>
          .
          <source>In: Online Proceedings of the 1996 Midwest Artificial Intelligence Conf</source>
          .,
          <string-name>
            <surname>Bloomington</surname>
            ,
            <given-names>Indiana.</given-names>
          </string-name>
          (
          <year>1996</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Prediger</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wille</surname>
            ,
            <given-names>R.:</given-names>
          </string-name>
          <article-title>The lattice of concept graphs of a relationally scaled context</article-title>
          .
          <source>In: Proc. of the 7th Intl. Conf. on Conceptual Structures (ICCS'99)</source>
          , Springer (
          <year>1999</year>
          )
          <fpage>401</fpage>
          -
          <lpage>414</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>Ganter</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kuznetsov</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          :
          <article-title>Pattern structures and their projections</article-title>
          . In Delugach, H.,
          <string-name>
            <surname>Stumme</surname>
          </string-name>
          , G., eds.: Conceptual Structures:
          <article-title>Broadening the Base</article-title>
          ,
          <source>Proc. of the 9th Intl. Conf. on Conceptual Structures (ICCS'01)</source>
          , Stanford, CA. Volume
          <volume>2120</volume>
          of LNCS., Springer (
          <year>2001</year>
          )
          <fpage>129</fpage>
          -
          <lpage>142</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Ferré</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ridoux</surname>
            ,
            <given-names>O.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sigonneau</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          :
          <article-title>Arbitrary relations in formal concept analysis and logical information systems</article-title>
          . In Dau, F.,
          <string-name>
            <surname>Mugnier</surname>
            ,
            <given-names>M.L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Stumme</surname>
          </string-name>
          , G., eds.
          <source>: ICCS</source>
          . Volume
          <volume>3596</volume>
          of Lecture Notes in Computer Science., Springer (
          <year>2005</year>
          )
          <fpage>166</fpage>
          -
          <lpage>180</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Baader</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Nutt</surname>
            ,
            <given-names>W.</given-names>
          </string-name>
          :
          <article-title>Basic description logics</article-title>
          . In Baader, F.,
          <string-name>
            <surname>Calvanese</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>McGuinness</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Nardi</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Patel-Schneider</surname>
          </string-name>
          , P.F., eds.: The Description Logic Handbook: Theory, Implementation, and
          <string-name>
            <surname>Applications</surname>
          </string-name>
          . Cambridge University Press (
          <year>2003</year>
          )
          <fpage>43</fpage>
          -
          <lpage>95</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <surname>Valtchev</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Grosser</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Roume</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hacene</surname>
            ,
            <given-names>M.R.</given-names>
          </string-name>
          :
          <article-title>Galicia: an open platform for lattices</article-title>
          . In B.
          <string-name>
            <surname>Ganter</surname>
          </string-name>
          , A.d.M., ed.: Using Conceptual Structures: Contributions to ICCS'
          <volume>03</volume>
          ,
          <string-name>
            <surname>Aachen</surname>
          </string-name>
          (DE), Shaker Verlag (
          <year>2003</year>
          )
          <fpage>241</fpage>
          -
          <lpage>254</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <surname>Dao</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Huchard</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hacene</surname>
            ,
            <given-names>M.R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Roume</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Valtchev</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          :
          <article-title>Towards Practical Tools for Mining Abstractions in UML Models</article-title>
          . In Manolopoulos, Y.,
          <string-name>
            <surname>Filipe</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Constantopoulos</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Cordeiro</surname>
          </string-name>
          , J., eds.:
          <source>ICEIS (3)</source>
          . (
          <year>2006</year>
          )
          <fpage>276</fpage>
          -
          <lpage>283</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <surname>Seuring</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          :
          <article-title>Design and implementation of a UML model refactoring tool. Master's thesis, Hasso-Plattner-Institute for Software Systems Engineering</article-title>
          at the University of Postdam (
          <year>2005</year>
          ) http://www.lirmm.fr/˜huchard/Documents/Papiers/ PhilippSeuringMasterThesis.pdf.
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <surname>Budinsky</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Grose</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Steinberg</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ellersick</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Merks</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Brodsky</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          :
          <article-title>Eclipse Modeling Framework: a developer's guide</article-title>
          . Addison-Wesley
          <string-name>
            <surname>Professional</surname>
          </string-name>
          (
          <year>2003</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18.
          <string-name>
            <surname>McGuinness</surname>
            ,
            <given-names>D.L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>van Harmelen</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          :
          <article-title>OWL Web Ontology Language Overview</article-title>
          .
          <source>Technical report, W3C</source>
          (
          <year>2004</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          19.
          <string-name>
            <surname>EODM</surname>
          </string-name>
          <article-title>: site du projet EODM</article-title>
          , http://www.eclipse.org/modeling/mdt/?project=eodm
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>