added interfaces for IdentifierNode