Основываясь на быстром взгляде на атрибут Hibernate @embeddable, он в основном является компонентом, который можно повторно использовать в нескольких местах. NHibernate не поддерживает это из коробки, но вы можете сделать это, используя Fluent NHibernate's ComponentMap :
Component(x => x.Address, m =>
{
m.Map(x => x.Number);
m.Map(x => x.Street);
m.Map(x => x.PostCode);
});
Похоже, что ComponentMap не имеет такой большой гибкости для переопределения определений столбцов, хотя вы можете добавить префиксы столбцов, чтобы разрешить дублирование компонентов в одной сущности. (например, ComponentMap с HomeAddress и WorkAddress для человека.)