הפניית XML לשאילתות & רמזים

בקטע הזה מתוארות הודעות Hint Request, הודעות Hint Response והודעות שאילתה שמבוססות על Google XML.

<Hint> (הודעת רמז)

רכיב הבסיס של הודעת Hint Response. הודעות של Hint Response מציינות עבור אילו שילובים של מלון/תוכנית נסיעה צריך לתמחר מחדש. זו התגובה שלכם להודעה של Hint Request מ-Google.

הודעת Hint Response צריכה לציין רק את המלונות שהמחירים שלהם השתנו מאז הפעם האחרונה ש-Google קיבלה תגובה מוצלחת לרמז מהשרתים שלכם.

הודעות של Hint Response משתמשות באחת מהשיטות הבאות כדי לציין את המלונות ומסלולי הנסיעה ש-Google צריכה לשנות:

  • מסלולי נסיעה מדויקים: שילוב של תאריך הצ'ק-אין ומשך השהייה.

  • טווחי תאריכי צ'ק-אין: זהו טווח של תאריכי צ'ק-אין, שמתחיל בתאריך הצ'ק-אין הראשון ומסתיים בתאריך הצ'ק-אין האחרון.

  • שהיות מצולמות (או מסלולי נסיעה מאורגנים)

בכל אחת מהשיטות האלה נדרש תחביר שונה להודעה של Hint Response.

מידע נוסף זמין במאמר הודעות של Hint Response.

תחביר

הרכיב <Hint> משתמש בתחביר שונה, בהתאם לסוג הודעת התגובה לרמז:

מסלולי נסיעה מדויקים

הדוגמה הבאה מציגה את התחביר למסלולי נסיעה מדויקים בהודעת Hint Response:

<!-- Exact Itinerary Hint Response -->
<?xml version="1.0" encoding="UTF-8"?>
<Hint>
  <Item>
    <Property>hotel_ID</Property>
    ...
    <Stay>
      <CheckInDate>checkin_date</CheckInDate>
      <LengthOfStay>number_of_nights</LengthOfStay>
    </Stay>
  </Item>
  ...
</Hint>

טווחי צ'ק אין

למטה מוצג התחביר של טווחי צ'ק-אין בהודעה של Hint Response:

<!-- Check-in Ranges Hint Response -->
<?xml version="1.0" encoding="UTF-8"?>
<Hint>
  <Item>
    <!-- At least one is required -->
    <!-- Can be > 1 if MultipleItineraries is "checkin_range" in your
         QueryControl message -->
    <Property>hotel_ID</Property>
    [...]

    <!-- Required -->
    <FirstDate>first_checkin_date</FirstDate>
    <!-- Required -->
    <LastDate>last_checkin_date</LastDate>
  </Item>
  ...
</Hint>

מקומות לינה בטווח מחירים

התחביר הבא מציג את התחביר של הישארות בטווח בהודעת Hint Response:

<!-- Ranged Stay Hint Response -->
<?xml version="1.0" encoding="UTF-8"?>
<Hint>
  <Item>
    <!-- At least one is required -->
    <!-- Can be > 1 if MultipleItineraries is "affected_dates" in your
         QueryControl message -->
    <Property>hotel_ID</Property>
    [...]

    <StaysIncludingRange>
      <!-- Required -->
      <FirstDate>first_date</FirstDate>

      <!-- Optional -->
      <LastDate>last_date</LastDate>
    </StaysIncludingRange>
  </Item>
  ...
</Hint>

מאפיינים

הרכיב <Hint> מכיל מאפיין אופציונלי: id. אם מציינים אותו, הוא נכלל בתור המאפיין hintId בהודעות <Query> שנשלחות על סמך <Hint>.

אלמנטים צאצאים

הרכיב <Hint> כולל את רכיבי הצאצא הבאים:

רכיב צאצא חובה? סוג סוג התגובה לרמז תיאור
<CheckInDate> Required Date מסלולי נסיעה מדויקים תאריך הצ'ק-אין של מסלול הנסיעה.
<FirstDate> Required Date טווחי נסיעה ולוחות זמנים לטווחי צ'ק-אין התאריך הראשון של טווח התאריכים של טווח צ'ק-אין או של הודעת ה-Hint Response. התאריכים כוללים.
<Item> Required Object הכול מאגר תגים של המלון או תוכנית הנסיעה שיש לעדכן.
<LastDate> Required* Date טווחי נסיעה ולוחות זמנים לטווחי צ'ק-אין

