Once the transformation process is completed the web expert can make use of AriadneTool in order to adapt the diagrams automatically generated from the IMS LD specification to comply with the web system requirement. These actions may range from:
• The modification of the Internal Diagrams to correct the disposition and space assignment for each of the nodes and contents.
• The introduction of new contents in the Internal Diagrams. This will allow the inclusion of titles, logos, information about the use of the application, etc.
• The re-organization of the application’s layout in order to assign a same frame in the screen to more than one node. This will imply the inclusion of user nodes which generalize the existing ones, the specification of navigation links and the modification of the navigation diagram.
In order to verify that these actions are carried out correctly and no inconsistencies with the IMS LD structure are introduced, AriadneTool has been modified: first, some user actions have been restricted, second, the original validation ontology has been extended to include the concept of IMSLDNodes and UserNodes, and third, a set of queries to detect the introduction of inconsistencies has been implemented. However, users will be provided with the option of deactivating the validation, and generate a not IMS LD compliant version of the application.
User Action Restrictions
The AriadneTool has been modified to limit the introduction of severe inconsistencies when adapting a hypermedia design derived from an IMS LD process. This way, users are not authorized to remove any nodes or contents of the Structural and Internal Diagrams, which have been annotated with an IMSLDType attribute. On another hand, they are not allowed to modify the User Diagram or the Access Table. This prevents the introduction or removal of any role, as well as the modification of the access permissions.
Ariadne Ontology Extension
In order to validate the design artefacts the AriadneTool includes a Validation and Verification (V&V) Module which holds the rules to validate and verify the completeness and correctness of the design. The module integrates an ontology which helps to describe the model in a complete, comprehensible and formal manner, and make it possible to check the application semantics [4]. The Moduweb validation has been integrated in the AriadneTool V&V module in order to perform all the validations together. The AriadneTool ontology has been extended to include some necessary concepts for the validation of designs derived from IMS LD processes.
During the validation process, the extended ontology is populated with the data derived by the ADM design models, and a set of queries is launched in order to check that none of them contains any inconsistencies. Figure 2 depicts the extension of the ontology. The concepts of IMLDNode and UserNode have been introduced to represent the nodes of the structural diagram which have been derived from the transformation process or have been directly included by the web expert, respectively. There are different types of IMLDNodes depending on the type of the IMS LD concept the node represents. All of them belong to the CompositeNode class with the exception of Resources, which can not be subdivided and therefore belong to SimpleNode. On the other hand UserNodes can be classified as CompositeUserNodes or SimpleUserNodes based on type of node chosen by the web expert.
Once the web expert has modified the original design, and previously to the code generation, the IMS LD validation process should be launched in order to check the compliance of the final design with the IMS LD specification. This validation is performed using a different set of queries for each of the ADM design models.
Regarding the Structural Diagram the validation is performed in two directions: first, to check that the relations between the IMSLDNodes have not been modified to produce a not IMS LD compliance structure, and second, to check that the introduced UserNodes has not disrupted the original structure and serve either as navigation instruments or as a tool for assign space on the screen. This way, the set of queries implemented check that all the nodes (except the method node) are aggregated/generalized into another node, that there are no IMSLDNodes generalizing another node, and that when one IMSLDNode aggregate another IMSLDNode, the relationship between them is correct following the IMS LD specification guidelines.
On the other hand, it is also checked that all the nodes aggregated or generalized by UserNodes should have the same UserNode type or the same IMSLDNode type, and that all the UserNodes which generalize an IMSLDNode are aggregated into another IMSLDNode. Regarding the Internal Diagrams, the implemented queries check that each of the CompositeNodes related to aggregation relationships include in its Internal Diagram all the aggregated nodes.
The AriadneTool V & V module guarantees that all nodes are reachable, and consistency between the Navigation Diagram and the links placed in the Internal Diagrams of the nodes. Therefore it has not been necessary to implement any query to check that type of problem.