Dokumentasi Teknikal
Halaman ini menyediakan dokumentasi teknikal terperinci untuk pembangun yang ingin mengintegrasikan MyTxGNN dengan sistem EHR menggunakan standard SMART on FHIR.
Seni Bina Sistem
┌─────────────────────────────────────────────────────────┐
│ Sistem EHR │
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
│ │ Pelayan │ │ Pelayan │ │ Aplikasi │ │
│ │ FHIR R4 │ │ OAuth 2.0 │ │ EHR │ │
│ └──────┬───────┘ └──────┬───────┘ └──────┬───────┘ │
└─────────┼─────────────────┼─────────────────┼──────────┘
│ │ │
▼ ▼ ▼
┌─────────────────────────────────────────────────────────┐
│ MyTxGNN SMART App │
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
│ │ Antara │ │ Modul │ │ Paparan │ │
│ │ muka FHIR │ │ Ramalan │ │ Hasil │ │
│ └──────────────┘ └──────────────┘ └──────────────┘ │
└─────────────────────────────────────────────────────────┘
Aliran OAuth 2.0
Permintaan Kebenaran
GET {authorization_endpoint}
?response_type=code
&client_id=mytxgnn-client
&redirect_uri=https://mytxgnn.yao.care/smart/callback
&scope=launch openid fhirUser patient/*.read
&state={state}
&aud={fhir_server}
Pertukaran Token
POST {token_endpoint}
Content-Type: application/x-www-form-urlencoded
grant_type=authorization_code
&code={authorization_code}
&redirect_uri=https://mytxgnn.yao.care/smart/callback
&client_id=mytxgnn-client
Profil FHIR
MedicationKnowledge
MyTxGNN menggunakan sumber MedicationKnowledge untuk menyimpan maklumat ubat:
{
"resourceType": "MedicationKnowledge",
"id": "db00860",
"code": {
"coding": [{
"system": "https://go.drugbank.com/drugs/",
"code": "DB00860",
"display": "Prednisolone"
}]
},
"status": "active",
"indicationGuideline": [...]
}
ClinicalUseDefinition
Ramalan disimpan dalam sumber ClinicalUseDefinition:
{
"resourceType": "ClinicalUseDefinition",
"id": "db00860-allergic-rhinitis",
"type": "indication",
"subject": [{
"reference": "MedicationKnowledge/db00860"
}],
"indication": {
"diseaseSymptomProcedure": {
"text": "Allergic Rhinitis"
}
}
}
Endpoint API
| Method | Endpoint | Penerangan |
|---|---|---|
| GET | /fhir/metadata |
Penyata keupayaan |
| GET | /fhir/MedicationKnowledge/{id} |
Dapatkan ubat |
| GET | /fhir/MedicationKnowledge?code={drugbank_id} |
Cari ubat |
| GET | /fhir/ClinicalUseDefinition?subject=MedicationKnowledge/{id} |
Dapatkan ramalan |
Kod Contoh
JavaScript (fhir.js)
const client = FHIR.client({
serverUrl: "https://mytxgnn.yao.care/fhir"
});
// Dapatkan maklumat ubat
const medication = await client.read({
resourceType: "MedicationKnowledge",
id: "db00860"
});
// Cari ramalan
const predictions = await client.search({
resourceType: "ClinicalUseDefinition",
searchParams: {
subject: "MedicationKnowledge/db00860"
}
});
Python
from fhirclient import client
from fhirclient.models import medicationknowledge
settings = {
'app_id': 'mytxgnn',
'api_base': 'https://mytxgnn.yao.care/fhir'
}
smart = client.FHIRClient(settings=settings)
# Dapatkan ubat
med = medicationknowledge.MedicationKnowledge.read('db00860', smart.server)
print(med.code.coding[0].display)
Pengendalian Ralat
| Kod HTTP | Maksud | Penyelesaian |
|---|---|---|
| 400 | Permintaan tidak sah | Semak parameter |
| 401 | Tidak dibenarkan | Dapatkan semula token |
| 404 | Tidak dijumpai | Semak ID sumber |
| 429 | Terlalu banyak permintaan | Tunggu dan cuba semula |
Penafian
Dokumentasi teknikal ini adalah untuk tujuan pembangunan dan integrasi. Sila rujuk pasukan IT anda untuk keperluan keselamatan dan pematuhan khusus.
Kemas kini terakhir: 2026-03-03 | Pasukan Penyelidikan MyTxGNN
Dokumentasi teknikal ini adalah untuk tujuan pembangunan dan integrasi. Sila rujuk pasukan IT anda untuk keperluan keselamatan dan pematuhan khusus.
Kemas kini terakhir: 2026-03-03 | Pasukan Penyelidikan MyTxGNN