Closed tfrancart closed 2 years ago
Pour la représentation d'une liaison optionnelle pour un ET, nous pourrions simplement utiliser des pointillés pour le trait. Reste à trouver une ergonomie pour la sélection. Une première idée pourrait être de permuter en option ou non en cliquant sur le "(ET)" de la liaison avec une info bulle en survol pour informer de l'action possible à réaliser.
Pour la représentation d'une liaison optionnelle pour un ET, nous pourrions simplement utiliser des pointillés pour le trait.
Excellente idée !
Une première idée pourrait être de permuter en option ou non en cliquant sur le "(ET)" de la liaison avec une info bulle en survol pour informer de l'action possible à réaliser.
Carrément !
Et il faut aussi penser à la conséquence sur la génération de la requête SPARQL.
Attention on doit aussi pouvoir marquer un "Where" Optionnel
Possibulité d'avoir une sorte de "menu" autour des WHERE et des AND pour activer certaines options, dont le OPTIONAL :
Inspiration : http://en.lodlive.it/?http://dbpedia.org/resource/Pablo_Picasso
Ce sera forcément une seule option parmi celle disponible
Prévoir 4 entrées dans le menu :
@tfrancart la fonctionnalité commence à être pas mal implémentée tant sur le design que sur le traitement de la requête Le chargement d'une sauvegarde n'est pas encor traité. Il y a des éléments à revoir ensemble. Je ne suis pas certain que cela soit bon dans le cas de 2 critères frères. Comme les variables des status des option sont dans la branche et non les lignes, une option choisi pour un critère s'applique à tous ces frères. Je ne me rappel pas que cela était souhaitable.
En tout cas voici ce que cela donne pour le moment
Voici la requête générée, tu comprendra mieux pourquoi cela est erroné quand il y a des critères frères. Nous en parlons demain.
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX dbpedia: <http://dbpedia.org/ontology/>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
SELECT DISTINCT (STR(?label) AS ?nom) ?wikipedia ?this WHERE {
?this rdf:type dbpedia:Country;
^<http://dbpedia.org/ontology/country> ?Museum_1.
?Museum_1 rdf:type dbpedia:Museum.
FILTER(NOT EXISTS {
?Museum_1 ^<http://dbpedia.org/ontology/museum> ?Artwork_2.
?Artwork_2 rdf:type dbpedia:Artwork.
?Artwork_2 dbpedia:author ?Person_3.
?Person_3 rdf:type <http://dbpedia.org/ontology/Person>.
})
OPTIONAL {
?Museum_1 ^<http://dbpedia.org/ontology/museum> ?Artwork_5.
?Artwork_5 rdf:type dbpedia:Artwork.
?Artwork_5 dbpedia:museum ?Museum_6.
?Museum_6 rdf:type dbpedia:Museum.
}
FILTER(NOT EXISTS {
?Museum_1 ^<http://dbpedia.org/ontology/museum> ?Artwork_2.
?Artwork_2 rdf:type dbpedia:Artwork.
?Artwork_2 dbpedia:author ?Person_3.
?Person_3 rdf:type <http://dbpedia.org/ontology/Person>.
})
?this rdfs:label ?label FILTER(lang(?label) = 'fr')
?this <http://xmlns.com/foaf/0.1/isPrimaryTopicOf> ?wikipedia
}
ORDER BY ?label LIMIT 5000
@tfrancart Vu comment cela est avancé, je pense que nous pouvons nous sentir confiant pour la semaine prochaine.
Chouette merci. C'est génial. Pense à entourer les lignes des critères en pointillés pour que tout le sous-bloc soit bien visible. Je vois aussi quelques glitch d'affichage, il faudrait qu'on regarde ensemble. Le problème de la génération de requête vient de cette ligne : https://github.com/sparna-git/Sparnatural/blob/issue-148/src/QueryGenerators.js#L30 Comme ca prend tous les "siblings", mêmes les "lignes frères" au deuxième niveau viennent s'ajouter au premier niveau. Dans cette ligne de code on veut selectionner seulement les lignes du premier niveau de la requête, tu sais faire ?
Le jeu. 11 nov. 2021 à 22:32, antoine37120 @.***> a écrit :
@tfrancart https://github.com/tfrancart Vu comment cela est avancé, je pense que nous pouvons nous sentir confiant pour la semaine prochaine.
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/sparna-git/Sparnatural/issues/148#issuecomment-966640853, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAU2H4KMMG2LGDPSANLSHKTULQZAHANCNFSM4LEI6S4A . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
--
Thomas Francart - SPARNA Web de données | Architecture de l'information | Accès aux connaissances blog : blog.sparna.fr, site : sparna.fr, linkedin : fr.linkedin.com/in/thomasfrancart tel : +33 (0)6.71.11.25.97, skype : francartthomas
@tfrancart Tous les points ont été repris, tu peux inspecter.
Ca c'est efficace !
Petit souci d'affichage sur la croix de suppression :
On met un critère enfant négatif, la flèche du parent se grise. on supprime le critère enfant, la flèche du parent devrait redevenir verte - mais elle reste grise.
Ajouter le rechargement des queries avec optional/négatif
Voir le display flex sur option/négatif et sur le bloc des valeurs
@tfrancart L'issue fixée pour prendre en compte la config si les options sont activées ou non. Des corrections ont été réalisées pour faire suite à la séparation des fonctions dans plusieurs fichier. En réalisant les corrections, j'ai pu voir qu'il fallait aussi prendre en compte si il y avait de options dans les menus des enfants et parents du critère contenant l'option activée ou désactivée avant de réactiver ou non les menu des options. Un css a été ajouté pour attribué le curseur de souris par défaut si les menu des options sont désactivés.
merci @antoine37120 il faudrait aussi laisser le curseur de la souris par défaut sur le gris clair, avant d'avoir fini de saisir tout le critère.
Après ça je merge.
@tfrancart fix envoyé
Done in release V6
This is an option to the "AND" operator, to give the ability to say "AND OPTIONNALY"... See mockup :