In some embodiments, a method is provided for processing data streams in accordance with protocols so as to selectively cache and transmit data to destination addresses. One or more data streams are received. Each data stream of the one or more data streams had been transmitted by a source and including a plurality of data elements. For a data stream of the one or more data streams: a detection is made that a report protocol that applies to the data stream based on the source of the data stream; and the data stream is assigned to one or more processing nodes based on the report protocol. For each of the plurality of data elements in the data stream: it is determined, during streaming of the data stream, whether the data element includes a particular composite as specified in the report protocol. When it is determined that the data element includes the particular composite, it is determined, during streaming of the data stream, whether the data element includes a value associated with the particular composite that is consistent with one or more values specified in the report protocol. When it determined that the data element includes a value associated with the particular composite that is consistent with the one or more values, information associated with the data element is cached. One or more reporting triggers that are specified in the report protocol are detected. The information that is associated with data element is retrieved from the cache and for each of the plurality of data elements for which it was determined that the data element includes a value associated with the particular composite that is consistent with the one or more values. A destination address indicated in the report protocol is identified. The retrieved information is transmitted to the destination address.