התאריך האחרון של טווח התאריכים של טווח צ'ק-אין או של הודעת ה-Hint Response. התאריכים כוללים.

* האלמנט הזה הוא אופציונלי לשהיות לטווח.

<LengthOfStay> Required integer מסלולי נסיעה מדויקים מספר הלילות במסלול הנסיעה, מבוטא כמספר שלם חיובי.
<Property> Required string הכול

מזהה של מלון, עם אותו מזהה שמופיע ברשימת המלונות. מספר רכיבי <Property> שאפשר לציין בבלוק <Item> יחיד נקבע לפי סוג ההודעה של Hint Response:

  • מסלולי נסיעה מדויקים: עד 100 מלונות.
  • טווחי צ'ק-אין: יותר מטווח אחד, אם מגדירים את הערך <MultipleItineraries> לערך "checkin_range" בהודעה <QueryControl>.
  • שהייה בטווח: יותר מאפשרות אחת אם הגדרת את <MultipleItineraries> לערך "affected_dates" בהודעה <QueryControl>.
<Stay> Required Object מסלולי נסיעה מדויקים מאגר לאלמנטים <CheckinDate> ו-<LengthOfStay> בתוכנית נסיעה מדויקת של Hint Response. כל <Item> יכול להכיל רק <Stay> אחד.
<StaysIncludingRange> Required Object מסלולי נסיעה שונים קונטיינר לאלמנטים <FirstDate> ו-<LastDate> בהודעה של תגובת Hint Response בטווח.

דוגמאות

מסלולי נסיעה מדויקים

הדוגמה הבאה מגדירה מסלולי נסיעה מרובים לנכס יחיד להודעת Hint Response:

<!-- Exact Itinerary Hint Response -->
<?xml version="1.0" encoding="UTF-8"?>
<Hint>
  <Item>
    <Property>12345</Property>
    <Stay>
      <CheckInDate>2018-07-03</CheckInDate>
      <LengthOfStay>3</LengthOfStay>
    </Stay>
  </Item>
  <Item>
    <Property>12345</Property>
    <Stay>
      <CheckInDate>2018-07-03</CheckInDate>
      <LengthOfStay>4</LengthOfStay>
    </Stay>
  </Item>
</Hint>

טווחי צ'ק אין

בדוגמה הבאה מצוינים שני מלונות שהתמחור שלהם השתנה וצריך לאחזר אותם שוב. Google מקבלת את כל מסלולי הנסיעה בין 3 ביולי ל-6 ביולי לנכסים 12345 ו-67,890:

<!-- Check-in Ranges Hint Response -->
<?xml version="1.0" encoding="UTF-8"?>
<Hint>
  <Item>
    <Property>12345</Property>
    <Property>67890</Property>
    <FirstDate>2018-07-03</FirstDate>
    <LastDate>2018-07-06</LastDate>
  </Item>
</Hint>

שימו לב שכדי שההודעה של טווח הצ'ק-אין תוכל לציין מספר מאפיינים בשדה <Item> אחד, הערך של <MultipleItineraries> ב-<QueryControl> חייב להיות מוגדר ל-"checkin_range".

מקומות לינה בטווח מחירים

בדוגמה הבאה מוצגים שני שימושים שונים באפשרות 'שהיות בטווח' – אחד למגוון לילות והשני ללילה אחד:

<!-- Ranged Stay Hint Response -->
<?xml version="1.0" encoding="UTF-8"?>
<Hint>
  <!-- Google fetches prices for all itineraries (first and last date are set) -->
  <Item>
    <Property>12345</Property>
    <StaysIncludingRange>
      <FirstDate>2018-07-03</FirstDate>
      <LastDate>2018-07-06</LastDate>
    </StaysIncludingRange>
  </Item>

  <!-- Google fetches prices for a single night (first date only) -->
  <Item>
    <Property>67890</Property>
    <StaysIncludingRange>
      <FirstDate>2018-07-03</FirstDate>
    </StaysIncludingRange>
  </Item>
</Hint>

שימו לב: כדי שההודעה מסוג 'נשאר טווח זמן' תוכל לציין כמה מאפיינים בשדה <Item> אחד, הערך של <MultipleItineraries> ב-<QueryControl> צריך להיות מוגדר ל-"affected_dates".

לכל אחת מהדוגמאות האלה, Google מגיבה באמצעות <Query>, וצריך לשלוח את התג <Transaction> שכולל עדכוני מחירים עבור מועדי הנסיעה או המלונות שצוינו.

<HintRequest>

