  We present a model based on a dipole picture with a hard and a soft pomeron
in which large dipoles couple to the soft pomeron and small dipoles couple to
the hard pomeron. The parameters in the model are fixed by proton-proton
scattering and the proton structure function. The model is then applied
successfully to the proton charm structure function, the proton longitudinal
structure function, J/psi photoproduction, deep virtual Compton scattering, the
real photon-proton total cross section, the real photon-photon cross section,
and the photon structure function. Differences between our predictions and data
on charm production in real photon-photon interactions and the virtual
gamma-gamma cross section are discussed.
