Message reduction for all edge types on heterogeneous graph

Is there a way to do message reduction on all edge types on a heterogeneous graph? All the APIs seems to only apply to a certain type of edges. Even the multi_apply APIs has to define a dictionary for each etype. I would like to to edge reduction on all the input edges on a node, so I can do a softmax across all edges. Is there a way to do this without converting the hetero graph to a homo graph?



Currently, I guess no. The reason is that we assume features for different types can have different size, in which case message reduction on all edge types can be ill-defined. For the time being, I will go for to_homo, which also tracks the types of edges in edata. Let met know if you encounter any issues.

doc for dgl.homo