רכיב הבסיס של הודעת Hint Request. Google שולחת לשרת שלכם הודעה של Hint Request, ומצפה לקבל תשובה שבה מפורטים המלונות ומסלולי הנסיעה שהמחירים שלהם השתנו מאז הפעם האחרונה ש-Google קיבלה תגובה מוצלחת לרמז מהשרת.

אם יהיו שינויים במחירים, Google תשלח לאחר מכן <Query> עם נתוני המחירים המעודכנים של המלונות ומסלולי הנסיעה שצוינו.

מידע נוסף זמין במאמר הודעות על בקשה ל-Hint.

תחביר

הרכיב <HintRequest> משתמש בתחביר הבא:

תחביר

<?xml version="1.0" encoding="UTF-8"?>
<HintRequest>
  <LastFetchTime>last_fetch_time</LastFetchTime>
</HintRequest>

מאפיינים

לרכיב <HintRequest> אין מאפיינים.

אלמנטים צאצאים

הרכיב <HintRequest> כולל את רכיבי הצאצא הבאים:

רכיב צאצא סוג תיאור
<LastFetchTime> DateTime הפעם האחרונה ש-Google הצליחה לקבל הודעת Hint Response אל הודעה של Hint Request.

אם פרק הזמן הזה חל לפני הפעם האחרונה שעדכנתם מחירים בשרת, צריך להשיב להודעה הזו באמצעות Hint Response שמציין אילו מלונות השתנו.

אם לא בוצעה לאחרונה אחזור מוצלח, הערך הזה יוגדר לערך מרווח קבוע (כדי למנוע בעיות חמורות יותר עם עיכובים גדולים). הערך הנוכחי של המרווח הקבוע הוא 1,000 שניות, אבל כפוף לשינויים.

מידע נוסף זמין במאמר הודעות Hint Response.

דוגמאות

בדוגמה הבאה מוצגת הודעת Hint Request:

הודעת Hint Request

הדוגמה הבאה מציגה הודעת Hint Request:

<?xml version="1.0" encoding="UTF-8"?>
<HintRequest id="ABCDEF" timestamp="2018-06-07T16:20:00Z">
  <LastFetchTime>2018-03-25T00:04:09Z</LastFetchTime>
</HintRequest>

<Query>

רכיב הבסיס של הודעת Query. הודעות Query הן בקשות מ-Google לעדכוני תמחור ומטא-נתונים. אפשר להשתמש בהם גם במצבי משלוח – Pull וגם בתמחור עדכני.

יש שלושה סוגים של הודעות Query:

  • תמחור בזמן אמת: Google מגיבה לבקשה ספציפית של משתמש ומבקשת עדכון של המחיר בזמן אמת. כשהשותפים מקבלים את ההודעה Live pricing query, השותפים צריכים להשיב עם הודעת <Transaction> שכוללת את נתוני התמחור המבוקשים ברכיבי <Result>.

  • עם תמחור לפי הקשר: Google מעדכנת את המטמון של המחירים על סמך הקשרים פופולריים בעבר. כשאתם מקבלים את ההודעה With context query, עליכם להשיב להודעה <Transaction> שמכילה את פרטי התמחור המבוקשים ברכיבי <Result>.

  • מטא-נתונים: Google מבקשת עדכונים של מטא-נתונים של חדרים ושל חבילות חדרים במלונות שצוינו. כשמקבלים את ההודעה Metadata Query, צריך לענות להודעה <Transaction> שבה מפורטות הנתונים על החדרים ועל חבילות החדרים באלמנטים <PropertyDataSet>.

למידע נוסף, ראו סקירה כללית על תמחור לשאילתות תמחור ומטא-נתונים של חבילת חדר לשאילתות של מטא-נתונים.

בהמשך מתואר התחביר של שלושת הסוגים השונים.

תחביר

הרכיב <Query> משתמש בתחביר הבא:

תמחור בזמן אמת

<?xml version="1.0" encoding="UTF-8"?>
<Query latencySensitive="true_or_false">
  <Checkin>YYYY-MM-DD</Checkin>
  <Nights>number_of_nights</Nights>
  <!-- Only for Check-in Date Range pricing queries (Changed Pricing) -->
  <FirstDate>YYYY-MM-DD</FirstDate>
  <LastDate>YYYY-MM-DD</LastDate>
  <!-- Only for Ranged Stay pricing queries (Changed Pricing) -->
  <AffectedNights>number_of_nights</AffectedNights>
  <PropertyList>
    <Property>hotel_id</Property>
    ...
  </PropertyList>
  <!-- See documentation below for <Context> -->
  <Context>
   ...
  </Context>
