perhaps store everything as a std::map<string, string> and then in the relevant code that needs a different data type we do the conversion there.
This would allow us to extend what exists in the XML without having to update the node executable and issue a new release. First support would be for operation deadlines and timer periods.
Since the user can override in the deployment the Period, Deadline, Priority properties of ports, which will get propagated to the XML, the xmlParser, needs to read them in and store them.