@startuml !include design.plantuml.txt title 2.2 EPR_HPGetDocuments (2 of 3)\ndocuments within other communities from patient who has his reference community in another community actor hp as "Health Professional" box "Health Professional Portal" #DCBEC7 participant ps_gui as "Health Professional Portal" participant ps_x_service_user as "X-Service User" participant ps_pix_x_ref_consumer as "Patient Identifier \nCross-reference \nConsumer" participant ps_doc_consumer as "Document Consumer\n| X-Service User" end box box "IdP" #DFF3F7 participant idp_user_authentication_provider as "User \nAuthentication \nProvider" end box box "Community Components" #FFEFDE participant cc_x_assertion_provider as "X-Assertion Provider" participant cc_doc_registry as "Document Registry | X-Service Provider\nAuthorization Decision Consumer | X-Service User" participant cc_mpi_x_ref_manager as "Patient Identifier \nCross-reference \nManger" participant cc_adp as "Authorization Decision Provider\n| X-Service Provider" participant cc_pix_x_ref_consumer as "Patient Identifier \nCross-reference \nConsumer" participant cc_doc_consumer as "Document Consumer" participant cc_hpd_provider_info_consumer as "Provider \nInformation \nConsumer" participant cc_hpd_provider_info_directory as "Provider \nInformation \nDirectory" participant cc_ig as "Initiating Gateway\n| X-Service User" participant cc_rg as "Responding Gateway\n| X-Service Provider" end box box "Secondary Systems" #F7A69E participant ss_doc_repository as "Document Repository | X-Service Provider\nPolicy Enforcement Point" end box box "Other Communities" #91D2E8 participant xc_rg as "Responding Gateway\n| X-Service Provider" participant xc_ig as "Initiating Gateway\n| X-Service User" end box box "Other (reference) Community" #91D2E8 participant xc_adp as "Authorization Decision Provider\n| X-Service Provider" end box == documents within other communities from patient who has \nhis reference community in another community == hp -[#black]> ps_gui activate ps_gui !include_many step_ps_gui_saml.plantuml.txt !include step_ps_pix.plantuml.txt !include_many step_ps_xua.plantuml.txt !include_many step_ps_xds_reg_2of3.plantuml.txt hp <[#black]- ps_gui deactivate ps_gui == Request from external community == xc_ig -> cc_rg: [ITI-55] Cross Patient Discovery Request [EPR-SPID] activate xc_ig note left: handling of audit record repository retrieval is missing activate cc_rg cc_rg -[#black]> cc_pix_x_ref_consumer: query MPI_B-PID from MPI using EPR-SPID in portal activate cc_pix_x_ref_consumer cc_pix_x_ref_consumer -> cc_mpi_x_ref_manager: ITI-45 PIX V3 Query [EPR-SPID] activate cc_mpi_x_ref_manager cc_pix_x_ref_consumer <- cc_mpi_x_ref_manager: ITI-45 PIX V3 Response [MPI_B-PID] deactivate cc_mpi_x_ref_manager cc_rg <[#black]- cc_pix_x_ref_consumer deactivate cc_pix_x_ref_consumer xc_ig <- cc_rg: [ITI-55] Cross Patient Discovery Response [MPI_B-PID, homeCommunityId] deactivate cc_rg deactivate xc_ig xc_ig -> cc_rg: [ITI-38] Cross Gateway Query [MPI_B-PID, homeCommunityId]\ngrouped with [ITI-40] Provide X-User Assertion [EPR-SPID] activate xc_ig activate cc_rg cc_rg -[#black]> cc_doc_consumer: retrieve document entries activate cc_doc_consumer cc_doc_consumer -> cc_doc_registry: [ITI-18] Registry Stored Query [MPI_A-PID]\ngrouped with [ITI-40] Provide X-User Assertion [EPR-SPID] activate cc_doc_registry alt this is reference community of patient cc_doc_registry -> cc_adp: ADR Authorization Decision Request\ngrouped with [ITI-40] Provide X-User Assertion [EPR-SPID] activate cc_adp cc_doc_registry <- cc_adp: ADR Authorization Decision Response deactivate cc_adp else look for reference community of patient loop policy enforcing from remote community cc_doc_registry -> xc_adp: XADR Cross-Community Authorization Decision Request\ngrouped with with [ITI-40] Provide X-User Assertion [EPR-SPID] activate xc_adp cc_doc_registry <- xc_adp: XADR Cross-Community Authorization Decision Response deactivate xc_adp end end cc_doc_consumer <- cc_doc_registry: [ITI-18] Registry Stored Query Response deactivate cc_doc_registry cc_rg <[#black]- cc_doc_consumer deactivate cc_doc_consumer xc_ig <- cc_rg: [ITI-38] Cross Gateway Response deactivate cc_rg deactivate xc_ig xc_ig -> cc_rg: [ITI-39] Cross Gateway Retrieve [homeCommunityId]\ngrouped with [ITI-40] Provide X-User Assertion [EPR-SPID] activate xc_ig activate cc_rg cc_rg -[#black]> cc_doc_consumer: retrieve document entries activate cc_doc_consumer cc_doc_consumer -> ss_doc_repository: [ITI-43] Retrieve Document Set\ngrouped with [ITI-40] Provide X-User Assertion [EPR-SPID] activate ss_doc_repository note right ss_doc_repository: [CH:ADR] Perform Enforcement of\nXDS Retrieve Document Set transactions (3.1.12) cc_doc_consumer <- ss_doc_repository: [ITI-43] Retrieve Document Set Response deactivate ss_doc_repository cc_rg <[#black]- cc_doc_consumer deactivate cc_doc_consumer xc_ig <- cc_rg: [ITI-39] Cross Gateway Retrieve Response deactivate cc_rg deactivate xc_ig @enduml