If a Client uses a Service, and an Authenticator controls the Service, a construction pattern adds a Client-usesForAuth-Authenticator link if none is present. This represents the Client-Authenticator relationship created when the Service redirects to the Authenticator.
In principle, it is possible for the Authenticator to be controlled by another Authenticator. In that case, one should get a second redirection from the first Authenticator to the second. However, the construction pattern does not detect this.
Looks like there is a typo - the pattern is iterative, so there is a prohibited Client-usesForAuth-Authenticator to ensure the pattern doesn't repeat indefinitely. However, the prohibited link is specified as Client-usesForAuth-Service, which obviously blocks recursive application.
If a Client uses a Service, and an Authenticator controls the Service, a construction pattern adds a Client-usesForAuth-Authenticator link if none is present. This represents the Client-Authenticator relationship created when the Service redirects to the Authenticator.
In principle, it is possible for the Authenticator to be controlled by another Authenticator. In that case, one should get a second redirection from the first Authenticator to the second. However, the construction pattern does not detect this.
Looks like there is a typo - the pattern is iterative, so there is a prohibited Client-usesForAuth-Authenticator to ensure the pattern doesn't repeat indefinitely. However, the prohibited link is specified as Client-usesForAuth-Service, which obviously blocks recursive application.