Using the role attribute for profiling

It generally is not a good idea to use role as your profiling attribute. That's because role can be used for other purposes in a document, with other key words to express those purposes. If you use role for profiling, and if you do not add those other key words in your selection parameter, then you may exclude text unintentionally.

As an example, you might use role="strong" in an emphasis element that is to be rendered in boldface in print. You might also use role="linux" to mark conditional text, and then process the file with the parameter profile.role="linux" to select that text. But remember that every instance of the profiling attribute is examined, so every <emphasis role="strong"> element will simply disappear from your profiled output because strong does not match linux.

If you insist on using role as your profiling attribute, then you can compensate by using multiple keywords in the parameter, separated by semicolons. You need to include all other possible values of role that are not to be treated as conditional text. In this simple case, you would set the parameter to profile.role="linux;strong".