此函數在 EBNF 中顯示的語法為
SearchConditionStr
::= '"' Expression '"'
此函數在 EBNF 中顯示的語法為
SearchExprStrList
::= '[' '"' Expression '"' ( ',' '"' Expression '"' )* ']'
此函數在 EBNF 中顯示的語法為
ProjectedDocumentExprStr
::= ProjectedSearchExprStrList | 'expr("' JSONDocumentExpression '")'
此函數在 EBNF 中顯示的語法為
ProjectedSearchExprStrList
::= '[' '"' Expression ( 'AS' Alias )? '"' ( ',' '"' Expression ( 'AS' Alias )? '"' )* ']'
此函數在 EBNF 中顯示的語法為
SortExprStrList
::= '[' '"' Expression ( 'ASC' | 'DESC' )? '"' ( ',' '"' Expression ( 'ASC' | 'DESC' )? '"' )* ']'
此函數在 EBNF 中顯示的語法為
ExprOrLiteral
::= 'expr("' Expression '")' | Literal
此函數在 EBNF 中顯示的語法為
ExprOrLiterals
::= ExprOrLiteral ( ',' ExprOrLiteral )*
此函數在 EBNF 中顯示的語法為
ExprOrLiteralOrOperand
::= ExprOrLiteral
此函數在 EBNF 中顯示的語法為
PlaceholderValues
::= '{' PlaceholderName ':' ( ExprOrLiteral ) '}'
此函數在 EBNF 中顯示的語法為
PlaceholderName
::= NamedPlaceholderNotQuestionmarkNotNumbered
此函數在 EBNF 中顯示的語法為
DocPath
::= ( '[*]' | ( '[' Index ']' ) | '.*' | ( '.' StringLiteral ) | '**' )+
此函數在 EBNF 中顯示的語法為
Literal
::= '"' StringLiteral '"' | Number | true | false | Document
Expression
::= Literal
| DocPath
| TableField
| FunctionName '(' Expression ( ',' Expression )* ')'
| ':' PlaceholderName
| Expression Operator Expression
| JSONExpression
預期 JSON 文件的 API 呼叫允許使用許多資料類型來描述文件。根據 X DevAPI 的實作和語言,可以使用下列任何資料類型
字串
原生 JSON
JSON 等效語法
DbDoc
產生的文件類別
X DevAPI 的所有實作都允許以特殊 DbDoc 類型和字串來表示文件。
此函數在 EBNF 中顯示的語法為
Document
::= JSONDocument | JSONEquivalentDocument | DbDoc | GeneratedDocumentClasses
此函數在 EBNF 中顯示的語法為
JSONExpression
::= JSONDocumentExpression | '[' Expression ( ',' Expression )* ']'
此函數在 EBNF 中顯示的語法為
JSONDocumentExpression
::= '{' StringLiteral ':' JSONExpression (',' StringLiteral ':' JSONExpression)* '}'
此函數在 EBNF 中顯示的語法為
FunctionName
::= StringLiteral | StringLiteral '.' StringLiteral
此函數在 EBNF 中顯示的語法為
DocumentOrJSON
::= Document | 'expr("' JSONDocumentExpression '")'
此函數在 EBNF 中顯示的語法為
TableField
::= ( StringLiteral '.' )? ( StringLiteral '.' )? StringLiteral ( '@' DocPath )?