For the actual residence, use 'Place' as the schema markup to denote address etc.
For anything transactional, refer to the
<div itemscope itemtype="http://schema.org/Place">
<div itemprop="potentialAction" itemscope itemtype="http://schema.org/TradeAction"> <!-- change 'TradeAction' to 'RentAction' or 'Buy Action' if applicable-->
<meta itemprop="name" content="Name of Transaction Type" />
<!-- If you list multiple action, here is where you'll declare them as new itemtype. -->
<span itemprop="price">$399</span> per <span itemprop="endTime" itemscope itemtype="DateTime"><! -- dataSetInterval or whatever would be best dateTime property --></span>
</div> <!-- end potentialAction -->
</div> <! -- end Place -->`
Depending on the context, your TradeAction could be set to
RentAction or whatever can be the case.
I just would like to point out scope within Microdata since that is where people get tripped up. Whenever you see expected type in the
Schema.org documentation, that is where you declare
Each type must have at the very least a
name property declared, and remember - expectedType can return a child of that type.
i.e. If expected Type is
Local Business, I can do
Pharmacy if it is more specific.