Tipe Data
Terdapat 4 tipe data FHIR yang digunakan sebagai standar interoperabilitas data kesehatan pada SATUSEHAT:
Tipe primitif atau sederhana, adalah tipe data yang paling dasar/primitif untuk definisikan sebuah nilai tertentu.
boolean
Nilai untuk tipe data ini hanya salah satu dari dua nilai ini: true atau false.
integer
Bagian dari bilangan rasional yang merepresentasikan bilangan bulat, dengan rentang nilai dari −2.147.483.648 hingga 2.147.483.647 dalam sistem operasi 32-bit. Untuk nilai yang lebih besar disarankan menggunakan tipe data decimal.
string
Data yang berisi sekumpulan karakter unicode, dengan aturan:
jumlah karakter tidak boleh lebih dari 1.048.576 karakter
harus karakter unicode dengan poin ≥ 32 (
u0032), kecuali untuku0009(horizontal tab/t),u0010(carriage return/r), danu0013(line feed/n)tidak boleh ada spasi di awal atau akhir data
tidak boleh kosong atau tidak ada karakter (jumlah karakter nol).
decimal
Bagian dari bilangan rasional yang merepresentasikan bilangan desimal. TIpe ini juga bisa menerima tipe integer, bila nilai tersebut melebihi kapasitas dari tipe terkait.
uri
Referensi berbentuk string terkait Uniform Resource Identifier (RFC 3986), dengan catatan:
bersifat case sensitive
dapat berupa alamat absolut atau relatif, dan bisa ada penanda fragment (
#)untuk nilai berupa kode UUID harus menggunakan huruf kecil semuanya, contoh:
urn:uuid:53fefa32-fcbb-4ff8-8a92-55ee120877b7.
url
Referensi berbentuk string terkait Uniform Resource Locator (RFC 1738), dengan catatan:
URL diakses langsung menggunakan protokol yang sudah ditentukan. Protokol URL umum biasanya adalah http{s}:, ftp:, mailto: and mllp:
canonical
URI yang mereferensi ke resource by its canonical URL (canonical URL).
memiliki perbedaan dengan URI karena pada canonical URL ini biasanya dipisahkan dengan tanda separator.
base64binary
Merupakan stream of bytes yang disandikan menggunakan Base64 (RFC 4648)
instant
Merupakan tipe data yang menampilkan waktu dengan format YYYY-MM-DDThh:mm:ss.sss+zz:zz, contoh: 2015-02-07T13:28:17.239+02:00, dengan catatan:
tipe ini hanya berlaku untuk sistem, bukan untuk waktu yang digunakan oleh manusia
Waktu yang ditampilkan harus ditentukan setidaknya sampai detik dan harus menyertakan zona waktu.
date
Nilai tanggal atau potongan tanggal yang digunakan untuk kebutuhan komunikasi (manusia), dengan format:
YYYYcontohnya:2022YYYY-MMcontohnya:1993-02YYYY-MM-DDcontohnya:2023-02-01
dateTime
Nilai untuk tanggal, sebagian dari tanggal (tahun, bulan dan tahun), atau waktu, yang biasa digunakan dalam komunikasi bukan mesin (tidak ada campur tangan manusia). Formatnya bisa berupa:
YYYYcontohnya:2018,YYYY-MMcontohnya:1973-06,YYYY-MM-DDcontohnya:1905-08-23, atauYYYY-MM-DDThh:mm:ss+zz:zzcontohnya:2015-02-07T13:28:17-05:00atau bisa juga2017-01-01T00:00:00.000Z.
Untuk waktu dengan nilai 24:00 tidak diperbolehkan.
time
Nilai untuk waktu, dengan format:
hh:mm:sscontohnya:11:07:20
code
Mengindikasikan nilai referensi yang berbentuk string, di mana nilai tersebut adalah bagian dari data yang didefinisikan di tempat/sistem lainnya.
oid
Merupakan OID yang direpresentasikan sebagai URI (RFC 3001), contoh: urn:oid:1.2.3.4.5
id
Berisi kombinasi huruf besar (A..Z) huruf kecil (a..z) angka (0..9) tanda (.) atau (-) dengan panjang maksimal 64 karakter.
markdown
Berisi nilai string FHIR yang mengandung sintaks markdown untuk proses yang menggunakan markdown presentation engine.
unsignedInt
Berisi bilangan negatif integer dengan range angka (0..2,147,483,647)
positiveInt
Berisi bilangan positif integer dengan range angka (1..2,147,483,647)
uuid
Merupakan UUID (GUID) yang direpresentasikan sebagai URI (RFC 4122).
Tipe data umum, yang termasuk juga tipe data yang bersifat kompleks yang didefinisikan seperti . dengan sekumpulan properti yang memiliki tipe data masing-masing, yang dapat digunakan berulang kali dalam mendefinisikan sebuah nilai dalam suatu element atau resource.
Address
Tipe data untuk menyimpan nilai data berupa alamat dari suatu lokasi tertentu.
{
*use: code (1)
*type: code (2)
text: string (3)
line: [ string ] (4)
city: string (5)
district: string (6)
state: string (7)
postalCode: string (8)
country: string (9)
period: period (10)
}Keperluan, nilai code mengacu dari salah satu nilai di (IdentifierUse).
Jenis alamat, nilai {ftp-code} mengacu dari salah satu nilai di (AddressType).
Alamat lengkap.
Nama jalan, nomor rumah, dll.
Nama kota/kabupaten.
Nama kecamatan.
Nama kelurahan.
Kode pos.
Nama atau kode negara, bisa menggunakan kode standar ISO dari ISO 3166-2 atau ISO 3166-3.
Rentang waktu sejak kapan alamat aktif dipakai.
Tipe metadata berisi sekumpulan tipe yang digunakan pada resource yang membutuhkan sebuah informasi tambahan berbentuk metadata.
ContactDetail
Tipe data ini berisi informasi kontak secara detail.
Struktur JSON:
{
name: string (1)
telecom: [ ContactPoint ] (2)
}Nama individu untuk dihubungi.
Kontak detail dari individu atau organisasi.
Contributor
Struktur JSON:
{
*type: code (1)
*name: string (2)
contact: [ ContactDetail ] (3)
}Code dari tipe kontributor yang menjadi acuan (author, editor, reviewer, endorser).
Siapa yang menyumbangkan konten.
Kontak detail dari kontributor.
Tipe khusus biasanya didefinisikan dan digunakan untuk penggunaan yang khusus/spesifik.
CodeableReference
Tipe data ini merepresentasikan nilai yang merujuk pada beberapa referensi resource atau konsep elemen lainnya.
Struktur JSON:
{
concept: CodeableConcept (1)
reference: Reference (2)
}Mereferensi ke konsep (by class)
Mereferensi ke resource lainnya (by instance)
Last updated