The VPDMf is the underlying framework on which the rest of the system has been buiilt. The VPDMf operates on a UML model, and then uses a locally defined ‘View Specification’ (an XML design conforming to our own internal specification) to encapsulate elements from the schema together into ‘views’. A view is a collection of entities that have a certain relationship between them. Views enable complex composite objects to be represented and manipulated as single entities. In this representation, views may be connected together in a network of nodes and edges (a ‘graph’). Information may then be embedded into the edges as ‘relations’. This provides a richly expressive representation that is built from object oriented principles and is therefore well-supported by object-oriented programming approaches. We implemented a modular design based on the UML structure of ‘packages’ so that changes could be made to one part of the model without affecting other parts.
The VPDMf has programmatic access to the schema’s design, and can therefore transform it to other configurations. Thus, we transform a UML model into a relational database schema and then generate the necessary scripts in the structured query language (SQL) to create the database. The system can also load preliminary data from an Excel spreadsheet into another set of SQL scripts that then loads it into the system automatically. This provides a set of files that may be acted on to fully instantiate a relational database capable of representing the desired schema from scratch. The system automatically builds a Java-based object to instantiate the schema within the NeuroScholar system, providing all necessary information to query, insert and edit data within the schema database.
The VPDMf is implemented as a Perl application and can be run as a command-line tool or with a graphical user-interface. Perl is a good candidate for this purpose because it can serve as a rapid prototyping method with excellent text processing capabilities (for source parsing and generation) as well as strong support for system administration.
The VPDMf will be useful to assist with the processing of OWL ontologies in the next phase of the project. Moreover, we want to extend the VPDMf so that it can be fed a model written in RDF notation thereby providing us with more flexibility. Currently, the system operates only from a UML model. This approach lends itself very well to integration with other open-source projects.
The VPDMf demo can be accessed here.
The VPDMf system loader can be downloaded from here.