The documentation for the html package has some errors and typographical errors.
The synopsis lists the procedures in not quite alphabetical order. The init procedure appears between refresh and row.
The explanation for ::html::cell uses upper case tags whereas lower case tags are really used.
The explanation for ::html::openTag lists the arguments as "tags args" when the code uses "tags param". Using multiple args (implied by args) will fail.
::html::row should say that it does NOT used defaults for the td tag as defined in the ::html::init call.
Examples would be very instructive.