Attributes | Values |
---|
described by
| |
Description
| - Composes trees of shallow copies of given XML entities.The function takes a single parameter which can be any expression. The function evaluates its argument and returns a shallow copy of the nodes that are selected by the argument, preserving any relationships that exist among these nodes. Duplicate nodes are removed before the processing. The structure of the resulting node-set may be explained in the following way. First of all, all input entities are grouped by their documents, so we have a set of distinct documents and for every document we have a list of entities that refers to various nodes of the document. After that, every such document is processed separately, and the result of processing is a node-set; the union of these node-sets will be returned as the result of the call of filter() function. A copy of the document is made, and a "color" is assigned to every node of the copy: it's "black if the original node is listed in the selection sequence, otherwise it's "white". Then "white" nodes are removed from the copy, node after node: if a "white" node may be found, it is replaced with list of its children. Finally, we have a list of one or more "black" nodes whose descendants are all "black", too, and this list is added into the resulting node-set. (The actual algorithm is much faster and much more complicated than the described one, but the result is identical.)
|
Creator
| - virtuoso.docs@openlinksw.com
|
Date
| - 2013-07-11T21:22:54Z
- 2015-02-05T21:17:51Z
|
Title
| |
type
| |
content:encoded
| - Composes trees of shallow copies of given XML entities.The function takes a single parameter which can be any expression.
The function evaluates its argument and returns a shallow copy of the nodes that are selected by the argument,
preserving any relationships that exist among these nodes. Duplicate nodes are removed before the processing.
The structure of the resulting node-set may be explained in the following way.
First of all, all input entities are grouped by their documents, so we have a set of distinct documents and
for every document we have a list of entities that refers to various nodes of the document.
After that, every such document is processed separately, and the result of processing is a node-set;
the union of these node-sets will be returned as the result of the call of filter() function.
A copy of the document is made, and a "color" is assigned to every node of the copy:
it's "black if the original node is listed in the selection sequence,
otherwise it's "white". Then "white" nodes are removed from the copy, node after node:
if a "white" node may be found, it is replaced with list of its children. Finally, we have a list of
one or more "black" nodes whose descendants are all "black", too, and this list is
added into the resulting node-set.
(The actual algorithm is much faster and much more complicated than the described one, but the result is identical.)
|
rss:category
| |
is topic
of | |
is rdf:_770
of | |