Use utility functions to decompose data paths and resolve the RNA property from a data-path. Replaces in-line string manipulation and RNA access. This allows more complex data paths to be used, where previously string literals in a data path could break the simple data-path handling logic.