Merge/Unmatched [ Modules ]
SUMMARY
Transofrm elements that are not matched ($Rev: 136 $).
DESCRIPTION
Elements that are not matched must be transformed from the structural and the behavior models into the merged model.
DOMAIN
- hilesS - https://hiles.uniandes.edu.co/1.0/HiLeS
- hilesB - https://hiles.uniandes.edu.co/1.0/HiLeS
- hiles - https://hiles.uniandes.edu.co/1.0/HiLeS
Unmatched/Structural [ Rules ]
[ Top ] [ Unmatched ] [ Rules ]
SUMMARY
Transfotrm a HiLeS Structural to a HiLeS Structural
DESCRIPTION
Unmatched Structural is the one that exists in the root architecture of the strucure model. The Structural must be copied directly to the merged model, hence the transforamtion only performs a copy of the properties and elements.
DOMAIN
SPECIFICATION
relation UnmatchedStructural { checkonly domain HiLeS umstruct:Structural { architecture = umstructa:Architecture{}, name = umstructn, ports = umstructp:Port{}, innerArchitecture = umstructia:Architecture{} } enforce domain HiLeS struct:Structural { architecture = structa:Architecture{} name = structn, ports = structp:Port{}, innerArchitecture = structia:Architecture{} } when { UnmatchedArchitecture(umstructa, structa) } where { UnmatchedArchitecture(umstructa, structa) UnmatchedPorts(umstructp, p); MergeArchitecture(umstructia, bstructia, structia) structp->append(p); } }
Unmatched/UnmatchedArc [ Rules ]
[ Top ] [ Unmatched ] [ Rules ]
SUMMARY
Transfotrm a HiLeS Arc to a HiLeS Arc
DESCRIPTION
Unmatched Arcs are the ones that exist in the behavior model. These Arcs must be copied directly to the merged model, hence the transforamtion only performs a copy of the properties.
DOMAIN
SPECIFICATION
relation UnmatchedArc { checkonly domain HiLeS umarc:Arc { petrinet = unarcpn:PetriNet{}, id = umarcid, to_node = umarcto_node, from_node = umarcfrom_node, to_point = umarcto_point, from_point = umarcfrom_point, } enforce domain HiLeS arc:Arc { petrinet = arcpn:PetriNet{}, id = umarc.id, to_node ::= arcto_node, from_node ::= arcfrom_node, to_point ::= arcto_point, from_point ::= arcfrom_point, } when { UnmatchPetriNet(unarcpn, arcpn) } where { if umarcto_node->notEmprty() then UnmatchedPlace(arcto_node, umarcto_node); UnmatchedTransition(arcto_node, umarcto_node); endif if umarcfrom_node->notEmpty() then UnmatchedPlace(arcfrom_node, umarcfrom_node); UnmatchedTransition(arcfrom_node, umarcfrom_node); endif if umarcto_point->notEmpry() then UnmatchedService(arcto_point, umarcto_point); UnmatchedPort(arcto_point, umarcto_point); endif if umarcfrom_point->notEmpty() then UnmatchedService(arcfrom_point, umarcfrom_point); UnmatchedPort(arcfrom_point, umarcfrom_point); endif } }
Unmatched/UnmatchedArchitecture [ Rules ]
[ Top ] [ Unmatched ] [ Rules ]
SUMMARY
Transfotrm a HiLeS System to a HiLeS System
DESCRIPTION
Unmatched System is the one that exists in the strucure model. The System must be copied directly to the merged model, hence the transforamtion only performs a copy of the properties and elements.
DOMAIN
SPECIFICATION
relation UnmatchedArchitecture { checkonly domain HiLeS umarch:Architecture { system : umarchsys:HilesSystem{}, isDefault = umarchdef, name = umarchn, blocks = umarchb:Block{}, services = umarchs:Service{}, payloads = umarchp:Payload{}, } enforce domain HiLeS arch:Architecture { system : archsys:HilesSystem{}, isDefault = umarchdef, name = umarchn, blocks = archb:Block{}, services = archs:Service{}, payloads = archp:Payload{}, } when { UnmatchedSystem(umarchsys, archsys) } where { UnmatchedStructural(umarchb, b) UnmatchedServices(umarchs, s) UnmatchedPayloads(umarchp, p) archb->append(b) archs->append(s) archp->append(p) } }
Unmatched/UnmatchedFunctional [ Rules ]
[ Top ] [ Unmatched ] [ Rules ]
SUMMARY
Transfotrm a HiLeS Functional to a HiLeS Functional
DESCRIPTION
Unmatched Functional are the ones that exist in the behavior model. These Functional must be copied directly to the merged model, hence the transforamtion only performs a copy of the properties.
SEE ALSO
- MergeArchitecture
- MergePorts
- MergeServices
DOMAIN
SPECIFICATION
relation UnmatchedFunctional { checkonly domain HiLeS umfunc:Functional { architecture = umfunca:Architecture{} name = umfuncn, id = umfuncid, associated = umfuncassoc, ports = umfuncpts:Port{}, } enforce domain HiLeS func:Functional { architecture = funca:Architecture{} name = umfuncn, id = umfuncid, associated = funcassoc, ports = funcpts:Port{}, } when { MergeArchitecture(umfunca, umfunca, funca) } where { UnmatchedPorts(umfuncpts, funcpts) UnmatchedPlaces(umfuncassoc, umfuncassoc) } }
Unmatched/UnmatchedPayload [ Rules ]
[ Top ] [ Unmatched ] [ Rules ]
SUMMARY
Transfotrm a HiLeS Payload to a HiLeS Payload
DESCRIPTION
Unmatched Payloads are the ones that exist in only one of the input models. These Payloads must be copied directly to the merged model, hence the transforamtion only performs a copy of the properties.
SEE ALSO
- MergeArchitecture
- MergePorts
- MergeServices
DOMAIN
SPECIFICATION
relation UnmatchedPayload { checkonly domain HiLeS umpayload:Payload { architecture = umpayloada:Architecture{} name = umpayloadn, type = umpayloady, source = umpayloads, target = umpayloadt, } enforce domain HiLeS payload:Payload { architecture = payloada:Architecture{} name = umpayloadn, type = umpayloady, source = payloads, target = payloadt, } when { MergeArchitecture(umpayloada, umpayloada, payloada) } where { MergePorts(umpayloads, umpayloads, payloads) MergeServices(umpayloads, umpayloads, payloads) MergePorts(umpayloadt, umpayloadt, payloadt) MergeServices(umpayloadt, umpayloadt, payloadt) } }
Unmatched/UnmatchedPetriNet [ Rules ]
[ Top ] [ Unmatched ] [ Rules ]
SUMMARY
Transfotrm a HiLeS PetriNet to a HiLeS PetriNet
DESCRIPTION
Unmatched Petri Nets are the ones that exist in the behavior model. These Petri Nets must be copied directly to the merged model, hence the transforamtion only performs a copy of the elements.
SEE ALSO
- UnmatchPlaces
- UnmatchedTransitions
- UnmatchedArcs
DOMAIN
SPECIFICATION
relation UnmatchedPetriNet { checkonly domain HiLeS umpn:PetriNet { architecture = umpna:Architecture{} elements = umpne:Element{}, } enforce domain HiLeS pn:PetriNet { architecture = pna:Architecture{} elements = pne:Element{}, } when { MergeArchitecture(umpna, umpna, pna) } where { UnmatchedPlaces(umpne, pne) UnmatchedTransitions(umpne, pne) UnmatchedArcs(umpne, pne) } }
Unmatched/UnmatchedPlace [ Rules ]
[ Top ] [ Unmatched ] [ Rules ]
SUMMARY
Transfotrm a HiLeS Place to a HiLeS Place
DESCRIPTION
Unmatched Places are the ones that exist in the behavior model. These Places must be copied directly to the merged model, hence the transforamtion only performs a copy of the properties.
DOMAIN
SPECIFICATION
relation UnmatchedTransition { checkonly domain HiLeS umplace:Place { petrinet = unplacepn:PetriNet{}, id = umplaceid, name = umplacename, hasToken = umplace,hasToken, } enforce domain HiLeS place:Place { petrinet = placepn:PetriNet{}, id = umplaceid, name = umplacename, hasToken = umplace,hasToken, } when { UnmatchPetriNet(untranpn, tranpn) } }
Unmatched/UnmatchedPort [ Rules ]
[ Top ] [ Unmatched ] [ Rules ]
SUMMARY
Transfotrm a HiLeS Port to a HiLeS Port
DESCRIPTION
Unmatched Ports are the ones that exist in only one of the input models. These Ports must be copied directly to the merged model, hence the transforamtion only performs a copy of the properties.
SEE ALSO
DOMAIN
SPECIFICATION
relation UnmatchedPort { checkonly domain HiLeS umport:Port { block = umportb:Block{}, name = umportn, id = umportid, direction = umportdir, } enforce domain HiLeS port:Port { block = portb:Block{}, name = umportn, id = umportid, direction = umportdir, } when { MergeStructuralBlocks(umportb, umportb, port) } }
Unmatched/UnmatchedService [ Rules ]
[ Top ] [ Unmatched ] [ Rules ]
SUMMARY
Transfotrm a HiLeS Service to a HiLeS Service
DESCRIPTION
Unmatched Services are the ones that exist in only one of the input models. These Services must be copied directly to the merged model, hence the transforamtion only performs a copy of the properties.
SEE ALSO
- MergeArchitecture
DOMAIN
SPECIFICATION
relation UnmatchedService { checkonly domain HiLeS umservice:Service { architecture = umservicea:Architecture{} name = umservicen, id = umserviceid, direction = umservicedir, } enforce domain HiLeS service:Service { architecture = servicea:Architecture{} name = umservicen, id = umserviceid, direction = umservicedir, } when { MergeArchitecture(umservicea, umservicea, servicea) } }
Unmatched/UnmatchedSystem [ Rules ]
[ Top ] [ Unmatched ] [ Rules ]
SUMMARY
Transfotrm a HiLeS System to a HiLeS System
DESCRIPTION
Unmatched System is the one that exists in the strucure model. The System must be copied directly to the merged model, hence the transforamtion only performs a copy of the properties and elements.
DOMAIN
SPECIFICATION
relation UnmatchedSystem { checkonly domain HiLeS umhsys:HilesSystem { name = umhsysn, initialArchitecture = umhsysia, } enforce domain HiLeS hsys:HilesSystem { name = umhsysn, initialArchitecture = hsysia, } where { UnmatchedArchitecture(umhsysia, hsysia) } }
Unmatched/UnmatchedTransition [ Rules ]
[ Top ] [ Unmatched ] [ Rules ]
SUMMARY
Transfotrm a HiLeS Transition to a HiLeS Transition
DESCRIPTION
Unmatched Transitions are the ones that exist in the behavior model. These Transitions must be copied directly to the merged model, hence the transforamtion only performs a copy of the properties.
DOMAIN
SPECIFICATION
relation UnmatchedTransition { checkonly domain HiLeS umtran:Transition { petrinet = umtranpn:PetriNet{}, id = umtranpnid, name = umtranpnname, min = umtranpnmin, max = umtranpnmax, unit = umtranpnunit, } enforce domain HiLeS transformation:Transition { petrinet = tranpn:PetriNet{}, id = umtranpnid, name = umtranpnname, min = umtranpnmin, max = umtranpnmax, unit = umtranpnunit, } when { UnmatchPetriNet(umtranpn, tranpn) } }