Bonjour à tous,
j'ai à nouveau besoin de l'aide de la communauté developpez.com pour résoudre un petit problème:
j'ai un enssemble de faits de le forme:
et enfin la règle suivante:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 profile(user1,profil1). profile(user1,profil2). profile(user3,profil3). scopeProfile(profil1,'nothing','equals','0','editable'). scopeProfile(profil2,'aaaa','equals','0','editable').
qd j'appel scopep avec un utilisateur n'ayant qu'un seul profil, prolog me retourne correctement la liste de ses "scopes", donc tout va bien
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 scopep(UserId) :- profil(UserId,A), findall([X,Y,Z,R],scopeProfile(A,X,Y,Z,R),List), maplist(writeln,List).
qd j'appel scopep avec un utilisateur ayant plus d'un profil, alors prolog me retourne la liste de ses "scopes" pour le premier de ses profils et attend.
Pour réseoudre cela, je suppose qu'il faut imbriquer deux findall, mais je n'ai pas trouvé d'exemple ni réussi malgrès de nombreux essais.
je suis prenneur de toute suggestion,
d'avance merci à tous,
cdt,
jfv.work
Partager