Do we not need the build and parse functions here for this to implement the interface?