</Query>

עם הקשר

<?xml version="1.0" encoding="UTF-8"?>
<Query>
  <Checkin>YYYY-MM-DD</Checkin>
  <Nights>number_of_nights</Nights>
  <!-- Only for Check-in Date Range pricing queries (Changed Pricing) -->
  <FirstDate>YYYY-MM-DD</FirstDate>
  <LastDate>YYYY-MM-DD</LastDate>
  <!-- Only for Ranged Stay pricing queries (Changed Pricing) -->
  <AffectedNights>number_of_nights</AffectedNights>
  <PropertyContextList>
    <PropertyContext>
      <Property>hotel_id</Property>
      ...
      <!-- See documentation below for <Context> -->
      <Context>
      ...
      </Context>
    </PropertyContext>
  </PropertyContextList>
</Query>

מטא-נתונים

<HotelInfoProperties>
  <Property>property_ID</Property>
  ...
</HotelInfoProperties>

מאפיינים

הרכיב <Query> עשוי להכיל מאפיין אחד: latencySensitive.

המאפיין latencySensitive הוא אופציונלי. אם הפרמטר מקבל את הערך true ומוגדר לו, המשמעות היא שהשאילתה היא Live Pricing Query. כדי לבקש מ-Google לשלוח שאילתות עם המאפיין latencySensitive, צריך לבקש ממנהל החשבונות הטכני (TAM).

אלמנטים צאצאים

הרכיב <Query> כולל את רכיבי הצאצא הבאים:

רכיב צאצא סוג השאילתה סוג תיאור
<AffectedNights> Pricing integer מספר לילות השהייה בטווח. הרכיב הזה משמש רק לשאילתות תמחור של שהייה לטווח ארוך שנעשה בהן שימוש בתמחור השתנה.
<Checkin> Pricing Date התאריכים של שינוי במחיר ספציפי.
<Context> Pricing (Live Pricing Queries only) <Context> בשאילתות של תמחור בזמן אמת, השדה מציין פרמטרים מסוימים שבהם השאילתה נשלחת. רכיבי צאצא כוללים:
  • <Occupancy>: מספר האורחים הכולל
  • <OccupancyDetails>: סוג האורחים, כמו מבוגרים או ילדים
  • <UserCountry>: המדינה שבה המשתמש נמצא
  • <UserDevice>: סוג המכשיר שבו האורח השתמש כדי לחפש מלון, למשל "mobile, "tablet " או "desktop".

אפשר לחזור על האלמנט <Context> בבקשה אחת, ולאפשר שאילתות לגבי תפוסה שונה. בכתובת <Context> מפורטת רשימה של רכיבי צאצא, תחביר ודוגמאות.

<FirstDate> Pricing Date תאריך ההתחלה של טווח מסלולי נסיעה שעליהם חל המחיר. הרכיב הזה משמש רק לשאילתות של תמחור טווח תאריכים של צ'ק-אין שנעשה בהן שימוש בתמחור השתנה.
<HotelInfoProperties> Metadata string נכס אחד או יותר ש-Google רוצה לקבל עליהם מטא-נתונים של חדרים ושל חבילת חדר בהודעת מטא-נתונים Query. הרכיב הזה יכול להכיל אלמנט <Property> אחד או יותר שמציינים מזהי נכס.
<LastDate> Pricing Date תאריך הסיום של טווח מסלולי נסיעה שעליהם חל המחיר. הרכיב הזה משמש רק לשאילתות תמחור מסוג 'טווח תאריכים של צ'ק-אין' שנעשה בהן שימוש ב-Pull + Hints.
<Nights> Pricing integer מספר הלילות בתוכנית נסיעה מסוימת, עד 30.
<PropertyList> Pricing Object

מזהה אחד או יותר של מלון שצריך לעדכן את התמחור שלהם.

צריך להגדיר כל מלון ברכיב <Property>. הערך הוא מחרוזת שתואמת למזהה מלון ברשימת המלונות. לדוגמה:

<PropertyList>
  <Property>pid1</Property>
  <Property>pid2</Property>
</PropertyList>

דוגמאות

שאילתת תמחור

הדוגמה הבאה מציגה הודעה עם שאילתת תמחור שמבקשת עדכוני מחירים לקבוצת מלונות, שזמינה ל-3 לילות, והחל מ-10 ביוני 2018:

