<!-- beta delta zeta iota kappa lambda tau upsilon-->
</vertex>
</vertices>
Базовые
продукции XPath
В этом разделе мы приведем базовые синтаксические правила языка XPath. Со многими из них мы уже встречались в правилах более высокого уровня, некоторые определены в спецификации для того, чтобы облегчить реализацию лексического разбора XPath-выражений в различных процессорах.
Литералы — это строковые значения, заключенные в одинарные или двойные кавычки. В литералах нельзя использовать символ кавычек, в которые они заключены. Кроме этого, поскольку XPath-выражения чаще всего используются в атрибутах элементов, в них нельзя использовать символы "
<
" и "
&
" — они должны заменяться на сущности. Литералам соответствует продукция
Literal
, определяемая в виде:
[XP29] Literal ::= '"' [^"]* '"' | "'" [^']* "'"
XPath использует десятичную систему счисления. Наборы цифр, соответствующие правилу
Digits
, могут состоять из цифр от
0
до
9
:
[XP31] Digits ::= [0-9]+
Число в XPath состоит из последовательности цифр, которые могут быть разделены точкой, причем точка может стоять как в начале числа (
.5
), так и в конце (
5.
). Числу соответствует EBNF-правило
Number
:
[XP30] Number ::= Digits ('.' Digits?)? | '.' Digits
Оператору умножения соответствует символ "
*
" и синтаксическое правило
MultiplyOperator
:
[XP34] MultiplyOperator ::= '*'
Именам переменных, которые используются в XPath, предшествует символ "
$
". Сами же имена должны удовлетворять продукции
QName
, которую мы рассматривали в разделе "Расширенные имена".