In order to fetch profiles using IRIs, and refer to existing profiles using IRIs, including those defined at http://www.w3.org/ns/owl-profile/ the OWLProfile interface needs to be extended with a new getIRI() method, and then those profiles that are available need to be registered in a registry.
I implemented this on my fork, and the attached diff, which relies on AbstractServiceLoader from my other patches, makes it possible to refer to profiles, and add new profiles dynamically.
In addition, each of the IRIs from http://www.w3.org/ns/owl-profile/ are now constants in the OWLProfile interface so the OWLProfile and OWLProfileRegistry classes are all that is needed to refer to existing profiles. Other profiles can be added by users as necessary without adding their IRIs to OWLProfile, as long as they either register themselves with OWLProfileRegistry or provide a META-INF/services/org.semanticweb.owlapi.profiles.OWLProfile entry
OWLProfileRegistry.diff