Enriching API descriptions by adding API profiles through semantic annotation