NHibernate consente la definizione di proprietà "calcolate", ovvero proprietà che non saranno considerate nella fase di persistenza e che saranno valorizzate in fase di caricamento dell'entità da database (e solo in questa fase!).
Per fare tutto questo è sufficiente utilizzare l'attributo formula del tag . Di seguito sono mostrati due esempi:
<property name="Count" formula="(SELECT count(*) FROM Libri)" type="Int32">< span>property>
<property name="Costo" formula="Netto + SpeseSpedizione" type="Decimal">< span>property>
Nel caso si utilizzino delle subselect è necessario racchiudere lo statement SQL tra parantesi, altrimenti verrà generato un errore in fase di caricamento dell'entità. Altra cosa da sottolineare è che queste proprietà vengono valorizzate solo in fase di caricamento e quindi non sono soggette alle eventuali modifiche effettuate sulle altre proprietà o sul database.