- From: James Cheney <jcheney@inf.ed.ac.uk>
- Date: Thu, 9 Aug 2012 12:39:07 +0100
- To: Stian Soiland-Reyes <soiland-reyes@cs.manchester.ac.uk>
- Cc: Luc Moreau <l.moreau@ecs.soton.ac.uk>, public-prov-wg@w3.org
On Aug 9, 2012, at 11:23 AM, Stian Soiland-Reyes wrote: > On Thu, Aug 9, 2012 at 10:59 AM, James Cheney <jcheney@inf.ed.ac.uk> wrote: >> 1. [status quo] - allow expanding the trigger parameter to an existential variable denoting an unknown (but definite) trigger entity >> 2. change the trigger parameter to be non-expandable, so that "-" means "absent trigger", as with plan and other non-expandables. >> >> So we'll resolve this issue by taking whichever of the above has the stronger consensus? > > Right, simple options. > > > For #2 - I assume that if the trigger is absent, then the starter > activity should also be -. (To avoid recreating non-triggering > wasStartedByActivity). If the starter activity is given, then we > simply don't know the identity of the trigger. Thus Inference > wasStartedBy-inference should always run, unless they are both -. > > Example change to inference rule: > > > > Inference 9 (wasStartedBy-inference) > IF wasStartedBy(_id; a,e1,a1,_t,_attrs) and either e1 or a1 are not > the placeholder -, THEN there exist _gen and _t1 such that > wasGeneratedBy(_gen; e1,a1,_t1,[]). > Minor comment: if one of e1,a1 is placeholder and the other isn't, then we'd infer wasGeneratedBy(_gen; -,a1,_t1,[]). or wasGeneratedBy(_gen; e1,-,_t1,[]). which seems strange (I'd prefer not to infer new expandable placeholders). I think it is equivalent to require both e1 and a1 to be non-placeholder if we adopt the definitions and constraints below. > Remark: > If both the trigger e1 and the starter activity a1 is the placeholder > -, this indicates that there is no trigger (and thus no activity > generating that trigger), and this inference rule does not apply. If > the starter activity is given, then the trigger e1 is present, but > unknown. > > (and equivalent for wasEndedBy-inference) OK. I believe we can handle this (we are likely going to do something similar for derivation, to avoid a technical problem with derivation-use-inference). The mechanism (if we want to make trigger non-expandable) would be to add a definition that says that IF the activity is present, we can expand the trigger. We could also add a constraint that says that if the trigger is -, then the activity must also be -. So the possible cases are (assuming e1,a1 not placeholder): wasStartedBy(id; a,e1,a1,t,attrs) -> valid; in normal form wasStartedBy(id; a,-,a1,t,attrs) -> expands to "there exists e0 such that wasStartedBy(id; a,e0,a1,t,attrs)", which is valid wasStartedBy(id; a,e1,-,t,attrs) -> invalid wasStartedBy(id; a,e1,a1,t,attrs) -> valid; in normal form wasStartedBy(id; a,-,-,_t,_attrs) -> valid; in normal form Is this what you expect? If so, let me refine option 2 as follows: - Make *both* trigger and activity non-expandable - Add a definition conditionally expanding wasStartedBy(id; a,-,a1,t,attrs) to there exists e0. wasStartedBy(id; a,e0,a1,t,attrs) provided a1 is not "-" - Add a constraint forbidding wasStartedBy(id; a,e1,-,t,attrs) - Adopt your suggested change to inference 9. (I would require *both* e1,a1 to be non-placeholder, though.) OK? --James -- The University of Edinburgh is a charitable body, registered in Scotland, with registration number SC005336.
Received on Thursday, 9 August 2012 11:39:35 UTC