implement TagParser