El framework se enfoca en la publicación pasada en XML y XSLT, habiendo sido construido en el lenguaje de programación Java.
Cada petición se somete a los matchers definidos en el sitemap hasta encontrar una correspondencia.
Un tipo específico de generador es una XML Server Page (XSP [1]), es decir, un documento XML que contiene directivas basadas en tags que especifican como generar contenido dinámico al momento de la petición.
Los tags se definen por medio de plantillas XSLT que describen como estos tags (representados como nodos XML) se transformarán en otros nodos XML o en código procedimental, como por ejemplo en código Java.
Pero también existen transformadores que reciben otros tipos de datos (por ejemplo, comandos SQL).
Una pipeline se emplea para especificar como deberán interactuar las diferentes componentes de Cocoon con una petición dada para producir una respuesta a la salida.
Una segmentación típica consiste en un generador, seguido por cero o más transformadores y finalmente un serializador.