这里什么是可选的?

问题描述 投票:0回答:1

我承认我的大学时光已经一去不复返了,我可能比我想象的还要生疏一些。

正在阅读此 EBNF:

<create_object_expression> ::= '{' [{property_name | "property_name"} : <scalar_expression>][,…n] '}'

我理解这意味着表达式以文字“{”开头并以“}”结尾。在它们之间,有一个可选的序列。但是,这是否也意味着有效序列可以是“

{ : <what ever scalar expression is parsed here> }
”,因为
property_name | "property_name"
是可选的?

azure-cosmosdb-sqlapi ebnf
1个回答
0
投票

这里什么是可选的?

根据此文档

property_name
不是可选的,它充当 JSON 数据中的
key
,如下所示。

{
  "name": "Pavan",
  "age": 30,
  "isStudent": false
}

在上面的数据中,nameageisStudent是property_names。根据 EBNF,它是有效的格式,因为它以

{
开头并以
}
结尾。

根据此文档

Scalar Expressions
不包含属性名称,如下面的示例所示。

SELECT VALUE ((2 + 11 % 7) - 2) / 2

输出:

[
  2
]

在上面的示例中,输出不包含任何属性名称。大多数情况下,property_name 在标量表达式中是可选的,意味着任何数学方程或任何布尔结果。

© www.soinside.com 2019 - 2024. All rights reserved.