<!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>Model-Driven Rich User Interface Generation from Ontologies for Data-Intensive Web Applications</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Joaqu n Can~adas</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Jose Palma</string-name>
          <email>jtpalma@um.es</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Samuel Tunez</string-name>
          <email>stunez@ual.es</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Dept. of Information and Communications Engineering. University of Murcia.</institution>
          <country country="ES">Spain</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Dept. of Languages and Computation. University of Almeria. Agrifood Campus of International Excellence</institution>
          ,
          <addr-line>ceiA3.</addr-line>
          <country country="ES">Spain</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Building data-intensive Web applications is a complex task widely explored during the last decade. Many approaches have been proposed, mainly based on conceptual models as well as on domain ontologies and knowledge models. This work describes a method for rich user interface development for data-intensive Web applications based on OWL2 ontologies, which applies model-driven engineering to derive a user interface from the domain ontology, incorporating modern rich components for Web-based interfaces. A tool supporting the ideas presented this paper has been developed.</p>
      </abstract>
      <kwd-group>
        <kwd>user interfaces</kwd>
        <kwd>model-driven engineering</kwd>
        <kwd>ontologies</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>
        Data-intensive Web applications are Web-based information systems for
accessing and maintaining large amounts of structured data, typically stored in
database management systems [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]. Its development involves the de nition of
data models representing the information structure of the problem domain, as
well as the design of user interfaces (UIs) to enable end-users to properly
interact with the system when managing the collection of data, e.g. UIs for data
presentation, data acquisition and data querying.
      </p>
      <p>
        In general, the usage of data models for domain speci cation su ers of poor
expressivity. To address this problem, ontologies are typically applied to domain
modeling in which a conceptualization of a particular domain is given. Ontology
formalisms such as OWL2 (Web Ontology Language 2) [
        <xref ref-type="bibr" rid="ref22">22</xref>
        ] are the backbone
of Semantic Web and are growing in importance in software development [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ].
Ontologies can describe the relevant concepts, relations and properties of an
application domain adding assertions and constraints, increasing the amount of
knowledge that can be represented by data models.
      </p>
      <p>
        In this work we describe a model-driven method for deriving rich Web-based
UIs for data management from domain models based on domain ontologies.
We apply Model-Driven Architecture (MDA) [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ], or using the general concept,
Model-Driven Engineering (MDE) [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ], as the software development approach
in which models are used as rst class entities and transformations between
models and from models to code can be de ned and executed. MDA/MDE is
currently being applied in many domains, such Web Engineering [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ], Ontology
Engineering [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ], and UI development [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ].
      </p>
      <p>
        Recent technologies for improving end-user experience in Web 2.0 include
the so called Rich Internet Applications (RIAs) [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] which provide advanced and
more interactive UIs, similar to desktop applications, while minimizing network
tra c overhead and increasing user usability and e ciency [
        <xref ref-type="bibr" rid="ref23">23</xref>
        ]. In our approach,
the UI derived from OWL2 is based on frameworks of reusable components for
RIAs. To enrich the UI generation, a presentation model tightly coupled to the
domain ontology provides modeling support to customize presentation features
of UIs for data-intensive Web applications. For practical implementation, two
di erent Java-based frameworks for RIAs have been considered.
      </p>
      <p>
        A tool supporting the method presented has been developed using MDE tools
provided by the Eclipse Modeling Project3, and it is supported by the TwoUse
Toolkit [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ] for ontology creation and management.
      </p>
      <p>The rest of this paper is organized as follows: Section 2 reviews related work.
Next, Section 3 introduces RIAs frameworks for Web-based UI implementation.
The presentation model and the proposed mapping from OWL2 to UI
components are detailed in Section 4. Finally, main conclusions and future work are
summarized.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Related work</title>
      <p>There have been many earlier approaches on UI generation based on models and
MDE. We can distinguish between those from the eld of Web Engineering and
those from the eld of Human-Computer Interaction (HCI).</p>
      <p>
        Web Engineering approaches the design and development of Web applications
based on conceptual models [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ], focusing on content, navigation and presentation
models as the most relevant concerns in Web applications design [
        <xref ref-type="bibr" rid="ref19">19</xref>
        ]. Based on
