A BIM-based framework for automated building code extraction and compliance checking | Synapse