We doubt that John picked up the apple. It is almost certain that Mary dropped the milk. We believe that Bernhard is white. There is little chance that if either 'Mary dropped the milk' or 'Bernhard is white' but not both then Lily is a rhino. It is highly likely that if 'John picked up the apple and Bernhard is white' then Brian is a swan. There is a better than even chance that if either 'Mary dropped the milk' or 'Bernhard is white' but not both then Julius is gray.
There is almost no chance that either 'John picked up the apple' or 'Bernhard is white' but not both.
It is likely that either 'John picked up the apple' or 'Bernhard is white' but not both.
There is almost no chance that either 'John picked up the apple' or 'Bernhard is white' but not both.

  and(A,B) :- A,B.
  or(A,B) :- A;B.
  nand(A,B) :- not(and(A,B)).
  nor(A,B) :- not(or(A,B)).
  xor(A,B) :- or(A,B), nand(A,B).

  %hop0
  0.2::factA.
  0.95::factB.
  0.75::factC.
  %hop1
  0.1::factX:-xor(factB,factC).
  0.9::factY:-and(factA,factC).
  0.6::factZ:-xor(factB,factC).

  %hop2
  conclusion:-xor(factA,factC).

  query(conclusion).
  
Either 'John picked up the apple' or 'Bernhard is white' but not both.