Jaa


Tietojen integroinnin työkalupaketin yhdistämismääritykset: esimerkkejä ja käyttötapauksia

Huomautus

FHIR:n synkronointiagentti on nyt uudelleenbrändätty tietojen integroinnin työkalupaketiksi.

Tietojen integroinnin työkalupaketti on laaja kokoelma oletusyhdistämismäärityksiä, jotka on muodostettu noudattamaan HL7 FHIR -määritystä.

Oletusarvoiset entiteettien yhdistämismääritykset ja määritteiden yhdistämismääritykset otetaan käyttöön Dataverse-tietueina, ja niitä voidaan määrittää monipuolisesti ratkaisun erilaisia tarpeita varten. Tässä artikkelissa on joitakin näiden yhdistämismääritysten käyttämiseen liitettyjä esimerkkejä.

Lisätietoja näiden yhdistämismääritysten määrittämisestä on kohdissa Entiteettien yhdistämismääritysten määrittäminen ja Määritteiden yhdistämismääritysten määrittäminen. Määrittämisen jälkeen Dataverse Healthcare API -ohjelmointirajapinnat, takaisinkirjoitusprosessi ja virtuaaliset terveystietotaulukot käyttävät näitä samoja yhdistämismäärityksiä.

Entiteetin yhdistämismääritysesimerkkejä

Tässä osassa luettelo entiteettien yhdistämismäärityksiä käyttävistä esimerkeistä

Esimerkki 1: potilaan kohtaaminen

Kun potilaan kohtaaminen lisätään potilaan EHR-tietoihin, entiteetin yhdistämismääritys sisältää muunnossäännöt, joilla Dataverse Healthcare API -ohjelmointirajapinnat muuntavat FHIR-tiedot Dataverse-tietueiksi.

  1. Entiteettikartta msemr_encounter ↔ Kohtaaminen yhdistää Azure FHIR -resurssin Kohtaaminen Dataverse-entiteettiin msemr_encounter.

    Näyttökuva, jossa näkyy entiteettikartta esimerkiksi potilaiden kohtaamista varten.

  2. Asiakkaan terveystietuejärjestelmän Kohtaaminen-resurssin tietojen muutokset käynnistävät uuden sanoman Dataverse Healthcare API -ohjelmointirajapintoihin. Jos esimerkiksi (Dataverse Healthcare API -ohjelmointirajapintojen) Azuren logiikkasovellus otetaan käyttöön Microsoft Cloud -ratkaisukeskuksen terveydenhoidon tietoputken mallin avulla, blob-tallennustilaan lähetetään uusi FHIR-paketti. Logiikkasovellus käsittelee sitten paketin ja lähettää sen Dataverseen Dataverse Healthcare API -ohjelmointirajapintojen kautta.

    Lisätietoja terveydenhoidon tietoputken mallista ja logiikkasovelluksen määrityksestä on kohdassa Dataverse healthcare API-ohjelmointirajapinnat: Azure Logic Appsin käyttöönotto terveydenhoidon tietoputken mallin avulla.

  3. Dataverse Healthcare API -ohjelmointirajapinnat käyttävät entiteetin yhdistämismääritystä msemr_encounter ↔ Kohtaaminen Liittyvien määritteiden tietokartat muuntavat saapuvat FHIR-resurssit edustajatietueisiinsa Dataversessa.

Esimerkki 2: potilaan päivitys Dataversessa ja takaisinkirjoitus

Tämä esimerkki koskee skenaariota, jossa potilastietue päivitetään Dataversessa ja tämä muutos halutaan kirjoittaa takaisin EMR-järjestelmään Azure Health -tietopalvelujen avulla.

  1. Tietojen integroinnin työkalupaketin entiteetin yhdistämismääritys contact ↔ Potilas liittää Azure FHIR -resurssin Potilas Dataverse-entiteettiin Yhteyshenkilö.

    Näyttökuva, jossa näkyy entiteettikartta esimerkiksi potilaiden päivitystä varten Dataversessa.

  2. Potilastietueen tietojen muutos Dataversessä käynnistää Dataversen takaisinkirjoituksen laajennuksen.

  3. Tämä Dataverse -laajennus lähettää muuttuneesta tietueesta viestin integrointiasetusten takaisinkirjoitusosassa määritetylle lähtevälle FHIR-päätepisteelle.

  4. Tässä esimerkissä FHIR-päätepiste on määritetty viesti suoraan Azure Health -tietopalveluihin.

  5. Lisäksi voidaan määrittää välityssovellus, kuten Azuren logiikkasovellus tai Azure-funktio, joka voi lähettää sanoman sekä EMR-palveluun että Azure Health -tietopalveluihin.

    Huomautus

    Suosittelemme, että synkronoit potilas-, lääkäri- ja hallitut kliiniset tiedot sekä viitatut kliiniset tiedot Microsoft Cloud for Healthcareen.

