Let S be an operator system -- a self-adjoint linear subspace of a unital C*-algebra A
such that contains 1 and A=C*(S) is generated by S. A boundary representation for S
is an irreducible representation \pi of C*(S) on a Hilbert space
with the property that $\pi\restriction_S$ has a unique completely positive extension
to C*(S). The set $\partial_S$ of all (unitary equivalence classes of) boundary
representations is the noncommutative counterpart of the Choquet boundary of a
function system $S\subseteq C(X)$ that separates points of X.
It is known that the closure of the Choquet boundary of a function system S is
the Silov boundary of X relative to S. The corresponding noncommutative problem
of whether every operator system has ``sufficiently many" boundary representations
was formulated in 1969, but has remained unsolved despite progress on related issues.
In particular, it was unknown if $\partial_S$ is nonempty for generic S. In this
paper we show that every separable operator system has sufficiently many boundary
representations. Our methods use separability in an essential way.