refactor SchemaService and allow Bidirectional map checking