modifies base adapter to use functions rather than format strings and json paths