6.3.3 Hub-based choreography

The process of communicating through a hub has the steps set out below. It should be noted that the approach to the communication between licensee and a hub, and the communication between a licensor and the hub are virtually identical:

  1. Communication between a licensee and a hub:

    1. The licensee calls the hub’s web service endpoint with a POST ClaimRequest call requesting that the web service endpoint accept the MusicalWorkClaimRequestMessage(s) identified in the POST call;

    2. Until the licensee has received all the right share data for all of its right share claim requests, it regularly calls the hub's web service endpoint with a GET ClaimNotificationList call;

    3. The hub replies to the GET ClaimNotificationList call with an Atom feed providing URL(s) for all MusicalWorkClaimNotificationMessage(s) that are ready to be retrieved;

    4. The licensee regularly calls the hub's web service endpoint with a GET ClaimNotification call for each URL provided in Clause 6.3.3.1(1)(c) above; and

    5. The hub replies to the GET ClaimNotification call with the requested MusicalWorkClaimNotificationMessage(s);

  2. Communication between a licensor and a hub:

    1. The licensor regularly calls the hub's web service endpoint with a GET ClaimRequestList call;

    2. The hub replies to the GET ClaimRequestList call with an Atom feed providing URL(s) for all MusicalWorkClaimRequestMessage(s) created by the hub that are ready to be retrieved;

    3. The licensor calls the hub's web service endpoint with a GET ClaimRequest call for each URL provided in Clause 6.3.3.1(2)(b) above;

    4. The hub replies to the GET ClaimRequest call with the requested MusicalWorkClaimRequestMessage(s); and

    5. The licensor calls the hub’s web service endpoint with a POST ClaimNotification call requesting that the web service endpoint accept the MusicalWorkClaimNotificationMessage(s) identified in the POST call.