these models, the full Web application can be developed applying a model-driven
approach, including the presentation layer composed of web pages, web forms,
links, and so on.
      </p>
      <p>
        Web Engineering o er rather mature and established methodologies for
traditional Web applications, and the UI layer has been explicitly addressed in most
approaches. But when we move to Semantic Web information systems,
methodologies are still in a development phase [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. Examples like SHDM [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ], Hera [
        <xref ref-type="bibr" rid="ref21">21</xref>
        ]
and WebML+Sem [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] o er a wide support for ontology languages, basically RDF
(Resource Description Framework) and OWL, and focus on di erent semantic
web technologies such as semantic model description, advanced query support,
exible integration, ontology reasoning, and more, but leaving UI aside. In this
paper we address that open issue.
3 http://www.eclipse.org/modeling/
      </p>
      <p>
        In HCI eld a number of model-driven approaches for UI development have
also arisen [
        <xref ref-type="bibr" rid="ref18">18</xref>
        ]. They are commonly based on models created with extensions of
UML (Uni ed Modeling Language) for UIs modeling [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ], but can also use textual
formats based on XML (eXtensible Markup Language), as is widely explored in
[
        <xref ref-type="bibr" rid="ref11">11</xref>
        ].
      </p>
      <p>
        Among these approaches, the PEGASUS method [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ] presents an e ort to
supply end-users with mechanisms for authoring Web-based applications using
ontologies to specify knowledge for building data models together with
presentation models. Moreover, it enables the generation of a Web UI from the ontology in
basic HTML (HyperText Markup Language) and JSP (JavaServer Pages) code.
In our approach we also use ontologies as domain models and a presentation
model, but we focus on current rich Web UI generation using modern
components of RIA frameworks which are richer in functionality than basic HTML and
JSP.
      </p>
      <p>
        In a recent work [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ], the same authors provide a way of modeling UIs based
on semantic models of domain problem, deriving a Web application for
displaying content. The method is based on document transformation through a set of
XSLT (Extensible Stylesheet Language Transformations) applied to XML les
to generate documents for the UI. The result can incorporate AJAX
(Asynchronous JavaScript And XML) components to have a better interactive result.
Our proposal has similarities with this approach in sense that we also focus UI
development with rich AJAX components, but has important di erences with
respect to the model-driven approach applied since we use MDE transformation
languages and tools for de ning the approach instead of XSLT transformations,
as well as we derive a UI not only for displaying content but also for content
acquisition and querying.
3
      </p>
    </sec>
    <sec id="sec-3">
      <title>Frameworks for RIAs in JavaEE</title>
      <p>
        Modern UI development requires the usage of extensive software libraries and
frameworks, and code becomes rather platform-speci c [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ]. In this work we focus
on Java Platform Enterprise Edition (JavaEE4) technology and the JavaServer
Faces framework (JSF) [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ] as implementation platform. To t once of the most
important characteristics of RIAs, a richer interaction is achieved adding AJAX
technology to provide improved user experience. Several rich UI frameworks for
JSF applications are available, some of them are well established such as
RichFaces5 (JBoss project), ICEfaces6 (ICEsoft project), MyFaces7 (Apache project),
ADF Faces8 (Oracle project) and Google Web Toolkit9 (Google project). In this
4 http://java.sun.com/javaee
5 http://www.jboss.org/richfaces
6 http://www.icefaces.org/
7 http://myfaces.apache.org/
8 http://www.oracle.com/technetwork/developer-tools/adf/
9 http://code.google.com/webtoolkit/
work, only RichFaces and ICEfaces have been considered, although the approach
can easily adapted to other frameworks.
      </p>
      <p>JBoss RichFaces is an advanced JSF based framework that provides a
complete range of rich AJAX enabled UI components. RichFaces is made up of
two component tag libraries: a4j: represents core AJAX functionality, and rich:
represents self contained and advanced components such as calendars,
datatables, trees and more (see the RichFaces showcase10 for details). Current version,
RichFaces 4.0, can be used in any container compatible with JSF 2.0.</p>
      <p>ICEsoft ICEfaces is an integrated AJAX application framework that enables
JavaEE application developers to easily create and deploy thin-client RIAs in
Java. ICEfaces 2 is the current version of the open-source framework based on
the JSF 2.0 standard. It o ers a vast set of rich components included in the ice:
tag library, to create rich advanced UIs (see the ICEfaces showcase11 for details).
4
4.1</p>
    </sec>
    <sec id="sec-4">
      <title>Model-driven rich user interface generation</title>
      <sec id="sec-4-1">
        <title>Process overview</title>
        <p>Our approach is based on the assumption that a UI can be induced from the
ontology classes, properties and assertions. Since OWL2 semantics is richer than
semantics of UI components, only a part of OWL2 can be represented in the UI
and supported by the proposed mapping.</p>
        <p>Fig. 1 shows the model-driven schema proposed for deriving rich Web UI from
OWL2 ontologies. The process starts with the speci cation of an OWL2 ontology
of the problem domain. In a rst step, a presentation model with default
presentation values is derived from the ontology applying a model-to-model (M2M)
transformation. Developers can customize this presentation model to drive a
better UI generation. Later, a model-to-text (M2T) transformation produces
the nal code.</p>
        <p>
          The model-driven process proposed was implemented using MDE tools of
Eclipse Modeling Project, and it is supported by the TwoUse Toolkit12 for
OWL2 authoring and management. The TwoUse Toolkit is a free, open source
tool bridging the gap between Semantic Web and MDE, that supports OWL2
authoring based on the Ontology De nition Metamodel (ODM) [
          <xref ref-type="bibr" rid="ref16">16</xref>
          ]. In this
environment, metamodels are de ned with EMF13 (Eclipse Modeling Framework)
in ecore format. The ODM metamodel is provided by TwoUse whereas the
Presentation metamodel has been designed by the authors of this work.
        </p>
        <p>M2M transformation is designed with ATL14 (Atlas Transformation
Language), where as nal code is generated by a M2T transformation implemented
in JET15 (Java Emitter Templates). As a result, the code for the rich Web UI
10 http://richfaces.org/showcase
11 http://component-showcase.icefaces.org
12 http://code.google.com/p/twouse/
13 http://www.eclipse.org/modeling/emf/
14 http://www.eclipse.org/m2m/atl/
15 http://www.eclipse.org/modeling/m2t/?project=jet</p>
        <p>Eclipse
Modeling</p>
        <p>OWL2 ontology</p>
        <p>ODcMonmfoermtasmtoodel</p>
        <p>M2M
Transformation</p>
        <p>M2T
Transformation</p>
        <p>JET</p>
        <p>Presentation model</p>
        <p>conforms to
Presentation metamodel</p>
        <p>Models</p>
        <p>&amp;</p>
        <p>Metamodels
Default
presentation
(css, fonts,...)</p>
        <p>+
framework of</p>
        <p>rich UI
components
Rich Web
user interface</p>
        <p>JSF pages
+ configuration files</p>
        <p>Code
is obtained as a set of JSF web pages based on the selected framework of rich
components, RichFaces or ICEfaces. Default con guration is injected to provide
presentation templates for pages, styles and css les.
4.2</p>
      </sec>
      <sec id="sec-4-2">
        <title>The Presentation metamodel</title>
        <p>To drive a powerful UI generation, the Presentation model captures features of
UI components used in data-intensive applications, for example, in what other
they are to appear, their visual appearance and layout, and more. Basically we
propose three main types of presentation elements in the UI for data-intensive
Web applications:
{ a menu, including a hierarchy or tree with the class taxonomy
{ a list page per ontology class, listing all instances of the class,
{ a form page per class for viewing and editing instances of the class.
This section describes how the menu tree, list and form pages are derived.</p>
        <p>Menu tree. Domain concepts are represented in OWL2 as named classes,
which can have subclasses, conforming a hierarchy of classes. To display such
a hierarchy a tree is commonly used. For that purpose, RichFaces provides a
rich:tree component which renders a tree control on the page. Similarly, ICEfaces
has the ice:tree component that displays hierarchical data as a tree of branches
and leaf nodes. Only classes with the presentation feature showInMenuTree
truevalued are shown in the tree.</p>
        <p>Form page. For displaying and editing instances of a particular class, a
rich form with the properties of the class is generated. In OWL2 each
property has a domain and a range, and two types of properties are distinguished:
datatype properties, relations between instances of classes and primitive data
fromFeatures</p>
        <p>FormField
columnFeatures</p>
        <p>ListColumn
types (e.g. integer or string); and object properties, relations between instances
of two classes. The default behavior in OWL determines that a property can
relate an instance of the domain to multiple instances of the range, but de ning
the property as functional the relation is from an individual to only one primitive
value (functional datatype property) or individual (functional object property).
Similarly, a cardinality constraint can set the property range to 1. The form
page for a particular class contains elds for all the properties having the class
as domain and with a true value in the presentation feature showInForm.</p>
        <p>The mapping of object properties to the UI implies that for non-functional
properties,
common
selectors
are
used,
such
as
selectManyCheckbox,
selectManyListbox and selectManyMenu widgets, whereas for functional
properties, selectOneListbox, selectOneMenu and selectOneRadio widgets can be used.
The widget used for an object property is set in the presentation feature
selectorType. In case that a property has a true value in the presentation feature
isInfered, a selector widget is not generated for it because its value can not be
modi ed by users.</p>
        <p>When an object property has the feature richTableSelector to true, then
the values to be selected are shown in tables instead of in selectors.
RichFaces provides the rich:extendedDataTable component for a powerful selection
of one or many items. Similarly, ICEfaces includes the ice:rowSelector tag in the
ice:dataTable component to provide that functionality. Fig. 3 shows an example
of multiple data table selection.</p>
        <p>To ful ll the list of values to be selected, individuals of the range type are
listed. When an object property has the same class as domain and range types,
then re exive or irre exive property axioms must be considered. In a irre exive
object property, the self individual (domain) is not included in the list of values
to be selected (range), whereas in a re exive one, all individuals are listed.</p>
        <p>OWL2 provides several class extension constructs to de ne unnamed
anonymous classes. The \oneOf" expression enables the de nition of an enumerated
class through the list of individuals that constitute the instances of the class.
When the range of a property is an enumerated de ned through a \oneOf"
anonymous class, the enumeration literals obtained from the individuals linked
to the enumeration are used as the list of allowed-values that can be selected. An
example is the hasSex functional property from the Person class to the
enumerated class with values ffemale, maleg. In this case, one of the three selectOne
selectors can be used in the interface.</p>
        <p>It is possible to further constrain the range of a property with property
restrictions. The \has-Value" restriction speci es an anonymous class based on
the existence of particular property value. Other classes can be a subclasses
of such a property restriction. As example, the Woman class is a subclass of
\hasSex has female" property restriction, and similarly, the Man class is subclass
of \hasSex has male". In the UI, this is mapped to default values that can not
be editable by end-users.</p>
        <p>List page. Finally, for listing all the instances or individuals of each named
class, a page with a rich data table component is generated. Table columns are
those properties of the class with a true value in the showAsColumn feature of
the presentation model, and the column position in the table is established by
the tableColumnOrder value. Both RichFaces and ICEfaces provide a datatable
component with advanced functionality including a paginator widget for viewing
the table as multiple pages of rows instead of as one large table, a sortColumn
feature allowing the user to sort of data in the table, and lterValue feature for
ltering data rows (only available in RichFaces). The corresponding features in
the presentation model allow to customize these elements.
5</p>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>Conclusions and future work</title>
      <p>
        In this work a model-driven method for generating rich Web UIs from OWL2
domain ontologies was presented, continuing a research focused on model-driven
development of Web applications from ontologies and rules [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]. Our approach
is based on the assumption that a UI for a data-intensive application can be
induced from the domain ontology classes, properties and axioms. To obtain an
enhanced result, a presentation model captures presentation features related to
the UI. Since UI development is platform-speci c task, JavaEE and JSF
technologies for Web application development were chosen as target implementation in
our research. Two frameworks of rich UI components were considered, although
the approach can be extended to other frameworks. The proposal is tested with
a proof of the concept tool.
      </p>
      <p>The extension of the proposal to cover a larger set of OWL2 elements is
considered as future work, as well as enhanced UI functionality to provide full
Semantic Web information system generation from ontologies. Enriching the
ontology with SWRL rules and analyzing how rules can a ect to the UI is also
considered as future work, focusing on how rules can provide UI adaptivity.
Acknowledgments. The authors wish to thank the Spanish Ministry of
Education and Science for funding received under projects TIN2009-14372-C03-01
and PET2007-0033, and the Andalusian Regional Government under project
P06-TIC-02411.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Brambilla</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Facca</surname>
            ,
            <given-names>F.M.:</given-names>
          </string-name>
          <article-title>Building semantic web portals with WebML</article-title>
          . In: Web Engineering, 7th International Conference, ICWE 2007, Como,
          <source>Italy. Lecture Notes in Computer Science</source>
          , vol.
          <volume>4607</volume>
          , pp.
          <volume>312</volume>
          {
          <fpage>327</fpage>
          . Springer (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2. Can~adas, J.,
          <string-name>
            <surname>Palma</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Tunez</surname>
            ,
            <given-names>S.:</given-names>
          </string-name>
          <article-title>A MDD approach for generating rule-based web applications from OWL and SWRL</article-title>
          .
          <source>In: 3rd Workshop on Transforming and Weaving Ontologies in Model Driven Engineering (TWOMDE</source>
          <year>2010</year>
          ). vol.
          <volume>604</volume>
          . CEUR Workshop Proceedings, Malaga, Spain (
          <year>June 2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Ceri</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Fraternali</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Matera</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Conceptual modeling of data-intensive web applications</article-title>
          .
          <source>Internet Computing, IEEE</source>
          <volume>6</volume>
          (
          <issue>4</issue>
          ),
          <volume>20</volume>
          {
          <fpage>30</fpage>
          (
          <year>2002</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Ceri</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Fraternali</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Bongio</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Brambilla</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Comai</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Matera</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Designing Data-Intensive Web Applications</article-title>
          . Morgan Kaufmann,
          <volume>1</volume>
          <fpage>edn</fpage>
          .
          <source>(Dec</source>
          <year>2002</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Cerny</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Song</surname>
          </string-name>
          , E.:
          <article-title>A pro le approach to using UML models for rich form generation</article-title>
          .
          <source>In: Information Science and Applications (ICISA)</source>
          , 2010 International Conference on. pp.
          <volume>1</volume>
          {
          <issue>8</issue>
          (
          <year>2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Chavarriaga</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mac</surname>
            <given-names>as</given-names>
          </string-name>
          , J.A.:
          <article-title>A model-driven approach to building modern semantic web-based user interfaces</article-title>
          .
          <source>Advances in Engineering Software</source>
          <volume>40</volume>
          (
          <issue>12</issue>
          ),
          <volume>1329</volume>
          {
          <fpage>1334</fpage>
          (
          <year>2009</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Driver</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Valdes</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Phifer</surname>
          </string-name>
          , G.:
          <article-title>Rich internet applications are the next evolution of the web</article-title>
          .
          <source>Tech. rep.</source>
          , Gartner Research Note. G (
          <year>2005</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Gasevic</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Djuric</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Devedzic</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          :
          <source>Model Driven Architecture and Ontology Development</source>
          . Springer-Verlag New York, Inc., Secaucus, NJ, USA (
          <year>2006</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Gasevic</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kaviani</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Milanovic</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Ontologies and software engineering</article-title>
          . In: Staab,
          <string-name>
            <given-names>S.</given-names>
            ,
            <surname>Studer</surname>
          </string-name>
          ,
          <string-name>
            <surname>R</surname>
          </string-name>
          . (eds.) Handbook on Ontologies, pp.
          <volume>593</volume>
          {
          <fpage>615</fpage>
          . Springer Berlin Heidelberg (
          <year>2009</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Geary</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Horstmann</surname>
            ,
            <given-names>C.S.</given-names>
          </string-name>
          : Core JavaServer Faces. Prentice Hall,
          <volume>2</volume>
          <fpage>edn</fpage>
          . (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>Hussmann</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Meixner</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Zuehlke</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          :
          <article-title>Model-Driven Development of Advanced User Interfaces</article-title>
          . Springer-Verlag New York Inc (
          <year>2011</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Lima</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Schwabe</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          :
          <article-title>Application modeling for the semantic web</article-title>
          .
          <source>In: LA-WEB</source>
          . pp.
          <volume>93</volume>
          {
          <fpage>102</fpage>
          . IEEE Computer Society (
          <year>2003</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13. Mac as,
          <string-name>
            <given-names>J.A.</given-names>
            ,
            <surname>Castells</surname>
          </string-name>
          ,
          <string-name>
            <surname>P.</surname>
          </string-name>
          :
          <article-title>Providing end-user facilities to simplify ontology-driven web application authoring</article-title>
          .
          <source>Interacting with Computers</source>
          <volume>19</volume>
          (
          <issue>4</issue>
          ),
          <volume>563</volume>
          {
          <fpage>585</fpage>
          (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <surname>Moreno</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Romero</surname>
            ,
            <given-names>J.R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Vallecillo</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>An overview of Model-Driven Web Engineering and the MDA</article-title>
          . In: Web Engineering: Modelling and Implementing Web Applications, pp.
          <volume>353</volume>
          {
          <fpage>382</fpage>
          . Springer London (
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15. Object Management Group:
          <source>MDA Guide Version 1.0</source>
          .1. OMG document: omg/2003-06-
          <fpage>01</fpage>
          (
          <year>2003</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16. Object Management Group: Ontology De nition Metamodel.
          <source>Version 1</source>
          .0.
          <string-name>
            <surname>OMG</surname>
          </string-name>
          (
          <year>2009</year>
          ), available at http://www.omg.org/spec/ODM/1.0/
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <surname>Parreiras</surname>
            ,
            <given-names>F.S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Staab</surname>
            ,
            <given-names>S.:</given-names>
          </string-name>
          <article-title>Using ontologies with UML class-based modeling: The TwoUse approach</article-title>
          .
          <source>Data &amp; Knowledge Engineering</source>
          <volume>69</volume>
          (
          <issue>11</issue>
          ),
          <volume>1194</volume>
          {1207 (Nov
          <year>2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18.
          <string-name>
            <surname>Perez-Medina</surname>
            ,
            <given-names>J.L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Dupuy-Chessa</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Front</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>A survey of model driven engineering tools for user interface design</article-title>
          . In:
          <article-title>Task Models and Diagrams for User Interface Design</article-title>
          , 6th International Workshop, TAMODIA 2007, Toulouse,
          <source>France. Lecture Notes in Computer Science</source>
          , vol.
          <volume>4849</volume>
          , pp.
          <volume>84</volume>
          {
          <fpage>97</fpage>
          . Springer (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          19.
          <string-name>
            <surname>Rossi</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Pastor</surname>
            ,
            <given-names>O.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Schwabe</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Olsina</surname>
            ,
            <given-names>L</given-names>
          </string-name>
          . (eds.): Web Engineering:
          <article-title>Modelling and Implementing Web Applications</article-title>
          . Human-Computer Interaction Series, Springer London, London (
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          20.
          <string-name>
            <surname>Schmidt</surname>
            ,
            <given-names>D.C.</given-names>
          </string-name>
          :
          <article-title>Guest Editor's Introduction: Model-Driven Engineering</article-title>
          .
          <source>Computer</source>
          <volume>39</volume>
          (
          <issue>2</issue>
          ),
          <volume>25</volume>
          {
          <fpage>31</fpage>
          (
          <year>2006</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          21.
          <string-name>
            <surname>Vdovjak</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Frasincar</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Houben</surname>
            ,
            <given-names>G.J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Barna</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          :
          <source>Engineering Semantic Web Information Systems in Hera. J. Web Engineering</source>
          <volume>2</volume>
          (
          <issue>1-2</issue>
          ),
          <volume>3</volume>
          {
          <fpage>26</fpage>
          (
          <year>2003</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          22. W3C OWL Working Group:
          <article-title>OWL 2 Web Ontology Language: Document Overview</article-title>
          . W3C
          <string-name>
            <surname>Recommendation</surname>
          </string-name>
          (
          <year>2009</year>
          ), available at http://www.w3.org/TR/owl2-overview/
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          23.
          <string-name>
            <surname>Wright</surname>
            ,
            <given-names>J.M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Dietrich</surname>
          </string-name>
          , J.:
          <article-title>Requirements for rich internet application design methodologies</article-title>
          .
          <source>In: Web Information Systems Engineering - WISE</source>
          <year>2008</year>
          , 9th International Conference, Auckland,
          <source>New Zealand. Lecture Notes in Computer Science</source>
          , vol.
          <volume>5175</volume>
          , pp.
          <volume>106</volume>
          {
          <fpage>119</fpage>
          . Springer (
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>