Ph.D. Thesis - Business Informatics Group
Ph.D. Thesis - Business Informatics Group
Ph.D. Thesis - Business Informatics Group
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
2.2 DTDs and Ecore at a Glance<br />
Amongst the approaches not yet in line with MDE, WebML [CFB + 03] is one of the most<br />
elaborated web modeling languages stemming from academia and is supported already<br />
over several years by the commercial tool WebRatio as already explained in Chapter 1.<br />
WebML’s language concepts are partly defined in terms of XML document type definitions<br />
(DTDs) [W3C06], i.e., a grammar-like textual definition, specifying an XML document’s<br />
structure, and partly hard-coded within the corresponding modeling tool. In contrast to<br />
MOF, DTDs represent a rather restricted mechanism for describing modeling languages,<br />
e.g., with respect to expressiveness, extensibility as well as readability and understandability<br />
for humans. Furthermore, since WebRatio internally represents models in XML<br />
[W3C06], it uses XSLT for generating code directly from WebML models. In contrast to<br />
dedicated MDE code generation technologies, e.g., MOFScript 1 , writing XSLT programs<br />
for code generation, however, is difficult and error-prone. Concerning these problems, a<br />
metamodel-based approach allows expressing transformation rules in a more compact and<br />
readable way by using existing MDE-conform code generation techniques or model transformation<br />
languages such as QVT [OMG05b] and ATL [JK06] in order to produce platformspecific<br />
models in an additional step before generating code.<br />
In order to define WebML’s language concepts in an MDE-suitable way and thus to bridge<br />
WebML to MDE, a MOF-based metamodel for WebML is a fundamental prerequisite. Considering<br />
the language’s size, however, we refrain from re-modeling WebML from scratch,<br />
since this would be a cumbersome and error-prone process. Instead, the existing DTD-based<br />
language specification as well as constraints hard-coded within WebRatio shall be reused in<br />
a semi-automatic process for MOF-based metamodel generation from DTDs. This process<br />
is illustrated in Figure 2.2 and encompasses three phases, whereby the first two phases concern<br />
the semi-automatic generation of the basic WebML language concepts defined within<br />
the WebML DTD. During the first phase a preliminary version of the metamodel is automatically<br />
generated from the available DTD, while in the second phase this preliminary<br />
version is manually validated and refactored according to constraints captured within the<br />
WebRatio tool support.<br />
The following section explains the concepts of DTDs and MOF and points out the aforementioned<br />
DTD deficiencies.<br />
2.2 DTDs and Ecore at a Glance<br />
As a first step towards bridging WebML to MDE, this section elaborates on the expressiveness<br />
of DTDs, i.e., the concepts used to describe the WebML language, with respect to MOF.<br />
In the context of OMG’s meta-level architecture [OMG05e], this means that a WebML model,<br />
which is represented by an XML document, relates to the model level (M1) (cf. Figure 2.3).<br />
1 www.eclipse.org/gmt/mofscript<br />
19