This section outlines future research on extending the areas of application for User Driven Modelling/Programming both for other types of problem within engineering and for other types of modelling. One possible application is the use of these techniques for scientific visualisation and modelling based on taxonomies.
8.3.1 Ontology Development
It is important not to stay limited on one ontology development environment but instead explore how ontologies can be developed using a range of tools and translated between each where necessary; (Garcia-Castro and Gomez-Perez, 2006) are testing this process. This would involve using and
translating between tools such as those discussed in section 3.4 - ‘Ontology Based Modelling Solutions’, and others that may yet be developed.
Ciocoiu et al. (2000) and Horrocks (2002) consider the advantages of moving towards a more formal ontology, this was investigated in section 2.3.1 - ‘Ontologies for Modelling and Simulation’, and section 3.6 - ‘Ontologies and Semantic Web and their role in Modelling’. This would enable translation between all the layers in the ‘Layer Cake’ discussed at the end of section 2.3. More expressive
semantic descriptions are possible through the use of the standard OWL dialects. These more
expressive descriptions require sophisticated visualisation tools. Making use of a more formal ontology is the next major aim for the research behind this thesis. Creation of a formal ontology, while at the same time creating applications that model problems such as early stage design and cost, and interactive modelling environments for students, will widen the applicability of the research. This would enable further testing on ways ontologies can be used to solve problems, and how they are meaningful to people as well as being searchable by computer software. The intention is to enable online tagging of this ontology/ies and editing of it by users, in order to allow users and domain experts to be involved in the ontology construction.
So far the ontologies/taxonomies used in this thesis include traditional object oriented relationships such as child, parent, sibling, attribute, and instance. Though for this research instance means re-use of a class within an application rather than its object oriented meaning. There are other types of
relationship that would need to be modelled in order to maximise the capabilities of software that would use the ontologies/taxonomies. Key relationships used within the object oriented programming domain between classes/objects have been modelled already. These key relationships depict families and aggregations of classes/objects that may share attributes and methods through inheritance. When physical items are represented, this can be translated to geometric diagrams. Semantic descriptions with more relationship types than the ones modelled so far would allow a more expressive depiction of a problem domain, and can aid some forms of search within a model.
8.3.2 Ontology Visualisation and Interaction
A major aspect of future work will be to develop a reversal of the 3 step process and ensure the translation can be performed from visualisation to ontology as well as ontology to visualisation. So this would involve Step 3 - ‘Visualisation and Interaction’ - Step 2 ‘Translation’ - Step 3 ‘Ontology’. This reverse translation has been examined but not prototyped in so much detail as the Step 1 to 3 process. It could be possible to provide high level facilities for end-users to edit ontologies, using this stepped translation methodology, and thus complete the circle of iterative communication between human and computer. Each side of the iterative diagram illustrated in Figure 15, would then have a double headed arrow. This is illustrated in Figure 62.
Figure 62. Two Way Translation between users and computers
To encourage easier end-user interaction with Step 1 ontology creation it is important to make ontology editing easier. As mentioned in section 3.3 Protégé has OWL plug-ins available that provide extra capabilities for representing and visualising information e.g. Jambalaya (Ernst et al., 2003) for
visualisation of knowledge and relationships. Enabling of web-based editing of ontologies would make ontology editing more accessible, and Leaver (2008) created an online ontology editor at the University of the West of England (section 6.4.4). Richer semantics could also make the editing process simpler by reducing complexity in the user interface.
Modelling of if-then choices formally using OWL and ontology editors should be provided. Elenius (2005) explains how OWL can be used for process modelling including for if-then choices:
“Process Modeling A powerful feature of OWL-S is the ability to model composite processes. A composite process is constructed from subprocesses that can in turn be composite, atomic, or simple. The control flow of a composite process is defined using control constructs, such as If-Then-Else, Sequence, and Repeat-Until. These constructs can be nested to an arbitrary depth.”
Elenius illustrates this with a screenshot of a composite process, its tree structure, and its graph representation.
SWRL (Semantic Web Rule Language) combining OWL and RuleML, and its use in modelling will also be investigated. This could be used for formally specifying the construction of equations and rules in a model and the relationships and constraints between items represented in an equation. Miller and Baramidze (2005) explain the SWRL language. An editing facility to model these equations and constraints, so that errors could be prevented, would improve the usability of future visual modelling systems created. Support for SWRL in Protégé and other ontology based systems will assist with the construction of a modelling system with sophisticated editing of rules (Miller and Baramidze, 2005). In addition, these rules could assist with provision of alternative interfaces such as an editable CAD type view, and with translating between these interfaces on the fly (e.g. from CAD type to tree/graph type).
8.3.3 Modelling and Simulation
Future work would build further on research in Semantic Web enabled modelling and simulation outlined in section 3.6. Miller and Baramidze (2005) examine efforts to develop mathematical semantic representations above the syntactical representations of MathML (referred to in 4.4). SWRL also has standardised arithmetic and comparison operators (Zhao and Liu, 2008). These languages should enable standardisation of the representation of mathematical expressions that relate nodes, and their values and expressions; this would seem to be a difficult problem as it needs a user interface that enables complex mathematical structures to be conveyed by language and/or diagrammatic
visualisation. The next stage in the research after this thesis will be provision of constraints to prevent invalid mathematical expressions. Miller and Baramidze’s DEMO system uses OWL to define a simulation and modelling class hierarchy. The first steps were taken towards creating an example simulation to demonstrate with a practical model how a web-based simulation can be provided based on an ontology, and how this can enable people to use interactive simulations on the web. This could be extended as described below.
8.3.4 Meta-Programming and Rule Based Programming
Meta-Programming and Rule-based languages (Wallace, 2003) could be used to develop an interface to an end-user programming environment. So far the automated output of code in such languages has been provided and automated output of machine independent code such as in XML, RDF, and SVG format. Research is needed into combining meta-language, rule-based and web and interoperability standard code to enable creation of modelling systems from this code automatically. This would be achieved in a similar way to that demonstrated in chapter 6, but in a more flexible and machine independent way. Chapter 6 demonstrated that the translation process can be used to create meta-code necessary for this, (in Step 1 and Step 2). So it remains to make use of this meta-code within Step 3 by sending it to appropriate visualisation and interaction tools (e.g. Simkin (Whiteside, 2008)). This could involve a Step 4 translation from meta-code, interoperable or web standard code, and/or rule based code to an automatically created model/program. A further possibility is to provide a meta-code version of the translation itself, so this can be machine independent.
8.3.5 Visualisation and Taxonomy Management
Through this thesis, ontologies and taxonomies has been used to represent computing structures and engineering information. Taxonomies have not yet been used in this research for managing biological information, though this was the purpose for which Linnaeus developed taxonomy representation. So, future research could provide an interactive visual taxonomy management system that uses the translation and interaction techniques developed in this thesis. The taxonomy will be used to structure, manage, and enable understanding of complex scientific information to enable scientists to collaborate
make possible new insights. It is intended for this to act as a resource to link the research of biologists and environmental scientists.
8.3.6 Research Connectivity
It is intended that this research will also be applied to E-Learning and Collaboration, and to enabling wider participation in online communities. Work is beginning on a project to link companies and individuals mainly in the West of England aerospace/space industry and also to involve amateurs in this industry. This is a practical application for a web-based distributed constructionist approach (Resnick, 1996) to modelling and collaboration, and could also be used in teaching. As explained in 2.3.2 - ‘Semantic Web and Ontologies’, Berners-Lee and Fischetti (1999) also argue for collaborative interactivity, which they call ‘Intercreativity’. Research in e-learning would involve end-user
programming enabled with Semantic Web technologies and with a visualisation and interactivity layer, as shown in Figure 63.
Figure 63. E-Learning, End-User Programming, and the Semantic Web
8.3.7 User/System Builder Management
Future work would be required to provide more sophisticated definition, and implementation of user types and rights. Through this thesis people were represented in 3 categories - ‘System Builders’, ‘Model Builders’, and ‘Model Users’. However, these categories would need to be further divided into sub-categories, and these be managed visually and interactively. Management of use, based on an ontology of people constructing or using systems would help enable management and collaboration on larger scales.