A semi-automated compliance checking framework for shield tunnel design integrating ontology and natural language processing