• +49-(0)721-402485-12
Ihre Experten für XML, XQuery und XML-Datenbanken

XQuery-Grammatik

Die folgende Liste repräsentiert die XQuery-Grammatik in der erweiterten Backus-Naur-Form (EBNF). Die Grammatik ist dabei aufgeteilt in die Definition terminaler Symbole und nichtterminaler Symbole.

Terminale Symbole

[1]Pragma::="(::" "pragma" QName PragmaContents* "::)"
[2]MUExtension::="(::" "extension" QName ExtensionContents* "::)"
[3]ExprComment::="(:" "ExprCommentContent | ExprComment)* ":)"
[4]ExprCommentContent::=Char
[5]PragmaContents::=Char
[6]ExtensionContents::=Char
[7]IntegerLiteral::=Digits
[8]DecimalLiteral::=("." Digits | (Digits "." [0-9]*)
[9]DoubleLiteral::=(("." Digits | (Digits ("." [0-9]*?)) ("e" | "E") ("+" | "-")? Digits)
[10]StringLiteral::=(' " ' (PredefinedEntityRef | CharRef | (' " ' ' " ') | [^"&])* ' " ') | (" ' " (PredefinedEntityRef | CharRef (" ' " " ' ") | [^'&])* " ' ")
[11]S::=[http://www.w3.org/TR/REC-xmlNT-S]XML
[12]SchemaMode::="lax" | "strict" | "skip"
[13]SchemaGlobalTypeName::="type" "(" QName ")"
[14]SchemaGlobalContext::=QName | SchemaGlobalTypeName
[15]SchemaContextStep::=QName
[16]Digits::=[0-9]+
[17]EscapeQuot::=' " ' ' " '
[18]PITarget::=NCName
[19]NCName::=[http://www.w3.org/TR/REC-xml-names/NT-NCName] Names
[20]VarName::=QName
[21]QName::=[http://www.w3.org/TR/REC-xml-names/NT-QName] Names
[22]PredefinedEntityRef::="&" ("lt" | "gt" | "amp" | "quot" | "apos") ";"
[23]HexDigits::=([0-9] | [a-f] | [A-F])+
[24]CharRef::="&" (Digits | "x" HexDigits)) ";"
[25]EscapeApos::=" ' "
[26]Char::=[http://www.w3.org/TR/REC-xmlNT-Char] XML
[27]ElementContentChar::=Char - [{}<&]
[28]QuotAttContentChar::=Char - ["{}<&]
[29]AposAttContentChar::=Char - ['{}<&]

 

Quelle: "XQuery – Grundlagen und fortgeschrittene Methoden", dpunkt-Verlag, Heidelberg (2004)

<< zurückvor >>