It is unlikely that Mary dropped the milk. There is a very good chance that Emily is a sheep. There is a better than even chance that John went to the bedroom. It is almost certain that if 'Emily is a sheep' or 'John went to the bedroom' or both then Julius is yellow. It is improbable that if 'Emily is a sheep' or 'Mary dropped the milk' or both then Bernhard is a frog. It is probable that if either 'Mary dropped the milk' or 'John went to the bedroom' but not both then Brian is white.
It is highly unlikely that either 'Julius is yellow' or 'Mary dropped the milk' but not both.
It is probable that either 'Julius is yellow' or 'Mary dropped the milk' but not both.
It is highly unlikely that either 'Julius is yellow' or 'Mary dropped the milk' 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.8::factB.
  0.6::factC.
  %hop1
  0.95::factX:-or(factB,factC).
  0.1::factY:-or(factB,factA).
  0.7::factZ:-xor(factA,factC).

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

  query(conclusion).
  
Either 'Julius is yellow' or 'Mary dropped the milk' but not both.