semihaptene