The important thing to have in mind is, observable is not a stream. It just a blueprint of the stream. It describes a set of streams, also how they are connected with operations. In another glance, a new primitive type defines how to create streams, how to subscribe to them, how to react to new values, and how to combine streams to create new streams.