Создать собственный тип поля

<< Показать Оглавление >>

Список REST-методов > Типы полей      

Создать собственный тип поля

post

/api/FormElementType

Назначение

Создание собственного типа поля для последующего использования на форме.

Поля запроса

Поле

Тип

Примечание

Id

Int32

Идентификатор типа данных. Значение должно быть больше 1000

Name

String

Наименование типа поля

XmlGrammar

String

Строка с SRGS-грамматикой. В тэгах, в переменной out возвращается результирующее распознанное значение

info

Построение SRGS-грамматики для своего собственного типа является нетривиальной задачей. Однако достаточно опытный специалист вполне может реализовать свою грамматику согласно следующим стандартам:

1.Грамматика SRGS: https://www.w3.org/TR/speech-grammar/

2.Семантическая интерпретация SISR: https://www.w3.org/TR/semantic-interpretation/

 

Формат тегов семантической интерпретации ограничен форматом "semantics/1.0"

Пример при работе через Voice2Med Client:

curl --location --request POST 'http://localhost:39256/api/FormElementType' \

--header 'Content-Type: application/json' \

--data-raw '{

    "Id": 10001,

    "Name": "SexType",

    "XmlGrammar": "<?xml version=\"1.0\" encoding=\"utf-8\"?>

    <grammar xml:lang=\"ru-RU\" root=\"Sex\" mode=\"voice\" version=\"1.0\" xmlns=\"http://www.w3.org/2001/06/grammar\" tag-format=\"semantics/1.0\">

        <rule id=\"Sex\" scope=\"public\">

            <one-of>

                <item>Мужской<tag>out='\''М.'\''</tag></item>

                <item>Женский<tag>out='\''Ж.'\''</tag></item>

            </one-of>

        </rule>

    </grammar>"

}'
 

Пример при работе через Dictation Server:

curl --location --request POST 'http://dictationserver-host:39255/api/FormElementType' \

--header 'Content-Type: application/json' \

--data-raw '{

    "Id": 10001,

    "Name": "SexType",

    "XmlGrammar": "<?xml version=\"1.0\" encoding=\"utf-8\"?>

    <grammar xml:lang=\"ru-RU\" root=\"Sex\" mode=\"voice\" version=\"1.0\" xmlns=\"http://www.w3.org/2001/06/grammar\" tag-format=\"semantics/1.0\">

        <rule id=\"Sex\" scope=\"public\">

            <one-of>

                <item>Мужской<tag>out='\''М.'\''</tag></item>

                <item>Женский<tag>out='\''Ж.'\''</tag></item>

            </one-of>

        </rule>

    </grammar>"

}'
 

Поля ответа

В Data возвращается:

•true — если новый тип данных был создан;

•false — если новый тип создать не удалось.

Пример:

{
    "Data": true,
    "Error": null
}