Reference

TM::QL::TS(3pm)

TM::QL::TS - Topic Maps, TMQL Tuple Sequences

  TBD

Tuple sequences (TSs) are sequences of tuples of values. Values are either literals (TM::Literal) or internal map identifiers. Naturally, TSs are modelled as array of array of values. This package simply provides manipulation functions for this data structure. @@@@ states ATOMIFY ATOMIFIED
Functions @@@ multiplies one TSs with another @@@ ts_interleave

simply vertically combine TSes

implements |||

!! first param is modified!!! (cheap)

ts_subtract

implements --- op computes difference (a - b)

ts_intersect

implements the === operator

potentially expensive operation! gets a tuple sequence, takes a tuple, interprets this as argument These boolean functions compare two TSs on a semantic basis, in that the individual value entries are compared according to their type semantics. Two floats, 3.14 and 3.140 for instance are the same, although their representation may differ.

ts_eq respects the ordering of the sequence, whereas ts_uo_eq treats the sequences as bags (multisets).

Note: This contrasts with ts_identical which makes a verbatim comparison on the representation.

Note: ts_uo_eq is a DESTRUCTIVE test, and it is not YET honoring type semantics. TO BE FIXED. This boolean function makes a deep comparison of the two TSs passed in. Only if they are exactly identical, the result will be non-zero. move, move, move

   # apply one step of navigation

Robert Barta, <[email protected]> Copyright (C) 200[5-7] by Robert Barta This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.8.4 or, at your option, any later version of Perl 5 you may have available.