DSL for create text protocols