<?xml version="1.0" encoding="UTF-8"?>
<Query>
  <Checkin>2023-05-23</Checkin>
  <Nights>3</Nights>
  <PropertyList>
    <Property>pid5</Property>
    <Property>pid8</Property>
    <Property>pid13</Property>
    <Property>pid21</Property>
  </PropertyList>
</Query>

שאילתה לגבי תמחור בזמן אמת

הדוגמה הבאה מציגה שאילתה של תמחור בזמן אמת עם מגבלת זמן תגובה של 500 אלפיות השנייה:

<?xml version="1.0" encoding="UTF-8"?>
<Query latencySensitive="true">
  <Checkin>2017-06-07</Checkin>
  <Nights>5</Nights>
  <DeadlineMs>500</DeadlineMs>
  <PropertyList>
    <Property>8675309</Property>
  </PropertyList>
  <Context>
    <Occupancy>4</Occupancy>
    <OccupancyDetails>
      <NumAdults>2</NumAdults>
      <Children>
        <Child age="8"/>
        <Child age="5"/>
      </Children>
    </OccupancyDetails>
    <UserCountry>US</UserCountry>
    <UserDevice>mobile</UserDevice>
  </Context>
</Query>

עם שאילתת הקשר

<?xml version="1.0" encoding="UTF-8"?>
<Query>
  <Checkin>2023-05-23</Checkin>
  <Nights>2</Nights>
  <PropertyContextList>
    <PropertyContext>
      <Property>8675309</Property>
      <!-- In the future, occupancy and device might be specified -->
      <Context><UserCountry>US</UserCountry></Context>
      <Context><UserCountry>GB</UserCountry></Context>
    </PropertyContext>
    <PropertyContext>
      <Property>8675310</Property>
      <Property>8675311</Property>
      <Context><UserCountry>CA</UserCountry></Context>
    </PropertyContext>
  </PropertyContextList>
</Query>

שאילתה של מטא-נתונים

<?xml version="1.0" encoding="UTF-8"?>
<Query>
  <HotelInfoProperties>
    <Property>pid5</Property>
    <Property>pid8</Property>
    <Property>pid13</Property>
    <Property>pid21</Property>
  </HotelInfoProperties>
</Query>

לדוגמאות נוספות, כולל שאילתות תמחור לפי טווח תאריכים של שהייה בפועל ושל צ'ק-אין, ראו Query דוגמאות להודעות.

<Context>

הרכיב <Context> מתאר מידע עבור Live pricing query, כולל מספר וסוג האורחים, מדינת המשתמש ומכשיר המשתמש.

אף פעם לא ייעשה שימוש במספר <Context> במדינות שונות או במכשירי משתמש שונים. אם נעשה שימוש במספר <Context> כדי לשלוח שאילתות לגבי מספר אנשים, יש לציין את מחיר התפוסה כחבילת חדר נוספת עבור הנכס או תוכנית הנסיעה התואמים. לכל נכס או תוכנית נסיעה צריך להיות בלוק <Result> אחד, שכולל את המחירים למספר אורחים.

פרטי התגובה לשאילתה <Context> מופיעים בכתובת <OccupancyDetails>.

תחביר

הרכיב <Context> משתמש בתחביר הבא:

תחביר

<?xml version="1.0" encoding="UTF-8"?>
<Query latencySensitive="true_or_false">
  <Checkin>date</Checkin>
  <Nights>number_of_nights</Nights>
  <DeadlineMs>number_of_milliseconds</DeadlineMs>
  <PropertyList>
    <Property>property_ID</Property>
  </PropertyList>
  <Context>
  <Occupancy>total_number_of_guests</Occupancy>
  <OccupancyDetails>
    <NumAdults>number_of_adults</NumAdults>
    <Children>
      <Child age=age_of_one_child_guest/>
      <Child age=age_of_one_child_guest/>
    </Children>
  </OccupancyDetails>
  <UserCountry>end_user_country</UserCountry>
  <UserDevice>user_device_type</UserDevice>
  </Context>
</Query>

אלמנטים צאצאים

הרכיב <Context> כולל את רכיבי הצאצא הבאים:

רכיב צאצא סוג השאילתה סוג תיאור
<Occupancy> Pricing integer מציין את מספר האורחים הכולל.

לא חובה, אבל שאילתות עם <Occupancy> צריכות ליצור הודעת עסקה עם חבילות החדרים המתאימות שהוגדרו לכל שאילתה <Occupancy>.

הערה: יכול להיות ש-<Occupancy> לא תמיד יופיע בשאילתה. במקרים כאלה, יש להחזיר מחירים של כל התפוסה.

