All parts (except of supports) can be substituted with other compatible parts form the pipe class. But supports also should be substitutable.

Usually the support concept (which support should be a pipe anchor or a pipe guide / pipe slide and so on.) is fixed when the pipe routing is finished respectively when the pipe stress calculation is finished (for hot pipes, steam pipes and so on). Even changes of the pipe routing could cause modifications on already placed supports. If for example a pipe anchor should be substituted with a pipe guide the pipe anchor must be deleted and a new pipe guide support must be inserted and positioned at the same place.
By making the supports substitutable the workflow would be simplified and shortened considerably.