Am 04.07.2022 um 17:11 schrieb Eliot Kimber:
I feel like I should know how to do this (and possibly I’ve previously been told how and have forgotten), but I’m at a loss. I am implementing a process that gathers nodes from a single document (a DITA map) and constructs a system of maps where I’m using the maps primarily to represent a tree and enable lookup of things by key. However, the order of the elements that make up these maps is also important (DITA’s rules for how you build DITA key spaces from maps depends entirely on document order). For example, I have a map that maps “key names” to the elements that declare those key names, i.e.: map { “key-01” : (<topicref keys=”key-01” href=”foo.dita”/>, <topicref keys=”key-01” href=”bar.dita”/>) } This is the initial state of the map (reflecting pass 1 over the DITA map document) but then I need to add additional elements to the sequence that is the value of entry “key-01” and I need the resulting sequence to be in document order. So my question: given two sequences of nodes from the same document, how does one construct a new sequence where the nodes are in document order?
$seq1 | $seq2 should do, if you want duplicates eliminated.