What problem is it when I want to map these documents to these 3 different labels? I am completely new to machine learning, and that means I am new to the ML-related jargon too.
I have a problem at hand where there about a 1000 documents (on an average 500 words each) which need to be mapped to 3 different classes.
Each class is defined based on some real-life concept like Cancer, Drug, children. These concepts are backed by certain taxonomy/controlled vocabulary. For example, MeSH terms for Cancer/Neoplasm. 
What problem is it when I want to map these documents to these 3 different labels? Only when a document is mapped to all the labels, then a document is considered a positive match. Should I use pattern matching for it or Machine learning?
 A: To me your problems fits just fine as a multi-label classification.
I am not sure there exists an approach that would seek whether a text belongs to more than one category simultaneously. Nonetheless, I also see no problem for you to take a more heuristic method involving consolidated text classification algorithms.
For example, imagine you train a model to classify documents into three labels $A$, $B$ and $C$.
Now, you input a new, unseen document to to this model. Any of the mainstream libraries will output the likelihood of this document belonging to each of the labels (individually, of course). For example:
+--------------+-----+-----+-----+
|     DOC      |  A  |  B  |  C  |
+--------------+-----+-----+-----+
| new_document | 80% | 69% | 51% |
+--------------+-----+-----+-----+

All you have to do now is establish a threshold for which you'll consider that the document belongs to all three labels simultaneously. In the example above, if the threshold is 50%, then you consider it a match.