Lisätietoja takaisinkirjoituksen määrittämisestä on kohdassa Dataverse Healthcare API -ohjelmointirajapintojen takaisinkirjoituksen yleiskatsaus.

Määritteen yhdistämismääritysesimerkkejä

Tässä osassa on useita esimerkkejä mahdollisesti esiintyvien erilaisten määritteiden yhdistämismääritysten määrittämisestä.

Yksinkertaisen merkkijonon olemassa oleva kenttä

Seuraava esimerkki noutaisi potilaan sukunimen FHIR-järjestelmästä Dataverseen lähetettäväksi tai lastname-määritteen päivittämiseksi Dataversestä FHIR-järjestelmän family-elementtiin.

`{"s": "$.name[?(@.use=='usual')].family"}`

Tämä yhdistämismääritys olettaa, että name on aina olemassa ja että se voidaan paikantaa FHIR-resurssissa määritetyn JSONPath-polun kautta.

Olemassa oleva tai puuttuva kenttä

Seuraava esimerkki noutaisi tai päivittäisi address[0]-määritteen city-kentän, jos se on olemassa. Jos kyseessä oli päivitys Dataversestä eikä address[0]-elementtiä ollut olemassa FHIR-järjestelmässä, päivitys loisi address[0]-päämääritteen ja määrittäisi city-arvon Dataversestä. Se luo myös paikkamerkki- tai oletusarvot muille Dataversestä saaduille määritteille, jotka puuttuisivat FHIR-järjestelmästä.

{
    "s": "$.address[0].city",
    "c": {
           "p": "address[0]",
           "a": [
                  {
                    "line": ["x"]
                  },
                  {
                    "city": "%"
                  },
                  {
                    "state": "x"
                  },
                  {
                    "postalCode": "x"
                  },
                  {
                    "country": "x"
                  }
                ]
         }
}

Huomautus

Merkkijonoarvoille määritetty arvojoukko on määritetaulukossa määritetty literaalimerkkijono, ellei se ole jokin erikoismerkkijonoista. Nämä erikoismerkkijonot korvataan arvoilla seuraavalla tavalla:

  • % – Kopioi Dataverse-määritteen arvo.
  • %% – Kopioi FHIR-viiteresurssin tyyppi (esimerkiksi Potilas).
  • %%% – Kopioi FHIR-viiteresurssin tyyppi ja resurssitunnus (esimerkiksi Potilas/1234).

Potilaan nimi

Potilaan nimi voidaan päivittää käyttämällä edellisessä osassa olevia sääntöjä ja seuraavaa esimerkkiä.

{"s": "$.name[?(@use=='official')].given[0]", "c": {"p": "name[0]", "a": [{"use": "official"}, {"family": "x"}, {"given": ["%"]}]} }
  • "s" = Nouda FHIR-potilaan givenname Dataverseen ladattavaksi.
  • "c" = Luo potilaan givenname , kun sitä ei ole FHIR-järjestelmässä.
  • "p" = luotavan merkinnän pääobjekti
  • "a" = "c"-arvon luomisessa käytettävä parametrimatriisi

Huomautus

Aaltosulkeet {} sisältävät lausekkeen ja pilkut "," erottavat lausekkeen segmentit toisistaan. Sen sijaan hakasulkeet [] tarkoittavat, että lauseke sisältää vähintään kaksi täydellistä segmenttiä.

"s": "$.name[?(@use=='official')].given[0]"

ja

