ISA-tools / stato

This is the development repository for the STATistics Ontology (STATO). For more information and demonstration on the ontology content, please visit its website:
http://stato-ontology.org/
30 stars 8 forks source link

Consider adding a Function class #76

Closed hcwi closed 8 months ago

hcwi commented 6 years ago

Hi, another request to discuss for STATO: adding a function (in mathematical sense). There is already a function class and properties function of and has function but only in the sense of 'role'.

In our data we would like to annotate parametric functions, that is functions of model parameters. For that a class represeting a function in a mathematical sense and some property (function of?) for linking its arguments are needed. Can you consider adding those or extending some existing definitions, or suggest us another way to go?

proccaserra commented 6 years ago

@hcwi it is possible to create a class 'mathematical function' as a type of 'information content entity'. This is will completely distinct from BFO:function. but we may need more discussion in case you are referring also to some programmatic function such as this one https://stat.ethz.ch/R-manual/R-devel/library/nlme/html/lme.html, where you would also want to list and represent all the arguments of such function. These type of functions would be implementation/language specific and possibly distinct from a true 'mathematical function' (they may coincide or they may not). I think we'd need more information and examples of queries. for example, going back to the lme R example: do you want to runquery such as: "if function=lme, retrieve value for argument 'method'"? I presume identifying the programming language may be needed if this is the use case at hand. best

hcwi commented 6 years ago

Dear @proccaserra, For our use cases I meant a mathematical function, not a programmatic one. We would like to classify an object as a function, and say that it is derived from another object. Describing how exactly it is derived might be too specific and complex for an ontology, but a simple property "has_formula" might be useful to include.

I am thinking of modelling something like this:

<pf> rdfs:label "parameteric function" .
<pf> rdf:type STATO:function .
<pf> STATO:is_function_of <param1>, <param2>.
<pf> STATO:has_formula "param1+param2".
<param1> rdf:type STATO:model_parameter.
<param2> rdf:type STATO:model_parameter.