INCATools/dead_simple_owl_design_patterns

Proposal for tracking template metadata for each generated class

Opened this issue · 3 comments

The goal is to allow simple retrospective refactoring of patterns. This is in principle possible by matching on equivalence axioms, it will be simpler to do this by exposing the template filler values.

Basic structure:

Annotations:
    applies-design-pattern $PATTERN_NAME,
    var1 FILLER1,
    ...
    varN FILLERn

$PATTERN_NAME should be an IRI rather than a literal. Currently the pattern name field is the basename of the file. A good choice of IRI would be $OBO/lc($idspace)/patterns/$basename. Should we encourage lc($idspace)/patterns/$basename in the pattern_name field?

This could also form the base for the vars, e.g. $OBO/lc($idspace)/patterns/$basename/$varX

The fillers would be the IRI values of the actual filler.

I like this. Let's do it. Re pattern name field, perhaps better to have an
optional base URI field? Then no ambiguity about short form gen rules.
Also doesn't force users to go URI route.
On 18 Oct 2015 23:24, "Chris Mungall" notifications@github.com wrote:

The goal is to allow simple retrospective refactoring of patterns. This is
in principle possible by matching on equivalence axioms, it will be simpler
to do this by exposing the template filler values.

Basic structure:

Annotations:
applies-design-pattern $PATTERN_NAME,
var1 FILLER1,
...
varN FILLERn

$PATTERN_NAME should be an IRI rather than a literal. Currently the
pattern name field is the basename of the file. A good choice of IRI would
be $OBO/lc($idspace)/patterns/$basename. Should we encourage
lc($idspace)/patterns/$basename in the pattern_name field?

This could also form the base for the vars, e.g.
$OBO/lc($idspace)/patterns/$basename/$varX

The fillers would be the IRI values of the actual filler.


Reply to this email directly or view it on GitHub
#12.

+1 to a base field

On 19 Oct 2015, at 0:07, David Osumi-Sutherland wrote:

I like this. Let's do it. Re pattern name field, perhaps better to
have an
optional base URI field? Then no ambiguity about short form gen
rules.
Also doesn't force users to go URI route.
On 18 Oct 2015 23:24, "Chris Mungall" notifications@github.com
wrote:

The goal is to allow simple retrospective refactoring of patterns.
This is
in principle possible by matching on equivalence axioms, it will be
simpler
to do this by exposing the template filler values.

Basic structure:

Annotations:
applies-design-pattern $PATTERN_NAME,
var1 FILLER1,
...
varN FILLERn

$PATTERN_NAME should be an IRI rather than a literal. Currently the
pattern name field is the basename of the file. A good choice of IRI
would
be $OBO/lc($idspace)/patterns/$basename. Should we encourage
lc($idspace)/patterns/$basename in the pattern_name field?

This could also form the base for the vars, e.g.
$OBO/lc($idspace)/patterns/$basename/$varX

The fillers would be the IRI values of the actual filler.


Reply to this email directly or view it on GitHub
#12.


Reply to this email directly or view it on GitHub:
#12 (comment)

base field added b0069f1 (Should probably split out the spec config data structure from the implementation.)