refactored getSemanticProperties() of OptimizerNode and added more tests