This is the model of a comment block. this is the result of parsing of a comment block. (see the module which parses it : ldparser.lua, the code is based on lua and metalua)

 commentblock
 .string shortdescription
 .string description
 .map(tagname -> list(tag)) tags
 .map(tagname -> list(tag)) unknowntags

 tag= module | type | function | return | field | param

 module
 .string tag='file'
 .string name

 type
 .string tag='type'
 .string name

 function
 .string tag='function'
 .string parent = typename or #global
 .string name

 return
 .string tag='return'
 .list(typeref) types
 .string description

 field
 .string tag='field'
 .string name
 .string parent = typename or #global
 .string description
 .typeref type

 param
 .string tag='param'
 .string name
 .string description
 .typeref type

 typeref
 .module
 .type