Immaginiamo di avere una collection di oggetti mappati con un bag in NHibernate e di volerli ottenere già filtrati dal database per una particolare condizione. Sembrerebbe un lavoro da where ed infatti non a caso sfogliando tra gli attributi dell'elemento bag troviamo proprio l'attributo where, ma vediamo in un esempio come utilizzarlo:
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2">
<class name="Category" table="Categories">
...
<bag name="Children" lazy="true" where="IsActive='true'">
<key foreign-key="FK_Categories_Categories">
<column name="ParentCategoryID" length="4" />
</key>
<one-to-many class="Category" not-found="ignore" />
</bag>
</class>
</hibernate-mapping>