DataSift is designed to be a flexible data platform with many diverse use cases, so we distinguish between Tweets (twitter.*) and retweets (twitter.retweet.*). A single Tweet can have upwards of 1,000 retweets (some have 10K or even 100K retweets), so it is important to have the distinction.
It is necessary to create a filter for twitter.* targets and a filter for twitter.retweet.* targets if both tweets and retweets are to be filtered, and the Twitter data source is targeted explicitly.
The alternative, more cost effective approach to filter both tweets and retweets is to take advantage of the common interaction targets.
For example, to filter for all Tweets and retweets of Starbucks or coffee, simply write:
interaction.content contains_any "starbucks, coffee" AND
interaction.type IN "twitter"