Project

General

Profile

Actions

Task #5199

closed

Task #5190: Name tree for storing streams/attribute.

features that the parser could use

Added by Adam Thieme over 2 years ago. Updated about 2 years ago.

Status:
Closed
Priority:
Normal
Assignee:
-
Start date:
03/30/2022
Due date:
% Done:

100%

Estimated time:

Description

get all leaves of any node

be able to do addition and subtraction operations on sets of leaves (this is the main thing for allowing/denying attributes within the main tree)
EX:
all leaves under /a/b and subtract all leaves under /a/b/c
all leaves under /a/b/ and /a/c/ but not under /a/b/d, /a/c/e/, or /a/a/ (the /a/a/ shouldn't change the outcome)

these are for attribute matching:

get name at X index of stream
EX:
index 2 of /a/b/c/d is c
index 1 of /a/b/c/d is b

get index of name within stream
same as previous, but returns index given a name and a stream

find node with name N
EX:
given a tree with /a/b/, /a/c/b, and /a/b/d, find node with name 'b' should find the highest-level occurrence of 'b', in this case it would be node /a/b/

find node with name N at index X
same as before, but more specific. this would be used in the case where we want to find ///attribute/
if we assume we will have consistent naming (where attributes are listed as /domain/name/attribute/type/value, then we won't need the previous "find node with name N"

Actions

Also available in: Atom PDF