Пространства имен и схемы 70 Сегментация проблемы 71



жүктеу 3,64 Mb.
бет89/150
Дата17.01.2022
өлшемі3,64 Mb.
#33337
түріПротокол
1   ...   85   86   87   88   89   90   91   92   ...   150
Лекции 2

Оператор варианта

Оператор варианта, обычный во многих языках программирования, не был включен в язык XPath 2.0. Эта "оплошность" исправлена в языке XQuery. В него введен оператор варианта typeswitch. Правда, выбор варианта в языке XQuery своеобразен. Он основан на типе выражения, а не на его значении.

Оператор варианта вычисляет выражение, записанное в скобках, и выбирает первый вариант, тип которого совпадает с типом результата выражения. На этом работа оператора заканчивается, оставшиеся варианты не рассматриваются.

Каждый вариант записывается после слова case. В варианте записывается тип и, после слова return, выражение — результат выполнения оператора, Вариант, подходящий под любой выбор, необязателен, он записывается после слова default. Этот вариант имеет смысл записывать только в последнюю очередь, иначе выбор не пройдет дальше него. Например:

typeswitch (//address)

case element(*, USAddress) return //address/state

case element(*, RussiaAddress) return //address/region

default return "Unknown address type"

В каждом варианте может быть определена переменная, получающая значение типа этого варианта. Ее можно использовать только в этом варианте, вне варианта она неизвестна. Вот пример из спецификации языка XQuery:

typeswitch ($customer/billing-address)

case $a as element(*, USAddress) return $a/state

case $a as element(*, CanadaAddress) return $a/province

case $а as element (*, JapanAddress) return $a/prefecture

default return "unknown"

Здесь одна и та же переменная $а принимает три разных значения в трех вариантах выбора. Каждое значение известно только в своем варианте.


жүктеу 3,64 Mb.

Достарыңызбен бөлісу:
1   ...   85   86   87   88   89   90   91   92   ...   150




©g.engime.org 2024
әкімшілігінің қараңыз

    Басты бет
рсетілетін қызмет
халықаралық қаржы
Астана халықаралық
қызмет регламенті
бекіту туралы
туралы ережені
орталығы туралы
субсидиялау мемлекеттік
кеңес туралы
ніндегі кеңес
орталығын басқару
қаржы орталығын
қаржы орталығы
құрамын бекіту
неркәсіптік кешен
міндетті құпия
болуына ерікті
тексерілу мемлекеттік
медициналық тексерілу
құпия медициналық
ерікті анонимді
Бастауыш тәлім
қатысуға жолдамалар
қызметшілері арасындағы
академиялық демалыс
алушыларға академиялық
білім алушыларға
ұйымдарында білім
туралы хабарландыру
конкурс туралы
мемлекеттік қызметшілері
мемлекеттік әкімшілік
органдардың мемлекеттік
мемлекеттік органдардың
барлық мемлекеттік
арналған барлық
орналасуға арналған
лауазымына орналасуға
әкімшілік лауазымына
инфекцияның болуына
жәрдемдесудің белсенді
шараларына қатысуға
саласындағы дайындаушы
ленген қосылған
шегінде бюджетке
салығы шегінде
есептелген қосылған
ұйымдарға есептелген
дайындаушы ұйымдарға
кешен саласындағы
сомасын субсидиялау