Functorial data migration should work on morphisms of ACSets too. It seems simple to work this out for delta - I'm not sure how other migrations might look. In the case of delta, it is straightforward to apply the functor to the domain and codomain and then copy the components (or type components) based on the data of the functor.
One interesting thing I noticed is that it's not possible to apply a DeltaMigration to a LooseACSetTransformation f: WeightedGraph{Int} -> WeightedGraph{Symbol}, for example. This is because the data of a DeltaTransformation requires you to specify the concrete ACSet types, which means you can't apply the same DeltaMigration to both the domain and codomain of f.
Functorial data migration should work on morphisms of ACSets too. It seems simple to work this out for delta - I'm not sure how other migrations might look. In the case of delta, it is straightforward to apply the functor to the domain and codomain and then copy the components (or type components) based on the data of the functor.
One interesting thing I noticed is that it's not possible to apply a DeltaMigration to a LooseACSetTransformation
f: WeightedGraph{Int} -> WeightedGraph{Symbol}
, for example. This is because the data of a DeltaTransformation requires you to specify the concrete ACSet types, which means you can't apply the same DeltaMigration to both the domain and codomain off
.