Believe it or not this is called a 'dickey'... effectively a fake shirt front. They tend to be worn under a jumper or jacket to give the illusion of wearing a blouse. Personally I think they're far too interesting to hide away and should be worn layered over another shirt to add interest,
Fits all sizes :-)
Unsure of the fabric but the front feels like polyester and the lining cotton.
This is vintage and has a few age marks on the backing/ lining fabric. Plus the hem has been hand stitched. I love these sorts of eccentricities of vintage garments but you may not, so mentioning them here.