7

你会选择哪个词来标记一个元素的绝对堆栈级别——换句话说,它相对于根/文档元素的嵌套程度?

水平深度之间,您会选择哪一个,为什么?什么是常用的或首选的?在没有有意义的上下文的情况下,您会发现哪一个不那么令人困惑?

我尝试检查XML 规范,但没有取得多大成功。

4

9 回答 9

9

我称之为Depth

众所周知,XML 是一个Node based structure.

我们都知道,在数据结构中,我们广泛使用这两个术语。

如果我们谈论二叉树结构,我们通常会说

节点位于/位于哪个深度级别?

我们也在 DFS(深度优先搜索)和 BFS(广度优先搜索)中使用这个术语。当我们下降时,我们称之为它level depth/down (deep),当我们上升时,我们称之为它level up。所以level代表position at specific pointdepth代表How Deep it is。以下是我想传达的内容

二叉树表示

级别表示

在 XML 中,如果我们想找出更深层次(深度)的元素,我们使用descendant. 这是什么意思?我们指的depth level是元素的。

在 AVL 二叉树中,通常我们计算levela的值Node,并根据它旋转树以使其平衡。

换句话说,

一个节点的depth是到它的根的路径的长度(即它的根路径)或者depth是到任何 的最大距离node to root

level节点的 是从 开始的最长路径上的节点数node to a leaf

来自维基百科的参考

但如果我们谈论 XML 结构,该术语Depth最好代表 XML 节点。所以我选择Depth

编辑:感谢@Alex 的宝贵版本。在他添加之后,我还编辑了一些东西来改进答案。

于 2013-05-12T04:31:27.063 回答
8

对我来说,水平意味着上升,深度意味着下降。

所以我会选择深度。

但我学到了一条规则:如果你不能在两个选项之间做出选择,那是因为两个选项都一样好,所以掷硬币继续前进。

于 2013-05-10T08:01:07.163 回答
5

A "level" represents all nodes that have the same depth within a tree (a grouping construct). The depth is therefore the integer representing the relative distance from the root node to any other node.

So imho I would go for "depth" as the integral value, and all nodes with the same "depth" are on one "level".

于 2013-05-16T13:57:54.327 回答
2

我会深入。

显然很多人交替使用水平和深度。但在我的理解水平上,可以指一个元素与根元素的距离,或与与根元素具有相同距离的所有元素。为了避免这种歧义,我更喜欢深度。

此外,树通常在顶部显示其根元素,如 NullVoid 所示。由于您可以将 XML 元素视为具有节点的树,因此我们还有另一个参数来支持深度。最后一个是深度工作,因为 XML 元素在 XML 文件中的表示方式;-)

于 2013-05-16T10:49:08.707 回答
0

我会选择深度这个词。

XML 是基于树的表示,DOM 也是。

如果我们以树为例:
节点的深度表示该节点和根之间的 #of 边。这是不变的。
另一方面,“级别”是任意的。级别值取决于我将根节点放置在哪个级别(级别 0 或级别 1)

由于您正在开发一种编程语言,因此我尝试查看它们实际上具有 XML 节点的深度属性的地方:
1. .NET:XMLTextReader具有深度属性。
2. Javascript:没有内置深度属性。

于 2013-05-16T20:09:02.433 回答
0

水平和高度相同,但深度是从任何节点到根的最大距离......并且在高度的情况下相反。

于 2013-05-16T18:31:12.400 回答
0

我可以互换使用两者。_ __

于 2013-05-07T22:03:48.473 回答
0

如果您在谈论“堆栈”,例如在数据结构中,那么深度是首选术语。从 XML 文档的角度来看,嵌套深度和级别似乎都是常用的。一项快速的谷歌调查显示了大约 600000 个“xml 嵌套级别”和“xml 嵌套深度”的结果。

我会说选择一个并在相同的上下文中始终如一地坚持下去。

于 2013-05-07T22:14:24.643 回答
0

树中特定位置的深度,遍历树的级别。即从深度 5 往下一层。

你的关卡深度是多少?

你的深度是什么水平?

你从深度 5 到了多少级?

你离5级有多少深度?

于 2013-05-16T14:01:35.750 回答