"c": {"p": "name[0]", "a": [{"use": "official"}, {"family": "x"}, {"given": ["%"]}]

Codeable Concept

FHIR:n codeable concept -käsitteiden täsmääminen FHIR-järjestelmästä Dataverseen on sama asia kuin JSON-merkkijonoelementtien täsmääminen. Ainoa ero on se, että yksityiskohtiin pääsemiseen tarvitaan ylimääräinen taso.

  1. Laajennuksen URL-osoite on http://hl7.org/fhir/StructureDefinition/patient-religion
  2. Haluamme käyttää tässä laajennusmerkinnässä olevaa valueCodeableConcept-elementtiä.
  3. Haluemme kooditaulukon ensimmäisen merkinnän.
  4. Haluamme kartoittaa näytön näyttämään koodijärjestelmään liitetyt FHIR-tiedot.

FHIR-resurssiNäyttökuva, jossa näkyy FHIR Codeable Concepts.

JSONPathNäyttökuvassa JSONPath

Tekstiesimerkki (uskonto)

  1. Laajennuksen URL-osoite on http://hl7.org/fhir/StructureDefinition/patient-religion
  2. Haluamme käyttää tässä laajennusmerkinnässä olevaa valueCodeableConcept-elementtiä.
  3. Haluamme kartoittaa tekstin näyttääksemme tiedot, jotka Epic on antanut FHIR-järjestelmään.

FHIR-resurssiNäyttökuva FHIR:n codeable concepts -käsitteistä tekstiesimerkille.

JSONPathNäyttökuvassa tekstiesimerkin JSONPath

Yhdistetty arvo

Toisessa esimerkissä voit luoda attribuuttikartan sukupuolelle. Dataversessä määritteen nimi on gendercode.

  1. Valitse yhteyshenkilön entiteettikartassa + Uusi päivityspalvelun määritekartta.

  2. Koska sukupuoli on valintaluettelo, Toimintotyyppi on Yhdistetty arvo.

    Sukupuoli on Dataversessä valintaluettelo. Koska se on myös valintaluettelo FHIR:ssä, voit yhdistää FHIR-valintaluettelon arvot Dataverse-luettelon arvojen valintaa varten.

  3. Valitse FHIR-elementtikartta, jos haluat lisätä FHIR-elementtikartan sukupuolelle. Tässä esimerkissä on JSON-hakumerkkijono, jonka avulla pääset FHIR-elementtiin, joka on sukupuoli.

  4. Valitse Tallenna.

    Järjestelmä on määrittänyt taustalla, että sukupuoli on asetusjoukko. Tälle asetusjoukolle on määritettävä useita arvoja.

  5. Kirjoita Arvokartat-kenttään Azure FHIR -arvo, jonka haluat asetusjoukkoon. Kirjoita esimerkiksi Mies-vaihtoehdolle mies (Dataverse-arvo on 1) ja kirjoita Nainen-vaihtoehdolle nainen (Dataverse-arvo on 2).

    Valitse Tallenna.

    Näyttökuvassa arvoyhdistämismäärityksiä

Määritä oletusarvo

Määritä tässä esimerkissä arvokarttojen oletusarvo.

  1. Valitse yhteyshenkilön entiteettikartassa + Uusi päivityspalvelun määritekartta.

  2. Valitse Määritteen nimeksiYhteyshenkilön tyyppi (msemr_contacttype).

    Yhteyshenkilön tyyppi Dataversessä on asetusjoukko. Koska olet tuomassa mukanasi potilaita, haluat aina, että yhteyshenkilötyyppi on oletusyhteyshenkilö.

  3. Valitse toiminnon tyypiksiMääritä oletusarvo.

    FHIR-elementtikarttaa ei tarvita, koska määrität vain oletusarvoa. Tässä tapauksessa FHIR-tyypillä ei ole yhteyshenkilötyypin käsitettä, mutta Dataverse edellyttää yhteyshenkilön tyyppiä.

  4. Valitse Tallenna.

  5. Valitse Arvokartat-kohdassa ensimmäinen rivi ja valitse sitten Muokkaa.

  6. Valitse Määritteen arvokartta -kohdassa OptionSet-otsikkoon Potilas.

    Arvo näyttää yhteyshenkilötyypin oletusarvon. Dataverse Healthcare API -ohjelmointirajapinta täyttää Dataverse-arvon automaattisesti.

    Näyttökuvassa esimerkki määritteen yhdistämismäärityksen oletusarvon määrittämisestä

  7. Valitse Tallenna ja sulje.

    Huomaa, että Arvokartat-alueissa Dataverse-oletusarvo on määritetty. Aina kun Dataverse Healthcare API luo potilaan, se määrittää Yhteyshenkilötyyppi-kentän arvoksi Potilas.

Haku

Seuraavissa vaiheissa on esimerkki Dataverse-määritteen yhdistämisestä, joka on valinta.

  1. Valitse yhteyshenkilön entiteettikartassa + Uusi päivityspalvelun määritekartta.

  2. Valitse Määritteen nimeksiAlkuperäinen ammatinharjoittaja (msemr_generalpractitioner).

    Ensisijainen haun määritetyyppi on Ensisijainen ammatinharjoittaja -määritteelle Haku (Yhteyshenkilö-entiteetin valinta).

  3. Toimintotyypille ainoa toimintotyyppi on FK-viite (tuntematon avain -viite). Dataverse Healthcare API -ohjelmointirajapinnalle on ilmaistava, miten haku määritetään.

  4. Lisää FHIR-elementtikartan arvo ensisijaista ammatinharjoittajaa varten.

    Näyttökuva, jossa näkyy FHIR-elementin kartan arvo.

  5. Jos haluat käyttää FHIR-resurssiviittausta, valitse ammatinharjoittaja.

    Dataversessä Ensisijaisen ammatinharjoittajan viite on Yhteyshenkilö. FHIR-resurssiviittaus on ammatinharjoittaja.

  6. Valitse Tallenna.

Jos Dataverse-määrite on valinta, voit luoda vain kartan, jonka viite on vieras avain (FK). Määritä FK-viittaus määrittämällä FHIR-resurssi, johon yhdistät kohde-entiteetin.

Yhdistä codeable concept

Seuraava menettely on esimerkki Dataverse-määritteen kartoittamisesta, joka on codeable concept.

  1. Valitse Kartan määritykset-kohdassa Entiteettikartat.

  2. Valitse Entiteetin nimi -kohdassa msemr_observation.

  3. Valitse liittyvissä määritteiden yhdistämismäärityksissä + Uusi päivityspalvelun määritteen yhdistämismääritys.

  4. Valitse Määritteen nimeksiRatio Denominator Code (msemr_valueratiodenominatorcode).

    Määritteen tyyppi on Valinta. Se on msemr_codeableconcept-entiteetin valinta, joka on erikoisentiteettityyppi, jota tietomalli käsittelee eri tavalla kuin muita entiteettejä.

  5. Toimintotyypille ainoa toimintotyyppi on Codeable Concept -valinta.

  6. Lisää FHIR-elementtikartan arvo ensisijaista ammatinharjoittajaa varten.

  7. Valitse Codeable Concept -tyypilleMäärän yksikkökoodi.

    Codeable concept -tyyppi muistuttaa suurta asetusjoukkoa ja jokaisella asetusjoukolla on tyyppi. Sen avulla voit ryhmitellä ja suodattaa asetusjoukkoja. Huomaa, että kun valitsit Määräyksikkökoodi-tyypin koodattavan konseptin tyypiksi, Codeable Concept -tyypin arvo täytettiin automaattisesti. Määrän yksikkökoodin asetusjoukkotieto ei ollut tarpeellinen.

    Näyttökuva codeable concepts -tyypin esimerkistä.

  8. Valitse Tallenna.

Nyt kun Dataverse luo havainnon ja sen on asetettava koodattava käsite, se löytää koodattavan konseptin tarkastelemalla kaikkien niiden codeable concepts käsitteiden taulukkoja, joiden tyyppi on Määräyksikkökoodi, joka vastaa koodattavan konseptin koodiarvoa. Koodattava käsite koostuu tekstistä, koodista ja tyypistä. FHIR tietää koodin ja tekstin, mutta ei tiedä, mistä koodattavasta konseptityypistä voi vetää tietoja.

Nykyiset rajoitukset

  • Dynaamisten taulukoiden lisäämisen tai luomisen sijainnit eivät saa olla absoluuttisia. Valinta on dynaaminen JSONPath-polkua käytettäessä.
  • Arvojen tietojen täytyy olla kentille sopivassa JSON-muodossa, kuten kohdemääritteen UTF-8-merkkijonot, JSON UTC -päivämäärät ja totuusarvot.

Työkalut

JSONPath-merkkijonoja voidaan testata useilla työkaluilla, kuten seuraavilla:

Lisätietoja näiden työkalujen käyttämisestä on JSONPath-sivulla.

Katso myös

Mikä on Microsoft Cloud for Healthcare?
Tietojen integroinnin työkalupaketin yleiskatsaus
FHIR-tietojen hallinta tietojen integroinnin työkalupaketin avulla
Määritekarttojen määrittäminen
Laajennuskarttojen määrittäminen