@startuml mapping-Practitioner-PractitionerRole left to right direction scale 1000 width legend top left <&layers> : slice <&plus> : extension endlegend map "metadonnes : meta" as meta #back:WhiteSmoke;header:LightGrey { lastUpdated => dateMiseJour <&layers> tag[codeRegion] => regionSource } map "Professionnelle.boiteLettreMSS.adresseMSS : telecom \n + SituationOperationelle.telecommunication" as telecom #back:WhiteSmoke;header:LightGray { adresseTelecom => value canal => RORTelecomCommunicationChannel utilisation => RORTelecomUsage niveauConfidentialite => RORTelecomConfidentialityLevel } map "<&plus> RORPractitionerroleName" as RORPractitionerroleName #back:MintCream;header:LightSeaGreen { nomExercice => exerciseLastName prenomExercice => exerciseFirstName civiliteExercice => exerciseTitle } map "horaire : <&plus> RORAvailableTimeEffectiveOpeningClosingDate" as RORAvailableTimeEffectiveOpeningClosingDate #back:WhiteSmoke;header:LightGray { debutDateEffective => value[x].start finDateEffective => value[x].end } map "horaire : availableTime" as availableTime #back:MintCream;header:LightSeaGreen { heureDebut => availableStartTime heureFin => availableStartTime typePlageHoraire => <&plus> RORAvailableTimeTypeOfTime jourSemaine => <&plus> RORAvailableTimeNumberDaysofWeek <&plus> RORAvailableTimeEffectiveOpeningClosingDate *-> RORAvailableTimeEffectiveOpeningClosingDate } map "**Practitioner : Professionnel**" as P #back:TECHNOLOGY;header:LimeGreen { metadonnee => meta metadonnee.identifiant => id metadonnee.dateCreation => <&plus> RORMetaCreationDate idNat_PS => identifier PersonnePhysique.civilite => name.prefix boiteLettreMSS => telecom } map "**PractitionerRole : ExerciceProfessionnel**" as EP #back:MintCream;header:LightSeaGreen { metadonnee => meta metadonnee.identifiant => id metadonnee.commentaire => <&plus> RORMetaComment metadonnee.dateCreation => <&plus> RORMetaCreationDate profession => code competenceSpecifique => specialty[specificCompetence] SavoirFaire.typeSavoirFaire => specialty[expertiseType] SavoirFaire.specialite => specialty[specialty] SavoirFaire.competence => specialty[competence] SavoirFaire.competenceExclusive => specialty[exclusiveCompetence] SavoirFaire.orientationParticuliere => specialty[specificOrientation] SavoirFaire.capacite => specialty[expertiseCapacity] SavoirFaire.qualificationPAC => specialty[qualificationPAC] SavoirFaire.DESCNonQualifiant => specialty[nonQualifyingDESC] SavoirFaire.droitExerciceComplémentaire => specialty[supplementaryExerciseRight] <&plus> RORPractitionerroleName *--> RORPractitionerroleName } map "**PractitionerRole : SituationOperationnelle**" as SO #back:MintCream;header:LightSeaGreen { metadonnee => meta metadonnee.identifiant => id metadonnee.commentaire => <&plus> RORMetaComment metadonnee.dateCreation => <&plus> RORMetaCreationDate identifiantSituationOperationnelle => identifier secteurConventionnement => <&plus> contracted optionContratAccèsAuxSoins => <&plus> optionCAS carteVitaleAcceptee => <&plus> vitalAccepted optionContratAccèsAuxSoins => <&plus> RORPractitionerroleUnitExerciseMode horaire => availableTime telecommunication => telecom } P::metadonnee --> meta EP::metadonnee --> meta SO::metadonnee --> meta telecom <-- P::boiteLettreMSS telecom <-- SO::telecommunication availableTime <-- SO::horaire object "**HealthcareService**" as HS #LightSkyBlue { OffreOperationnelle } EP --> HS SO --> HS @enduml