Let $M$ be a manifold and $S$ its sphere bundle with fiber $\mathbb{S}^n$. As we know, the notion of the Euler class is raised from the problem of finding a global form on $S$ which restricts on each fiber to a generator of $H_{\textrm{dR}}^n(\mathbb{S}^n)$. One overcomes two obstructions, namely the orientability of the sphere bundle and the Euler class $e(S)$ to find such a form. Now let $N$ and $M$ be two manifolds and $f:N\rightarrow M$ be smooth, $E$ is a vector bundle over $M$. The following functorial property of $e(E)$ is well-known:
$e(f^\ast E)=f^\ast e(E)$
On the other hand, the splitting principle for cmplex vector bundles is wellwedely-known for its power on computing characteristic classes. In the real case, although the splitting principle does not hold in full generality, a weak version of this type of theorems can still be obtained: (cf. Lecture Notes in Mathematics, 638)
In fact, let $E$ be an even dimensional oriented real vector bundle over $M$. Then there exist a manifold $N$ and a map $g:N\rightarrow M$ satisfying the following two conditions:
(1) the homomorphism $g^\ast: H_{\textrm{dR}}^\ast(M)\rightarrow H_{\textrm{dR}}^\ast(N)$ is injective;
(2) $g^\ast(E)$ is a direct sum of plane bundles.
Therefore one may expect that the Euler class can be defined for an arbitrary vector bundle $E$ by first introducing the Euler class for plane bundles, then extending it to $E$ using the splitting principle stated above. In fact, suppose that $e(P_i)$ has been introduced for every plane bundle $P_i$, and $g^\ast(E)$ is a direct sum of $P_i$, then $e\big(g^\ast(E)\big)$ is well defined, therefore $e(E)$ may be defined by
$e\big(g^\ast(E)\big)=g^\ast e(E)$
However, one still needs to show the existence of $e(E)$ and its independence of the choices of $N$ and $g$. It doen’t seem easy.