An implementation MUST support application-provided entity
providers and MUST use those in preference
to its own pre-packaged providers when either could handle the
same request. More precisely, step
4 in Section 4.2.1 and step 5 in Section 4.2.2 MUST prefer
application-provided over pre-packaged entity
providers.
Which i s the base of what I mentioned - there is one issue
though - this is only about entity providers, not about
ExceptionMappers, which are covered by chapter 4.3.
Thanks a lot for pointing me to section 4.2.4. But as you already wrote the current version of this statement just covers entity providers.
I believe we could include more general statement in chapter 4,
which would say that application provided Providers have priority
over build-ins (and maybe define what build-in is) OR we can say
that implementation providers should have some concrete priority
set - which could be simpler than formally defining built-in
provider.
I would be fine with both options as both would fix the problem I mentioned. Although I think the latter one would should be preferred because it is much simpler.