Package de.uni_marburg.mdo_over.model
Class CoSpan
- java.lang.Object
-
- de.uni_marburg.mdo_over.model.CoSpan
-
public class CoSpan extends Object
Models a cospan in the category ofmodel graphs
. As one-to-one mappings are used to model the cospan, only injective morphisms between pullback, domains and codomain are considered. Identifying equivalent nodes and edges by the mappings between the domains and the codomain, the pullback is constructed as the intersection of nodes and edges of both domains.Note: The calculated pullback and its mappings into the domains of the cospan are not reflecting changes to the cospan structure. If the cospan changes a
recalculation
of the pullback is needed.- Author:
- S. John
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description class
CoSpan.PullbackConstructionException
-
Constructor Summary
Constructors Constructor Description CoSpan(ModelGraphMapping firstDomainToCodomain, ModelGraphMapping secondDomainToCodomain)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ModelGraph
getCodomain()
ModelGraph
getFirstDomain()
ModelGraphMapping
getFirstDomainToCodomain()
ModelGraph
getPullback()
Returns the pullback graph for the cospan.ModelGraphMapping
getPullbackToFirstDomain()
Returns the mapping from the pullback to the first domain.ModelGraphMapping
getPullbackToSecondDomain()
Returns the mapping from the pullback to the second domain.ModelGraph
getSecondDomain()
ModelGraphMapping
getSecondDomainToCodomain()
-
-
-
Constructor Detail
-
CoSpan
public CoSpan(ModelGraphMapping firstDomainToCodomain, ModelGraphMapping secondDomainToCodomain)
-
-
Method Detail
-
getPullback
public ModelGraph getPullback()
Returns the pullback graph for the cospan. Calculates the pullback if no pullback has been calculated, yet.- Returns:
- the pullback graph
-
getPullbackToFirstDomain
public ModelGraphMapping getPullbackToFirstDomain()
Returns the mapping from the pullback to the first domain. Calculates the pullback if no pullback has been calculated, yet.- Returns:
- mapping from the pullback to the first domain
-
getPullbackToSecondDomain
public ModelGraphMapping getPullbackToSecondDomain()
Returns the mapping from the pullback to the second domain. Calculates the pullback if no pullback has been calculated, yet.- Returns:
- mapping from the pullback to the second domain
-
getFirstDomain
public ModelGraph getFirstDomain()
-
getSecondDomain
public ModelGraph getSecondDomain()
-
getCodomain
public ModelGraph getCodomain()
-
getFirstDomainToCodomain
public ModelGraphMapping getFirstDomainToCodomain()
-
getSecondDomainToCodomain
public ModelGraphMapping getSecondDomainToCodomain()
-
-