towards interoperable x3d models 080429 - engopt...
TRANSCRIPT
EngOpt 2008 - International Conference on Engineering Optimization
Rio de Janeiro, Brazil, 01 - 05 June 2008.
Towards Interoperable X3D Models and Web-based Environments for Engineering
Optimization Problems
Dean Vucinic1)
, Marina Pesut2)
, Andrey Aksenov3)
, Zoran Mravak4)
and Chris Lacor1)
1)
Department of Mechanical Engineering, Vrije Universiteit Brussel, Belgium, [email protected] and [email protected] 2)
Department of Computer Science, Faculty of Electrical Engineering, University of Osijek, Croatia, [email protected] 3)
TESIS Ltd, Moscow, Russia, [email protected] 4)
Bureau VERITAS, Paris, France [email protected]
Abstract Within a multidisciplinary engineering workflow, we find interactions between different design teams, where each team has its own
design objective and continuous need to present and share results with other groups. Common engineering environments are
equipped with advanced modeling and simulation tools, especially introduced to improve engineer’s productivity.
The problem is that the varieties of data models are used by disparate software at various design stages, resulting in duplicated, quite
large 3D models. To address such engineering problem a FSI (Fluid Structure Interaction) test case was selected. It involves
numerical simulations of a multi-component box structure used for the drop test in a still water. The numerical simulation of the drop
test is performed through combined used of the FEM (Finite Element Method) and CFD (Computational Fluid Dynamics) solvers.
The important aspect is the design of a common graphics X3D (eXtensible 3D) model, which combines the FEM data model, which
is coupled with the CFD data model in order to preserve all the relationships between CFD and FEM data.
The proposed solution is based on associating the semantic information to the 3D models. It involves two web based software
standards: X3D and Semantic Web. The focus is to enhance the visualization and manipulation of the graphical content in a
distributed engineering network. The presented software architecture is designed to support ontologies: to interface knowledge-based
systems, to promote a web-based software solution and to enable automation of perpetual engineering tasks. The challenge is to
apply the "latest" available software technologies, such X3D and OWL (Web Ontology Language), and to demonstrate the modeling
of heterogeneous data sources, their interoperability and 3D visual representations to enhance the end-users interactions with the
engineering content.
Keywords: multidisciplinary engineering, scientific visualization, X3D modeling, ontology, numerical simulation
1. Motivation
Today, multidisciplinary engineering workflows based on variety of software tools covers engineering tasks related to product
development lifecycle, as found in many applications domains (aerospace, transportation, energy production). The current state of the
art techniques use computational simulations and experimental measurements in different research domains to predict design
performance, and optimize it through advanced design methods, for example, in airplane design as shown in Figure 1, the variety of
research domains (Aerodynamics, Structural Mechanics and others) need to be considered in order to come up with an appropriate
usable solution.
Figure 1: Involved research domains in the airplane design process [1, 2]
Different experts groups active in involved research domains need interactions and exchange of pertinent information in order to
come up with an appropriate design fulfilling the variety of different requirements. The 3D visualization models are often used across
multidisciplinary teams to demonstrate and visualize envisaged solutions in a focused problem-oriented way. The important
requirement for such collaborative visualization environment is the interoperability of data sources created and manipulated within
2
such utilization design scenario, where the data exchange and sharing underpin the decision making process through the Human-
Computer interactions in the following ways [3]:
(1) Human-to-Human: teaching, research, thinking and defining what to consider.
(2) Human-to-Machine: specifying the problem in order to find appropriate service/application
(3) Machine-to-Machine: service/application discovery, utilization and monitoring
(4) Machine-to-Human: feedback through graphical/textual display of processed information
Physical phenomena
Experimental
model
Modeling
Simulation
Computational
model
Simulated data
Scientific
visualization
SCIENTIFIC VISUALIZATION MODEL
Simulated
Derived
Graphical
Displayable
extraction
refinement
enhancement
enrichment
rendering
DATA TRANSFORMATION
(a) (b) (c)
Figure 2: Scientific Visualization (a) Role (b) Model (c) Tool
The results of engineering simulations, see Figure 2 (a), before reaching computer display, undergo different transformations, as
shown in Figure 2 (b) and when visualized, see Figure 2 (c) [4] [5], their meaning might have been “lost”, if we are not assisted by a
domain expert (tool or human) in their interpretation. The Scientific Visualization [6] as part of such domain specialized tools is
present in: Computational Fluid Dynamics (CFD), structural mechanics with Finite Elements Methods (FEM) and Computer Aided
Design (CAD). Duplications of software data models and processing functionality is obvious, as today’s engineering environments
require such integrated set of tools, especially when product design optimization workflows are considered, but they rarely share the
common knowledge on which they are based, and most importantly, they do not share the meaning of data they process.
The problem of combining different software tools to solve multidisciplinary problems is faced with the increasing complexity of the
involved data models. Thus, we need better software modeling tools for the software development practice, which can enable the
reuse and can impose the correct usage of the inherent knowledge, contained not only within the software tools but also used by the
experts employing them. This paper represents an attempt to advance in such direction, by introducing ontology concepts for the
treatment of the involved visualization and presentation tasks, which are crucial for gaining thrust and confidence in accomplished
results, across multidisciplinary domains. The envisaged approach is expected to contribute to the following issues:
• Coherent semantics: different application domains develop different terminology for describing the same concept,
but for example, when the results are graphically displayed, it is far easier to agree on them.
• Knowledge reuse: there is a need for the development of related ontologies outside the application tools and data
models, in order to be able to reuse the exiting know-how in other environments.
Today, we have Integrated Modeling Environments (IME), which are complex software tools, combining two or more engineering
applications and specialized visualization systems for solving multi-disciplinary problems. For example, the naval architect shapes
the ship hull in order to reduce the ship’s hydrodynamic drag, while the stress engineer calculates the ship’s steel structure. Both use
visualization to analyze the data generated by the hydrodynamics and stress calculation solvers. The visualization software may be
able to process the CFD flow-field solver data and the FEM stress-field solver data in a unified manner, giving the two engineers the
possibility to collaborate by interfacing 3D representations of the hydrodynamic and structural problems.
Figure 3: The integrated modeling environment from Dassault Systèmes and ANSYS, Inc
3
An example of such integration software is the Product Life-cycle Modeling (PLM) tool developed by Dassault Systèmes and the
CFD solver developed by ANSYS, Inc, where the FLUENT CFD flow modeling approach is integrated in CATIA CAD tools throughout the whole product lifecycle [7]. This is a workable solution for the engineering tasks, but when we would required
exchanging data with external systems, we would be confronted with the necessity to explore the background knowledge, which is
hidden behind the graphics and data exported as solutions. This is the moment where the need for engineering ontologies emerges as
a unifying force for designing comprehensive information model, important for large scale semantic integration development.
During the last two decades, the Object-Oriented approach has been mastered for developing stand alone and web-based solutions,
where applications are in control of the applied classes and related functionalities. Constrains of such approach is that the developed
applications, by reading appropriate data inputs, take control over the data and process through well defined predefined functionality.
In this paper, we are looking to the solutions, where the inputs are enriched with semantic information, in order to enable future
applications and users to take advantage of such approach to explore/reuse the available engineering knowledge - coded in software.
Some of the envisaged shifts in software development from Object-Oriented approach to Ontology-Oriented approach are given in
Table 1.
Table 1: Comparison of few characteristics of Object-Oriented and Ontology-Oriented approaches
Characteristics Object-Oriented Approach Ontology-Oriented Approach Semantics Implicit Explicit
Reuse Domain specific Multidisciplinary
Data Model Class libraries Larger environment
Interoperability Difficult, due to different semantics found in each tool Different semantics taken into account
Developers Concerned with creation and manipulation of objects Semantically empowered objects
It is interesting to note that the Object Oriented paradigm has shifted the emphasis of software design from algorithms to data
(object, class) definitions [8, 9] and recently novel equation-based object-oriented (EOO) languages (e.g. Modelica) are applied to
model complex systems covering multiple application domains at high level of abstraction through reusable components [10]. We
would like to contribute to the software design shift from data to meaningful concepts (knowledge).
In order to demonstrate our approach, we have selected the Fluid Structure Interaction (FSI) problem describing the box failing in the
still water, with the objective to show the usefulness of the semantics descriptors in 3D graphics applications. The numerical
simulations of the drop test are performed with two software tools: Abaqus for FEM structure analysis and FlowVision for the CFD
modeling [11]. The visualization representation are combined within the 3D enabled viewer [12], giving possibility for sharing and
exchanging data outside the software tool, which has created the data itself.
(a) (b)
Figure 4: The drop test– a fluid structure interaction problem (a) FEM: Abaqus (b) CFD: FlowVision
2. Introduction: Ontology & X3D
The multi-disciplinary information visualization is inherently complex, and to enable the efficient interaction with 3D/4D space-time
domain, the graphics content of the created and displayed models could be enriched with a domain-specific knowledge, in order that
users can effectively query, interpret, personalize and manipulate the visualized information. The semantic enrichment of 3D models
plays important roles as follows: (a) enables users to understand and interact with the complex and sometimes incomprehensive
displayed representations, (b) underpin the creation of the user-friendly and ergonomic Graphical User Interface (GUI) and (c)
providing a knowledge-base for the intelligent queries.
4
The proposed solution of associating the semantic information to 3D models involves two web based software standards: X3D
(eXtensible 3D – X3D Graphics) [13] [14] and Semantic Web [15]. The main idea of the Semantic Web is to delegate many current
human-specific activities to computers and therefore data need to be presented in a machine-readable format. Since XML (eXtensible
Markup Language) is intended for describing the meaning of Web data (or, in other words, their semantics), the emerging XML-
based Web is also called the “Semantic Web”. Most of the current Semantic Web technologies belong to the XML family and it is
almost certain that the future layers will also be XML based, which technology is powered by the URI (Uniform Resource Identifier),
Namespaces and Unicode technologies.
XML documents are the most substantial layer of the Semantic Web because they embrace, strictly not only documents with the
domain-specific content (such as product catalogues) but also the “technological” documents written in XML (such as XSLT -
Extensible Stylesheet Language Transformations [16], RDF - Resource Description Framework [17] or OWL - Web Ontology
Language [18]), see Figure 5.
Figure 5: Architecture of the Semantic Web
Ontologies represent the fundamental technology for the SemanticWeb implementation, as they offer appropriate mechanisms to
describe relationships between objects and properties, as for example not found in X3D. The basic design principle for the ontology
modeling is to support the features that are necessary for a specific domain. The ontology models the domain concepts and the
relationships, thus defining the domain language (semantics) meaningful to humans and usable by machines, in order to improve:
• (semantic) search and browsing
• integration of heterogeneous information sources
• analytics and knowledge discovery capabilities
It can be noted that we can consider the extending of an existing ontology with new features or creating a new ontology for the
identify set of new features.
X3D, as a successor to VRML (Virtual Reality Modeling Language) provides Web developers with improved features in respect to
VRML, including extensibility, modular architecture, improved APIs and additional data encodings. Since X3D is XML based, it
allows integration with other XML based technologies and thus directly supports the use of metadata and ontologies. With the
creation of XSLT style sheets, we can transform instances defined in OWL to the respective X3D models, which can be then
rendered within an enabled X3D viewer [12], see Figure 6.
Figure 6: XML based technologies and their relationships
Over the last few years, attempts of adding semantic data to 2D/3D models were undertaken. For example, in [19] the geographic
data are represented as instances from the transportation networks ontology, which was designed in close relation with GDF
(Geographic Data Files). The data are transformed into SVG (Scalable Vector Graphics) objects, displayed symbolically, as
instances of transformation ontology. They generate output by means of ontologies and ontology instances instead of using
specialized algorithms for transforming data into generalized formats. Furthermore, instead of creating bitmap graphics, the results
are encoded in a graphical description language, in this case SVG.
Since ontologies are the core elements in describing domain concepts, they consist of a quite large number of connected graphs. A
solution for exploration and visualization of such ontologies in 3D space has been proposed in [20]. Interfaces for knowledge
modeling already exist (i.e. for ontology creation and visualization), such as Protégé [21]. Their approach aims at tackling
visualization issues for visualizing the ontology models by dynamically collapsing mechanism and multiple views at different
granularities, in order to grant a consistent navigation and presentation functionality. Pittarello [22] proposes the combine use of X3D
and Semantic Web to associate semantics information to 3D worlds, which is similar to our approach. His approach is based on the
definition of scene-independent ontologies and semantic zones to support the description of a 3D environment. The semantic
information can be extracted from an X3D model and further used to generate an associated ontology, which provides a high-level
and multilevel textual description of 3D environments. In order to utilize the inherent knowledge possibilities existing in the created
ontologies and reuse them within different simulators, Luukkainen and Karhela [23] propose an ontology-based method for
combining 3D plant modeling, large scale process simulation, and visualization. The use of their ontologies allows a clear distinction
Metadata and Ontologies
XML Schema RDF OWL
Access and Transformation
XSL XSLT DOM
Presentation and Rendering
SVG X3D
5
between the plant type and simulations models, by enabling the interaction with multiple simulation models for the same plant type.
In [24] the design of the visualization ontology prototype applies semantics for: (a) the discovery of visualization services, (b) the
support for collaborative work, (c) and software healing. Relevant taxonomies are reviewed and the formal framework is developed.
In [25] the authors explore a way of documenting 3D cultural objects by keeping together the relevant information by combining the
cultural values with graphical representations. They propose the ontology for defining cultural objects that depict, on one side a large
number of properties, making it sufficiently general, to encompass variety of different artifacts, and on another side enforce
simplicity, to be used and understood by the practitioners (with moderate computer skills) when producing, human readable and
understandable plain text notes. The documented items are instances of the proposed ontology, which can be efficiently processed for
computer visualization, retrieval or storage in a database. In [26] a component based architecture is presented for building interactive,
3D stand-alone or web-based applications. The declarative XML documents describe the components implementation, their
interfaces, as well as the configuration and composition of 3D user interfaces and graphical models, specially suited for the
mechanical engineering environments.
3. Integrated Approach
Conceptually, each X3D application is a 3D time-based space of graphical, video and audio objects that can be loaded, exchanged
and reused in a distributed computer environments. In addition, the X3D objects can be dynamically modified through a variety of
available mechanisms [13]. The semantics of X3D describe an abstract functional behavior of time-based, interactive 3D and
multimedia information. Each X3D application can, as shown in Figure 7:
1. establish implicitly a world coordinate space for defined objects, as well as the objects included by the application
2. define and compose explicitly a set of 2D, 3D and multimedia objects
3. specify hyperlinks to other files and applications
4. model objects behaviors
5. connect to external modules or applications via programming and scripting languages
(a) FEM (b) CFD
Figure 7: X3D architecture [13] and models of FEM and CFD layers
The ontology-oriented approach has made the Semantic Web technologies an appropriate choice for the treatment of complex models
found when solving multidisciplinary problems and for allowing straight forward integration with the Web technologies. In order to
apply ontologies, we need a semantically enabled metadata managing system. Metadata are associated to specific ontologies, in our
case engineering domains, through URI-s (referencing Intellectual Properties) [27], and organized and structured with web
ontologies. With combining the existing domain specific and X3D based ontologies we can create different 3D models for
engineering purposes, see Figure 7. The engineering models are interrelated using the ontologies shared semantics, which enables the
developments of a flexible environment infrastructure to facilitate the semantics adaptation to multidisciplinary scenarios, as
presented by CFD and FEM layers.
6
The semantic “model” is a concise representation of concepts that allow investigations of its properties and in addition, it enables an
unambiguous representation of different domains viewpoints. A model has to clearly convey what it is about, defining the concept
being depicted, in order that the stakeholders can unambiguously identify their viewpoints. However, for the model to be applicable,
modelers should avoid to create fully comprehensive models defining a complete set of attributes. The value of a model resides in its
ability to focus on the concern at hand, and to reduce complexity by eliminating the non-tangible elements. The hiding of pointless
and redundant data is the key of making an efficient ontology. Thus, we find SemanticWeb an appropriate vehicle to obtain the
knowledge about objects, by presenting and using only the parts of that available knowledge, which suits our demand.
While our framework addresses multiple layers of an engineering workflow, in many cases we don’t need to model them all. For
example, if our goal is the CAD part assembly model, which takes into account the stress deformations coming from FEM, our
workflow will consist of the starting CAD layer and the ending FEM layer. If our goal is the product production, which needs only
the CAD assembly parts, our workflow will be reduced to the CAD layer. If we want to solve the FSI problem, we have to involve
the FEM and CFD layers. In order to describe it, we will combine the necessary ontologies, supposing that each layer comes with its
defined ontology [28]. In our example, the four ontologies are mapped to the X3D ontology, which is the common ontology to our
four layers; in order that we can visualized the results of each layer, as the X3D models, see Figure 8.
Figure 8: FSI ontology mapped to X3D ontology for visualization
3.1. Application architecture In this section we show details on how the application should be developed, once the application domain has been selected, in our
example FSI and X3D. The driving force is the knowledge orientation, which is sustained by decoupling the application modules and
their interrelation within the shared semantics. The web technologies, and more concretely the Semantic Web tools, have been
chosen as the most appropriate ones, fulfilling the considered requirements, as follows:
• Message transport: Simple Object Access Protocol (SOAP) [29] for transport of RDF encoded messages
• Message encoding: RDF [17]
• Message semantics: ontology language OWL [18]
• GUI: X3D enabled client library [30]
From the mentioned combination of requirements, design principles and technological choices, it is obvious that the X3D proto
objects are essential part for describing 3D graphical models with enriched engineering data and metadata. From this point of view,
two correlated paths arise towards interoperability. These paths indicate whether the technology contains 2D or 3D graphical
primitives to be visualized, which is further related to how the users are intended to treat or store the objects during their
visualization, thus exploring the reasons for their availability. First, we take the engineering data to tie the related metadata with 3D
models, in order to have the possibility to access the related domain knowledge. Secondly, we apply a sub-set of their data and
metadata to construct proto objects, which are semantically interlinked into the coherent knowledge base. In both cases, we have to
define the styling transformations, part of the Generic Transformation Framework for the X3D composition. As shown in Figure 9 a
‘Model-to-Model’ transformation is built by defining the following elements:
1. The semantic meaning and context of the meta-elements of the source model that needs to be transformed
2. The semantic meaning and context of the meta-elements of the target model that needs to be the output of that transformation
3. The relationship between the meta-elements of the source model and the meta-elements of the target model, with the sequences
of procedural real time transformations (string manipulation, mathematical manipulation etc.) in order to convert the instance of
the source model’s meta-element into the instance of the target model’s meta-element.
The described model transformation extracts mappings between the nodes hierarchies of media data, metadata and ontologies. The
main observation is that the structural similarity between the two related hierarchies (of media objects, XML documents, or name
spaces) can provide clues about the semantic relationships between their nodes. In general, when relating the two trees, their nodes
can be classified as ‘common’ or ‘complement’ nodes. The common nodes are those shared by the two trees, which are having the
same attributes or (in the case of multimedia data) they might have application dependent features [31]. The mapping is considered
between the common nodes of the analyzed trees. For example, the common nodes of two given namespaces include shared terms, as
proto instances (in our case the container and the water space) that are known to have corresponding similarity. For a particular
model a meta-concept like ‘Box’ might mean the same thing as a meta-concept like ‘Cube’ or ‘Volume’ within other models.
7
Figure 9: Generic Transformation Framework
In addition, developers might have different viewpoints, which require that different categorization frameworks are established for
the repository content. Such classification scheme is called ‘taxonomy’. Taxonomies are used for the classification of the repositories
content, and particularly they are useful to resolve ambiguities, when multiple definitions of concepts arise. The semantic meaning
and relationships between elements of different taxonomies are represented with concept called ‘ontology’. Repositories leverage the
meta-models to define taxonomies and ontologies classify their content by defining the inter-intra relationships between meta-
elements of the repositories contents. Repositories can import ontologies using standards such W3C’s OWL in RDF and RDFS
formats and convert them to meta-models. Another key feature in the application building is the reverse engineering framework that
enables the analysis of the generated code and updating the models with the identified abstractions, termed also as round tripping’,
where the manual changes to the generated code are reflected back to the source models. The proposed framework includes utilities
for Queries/Views/Transformations (QVT), which supports the information “porting” from the existing tools to the repositories. For
example, a researcher can start using the Abaqus tool for FEM analysis and continue with FlowVision tool for CFD analysis, because
there is a Tool Porting Transformation available. On the taxonomy level the definition of concepts remains informal, but the concepts
themselves are well organized and structured in order that they can be related and compared. Taxonomies are not machine-
processable as they do not follow any particular set of rules. The operations on multiple taxonomies (for example, comparison, union,
and so on) require understanding and interpretation of the foundations on which the taxonomies are created. On the ontology level
the concepts are described by the set of constructors with a predefined meaning, defining the set of relationships that can be asserted
between primitives. Ontologies support explicit procedures for defining new concepts, thus they can be made machine processable,
and in additions operations can extend across multiple ontologies. Brodlie [32] and Groen [33] published taxonomies and models that
describe concepts for the formalization of the visualization processes.
3.2. Demonstration example In order to present the idea of the semantically rich 3D model, we describe a simple 3D scene with 2 objects: the box that is dropped
in a still water, and the box containing the still water. The first box approximates the ship container that must stand against the impact
with the water in order to protect its content from possible damage. The second box represents the sea, where the container can drop,
in the case of an accident. Test conditions are specified with parameters like impact angle, impact velocity, gravity force etc. in order
to approximate a real life situation. During the simulation the object (box) interaction is observed and the pressure distribution is
measured in a plane near to the container bottom.
X3D, as the selected modeling language, supports a variety of X3D proto objects together with their properties for modeling our
demonstration example. We use three types of classes: ‘Standard’, ‘Configured’ and ‘Custom Designed’. Each class can model
objects that range from simple to complex one, and if requested, can include different multi-media support. For example, one can
select a ‘Standard’ object such as the plain box with a set of defined properties, where visual appearance is defined by setting some of
its predefined parameters. For the ‘Configured’ classes, the same approach is valid, as they can be described as group of ‘Standard’
objects, thus as the combination of the ‘Standard’ X3D graphics models. The ‘Custom designed’ classes are similar to the
‘Configured’ classes, but they come with additional properties to enable the processing of more complex models involving multiple
layers (as CFD, FEM), which can not be completely described with one ‘Configured’ X3D model.
The objects of the 3D scene are created from the same base abstract node type, see Figure 10 and by setting the X3D nodes field
value, we are able to use them in different context. In our example, both objects are boxes, but during the creation process each X3D
box is defined with the domain specific properties. Although the two boxes have different properties, they are graphically similar box
instances, and what makes them different are the parameters related to their ontology model. Thus, if we define properties in the X3D
ontology, every box will be created as instance with its specific material, position etc. This is valid for all the scene objects that are
instantiated applying the X3D ontology. Therefore, the two boxes, visualizing our ‘drop test’ are instances from the same
visualization ontology, and the semantic properties enables us to meaningfully interpret their presence: ‘sea’ - box filled with water
and ‘ship container’ – grey box. After rendering the scene displaying the created X3D models the observer can more intuitively
recognize the container and the water surface. What needs to be highlighted is that these models contain ontological descriptions of
the semantic data, which are available for semantic processing by machines and applications. In practical terms, developing the
ontology includes defining classes, followed by arranging these classes in taxonomic (sub-super classes) hierarchies. For completing
the classes’ model, we define slots and describe permitted values for these slots. Completed that, we are ready to input the slots
values and create instances [34].
8
Figure 10: Visualization of two X3D boxes and their related properties
The distributed nature of ontology developments is resulting in a large number of ontologies covering the same or overlapping
domains content. In our case, CFD and FEM domains have surly overlapping domains parts, which still need to be further researched
and developed. We strongly believe that the creation and use of ontologies in engineering domains will standardize the
communication of concepts and their relationships between different groups (humans-machines to understand each other).
3.3. Implementation approach For ontology creation we use Protégé [21], a open-source platform with a growing users and developers community. It comes with a
suite of tools for the construction of domain models and knowledge-based applications using ontologies. At its core, Protégé
implements a rich set of knowledge-modeling structures and actions that support the creation, visualization, and manipulation of
ontologies in various representation formats. It can be customized, to provide domain-friendly support for creating knowledge
models and their population. Protégé has extendable plug-in architecture and a Java based Application Programming Interface (API)
for building knowledge bases and related applications.
Ontology describes the concepts and relationships that are important in a particular domain, providing a vocabulary for that domain,
as well as, a machine readable specification of the meaningful terminology used in vocabularies. Ontologies range from taxonomies
and classifications, database schemas, to fully axiomatic theories. In recent years, ontologies have been adopted in many business and
scientific communities as a way to share, reuse and process domain knowledge. Ontologies are now central to many applications
such as scientific knowledge portals, information management and integration systems, electronic commerce, and semantic web
services. OWL ontologies may be categorized into three species or sub-languages: OWL-Lite, OWL-DL and OWL-Full. Since,
OWL-DL is much more expressive than OWL-Lite. OWL-DL and OWL-Lite are based on Description Logics (hence the suffix DL).
Description Logics are a decidable fragment of the First Order Logic and therefore amenable to automated reasoning. It is therefore
possible to automatically compute the classification hierarchy and check for inconsistencies in ontologies that conforms to OWL-DL
[35]. The Protégé 3.3.1. version for the frame based ontologies has components as OWL ontologies. However, earlier versions of
Protégé used slightly different terminology to describe these components (Protégé frames Instances, Slots and Classes).
Figure 11: Class and property hierarchy part of CFD ontology
9
Figure 12: Semantic description of Hexahedron and its visualization
The ontology development is initialized with the creation of classes. The OWL classes are interpreted as sets that contain individuals.
They are described using formal (mathematical) descriptions that precisely state the requirements for the class membership. For
example, the class Cell contains the individuals that are cells in our domain of interest, but individuals may belong to more than one
class. Classes may be organized into the super-sub class hierarchy, which are also known as taxonomies. Subclasses specialize (‘are
subsumed by’) their super classes. For example, consider the classes Zone in relation to the Structured and Unstructured zones.
Structured and Unstructured zones are subclasses of Zone (thus, Zone is the super class of Structured and Unstructured classes). We
can conclude the following: ‘All zones are structured OR unstructured’. Conjunction OR emerges from disjunction of these two
classes. Having added the classes Structured and Unstructured to the ontology, we said that these classes are disjoint; meaning that an
individual (or object) cannot be the instance of more than one of these two classes, see Figure 11.
The next step in developing our ontology is to describe the OWL Properties, which define relationships within two main types:
Object properties and Datatype properties. In addition, properties may have sub properties, giving possibility to define hierarchies of
properties. Sub-properties represent specialization of their super-properties (as sub-classes are specialization of their super-classes).
For example, the property ‘composed_of_Cell’ might extend the more general property of ‘composed_of’. In our ontology, the
properties ‘composed_of_2D_1D_0D’, ‘composed_of_1D_0D’ and ‘composed_of_0D’ should be created as sub properties of the
‘composed_of_Cell’ property.
The Object properties are the relationships between two individuals. Each object property may have a corresponding inverse
property. If the property links individual ‘a’ to individual ‘b’, the inverse property will link individual ‘b’ to individual ‘a’. On the
left side of Figure 11 the property screen in Protégé is shown, where we can see the ‘composed_of’ property and its inverse, the
‘part_of’ property. For example, if ‘Cell_1D_Edge’ is ‘composed_of’ ‘Cell_0D_Node’, we can note the implication of the inverse
property, and conclude that ‘Cell_0D_Node’ is ‘part_of’ ‘Cell_1D_Edge’. Another important modeling thing is defining the property
domain and range. Properties also link domain individuals to range individuals. For example, in our ontology, the property
“composed_of_0D” links individuals of the class ‘Cell_1D_Edge’ to individuals of the class ‘Cell_0D_Node’. In this case the
domain of the ‘composed_of_0D’ property is ‘Cell_1D_Edge’ and the range is ‘Cell_0D_Node’, as depicted in Figure 11.
Protégé allows using different OWL reasoners as plug-ins; the reasoner shipped with Protégé is called Fact++. The ontology can be
‘sent to the reasoner’ to automatically compute the classification hierarchy, and also to check the logical consistency of the ontology.
In Protégé 4 the ‘manually constructed’ class hierarchy is called the asserted hierarchy. The class hierarchy that is automatically
computed by the reasoner is called the inferred hierarchy, thus we can automatically classify the ontology (and check for
inconsistencies).
Next step is concerned with mapping ontologies [36]. We use X3D node types to create objects in the scene applying the base
ontology for X3D, which has been developed in TUC/MUSIC [37]. When creating models from the related X3D ontology, the
applied tags are defined with corresponding X3D Schemas. The created and selected ontologies are combined, and as example, we
show the creation of one instance of a simple box semantically described with the created ontology as ‘Hexahedron’. As such, it can
be related to ‘Cell_3D_Solid’, and as well as to ‘Zone’ class, but from X3D ontology viewpoint it is represented as box with defined
10
coordinates, see Figure 12. The results of the presented simulation scenario could be directly embedded into virtual reality
environment. Interesting possibility arises for the navigation and visualization functionality, when user would interact with such
semantically rich graphics composing the 3D scene. For example when picking the objects, the user could gain access to the
associated metadata of such models:
- What application created the object (use case metadata)
- Recreate the object with new conditions (involving X3D proto modification)
- For which problems the objects is relevant (use case knowledge)
- Show components of same type(Query form)
- Show connected components on same or different hierarchical levels (Query form)
- From which sub-models the object is created ("composed of" relationship) (Query form)
- Which object are using the model ("part of" relationship) (Query form)
The initial architecture based on a semantically enabled application server is shown in Figure 13.
Figure 13: Architecture overview[20] and possible realization of a semantically enabled application server [38]
4. Conclusion and future plans
We have described a software development approach based on SemanticWeb and X3D technologies to develop multidisciplinary
engineering environment, with emphasis on:
•••• Ontologies for improving interoperability between domains oriented engineering applications: towards software tools with
meaningful complexity, based on OWL.
•••• Standardization of 3D models within integrated engineering environment: towards integrated visualization with X3D.
•••• Intelligent distributed applications for query/search/filtering of engineering data generated from heterogeneous sources; as
best adopted approach for the reduction of exchanged/shared data sets: towards next generation of web-based engineering
environments based on X3D and OWL.
With the increasing amount of information overload, intuitive visualization of content will become more and more important, as
users will need an effective human-machine interaction. New visualization techniques are expected to be based on technologies like
X3D and Java3D (for rendering of and interaction with 3D graphics) [30]. Additionally, the use of semantics for storing, organization
and finding of information, will require further research in semantically driven application servers. With the application of new
generation of 3D real-time graphics engines, the engineering environments will more and more exploit the semantic descriptors to
automate the run-time generation of innovative cross-domains 3D GUIs.
The future development of the proposed approach will be further researched and prototyped in one of the expected future projects, to
be supported by the European Commission and the Belgium national authorities.
5. Acknowledgments This paper would not be created if the long-lasting research and development activity of Dean Vucinic would not be supported by the
European Commission (EC) for the ALICE project (EP-28168) (1988-2001) and the Belgium national authorities (IWT) in
collaboration with EC for the ITEA projects LASCOT (2003-2005) and SERKET (2006-2007); what is gratefully acknowledged.
6. References
[1] Y. Deremaux, "Physically-based, real-time visualization and constraint analysis in multidisciplinary design optimization,"
in Aeronautics and Astronautics. vol. MSc Thesis: Massachusetts Institute of Technology, 2003.
[2] "Airbus 380 ": http://portal.aircraft-info.net/article8.html 2008.
[3] K. Brodlie, D. Duce, and I. Herman, "Visualization Ontologies," Report of a Workshop held at the National e-Science
Centre 7-8 April 2004.
[4] D. Vucinic, M. Pottiez, V. Sotiaux, and C. Hirsch, "CFView - An Advanced Interactive Visualization System based on
Object-Oriented Approach," in AIAA 30th Aerospace Sciences Meeting Reno, Nevada, 1992.
[5] "CFView a visualization system from Numeca," http://www.numeca.com, 2007.
[6] D. Vucinic, "Development of a Scientific Visualization System " in Department of Mechanical Engineering, PhD Thesis:
Vrije Universiteit Brussel, 2007.
[7] "Fluent for Catia V5, Rapid Flow Modeling for PLM," http://www.fluentforcatia.com/ffc_brochure.pdf, 2006.
[8] B. J. Cox and A. J. Novobilski, Object-oriented programming : an evolutionary approach, 2nd ed. Reading, Mass.:
Addison-Wesley Pub. Co., 1991.
[9] G. Booch, Object-oriented analysis and design with applications, 2nd ed. Redwood City, Calif.: Benjamin/Cummings Pub.
11
Co., 1994.
[10] P. Fritzson, F. o. Cellier, and C. Nytsch-Geusen, Proceedings of the 1st International Workshop on Equation-Based
Object-Oriented Languages and Tools. Linkoping: Linkoping University, 2007.
[11] A. Aksenov, D. Korenev, A. Shyshaeva, D. Vucinic, and Z. Mravak, "“Drop-Test” FSI simulation with Abaqus and
FlowVision based on the direct 2-way coupling approach," in 2008 Abaqus Users' Conference Newport, Rhode Island,
2008.
[12] "Flux (software)," Media Machines http://en.wikipedia.org/wiki/Flux_(VRML_and_X3D), 2008.
[13] "Extensible 3D (X3D) Specification, ISO/IEC FDIS 19775-1:2008," http://www.web3d.org/x3d/specifications/ISO-IEC-
FDIS-19775-1.2/index.html, 2008.
[14] A. Craig, S. Marshall, J. Noble, and R. Biddle, "Evaluating X3D for use in software visualization," in Proceedings of the
2006 ACM symposium on Software visualization Brighton, United Kingdom: ACM, 2006.
[15] V. Geroimenko and C. Chen, Visualizing Information Using SVG and X3D: XML-based Technologies for the XML-based
Web: Springer, London, UK., 2005.
[16] "XSL Transformations (XSLT) Version 1.0 W3C Recommendation," http://www.w3.org/TR/xslt, 1999.
[17] O. Lassila and R. R. Swick(eds.), "Resource Description Framework (RDF), Model and Syntax Specification, W3C
Recommendation," in http://www.w3.org/TR/REC-rdf-syntax, 1999.
[18] Z. Zuo and M. Zhou, "Web Ontology Language OWL and its description logic foundation," in Parallel and Distributed
Computing, Applications and Technologies, 2003. PDCAT'2003. Proceedings of the Fourth International Conference on,
2003, pp. 157-160.
[19] F. Ipfelkofer, B. Lorenz, and H. J. Ohlbach, "Ontology Driven Visualisation of Maps with SVG - An Example for
Semantic Programming," in Information Visualization, 2006. IV 2006. Tenth International Conference on, 2006, pp. 424-
429.
[20] A. Bosca, D. Bonino, M. Comerio, S. Grega, and F. Corno, "A reusable 3D visualization component for the semantic web,"
in Proceedings of the twelfth international conference on 3D web technology Perugia, Italy: ACM, 2007.
[21] "Protégé is a free, open source ontology editor and knowledge-base framework," Stanford University School of Medicine:
http://protege.stanford.edu/, 2008.
[22] F. D. A. Pittarello Fabio, "Semantic description of 3D environments: a proposal based on web standards," in Proceedings
of the eleventh international conference on 3D web technology Columbia, Maryland: ACM, 2006.
[23] M. Luukkainen and T. Karhela, "Ontology Approach for Co-Use of 3D Plant Modelling and Large Scale Process
Simulation," in The 48th Scandinavian Conference on Simulation and Modeling (SIMS 2007), Göteborg (Särö), Sweden,
2007, pp. 166-172.
[24] G. Shu, N. J.Avis, and O. F. Rana, "Investigating Visualization Ontologies," in UK e-Science All Hands Meeting 2006,
2006.
[25] F. Niccolucci and A. D'Andrea, "An Ontology for 3D Cultural Objects," in VAST 2006: 7th International Symposium on
Virtual Reality, Archaeology and Intelligent Cultural Heritage, 2006, pp. 203-210.
[26] R. Dachselt, M. Hinz, and K. Meiner, "Contigra: an XML-based architecture for component-oriented 3D applications," in
Proceedings of the seventh international conference on 3D Web technology Tempe, Arizona, USA: ACM, 2002.
[27] R. García, R. Gil, and J. Delgado, "Intellectual Property Rights Management using a Semantic Web Information System "
in OTM Confederated International Conferences, CoopIS, DOA, and ODBASE'04, 2004, pp. 689-704.
[28] P. Doran, V. Tamma, and L. Iannone, "Ontology module extraction for ontology reuse: an ontology engineering
perspective," in Proceedings of the sixteenth ACM conference on Conference on information and knowledge management
Lisbon, Portugal: ACM, 2007.
[29] N. Mitra(editor), "SOAP Version 1.2 Part 0: Primer: W3C Recommendation," http://www.w3.org/TR/2003/REC-soap12-
part0-20030624/, 2003.
[30] H. Nathan, W. Burkhard, and T. Ewan, "A framework for interactive web-based visualization," in Proceedings of the 7th
Australasian User interface conference - Volume 50 Hobart, Australia: Australian Computer Society, Inc., 2006.
[31] K. Sel, C. Uk, and L. Wen-Syan, "On similarity measures for multimedia database applications," Knowl. Inf. Syst., vol. 3,
pp. 30-51, 2001.
[32] D. J. Duke, D. J. Duke, K. W. Brodlie, and D. A. Duce, "Building an Ontology of Visualization," in Visualization, 2004.
IEEE, 2004.
[33] P. W. Groen, "Scientific Visualization - Taxonomy," http://www.nat.vu.nl/~pwgroen/scivis/tax.html, 2006.
[34] N. Noy and D. McGuinness, "Ontology development 101: A guide to creating your first ontology," Stanford Medical
Informatics (SMI), Department of Medicine, Stanford University School of Medicine Technical Report SMI-2001-0880,
2001.
[35] M. Horridge, S. Jupp, G. Moulton, A. Rector, R. Stevens, and C. Wroe, "A Practical Guide To Building OWL Ontologies
Using Protégé 4 and CO-ODE Tools," The University Of Manchester, http://www.co-
ode.org/resources/tutorials/ProtegeOWLTutorial.pdf, 2004.
[36] F. Pittarello and A. Celentano, "Deployment of Multimodal Services: an Ontology Driven Architecture," in Pervasive
Services, IEEE International Conference on, 2007, pp. 267-274.
[37] E. Kalogerakis, S. Christodoulakis, and N. Moumoutzis, "Coupling Ontologies with Graphics Content for Knowledge
Driven Visualization," in Virtual Reality Conference, 2006, 2006, pp. 43-50.
[38] D. Oberle, "Semantic management of middleware," in Proceedings of the 1st international doctoral symposium on
Middleware Toronto, Ontario, Canada: ACM, 2004.