(** Message output formatters. This module provides various output formats for validation messages, including text, JSON, and GNU-style formats for IDE integration. *) (** {1 Formatters} *) (** Format messages as human-readable text. Output format: [file:line:col: severity: message] @param system_id Optional default system identifier for messages without location. *) val format_text : ?system_id:string -> Message.t list -> string (** Format messages as JSON. Produces output compatible with the Nu HTML Validator JSON format. @param system_id Optional default system identifier for messages without location. *) val format_json : ?system_id:string -> Message.t list -> string (** Format messages in GNU style for IDE integration. Output format follows GNU conventions for error messages, compatible with most IDEs and editors. @param system_id Optional default system identifier for messages without location. *) val format_gnu : ?system_id:string -> Message.t list -> string