Don't know if those broken rules would be rejected by your code though (e.g. using IIII instead of IV, or having DCCCC instead of CM for 90 may well be accepted)...
Well, I have decided to accept DCCCC as 900, and IIII as 4, since this is more frequently seen.
Most important rule (and AFAIK followed by most "implementations") is the order of groups, and the subtraction rule (only one).
So M cannot follow after e.g. L, and X cannot follow I (except IX, and this then
must end the string).
Never mind though, only pedants would be mad enough to try this. Does this say anything about me
To try what: implementing some RomanToNumber function (the author of StrUtils.RomanToInt would be very glad to hear this), or my library as a total.
Depending on the answer to that question, the answer to the your question may be either yes or no (not necessarily in that order though)
Bart