I'm not sure I fully understand all the inners of DataObject yet, but I'm surprised to see that executing DataObject::get() with a filter that returns no record returns nothing, rather than an empty DataObjectSet. Is this normal?
// assuming that the database contains no record which Date > CURDATE()
$news_articles = DataObject::get("NewsArticle", "Date > CURDATE()");
return $news_articles; // This returns NULL.
Thanks for your help!