<OccupancyDetails> Pricing Object מופיע לפני <Occupancy>. מציין אורחים לפי סוג, כולל:

  • <NumAdults>: מספר האורחים המבוגרים
  • <Children> ו-<Child="age">: הפרמטר הזה מציין אילו אורחים הם ילדים (בדרך כלל בגילאי 0 עד 17) ויכול לכלול את הגיל של כל אחד מהילדים.
  • לא חובה, אבל שאילתות עם <OccupancyDetails> צריכות ליצור הודעת עסקה עם חבילות החדרים המתאימות שהוגדרו לכל <Occupancy> שאילתות.

    הערה: יכול להיות ש-<OccupancyDetails> לא תמיד יופיע בשאילתה. במקרים כאלה, עליכם להניח שכל האורחים הם מבוגרים.

<UserCountry> Pricing string

סינון המחירים מתבצע לפי המדינה שבה המשתמש נמצא. הערך הוא קוד מדינה בן 2 אותיות, כמו “US” לארצות הברית, או קוד אזור כמו "EU" לציון "אירופה".

שאילתות שבהן מוגדר <UserCountry> אמורות להתקבל הודעת עסקה עם הבלוק <Rates> המתאים המוגדר למדינה שבשאילתה.

<UserDevice> Pricing string

סינון המחירים לפי סוג המכשיר שממנו המשתמש מבצע את החיפוש. ערכים אפשריים:

  • mobile
  • desktop
  • tablet

שאילתות שבהן מוגדר <UserDevice> אמורות להתקבל הודעת טרנזקציה עם הבלוק <Rates> המוגדר לסוג המכשיר שבשאילתה.

דוגמאות

נוכחות

בדוגמה הבאה מוצגת שאילתה של תמחור בזמן אמת עבור <Occupancy> ב-<Context>. השאילתה בנושא תמחור בזמן אמת מיועדת ל-3 אורחים מבוגרים.

<?xml version="1.0" encoding="UTF-8"?>
<Query latencySensitive="true">
  <Checkin>2017-06-07</Checkin>
  <Nights>4</Nights>
  <DeadlineMs>500</DeadlineMs>
  <PropertyList>
    <Property>45617</Property>
  </PropertyList>
  <Context>
    <Occupancy>3</Occupancy>
    <UserCountry>US</UserCountry>
    <UserDevice>mobile</UserDevice>
  </Context>
</Query>

פרטי התפוסה

בדוגמה הבאה מוצגת שאילתה של תמחור בזמן אמת עם <OccupancyDetails> בתוך <Context>. השאילתה בנושא תמחור בזמן אמת מיועדת ל-4 אורחים, 2 מהם הם ילדים, ומחפשת תעריף שרלוונטי להזמנה של אורח בארה"ב דרך מכשיר נייד:

<?xml version="1.0" encoding="UTF-8"?>
<Query latencySensitive="true">
  <Checkin>2017-06-07</Checkin>
  <Nights>5</Nights>
  <DeadlineMs>500</DeadlineMs>
  <PropertyList>
    <Property>8675309</Property>
  </PropertyList>
  <Context>
    <Occupancy>4</Occupancy>
    <OccupancyDetails>
      <NumAdults>2</NumAdults>
      <Children>
        <Child age="4"/>
        <Child age="12"/>
      </Children>
    </OccupancyDetails>
    <UserCountry>US</UserCountry>
    <UserDevice>mobile</UserDevice>
  </Context>
</Query>

הקשרים מרובים

הדוגמה הבאה ממחישה את השימוש ברכיב <Context> נוסף בשאילתה של תמחור בזמן אמת.

<?xml version="1.0" encoding="UTF-8"?>
<Query latencySensitive="true">
  <Checkin>2017-06-07</Checkin>
  <Nights>4</Nights>
  <DeadlineMs>500</DeadlineMs>
  <PropertyList>
    <Property>45617</Property>
  </PropertyList>
  <Context>
    <Occupancy>3</Occupancy>
    <UserCountry>US</UserCountry>
    <UserDevice>mobile</UserDevice>
  </Context>
  <Context>
    <Occupancy>6</Occupancy>
    <OccupancyDetails>
      <NumAdults>4</NumAdults>
      <Children>
        <Child age="6"/>
        <Child age="10"/>
      </Children>
    </OccupancyDetails>
    <UserCountry>US</UserCountry>
    <UserDevice>mobile</UserDevice>
  </Context>
</Query>