However I was thinking about situation where ones open the root file with root. With TTree in the file, you see the tree object and can call obj->Draw(...) directly. Would it be possible to make it the same for RNTuples? Your example is a different approach.
I am thinking about migrating from TTree to RNTuple but lack of RNTuple::Draw means I need to rewrite all the macros we used for our tools set.
I have plenty of macros which I call: root file_name.root macro.C and the macro expects the tree object being available and draw from it.
Thanks for describing your “user story”, which I find very reasonable and sound.
Let me first observe that the snipped above works if myTree is a TTree or an RNTuple instance - exactly the same code, the input format can be transparently switched.
We consciously decided not to try to re-implement TTree::Draw for RNtuple because of the design of the two columnar formats interfaces, which are intrinsically different. Honestly, it would not be possible to re-implement the entire “TTree::Draw cut language” functionality for RNTuple.
Can we help you somehow with the migration to RDF?
This is very bad. The TTree::Draw() is very handy for quick tree inspection. Like open file in the T/Web browser and with one-liner you can draw almost anything you want. With RDataFrame it becomes convoluted.
So I already see that I will have hard time convincing people to move to RNTuple, and most likely we will stick with TTrees.