Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
哪种正式语言类是XML和JSON,具有唯一键(它们不是上下文无关的)_Xml_Json_Computer Science_Language Theory_Formal Languages - Fatal编程技术网

哪种正式语言类是XML和JSON,具有唯一键(它们不是上下文无关的)

哪种正式语言类是XML和JSON,具有唯一键(它们不是上下文无关的),xml,json,computer-science,language-theory,formal-languages,Xml,Json,Computer Science,Language Theory,Formal Languages,请不要在这里回答,而是在cstheory.stackexchange,在哪里 JSON和XML都经常被称为上下文无关语言——它们都主要由EBNF中的形式语法指定。然而,这仅适用于定义为不需要对象键唯一性的JSON(许多人可能不知道,但{“a”:1,“a”:2}是有效的JSON!)。但是如果您需要JSON中的唯一键,或者这不能用上下文无关的语法来表示。但是,对于具有唯一键的JSON和格式良好的XML(这意味着唯一的属性名),哪一种是语言类 我在这个主题上找到的最好的论文之一(Murato等人,20

请不要在这里回答,而是在cstheory.stackexchange,在哪里

JSON和XML都经常被称为上下文无关语言——它们都主要由EBNF中的形式语法指定。然而,这仅适用于定义为不需要对象键唯一性的JSON(许多人可能不知道,但{“a”:1,“a”:2}是有效的JSON!)。但是如果您需要JSON中的唯一键,或者这不能用上下文无关的语法来表示。但是,对于具有唯一键的JSON和格式良好的XML(这意味着唯一的属性名),哪一种是语言类

我在这个主题上找到的最好的论文之一(Murato等人,2001:)明确排除了完整性约束,例如要在附加层上检查的键/键引用和唯一性。除此之外,由XML模式或DTD定义的XML子集是上下文无关的。但不是所有格式良好的XML文档的完整集合

我认为嵌套堆栈自动机(=索引语言)应该能够解析具有唯一键约束的JSON。对于XML,可以将所有逗号分隔的唯一整数列表的问题简化为语言S。有人知道得更多吗,最好是引用


p.S:一个决定语言的简单算法(除了上下文无关部分)基于一个好的排序算法。因此,在O(n logn)最坏情况下,它应在“线性时间”内可判定。我还没有发现复杂性类是“轻度上下文敏感”还是“索引”,但可能介于上下文无关和上下文敏感之间(?)。

让我们把这个问题作为离题来结束,并指出: