Tus comparaciones estan mal amigo;
por que estas utilizando comparadores que se utilizan en numeros, cuando el valor que traes es un String.
Este valor: "1"
es muy diferente a este valor: 1
Sin mencionar que los valores no se aplican a algo legible, como recomendation utiliza:
1 - para "SI"
0 - para "NO"
"" (null) - para "Sin definir"
2 - para "indiferente"
Eso te ayudara en la arquitectura, en fin suerte con verificar bien los elementos amigo