Поделиться через


Выбор параметров поиска (предварительная версия)

Внимание

Возможность выбора параметра поиска доступна для предварительной версии. Предварительные версии API и пакеты SDK предоставляются без соглашения об уровне обслуживания (SLA). Рекомендуется не использовать их для рабочих нагрузок. Некоторые функции могут не поддерживаться или могут иметь ограниченные возможности. Дополнительные сведения см. в статье Дополнительные условия использования Предварительных версий Microsoft Azure.

Поиск ресурсов является фундаментальным для службы FHIR®. Каждый ресурс в службе FHIR содержит сведения в виде набора элементов. Параметры поиска работают для запроса информации в этих элементах. При развертывании службы FHIR встроенные параметры поиска включены по умолчанию. Служба FHIR выполняет эффективный поиск путем извлечения и индексирования определенных свойств из ресурсов FHIR во время приема данных.

Доступные параметры поиска позволяют включать или отключать встроенные параметры поиска. Эта возможность позволяет хранить больше ресурсов в выделенном пространстве хранения и повысить производительность, позволяя только нужным параметрам поиска.

Чтобы выполнить обновления состояния для параметров поиска, выполните следующие действия.

  1. Получение состояния параметров поиска.
  2. Обновите состояние параметров поиска.
  3. Выполните задание переиндексации.

В этой статье мы демонстрируем синтаксис поиска FHIR в примере вызовов API с заполнителем {{FHIR_URL}}, который представляет URL-адрес сервера FHIR.

Получение состояния параметров поиска

Конечная точка API ($status') предоставляется для просмотра состояния параметров поиска. Существует четыре состояния ответа:

Состояние Description
Поддерживается Параметр поиска поддерживается службой FHIR, и вы отправили запросы, чтобы включить параметр поиска. Выполните операцию переиндексации, чтобы выполнить от поддерживаемой до включенной.
Включен Параметр поиска включен для поиска. Это состояние является следующим шагом после поддерживаемого состояния.
ОжиданиеDisable Отключение параметра поиска ожидается после выполнения операции переиндексации.
Выключено Параметр поиска отключен.

Чтобы получить состояние для всех параметров поиска, используйте следующий запрос, который возвращает список всех параметров поиска и их состояния. Прокрутите список, чтобы найти нужный параметр поиска.

GET {{FHIR_URL}}/SearchParameter/$status

Чтобы определить состояние отдельных или подмножества параметров поиска, используйте следующие фильтры.

  • Имя. Чтобы определить состояние параметра поиска по имени, используйте этот запрос.
   GET {{FHIR_URL}}/SearchParameter/$status?code=<name of search parameter/ sub string>
  • URL-адрес. Чтобы определить состояние параметра поиска по каноническому идентификатору, используйте этот запрос.
GET {{FHIR_URL}}/SearchParameter/$status?url=<SearchParameter url>
  • Тип ресурса. В FHIR параметры поиска включены на уровне отдельного ресурса, чтобы разрешить фильтрацию и получение определенного подмножества ресурсов. Чтобы определить состояние всех параметров поиска, сопоставленных с ресурсом, используйте этот запрос.
GET {{FHIR_URL}}/SearchParameter/$status?resourcetype=<ResourceType name>

В ответ на запрос GET на $status конечную точку возвращается тип ресурса параметров с состоянием параметра поиска. Вот пример ответа.

{
  "resourceType" : "Parameters",
  "parameter" : [
    "name" : "searchParameterStatus",
    "part" : {
        {
        "name" : "url",
        "valueString" : "http://hl7.org/fhir/SearchParameter/Account-identifier"
        },
        {
        "name" : "status",
        "valueString" : "supported"
        }
    }
  ]
}

Обновление состояния параметров поиска

После получения состояния параметров поиска обновите состояние параметров поиска до Supported или Disabled.

Примечание.

Чтобы обновить состояние параметров поиска, вам потребуется роль диспетчера rbAC диспетчера RBAC службы поиска.

Состояние параметра поиска можно обновить для одного параметра поиска или массово.

Обновление состояния одного параметра поиска

Чтобы обновить состояние одного параметра поиска, используйте следующий запрос API.

PUT {{FHIR_URL}}/SearchParameter/$status
{
    "resourceType": "Parameters",
    "parameter": [
        {
            "name": "searchParameterStatus",
            "part": [
                {
                    "name": "url",
                    "valueUrl": "http://hl7.org/fhir/SearchParameter/Resource-test-id"
                },
                {
                    "name": "status",
                    "valueString": "Supported"
                }
            ]
        }
    ]
}

В зависимости от варианта использования можно сохранить значение состояния состояния "Поддерживаемый" или "Отключено" для параметра поиска. При отправке состояния Disabled в запросе ответ возвращается так PendingDisable , как задание переиндексации должно выполняться для полного удаления связей.

Если вы получаете код состояния HTTP 400 в ответе, это означает, что для определенного параметра поиска нет уникального совпадения. Проверьте идентификатор параметра поиска.

Обновление состояния параметра поиска в массовом режиме

Чтобы обновить состояние параметров поиска в массовом режиме, запрос PUT должен содержать список ресурсов "Параметры" в тексте запроса. Список должен содержать отдельные параметры поиска, которые необходимо обновить.

PUT {{FHIR_URL}}/SearchParameter/$status
{
  "resourceType" : "Parameters",
  "parameter" : [
    {
     "name" : "searchParameterStatus",
     "part" :{
        "name" : "url",
        "valueString" : "http://hl7.org/fhir/SearchParameter/Endpoint-name"
     },
     "part":{ 
        "name" : "status",
        "valueString" : "supported"
     }
    },
         "name" : "searchParameterStatus",
     "part" :{
        "name" : "url",
        "valueString" : "http://hl7.org/fhir/SearchParameter/HealthcareService-name"
     },
     "part":{ 
        "name" : "status",
        "valueString" : "supported"
     }
    },
    ...
  ]
}

Выполнение задания переиндексации

После обновления состояния параметра поиска до Supported или Disabledследующего шага необходимо выполнить задание повторной индексации.

Пока параметр поиска не индексируется, Enabled Disabled состояние параметров поиска не активируется. Выполнение задания переиндексации обновляет состояние от Supported или PendingDisable до Enabled Disabled.

Задание переиндексации можно выполнить для всей базы данных службы FHIR или для определенных параметров поиска. Задание переиндексации может быть интенсивным. Дополнительные сведения см. в разделе "Запуск задания переиндексации".

Примечание.

Документ инструкции возможностей — это набор действий для сервера FHIR. Enabled Параметры поиска перечислены в инструкции возможностей для службы FHIR. Оператор возможностей доступен для конечной точки /metadata.

Вопросы и ответы

Что такое поведение, если запрос включает параметр поиска с состоянием "Поддерживается"?

Параметр поиска в состоянии "Поддерживаемый" должен быть переиндексирован. До тех пор параметр поиска не активируется. Если запрос выполняется в неактивном параметре поиска, служба FHIR отрисовывает ответ без учета этого параметра поиска. В ответе появится предупреждение, указывающее, что параметр поиска не индексирован и не использовался в запросе. Чтобы отобразить ошибку в таких ситуациях, используйте заголовок "Предпочитать: обработка" со значением "strict". Задав этот заголовок, предупреждения передаются как ошибки.

Следующие шаги

Определение пользовательских параметров поиска

Примечание.

FHIR® является зарегистрированным товарным знаком HL7 и используется с разрешением HL7 .