Expression Unification

From CaseTalk Wiki
Revision as of 14:37, 23 March 2017 by Marcow (talk | contribs) (Created page with "= Expression Unification = Expression unification is an experimental feature which allows users to substitute and re-use every expression (FTE or OTE) from the model. It only...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Expression Unification

Expression unification is an experimental feature which allows users to substitute and re-use every expression (FTE or OTE) from the model. It only changes expression numbers where needed, and is a non destructive way or working. The feature can simply be turned on and off at will.

Background

During the years of modeling we discovered examples where users were required to duplicate fact expression as object expressions before substitution could take place. Hardcode users will see no issue in this, but it made us think. Consider the following model evolution. We start of with the Marriage fact type, only to later find out we have an additional fact type Marriage Date.

[Marriage] 
F1: "John is married to Mary"
[Marriage Date]
F2: "John is married to Mary on 1-1-1990"

This requires the user to add an Object Type Expression (O1) along the way, which is identical to F1.

[Marriage] 
O1: "John is married to Mary"

This seemed redundant, since CaseTalk could already distinguish if expressions were used in a subsitution or not. What would happen if we'd allow users to substitute everything they'd already entered into the model?

It would reduce a duplication of similar FTE's and OTE's.