Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Possibility of more intelligible branch names for relations #169

Closed
tmadlener opened this issue Jan 12, 2021 · 2 comments · Fixed by #405
Closed

Possibility of more intelligible branch names for relations #169

tmadlener opened this issue Jan 12, 2021 · 2 comments · Fixed by #405

Comments

@tmadlener
Copy link
Collaborator

Currently OneToManyRelations and OneToOneRelations are simply stored with a #{index} post-fix, where the index runs from 0 to the number of total relations, starting with the OneToManyRelations. This makes it very hard to interpret the branches in the produced root output file. A similar problem exists for the VectorMembers, where the post fix is _{index}.

When working directly with the root files it might be nicer to have more intelligible branch names, e.g. something like #{relation_name}.

Opening this issue here to not forget about it and also to maybe gather feedback into what the best solution would be here. Currently we run the danger that people "circumventing" the EventStore rely upon the order of the relations, when implementing their solution, but this order is basically an implementation detail. Some people are already using this, so it might be good to either make it very explicit that this is indeed an implementation detail that can change without outside warning, or to make this part of the "API" by using more verbose branch names.

One of the open questions that would need to be answered first is whether it is actually possible to use other branch names at all. It is not yet entirely clear to me whether this is possible and how much work it would be to implement it.

@andresailer
Copy link
Member

Relates to #86

@tmadlener
Copy link
Collaborator Author

Another point to consider is that RDataFrame needs column names that are valid c++ identifiers. Currently this is handled by something like

(df.Alias("Muon0", "Muon#0.index")  # give this an an Alias that is a valid c++ identifier 
   .Define("doStuff(Muon0)") )      # now can use the branch

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants