pdoResources каждый раз возвращает новый результат.
я бы сказал, что при прочих равных скорее и чаще он возвращает именно один и тот же результат, потому и может быть кешированным. Ну или крайне желательно по известной причине - экономии ресурса.
Или другой пример из коллекции pdoTools - pdoMenu. Меню может быть сложным(например, а-ля megamenu), но меняться крайне редко(сделали раз структуру сайта и пользуетесь), поэтому очевидно иметь его кешированным крайне выгодно. Если же что-то в структуре(или самих ресурсах) поменяется, MODX сам перекеширует вызов.
Или еще пример pdoSitemap - карта сайта если и меняется, то не часто, а также может требовать значительных ресурсов для генерации, посему вызов здесь нужен кешированный, но если что-то изменится в структуре, ядро позаботится об этом.
Кешированные же нужны там, где каждый раз новые данные - ajax запросы/ответы, постраничный вывод, либо же несколько похожих вызовов на странице или такая вложенность вызова, что из-за внутреннего некешированного внешний тоже не будет кешироваться...и в итоге оба некешированные....отсюда AjaxForm, pdoPage и т.д.
Если ваш сниппет будет каждый раз выдавать что-то новое, не кешируйте его, иначе кешируйте. Принцип в целом такой, как я написал выше, но иногда бывают нюансы..например, когда хотелось бы закешировать, но нельзя. Или можно, но нужно писать свой механизм кеширования.
Это был ваш капитан))