A solider wearing a hat is getting his picture taken.
A soldier gets his picture taken for the newspaper.
Just because the solder is getting his picture taken does not necessarily mean it is for the newspaper.
exists e3 e1 e2 x1 x2 x3 x4 x5.(Theme(e3,x4) & Actor(e3,x1) & v_get(e3) & Theme(e2,x5) & v_take(e2) & (x4 = x5) & n_picture(x4) & of(x4,x1) & n_male(x1) & Theme(e1,x3) & Actor(e1,x2) & v_wear(e1) & n_hat(x3) & (x1 = x2) & n_solider(x1))
exists e1 e2 x1 x2 x3 x4.(n_newspaper(x4) & Theme(e2,x2) & Actor(e2,x1) & v_get(e2) & for(e1,x4) & Theme(e1,x3) & v_take(e1) & (x2 = x3) & n_picture(x2) & of(x2,x1) & n_male(x1) & n_soldier(x1))