Given a rank $n$vector bundle $\alpha :E \to M$, and an element $u \in H^k(BG, \mathbb{Z})$, $G=GL(n,\mathbb{R})$we can define its characteristic class $u(\alpha) \in H^k(M, \mathbb{Z})$ as $f_\alpha^* u$ where $f_{\alpha}$ is any classifying map. I am interested in knowing :
(i) What elements $ x\in H^k(M, \mathbb{Z})$ arise as characteristic classes of some bundle, and some choice of $u \in H^k(BG, \mathbb{Z})$ ? i.e. What are the necessary and sufficient conditions to be satisfied by $x$ ?
(ii) given an $x \in H^k(M, \mathbb{Z})$ which is the characteristic class of some bundle, is there a known way to construct the bundle ?
The corresponding questions for vector bundles with connection are
(iii) Given a differential character $ \chi \in \hat{H}(2k)(M)$, what are the conditions to be satisfied by $\chi$ so that it is the differential characters of some bundle $E \to M$ with connection $\theta$ for some choice of the compatible pair $(P,u) \in I_{0}^{k}(G) \times H^{2k}(BG,\mathbb{Z})$ ?
(iv) How does one construct the bundle and the connection, given the data ?
Of course the questions are related to each other. If the characteristic class of a character is not obtainable as the characteristic class of a bundle, clearly the character does not arise from a bundle with connection.
If the answers are not known in full generality, I would still like to know some special cases for which the questions can be answered. One such special case that I know is of course the complex line bundles and their chern classes.
And I would greatly appreciate any references where I may find any clues/answers.
Thanks a lot !