Probeer iets als:
where (X.Name <> 'xxx' or X.Name is null)
and (XY.Product <> 1 or XY.Product is null)
Aangezien, per definitie NULL is een onbekende waarde (beetje vereenvoudigd maar OK voor deze uitleg), het zal niet gelijk zijn aan of niet gelijk zijn aan een bepaalde waarde - daarom is de IS NULL is hier vereist.