Для будущей ссылки я заработал, добавив фильтр в файл сопоставления
Сначала определите фильтр в отображении родительского класса:
<filter-def name="userFilter">
<filter-param name="userId" type="System.Int32"/>
</filter-def>
Затем определите фильтр далее в сопоставлении с коллекцией
<bag name="UserPublications" access="property" lazy="true" cascade="all-delete-orphan">
<key column="ClientPublicationID"/>
<one-to-many class="ReportMgr.Model.ClientUserPublication, ReportMgr.Model" />
<filter name="userFilter" condition="ClientUserID = :userId"></filter>
</bag>
Затем включите фильтр и укажите значение параметра непосредственно перед выполнением запроса ICriteria:
NHibernateSession.EnableFilter("userFilter").SetParameter("userId", userId);
ICriteria criteria = NHibernateSession.CreateCriteria(typeof(ClientReport))
.CreateCriteria("ClientPublications")
blah blah blah
return GetByCriteria(criteria);