מאגרי FHIR ב-Cloud Healthcare API תומכים בכמה גרסאות של המפרט Fast Healthcare Interoperability Resources (FHIR) שפורסם על ידי Health Level 7 International (HL7).
גרסה 1 של ה-API תומכת בגרסאות הבאות:
- R5 גרסה 5.0.0 (מהדורה 5)
- R4 גרסה 4.0.1 (מהדורה 4)
- STU3 version 3.0.1 (Release 3 - Standard for Trial Use)
- DSTU2 גרסה 1.0.2 (תקן טיוטה לשימוש ניסיוני)
כשיוצרים מאגר FHIR, מציינים את גרסת FHIR כפרמטר לשיטה fhirStores.create. אי אפשר לשנות את גרסת FHIR אחרי שיוצרים את המאגר.
ממשק ה-API לכל חנות תואם לגרסת ה-FHIR של אותה חנות. לדוגמה, האינטראקציה עם DSTU2 conformance שונה מהאינטראקציה עם STU3 capabilities, אבל שתיהן חולקות את נתיב ה-REST /fhir/metadata, כך שהנתיב הזה מחזיר תגובות שונות בהתאם לגרסת ה-FHIR של המאגר.
פונקציות שנוספו בגרסאות מאוחרות יותר של FHIR זמינות במאגרי נתונים שמשתמשים בגרסאות קודמות של FHIR, אם הן לא יוצרות חוסר תאימות. לדוגמה, האינטראקציה patch זמינה בחנות DSTU2, למרות שהיא מוגדרת רק מ-STU3 ואילך.
פרטים על הפונקציונליות הנתמכת ב-v1 API לפי גרסת FHIR
R5
הצהרת היכולות של השרת מציינת את החלקים במפרט שנתמכים.
- אחסון ואחזור של כל המשאבים של R5, כולל תמיכה ברכיבי הרחבה. ה-API מקבל, מאחסן ומחזיר תוספים בכל רכיב נתונים.
- כל השיטות ב-RESTful API שמשתמשות בסוג התוכן JSON נתמכות, למעט:
- לא נתמכות אינטראקציות ברמת הסוג וברמת המערכת של היסטוריה שמאחזרות היסטוריה בכמה משאבים. אפשר לאחזר את היסטוריית המשאבים רק עבור משאב אחד בכל פעם.
- האינטראקציה batch/transaction לא תומכת בפעולות חיפוש בתוך החבילה.
- יש תמיכה באימות ובאכיפה של פרופילים.
- פרמטרים של חיפוש שהוגדרו על ידי המשתמש, כולל חיפושים ברכיבי תוסף, נתמכים ב-API v1beta1.
כל הפונקציונליות של חיפוש נתמכת, מלבד:
- פרמטרי החיפוש
Group-characteristic-value,Location-near,Location-contains,DocumentReference-relationship,Bundle-composition,Bundle-message,Observation-component-value-canonical,Observation-value-canonical,QuestionnaireResponse-item-subjectו-Composition-section-textלא נתמכים. - אין תמיכה בפרמטרים של חיפוש שמבצעים התאמה פונטית.
- הפרמטרים של תוצאות החיפוש
_contained,_containedType,_summary=countו-_summary=trueלא נתמכים. - פרמטר החיפוש המיוחד
_contentמחפש בכל השדות של המשאב שאליו מתייחסים פרמטרים החיפוש. הוא לא כולל שדות שלא ניתן לחפש בהם. היא לא תומכת ב-AND(המונחים משולבים באופן מרומז עםAND) או בסוגריים. - לא ניתן להשתמש בפרמטרים המיוחדים לחיפוש
Resource-query,Resource-filter,Resource-language,Resource-inו-Resource-list. - הפרמטר
_sort, כשמשתמשים בו בשדות עם רכיבים חוזרים, ממיין לפי הרכיב הראשון. זה שונה מהמפרט. הפרמטר_sortנתמך בפרמטרים של חיפוש מהסוגיםnumber,data,string,tokenו-quantity. - לא ניתן להשתמש בשינוי האסימון לחיפוש
:of-type,:code-text,text-advanced, ו-:textובשינוי ההפניה לחיפוש:identifier,not-in,text-advancedו-:code-text. אין תמיכה במחרוזתcontainsלשינוי חיפושים של URI. - אין תמיכה בחיפושים של הפניות קנוניות. הפניות קנוניות
מטופלות כהפניות רגילות. אין תמיכה במגדירי הגישה
aboveו-below. - כשמשתמשים בפרמטר
_type, אפשר להשתמש רק בפרמטרים הנפוצים (לכל המשאבים) של החיפוש, ולא בחיתוך של סוגי המשאבים שצוינו. אפשר להשתמש בקבוצת המשנה הבאה של פרמטרים מורכבים לחיפוש:
Observation-code-value-conceptObservation-code-value-dateObservation-code-value-quantityObservation-code-value-stringObservation-combo-code-value-conceptObservation-combo-code-value-quantityObservation-component-code-value-conceptObservation-component-code-value-quantity
אין תמיכה בפרמטרים המורכבים הנותרים של חיפוש.
השיטה
POSTלחיפוש לא מקבלת פרמטריםapplication/x-www-form-urlencodedבגוף הבקשה.יש תמיכה בתו הכללי לחיפוש (
*) בשדה_include, אבל אין תמיכה בו בשדה_revinclude.
- פרמטרי החיפוש
אזורים שלא נתמכים כוללים:
- אין תמיכה בסוג התוכן XML.
- פעולת התיקון לא תומכת בתיקון XML או בתיקון
FHIRPath. - אין תמיכה בבקשות HTTP HEAD.
היו היבטים מסוימים ב-API שסטו ממפרט FHIR בגלל תאימות לאחור בגרסאות קודמות של FHIR. הבעיות האלה תוקנו בגרסה R5:
- כשאימות שדות חובה מופעל, שדות
nullושדות ריקים (למשל,{}) נדחים עכשיו. - אין יותר תמיכה ב-UpperCamelCase בשדות של משאבים ב-JSON.
- אסור להשתמש בהפניות
urn:uuidבחבילות של קובצי נתונים, גם אם השלמות ההפנית מושבתת. חבילות של פעולות בחבילה אף פעם לא משכתבות הפניות. - חבילות של טרנזקציות מחמירות יותר בכתיבה מחדש של הפניות מאשר בעבר, ומוצגות שגיאות לגבי FullUrls לא תקינים ברשומות, כפי שמוגדר במפרט: https://www.hl7.org/fhir/bundle.html#references.
- קובצי עזר שנראים כמו קובצי עזר של משאבים חייבים לכלול מזהים תקינים.
- אימות פרופיל הבסיס מופעל לבקשות PATCH.
R4
הצהרת היכולות של השרת מציינת את החלקים במפרט שנתמכים.
- אחסון ושליפה של כל משאבי R4, כולל תמיכה ברכיבי הרחבה. ה-API מקבל, מאחסן ומחזיר תוספים בכל רכיב נתונים.
- כל השיטות ב-RESTful API שמשתמשות בסוג התוכן JSON נתמכות, למעט:
- לא נתמכות אינטראקציות ברמת הסוג וברמת המערכת של היסטוריה שמאחזרות היסטוריה בכמה משאבים. אפשר לאחזר את היסטוריית המשאבים רק עבור משאב אחד בכל פעם.
- האינטראקציה batch/transaction לא תומכת בפעולות חיפוש בתוך החבילה.
- יש תמיכה באימות ובאכיפה של פרופילים.
- פרמטרים של חיפוש שהוגדרו על ידי המשתמש, כולל חיפושים ברכיבי תוסף, נתמכים ב-API v1beta1.
כל הפונקציונליות של חיפוש נתמכת, מלבד:
- אין תמיכה בפרמטרים של החיפוש
Group-characteristic-value,Location-near,Bundle-compositionו-Bundle-message. - אין תמיכה בפרמטרים של חיפוש שמבצעים התאמה פונטית.
- הפרמטרים של תוצאות החיפוש
_contained,_containedType,_summary=countו-_summary=trueלא נתמכים. - פרמטר החיפוש המיוחד
_contentמחפש בכל השדות של המשאב שאליו מתייחסים פרמטרים החיפוש. הוא לא כולל שדות שלא ניתן לחפש בהם. היא לא תומכת ב-AND(המונחים משולבים באופן מרומז עםAND) או בסוגריים. - פרמטרי החיפוש המיוחדים
_query,_filterו-_listלא נתמכים. - הפרמטר
_sort, כשמשתמשים בו בשדות עם רכיבים חוזרים, ממיין לפי הרכיב הראשון. זה שונה מהמפרט. הפרמטר_sortנתמך בפרמטרים של חיפוש מהסוגיםnumber,data,string,tokenו-quantity. - אין תמיכה בתנאי החיפוש של הטוקן
:of-typeובתנאי החיפוש של ההפניה:identifier. - אין תמיכה בחיפושים של הפניות קנוניות. הפניות קנוניות מטופלות כהפניות רגילות.
- כשמשתמשים בפרמטר
_type, אפשר להשתמש רק בפרמטרים של חיפוש משותף (לכל המשאבים), ולא בחיתוך של סוגי המשאבים שצוינו. אפשר להשתמש בקבוצת המשנה הבאה של פרמטרים מורכבים לחיפוש:
DocumentReference-relationshipObservation-code-value-conceptObservation-code-value-dateObservation-code-value-quantityObservation-code-value-stringObservation-combo-code-value-conceptObservation-combo-code-value-quantityObservation-component-code-value-conceptObservation-component-code-value-quantity
אין תמיכה בפרמטרים המורכבים הנותרים של חיפוש.
השיטה
POSTלחיפוש לא מקבלת פרמטריםapplication/x-www-form-urlencodedבגוף הבקשה.יש תמיכה בתו הכללי לחיפוש (
*) בשדה_include, אבל אין תמיכה בו בשדה_revinclude.
- אין תמיכה בפרמטרים של החיפוש
אזורים שלא נתמכים כוללים:
- רוב הפעולות המורחבות לא מיושמות.
- אין תמיכה בסוג התוכן XML.
- פעולת התיקון לא תומכת בתיקון XML או בתיקון
FHIRPath. - אין תמיכה בבקשות HTTP HEAD.
אזורים שבהם ה-API חורג ממפרט FHIR כדי לאפשר תאימות לדורות קודמים:
nullמתקבל בשדות חובה- מערכת Google מקבלת קוד ריק בשדות חובה
- אפשר להשתמש בהפניות
urn:uuidבחבילות של פעולות בכמות גדולה כששלמות ההפניות מושבתת.
STU3
הצהרת היכולות של השרת מציינת את החלקים במפרט שנתמכים.
- יש תמיכה באחסון ובאחזור של כל המשאבים של STU3, כולל תמיכה ברכיבי הרחבה. ה-API מקבל, מאחסן ומחזיר תוספים בכל רכיב נתונים.
כל השיטות ב-RESTful API שמשתמשות בסוג התוכן JSON נתמכות, למעט:
- לא נתמכות אינטראקציות ברמת הסוג וברמת המערכת של היסטוריה שמאחזרות היסטוריה בכמה משאבים. אפשר לאחזר את היסטוריית המשאבים רק עבור משאב אחד בכל פעם.
- האינטראקציה batch/transaction לא תומכת בפעולות חיפוש בתוך החבילה.
יש תמיכה באימות ובאכיפה של פרופילים.
פרמטרים של חיפוש שהוגדרו על ידי המשתמש, כולל חיפושים ברכיבי תוסף, נתמכים ב-API v1beta1.
כל הפונקציונליות של חיפוש נתמכת, מלבד:
- הפרמטרים של החיפוש
Group-characteristic-value,Sequence-coordinate,Location-near,Location-near-distance,Bundle-compositionו-Bundle-messageלא נתמכים. - אין תמיכה בפרמטרים של חיפוש שמבצעים התאמה פונטית.
- הפרמטרים של תוצאות החיפוש
_contained,_containedType,_summary=countו-_summary=trueלא נתמכים. - פרמטר החיפוש המיוחד
_contentמחפש בכל השדות של המשאב שאליו מתייחסים פרמטרים החיפוש. הוא לא כולל שדות שלא ניתן לחפש בהם. היא לא תומכת ב-ANDמפורש (המונחים משולבים באופן מרומז עם AND) או בסוגריים. - פרמטרי החיפוש המיוחדים
_query,_filterו-_listלא נתמכים. - הפרמטר
_sort, כשמשתמשים בו בשדות עם רכיבים חוזרים, ממיין לפי הרכיב הראשון. זה שונה מהמפרט. הפרמטר_sortנתמך בפרמטרים של חיפוש מהסוגיםnumber,data,string,tokenו-quantity. - השיטה
POSTלחיפוש לא מקבלת פרמטריםapplication/x-www-form-urlencodedבגוף הבקשה. - יש תמיכה בתו הכללי לחיפוש (
*) בשדה_include, אבל אין תמיכה בו בשדה_revinclude.
- הפרמטרים של החיפוש
אזורים שלא נתמכים כוללים:
- רוב הפעולות המורחבות לא מיושמות.
- אין תמיכה בסוג התוכן XML.
- פעולת התיקון לא תומכת בתיקון XML או בתיקון FHIRPath.
אזורים שבהם ה-API חורג ממפרט FHIR כדי לאפשר תאימות לדורות קודמים:
nullמתקבל בשדות חובה- מערכת Google מקבלת קוד ריק בשדות חובה
- אפשר להשתמש בהפניות
urn:uuidבחבילות של פעולות בכמות גדולה כששלמות ההפניות מושבתת.
DSTU2
הצהרת התאימות של השרת מציינת את החלקים במפרט שנתמכים.
- יש תמיכה באחסון ובאחזור של כל המשאבים של DSTU2, כולל תמיכה ברכיבי הרחבה. ה-API מקבל, מאחסן ומחזיר תוספים בכל רכיב נתונים.
- כל השיטות ב-RESTful API שמשתמשות בסוג התוכן JSON נתמכות, למעט:
- לא נתמכות אינטראקציות ברמת הסוג וברמת המערכת של היסטוריה שמאחזרות היסטוריה בכמה משאבים. אפשר לאחזר את היסטוריית המשאבים רק עבור משאב אחד בכל פעם.
- האינטראקציה batch/transaction לא תומכת בפעולות חיפוש בתוך החבילה.
- יש תמיכה באימות ובאכיפה של פרופילים.
- יש תמיכה בכל הפונקציונליות של חיפוש, מלבד:
- הפרמטרים לחיפוש
Group-characteristic-value,Location-near,Location-near-distance,Bundle-composition,Bundle-message,Coverage-dependentו-Coverage-sequenceלא נתמכים. - אין תמיכה בפרמטרים של חיפוש שמוגדרים באלמנטים של תוסף.
- אין תמיכה בפרמטרים של חיפוש שמבצעים התאמה פונטית.
- הפרמטרים של תוצאות החיפוש
_contained,_containedType,_summary=countו-_summary=trueלא נתמכים. - פרמטר החיפוש המיוחד
_contentמחפש בכל השדות של המשאב שאליו מתייחסים פרמטרים החיפוש. הוא לא כולל שדות שלא ניתן לחפש בהם. היא לא תומכת ב-ANDמפורש (המונחים משולבים באופן מרומז עם AND) או בסוגריים. - פרמטרי החיפוש המיוחדים
_query,_filterו-_listלא נתמכים. - הפרמטר
_sort, כשמשתמשים בו בשדות עם רכיבים חוזרים, ממיין לפי הרכיב הראשון. זה שונה מהמפרט. הפרמטר_sortנתמך בפרמטרים של חיפוש מהסוגיםnumber,data,string,tokenו-quantity. - השיטה
POSTלחיפוש לא מקבלת פרמטריםapplication/x-www-form-urlencodedבגוף הבקשה. - יש תמיכה בתו הכללי לחיפוש (
*) בשדה_include, אבל אין תמיכה בו בשדה_revinclude.
- הפרמטרים לחיפוש
אזורים שלא נתמכים כוללים:
- רוב הפעולות המורחבות לא מיושמות.
- אין תמיכה בפרמטרים של חיפוש שהוגדרו על ידי המשתמש ב-DSTU2.
- אין תמיכה בסוג התוכן XML.
אזורים שבהם ה-API חורג ממפרט FHIR כדי לאפשר תאימות לדורות קודמים:
nullמתקבל בשדות חובה- מערכת Google מקבלת קוד ריק בשדות חובה
- אפשר להשתמש בהפניות
urn:uuidבחבילות של פעולות בכמות גדולה כששלמות ההפניות מושבתת.
פרטים על פעולות שלא נכללות במפרט שפורסם
- ההגדרה של מאגר FHIR כוללת אפשרות לשלוח התראה לנושא Pub/Sub שצוין על ידי המשתמש על כל השינויים במשאבים במאגר. מנגנון ההתראות הזה משותף לכל המאגרים של Cloud Healthcare API, והוא לא נועד להחליף את הפונקציונליות של FHIR Subscription (DSTU2, STU3, R4 ו-R5).
- פעולת הייצוא של מאגר FHIR ליעדים ב-Cloud Storage מציעה רק ייצוא בכמות גדולה של המאגר כולו. הוא לא הטמעה של טיוטת המפרט של FHIR Bulk Data.
- פעולת הייבוא של מאגר FHIR לא מוגדרת במפרט.
- הפעולה
Resource-purgeשמסירה גרסאות היסטוריות של משאבים לא מוגדרת במפרט. יכול להיות שיהיו שינויים ב-API הזה בעתיד אם תהליך התקנים או יישומי FHIR אחרים יתכנסו לשיטת API שונה לתרחיש השימוש הזה. - נקודת הקצה
ExecuteBundleמקבלת חבילותhistoryבגרסה v1beta1 כדי ליצור גרסאות היסטוריות של משאבים.