5.2.5. Création interactive de transformations

L'onglet de construction de transformations Sparql ("Edit") est présenté Figure 65.

Figure 65 : Onglet de création de requête Sparql

Cet onglet permet les opérations suivantes :

1. Saisie d'une transformation Sparql en trois parties : la partie commentaire, la partie construct et la clause where.

2. Visualisation de la transformation Sparql. Ce mode offre une coloration syntaxique et permet de cliquer sur les mots clés pour obtenir une aide contextualisée. Cela permet aux utilisateurs novices de se former à Sparql.

3. La sélection de modèles de clauses construct ou where dans des listes déroulantes. Ces modèles sont discutés au paragraphe 5.4.2.

4. Visualisation du fichier transformation en entier. Cette visualisation offre la numérotation des lignes. Cela facilite la correction des erreurs de syntaxe, car le numéro d'une éventuelle ligne erronée est renvoyé par le système quand la requête est appliquée. Un zoom de cette partie est donné Figure 66.

5. Import d'une requête existante à partir d'un fichier.

6. Import d'une requête à partir d'un observé vu dans la trace. Ce bouton permet d'importer la requête qui a généré l'observé sélectionné afin de s'en servir comme modèle pour générer un autre observé.

7. Enregistrement et application de la transformation sur la séquence transformée courante.

Lorsque la transformation est appliquée avec succès, une séquence transformée fille est générée. L'utilisateur est informé du nombre d'observés générés par la requête. La séquence transformée générée devient la séquence transformée courante.

La Figure 66 présente un zoom sur la visualisation de la transformation.

Figure 66 : Edition d'une transformation Sparql

Cette transformation génère des prédicteurs de changement de voie à partir des conjonctions de l'accélération et du regard vers le rétroviseur gauche. La clause where recherche les ressources ?r1 de type "Speed_Increase" et de date ?d1 ; les ressources ?r2 de type "Gaze_Left_Mirror" et de date ?d2 ; telles que ?r1 précède ?r2 d'un maximum de 4 secondes et qu'il n'y ait aucune autre ressource de type "Gaze_Left_Mirror" entre les deux. Pour chaque conjonction répondant à cette clause, la clause construct ajoute un nouveau nœud, de type "Predict", et de date ?d2, relié à ?r1 et ?r2 par des relations de type "inferred".