sig
  type key
  type data
  val name : string
  val basename : WpContext.IData.key -> string
  val compile : WpContext.IData.key -> string -> WpContext.IData.data
end