Since it is hard to construct a set of predefined names by hand, usually some corpus based approaches are used for building such taggers.
as Zipf's law indicates, most of the names which occupy a large portion of vocabulary are rarely used.