refactor to extract strings as constants.
adds xml resolution. Needs refactor.