I made a bit of a pig's ear of explaining this as a feature enhancement the other day. I'll log this now as a bug but explain better (I hope) what I mean and provide a test case. I suspect this is not considered a bug in the strict sense as I think this is how it is coded to work. But the behaviour is a bit of a problem.
In the attached workspace there are queries about predicate nominatives, which I'll say now is not related to the problem but they just happened to be what I was playing with at the time. The tabs are :
Simple Nom Comp - a simple search for Noun Nominative Complements
Pred Nom Comp - a simple search for Noun nominative complements inside a predicate phrase (for the curious, originally intended to remove the prepositional complements from the first query)
Nom Comps - results from running Simple Nom Comp
Pred Nom Comps - results from running Pred Nom Comp
GNT Search NOT Search - the result of Nom Comp <NOT> Pred Nom Comp - ie. diff from the searches directly
GNT Tab NOT Tab - the result of [CONTENTS Nom Comps] <NOT> [CONTENTS Pred Nom Comps] ie. diff the verses
Ok so Nom Comps hits 782 verses and Pred Nom Comps 647. Yet GNT Search NOT Search only shows 15 hit verses. What you notice looking at it is that hit verses in Nom Comps which are not hits in Pred Nom Comps are also being removed by the NOT. This happens where both searches return hits in the same chapter even though Nom Comp query returns more verses in that chapter. This appears to be a consequence of the Chapter search scope.
On scope then, it appears that searches for syntax can run with verse scope only if there are no clause/phrase elements in the search. Thus Simple Nom Comp can run with verse scope whereas Pred Nom Comp cannot and must use chapter which is the smallest scope for which the search will run.
Returning to the searches then, by way of comparison, tab GNT Tab NOT Tab shows the different hit verses but of course there is no syntax search highlighting there anymore. I suspect in a simple case like this it could be added by adding Nom Comp to the search criteria as it can run at verse scope, and in fact it does. However, more complex cases would break here too, likely due to scope. Note this finds 137 hit verses which is actually two more than 782 - 647. This is just because Pred Nom Comp returns two verses not in Simple Nom Comp (Rom 9.29 and Rev 19.21). So it all reconciles properly in end.
So can, something be done to permit diffs like this to be done with syntax queries ? It would be nice not to have use 3 tabs to do this and be able to retain the syntax search highlights.