--
-- The arcs of the workflow petri net.
-- Arcs always go between a transition and a place.
-- The direction is relative to the transition here, i.e.
-- in means it goes into the transition, out means it goes
-- away from the transition.
--
CREATE TABLE wf_arcs (
workflow_key varchar(100) NOT NULL,
transition_key varchar(100) NOT NULL,
place_key varchar(100) NOT NULL,
direction varchar(3) NOT NULL,
guard_callback varchar(100),
guard_custom_arg text(-5),
guard_description varchar(500),
PRIMARY KEY (workflow_key,transition_key,place_key,direction),
ON DELETE CASCADE ON DELETE CASCADE ON DELETE CASCADE ON DELETE CASCADE ON DELETE CASCADE ON DELETE CASCADE,
CONSTRAINT wf_arc_direction_ck REFERENCES wf_places (),
CONSTRAINT wf_arc_guard_on_in_arc_ck REFERENCES wf_places (),
CONSTRAINT wf_arc_pk REFERENCES wf_places (),
CONSTRAINT wf_arc_place_fk REFERENCES wf_places (),
CONSTRAINT wf_arc_transition_fk REFERENCES wf_places (),
CONSTRAINT wf_ts_arc_workflow_fk REFERENCES wf_places () ON DELETE CASCADE ON DELETE CASCADE ON DELETE CASCADE ON DELETE CASCADE ON DELETE CASCADE ON DELETE CASCADE,
CONSTRAINT wf_arc_direction_ck REFERENCES wf_transitions (),
CONSTRAINT wf_arc_guard_on_in_arc_ck REFERENCES wf_transitions (),
CONSTRAINT wf_arc_pk REFERENCES wf_transitions (),
CONSTRAINT wf_arc_place_fk REFERENCES wf_transitions (),
CONSTRAINT wf_arc_transition_fk REFERENCES wf_transitions (),
CONSTRAINT wf_ts_arc_workflow_fk REFERENCES wf_transitions () ON DELETE CASCADE ON DELETE CASCADE ON DELETE CASCADE ON DELETE CASCADE ON DELETE CASCADE ON DELETE CASCADE,
CONSTRAINT wf_ts_arc_workflow_fk REFERENCES wf_workflows (),
CONSTRAINT wf_arc_direction_ck REFERENCES wf_workflows (),
CONSTRAINT wf_arc_guard_on_in_arc_ck REFERENCES wf_workflows (),
CONSTRAINT wf_arc_pk REFERENCES wf_workflows (),
CONSTRAINT wf_arc_place_fk REFERENCES wf_workflows (),
CONSTRAINT wf_arc_transition_fk REFERENCES wf_workflows ()
);
CREATE INDEX wf_arcs_wf_key_place_key_idx ON wf_arcs (workflow_key, place_key);
CREATE INDEX wf_arcs_wf_key_trans_key_idx ON wf_arcs (workflow_key, transition_key);
CREATE TRIGGER RI_ConstraintTrigger_c_343169 AFTER INSERT FOR EACH ROW EXECUTE PROCEDURE RI_FKey_check_ins (disabled)
CREATE TRIGGER RI_ConstraintTrigger_c_343170 AFTER UPDATE FOR EACH ROW EXECUTE PROCEDURE RI_FKey_check_upd (disabled)
CREATE TRIGGER RI_ConstraintTrigger_c_343174 AFTER INSERT FOR EACH ROW EXECUTE PROCEDURE RI_FKey_check_ins (disabled)
CREATE TRIGGER RI_ConstraintTrigger_c_343175 AFTER UPDATE FOR EACH ROW EXECUTE PROCEDURE RI_FKey_check_upd (disabled)
CREATE TRIGGER RI_ConstraintTrigger_c_343604 AFTER INSERT FOR EACH ROW EXECUTE PROCEDURE RI_FKey_check_ins (disabled)
CREATE TRIGGER RI_ConstraintTrigger_c_343605 AFTER UPDATE FOR EACH ROW EXECUTE PROCEDURE RI_FKey_check_upd (disabled)
-- Table size: 8,192 bytes
-- Table rows: 9
Tables: