Is your map expendable ? I mean are the columns fixed or u can increase the key value pair anytime.If its fixed then get rid off the map and move all properties in A and create a hbm for A.
If your legacy code usage the map and u can not avoid that then create the mapping of A with only a map.
Code:
<map name="properties">
<key column="id"/>
<index column="property_name" type="string"/>
<element column="property_value" type="string"/>
</map>
I am sorry if you have a dynamic map and you want to create a table with every save.
Thanks
-Vishal