IAO:software versus PROV terms

26 views
Skip to first unread message

Hilmar Lapp

unread,
Jan 30, 2013, 10:38:06 AM1/30/13
to information-ontology Discuss
Hi,

I'm curious about opinions here as what which classes in PROV [1] instances of IAO:software would most appropriately also be expected to be instances of. Specifically, I'm wondering whether they would be expected to be instances of prov:Plan [2] (which the definition of IAO:software would suggest) or of prov:SoftwareAgent [3] (which intuition might suggest).

-hilmar

[1] http://www.w3.org/TR/prov-o/
[2] http://www.w3.org/TR/prov-o/#Plan
[3] http://www.w3.org/TR/prov-o/#SoftwareAgent

--
===========================================================
: Hilmar Lapp -:- Durham, NC -:- informatics.nescent.org :
===========================================================



Philippe

unread,
Jan 31, 2013, 7:23:55 AM1/31/13
to Hilmar Lapp, information-ontology Discuss
Hi Hilmar,

Good to hear from you.
IAO software definition mentions the "processing unit" that is supposed
to execute the IAO:software/Plan specification
My understanding at this stage would be that:

PROV/PLAN <=>IAO:software/Plan specification
PROV/SoftwareAgent <=> missing from IAO/Processing unit (which would
run the IAO software). The closer entity in would think of would a
subtype of OBI:device, OBI:computer or OBI:computer cluster

There is currently no formal connection between IAO software and any
'processing unit' so I am making a rough guess.

Best

Philippe

Hilmar Lapp

unread,
Feb 1, 2013, 11:00:36 PM2/1/13
to Philippe, information-ontology Discuss
Hi Philippe,

My reading of the PROV model and the prov:Agent (of which prov:SoftwareAgent is a subclass) is that the prov:Agent is directly responsible for the prov:Activity that they are associated with. That would suggest to me that it's the software program, not the device that executed the program, that's most consistent with prov:SoftwareAgent.

I have instead been considering the parameter specification with which the software was run during the activity as the prov:Plan. Though I've found surprisingly little guidance on this (and my query about this to the prov list has remained unanswered, perhaps because it never got through to start with). I seem to remember that years ago either in the MAGE ontology or in FUGE that there was a model of how to represent method and thus software parameters, but I haven't been able to locate this in IAO. If it's there, I'd be happy for a pointer.

Computational provenance seems important and common enough in bioinformatics that I would think some initiative must have figured this out, so I'm still thinking that somehow I've just missed where to look. If you or anyone else here has pointers or suggestions for recommended computational provenance models, I'd be very grateful.

BTW I'm interested in and thinking about this in the context of a MIAPA ontology, part of which is annotating computational provenance of alignments and phylogenetic trees.

-hilmar

Sent with a tap.

Jonathan A Rees

unread,
Feb 2, 2013, 11:18:46 AM2/2/13
to Hilmar Lapp, Philippe, information-ontology Discuss
On Fri, Feb 1, 2013 at 11:00 PM, Hilmar Lapp <hl...@nescent.org> wrote:
Hi Philippe,

My reading of the PROV model and the prov:Agent (of which prov:SoftwareAgent is a subclass) is that the prov:Agent is directly responsible for the prov:Activity that they are associated with. That would suggest to me that it's the software program, not the device that  executed the program, that's most consistent with prov:SoftwareAgent.

Disagree. The only examples given of prov:Agents are people and organizations, both of which are active and material. A piece of software doesn't seem similar to me. Software is passive and immaterial; it is generated by an agent and requires an interpreting agent to be effective. When an orchestra plays one piece instead of another at a concert, it is the programmer (the agent that decides what the orchestra's program is to be) and the orchestra that are agents, not the concert program itself. To say the concert program "bears some form of responsibility for an activity taking place, for the existence of an entity, or for another agent's activity." seems quite a stretch. Computer programs are similar, they can't bear responsibility.

For SoftwareAgent we have "A software agent is running software." with a physically instantiated robot (device) as the only example. Something that is running is running somewhere, thus again we have a robot, device, or other physical instantiation of software, not the software itself.

If you want to talk about software in the sense of runnable but not running computer program, it looks to me as if the applicable class in prov: is prov:Plan, but I agree it's hard to tell.  prov:Plan's definition seems to cover a number of things that are separate in IAO, which distinguishes information content (what would normally be called software or a program) from the realization of information content (the physical medium or apparatus that carries same).

I agree that to adequately cover laboratory processes there should be terms for software and its role in data transformations; but maybe this is more appropriate for OBI, not IAO?

Jonathan 
--
--
informatio...@googlegroups.com
To change settings, visit
http://groups.google.com/group/information-ontology

---
You received this message because you are subscribed to the Google Groups "information-ontology" group.
To unsubscribe from this group and stop receiving emails from it, send an email to information-onto...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.



Hilmar Lapp

unread,
Feb 2, 2013, 3:08:16 PM2/2/13
to Jonathan A Rees, Philippe, information-ontology Discuss
On Feb 2, 2013, at 11:18 AM, Jonathan A Rees wrote:

On Fri, Feb 1, 2013 at 11:00 PM, Hilmar Lapp <hl...@nescent.org> wrote:
Hi Philippe,

My reading of the PROV model and the prov:Agent (of which prov:SoftwareAgent is a subclass) is that the prov:Agent is directly responsible for the prov:Activity that they are associated with. That would suggest to me that it's the software program, not the device that  executed the program, that's most consistent with prov:SoftwareAgent.

Disagree. The only examples given of prov:Agents are people and organizations, both of which are active and material. A piece of software doesn't seem similar to me. Software is passive and immaterial; it is generated by an agent and requires an interpreting agent to be effective. When an orchestra plays one piece instead of another at a concert, it is the programmer (the agent that decides what the orchestra's program is to be) and the orchestra that are agents, not the concert program itself. To say the concert program "bears some form of responsibility for an activity taking place, for the existence of an entity, or for another agent's activity." seems quite a stretch. Computer programs are similar, they can't bear responsibility.

Good point. Guns don't kill people, nor do their manufacturers, it's people who kill people, sometimes using guns. So along that line you could conceivably argue that it isn't BLAST that's responsible for obtaining the BLAST match (or the RAxML software program for the phylogenetic tree in my case), but the person who ran BLAST, the person(s) who programmed it, and the machine on which it was run.

But that still seems to defy the notion of tracking computational provenance so that it is verifiable and repeatable; i.e., so that the way the result was obtained can be verified to be according to sound and desirable practices, and that ideally the result can be recreated by someone else and independent of the person who ran the program and the machine he/she ran it on. Because for that what I'd need to know is the input, the software and its exact version, and the parameters with which it was run, but not who ran it and where. 

I can see how :killing :prov:wasAssociatedWith :the-killer , prov:used :smtih-and-wesson ;  correctly puts the tool in the prov:Plan slot and the killer in the prov:Agent slot, but doesn't replicating this pattern for computational analysis seem inconsistent with how computational methods are commonly reported in papers? I.e., normally the person who ran the software isn't specifically mentioned ("we ran BLAST v2.2.12 to obtain xyz" - but obviously it wasn't all of the authors who ran this together), because, unlike knowing who pulled the trigger, knowing who typed the command or pushed the button is not important. 

So I think we still don't have an answer who or what should be the instance of prov:SoftwareAgent that goes into the object of prov:wasAssociatedWith. But the discussion here is getting interesting, so hopefully more people will chime in.

-hilmar

Alan Ruttenberg

unread,
Feb 2, 2013, 4:16:25 PM2/2/13
to Hilmar Lapp, information-ontology Discuss
Hi Hilmar,

I'm going to give a response before reading the other ones, then respond to the other respons

On Wed, Jan 30, 2013 at 10:38 AM, Hilmar Lapp <hl...@nescent.org> wrote:
Hi,

I'm curious about opinions here as what which classes in PROV [1] instances of IAO:software would most appropriately also be expected to be instances of. Specifically, I'm wondering whether they would be expected to be instances of prov:Plan [2] (which the definition of IAO:software would suggest) or of prov:SoftwareAgent [3] (which intuition might suggest).

        -hilmar

[1] http://www.w3.org/TR/prov-o/
[2] http://www.w3.org/TR/prov-o/#Plan

Let's start with Agent

IRI:http://www.w3.org/ns/prov#Agent
An agent is something that bears some form of responsibility for an activity taking place, for the existence of an entity, or for another agent's activity.

I'll be honest that my first reaction to this and much of prov is that the definitions aren't very good. I don't think it was wise to consider this work appropriate for standardization in that scope, as the subject is at the same time difficult and prone to deceptively easy answers that don't hold up or aren't adequately built up.

'Agent' is such a case. What do we know from their definition? An agent is the sort of thing that can 'bear responsibility'. The things it can 'bear responsibility' for are  an 'activity taking place', 'the existence of an entity', 'another agent's activity'.

Later we see 'Agents may also be ascribed responsibility'. The usual sense of bearing something is not the same as the sense of being ascribed something, the former suggesting inherence in the bearer, the latter suggesting a mental construct 'about' something.

'bearing responsibility' is not defined. We're left to wondering whether we're free to use any common sense of 'bearing responsibility', or some specific one. Do we mean the sort of thing that courts of law determine? For example, Man1 pays Man2 to kill Man3 with gun. In the trial all three are caught and it is determined that Man2 is innocent by way of insanity. Who/what are the entities that 'bear responsibility', or in other words, which are the Prov:Agents. Or for a more mundane example, perhaps closer to the W3C's mission, consider the RIAA hiring a law firm to write letters to people they are guessing illegally shared files, letters which are sorted by post office employee and delivered by postal delivery personnel. As a result of unjustly accusation, a person that receives this letter has a heart attack. Who/what are the Prov:agents with respect the letter, the heart attack?

So we have some difficulty even knowing what the term means, never mind what the cognate is in IAO or BFO.

The BFO way of handling such complicated situations would probably involve a set of roles and realizations of those roles. One would then have to see whether agentive behavior sensu PROV was compatible with the idea of the  bearer being an PROV:agent in the realization, for any pair of role/realization. If not we might see if there are are a subset of such cases that PROV would consider "in", or whether there are cases outside realizable/realization that PROV would classify as Agent. 

The document says there are three subclasses of Agent: Person, Organization, Software Agent. To the extent that either of the first two were in IAO they would be defined classes rather than universals - e.g. we could conceivable have at some point human computer programmer. However this wouldn't be defined in terms of the role and process (programmer, programming) ruling out Person and Organization as superclasses (at least as I think I understand those PROV terms).
 

[3] http://www.w3.org/TR/prov-o/#SoftwareAgent

The definition given for Software Agent is: 'A software agent is running software.' 
Again we have that basic terms are not defined. What is running? What is software? Even the language is ambious to parse - it could be that an equivalence is being stated 'software agent' =def 'running software'. By running software do they mean initiating the software exection? Do they mean computer-like things, as in my mac is running OSX now, and so my Mac is a software agent? Do they mean the software is the agent, as OSX is an agent which acts in processes like printing text?

All of these intepretations are different things. IAO has, among other terms:

Software: Software is a plan specification composed of a series of instructions that can be interpreted by or directly executed by a processing unit
Software interpreter: A software interpreter is a software application that executes some specified input software.
Software application: A software application is software that can be directly executed by some processing unit.

That last definition looks wrong (I'll add an issue). Since it would seem to rule out things we call applications that written in scripting languages, as scripting langauges (with rare historical exceptions) are not directly executed by a processing unit.

So concluding this, my assessment is that one can not answer your question accurately because it is 
1) unclear what the PROV terms mean,
2) What understanding we glean or surmise points to the terms being ambiguous
3) This ambiguity would likely prevent single IAO terms to subsume prov terms, and make it difficult to know whether an IAO term was subsumed by one.

-Alan

Alan Ruttenberg

unread,
Feb 2, 2013, 4:29:46 PM2/2/13
to Hilmar Lapp, Philippe, information-ontology Discuss
On Fri, Feb 1, 2013 at 11:00 PM, Hilmar Lapp <hl...@nescent.org> wrote:
Hi Philippe,

My reading of the PROV model and the prov:Agent (of which prov:SoftwareAgent is a subclass) is that the prov:Agent is directly responsible for the prov:Activity that they are associated with. That would suggest to me that it's the software program, not the device that  executed the program, that's most consistent with prov:SoftwareAgent.

'directly' is another one of those words that is being misued here. What we mean by directly in 'directly executes' is a CPU and associated hardware. But you say that isn't a prov:agent, which I'm guessing is right, but then puts the term outside the scope of IAO. In IAO, only some software programs (ones whose elements are codes that cpus interpret as instructions) are directly executed. In addition, the software program is a generically dependent continuant. I think a court of law wouldn't call a piece of software guilty of a crime, rather instead the operator, or the publisher,or the vendor, or the author, as the case may be.
 

I have instead been considering the parameter specification with which the software was run during the activity as the prov:Plan.

Prov:Plan A plan is an entity that represents a set of actions or steps intended by one or more agents to achieve some goals.

This sounds like an IAO:plan specification.

definition: a directive information entity that when concretized it is realized in a process in which the bearer tries to achieve the objectives, in part by taking the actions specified. Plan specifications includes parts such as objective specification, action specifications and conditional 

It is possible that a plan specification would include as parts specification of what parameters should be used in various programs. So while program parameters might be parts, plan specifications are bigger, in my reading, than just parameters.
 
Though I've found surprisingly little guidance on this (and my query about this to the prov list has remained unanswered, perhaps because it never got through to start with).

Why am I not surprised.
 
I seem to remember that years ago either in the MAGE ontology or in FUGE that there was a model of how to represent method and thus software parameters, but I haven't been able to locate this in IAO. If it's there, I'd be happy for a pointer.

IAO has data transformations, which may have parameters settings as specified inputs.  

Computational provenance seems important and common enough in bioinformatics that I would think some initiative must have figured this out, so I'm still thinking that somehow I've just missed where to look. If you or anyone else here has pointers or suggestions for recommended computational provenance models, I'd be very grateful.

I don't know where to start looking for one. If you find it let me know. My strategy has been, when necessary, represent such in IAO/OBI using the mechanisms already present, which I believe are adequate or close to adequate. My suggestion would be for you to post an example of what you want to represent, what you expect would be inferred from what you stated, what kinds of queries you would expect to be able to pose, and what kinds of answers to those queries you would expect. With these we could have a more constructive discussion.
 
-Alan


BTW I'm interested in and thinking about this in the context of a MIAPA ontology, part of which is annotating computational provenance of alignments and phylogenetic trees.

-hilmar

Sent with a tap.

On Jan 31, 2013, at 6:23 AM, Philippe <procc...@gmail.com> wrote:

> Hi Hilmar,
>
> Good to hear from you.
> IAO software definition mentions the "processing unit" that is supposed
> to execute the IAO:software/Plan specification
> My understanding at this stage would be that:
>
> PROV/PLAN <=>IAO:software/Plan specification
> PROV/SoftwareAgent <=> missing from IAO/Processing unit (which would
> run the IAO software). The closer entity in would think of would a
> subtype of OBI:device, OBI:computer or OBI:computer cluster
>
> There is currently no formal connection between IAO software and any
> 'processing unit' so I am making a rough guess.
>
> Best
>
> Philippe
>
> On 30/01/2013 15:38, Hilmar Lapp wrote:
>> Hi,
>>
>> I'm curious about opinions here as what which classes in PROV [1] instances of IAO:software would most appropriately also be expected to be instances of. Specifically, I'm wondering whether they would be expected to be instances of prov:Plan [2] (which the definition of IAO:software would suggest) or of prov:SoftwareAgent [3] (which intuition might suggest).
>>
>>    -hilmar
>>
>> [1] http://www.w3.org/TR/prov-o/
>> [2] http://www.w3.org/TR/prov-o/#Plan
>> [3] http://www.w3.org/TR/prov-o/#SoftwareAgent
>>
>

Hilmar Lapp

unread,
Feb 2, 2013, 8:29:17 PM2/2/13
to Alan Ruttenberg, Philippe, information-ontology Discuss
Fair enough, Alan. In a nutshell, I want to represent (primarily computational) provenance of phylogenetic data, in particular trees and the alignments that underiie them. The larger context is the Minimum Information for A Phylogenetic Analysis (MIAPA) project [1]. At a hackathon I just returned from [2] a group of people tried to apply MIAPA to annotating published trees [3], with the goal to allow users to query a tree store for trees that do or do not match certain criteria, including in the way they were generated. I created the MIAPA ontology [4] for this.

You can see possible queries pertinent to computational provenance here:

See "restrict by method" under item #5.

Here is a graphic representation of the annotation graph of the computational provenance as per what we had developed by the end of the event [5]:

-hilmar

Jonathan A Rees

unread,
Feb 4, 2013, 7:58:19 AM2/4/13
to Hilmar Lapp, Philippe, information-ontology Discuss
On Sat, Feb 2, 2013 at 3:08 PM, Hilmar Lapp <hl...@nescent.org> wrote:

On Feb 2, 2013, at 11:18 AM, Jonathan A Rees wrote:

On Fri, Feb 1, 2013 at 11:00 PM, Hilmar Lapp <hl...@nescent.org> wrote:
Hi Philippe,

My reading of the PROV model and the prov:Agent (of which prov:SoftwareAgent is a subclass) is that the prov:Agent is directly responsible for the prov:Activity that they are associated with. That would suggest to me that it's the software program, not the device that  executed the program, that's most consistent with prov:SoftwareAgent.

Disagree. The only examples given of prov:Agents are people and organizations, both of which are active and material. A piece of software doesn't seem similar to me. Software is passive and immaterial; it is generated by an agent and requires an interpreting agent to be effective. When an orchestra plays one piece instead of another at a concert, it is the programmer (the agent that decides what the orchestra's program is to be) and the orchestra that are agents, not the concert program itself. To say the concert program "bears some form of responsibility for an activity taking place, for the existence of an entity, or for another agent's activity." seems quite a stretch. Computer programs are similar, they can't bear responsibility.

Good point. Guns don't kill people, nor do their manufacturers, it's people who kill people, sometimes using guns. So along that line you could conceivably argue that it isn't BLAST that's responsible for obtaining the BLAST match (or the RAxML software program for the phylogenetic tree in my case), but the person who ran BLAST, the person(s) who programmed it, and the machine on which it was run.

I was just going by the PROV documentation which says "running" software (presumably to contrast with "not running") and gives a robot as the only example. I made the inference that if X is running, then X is running somewhere, i.e. where and when X is running are properties of X. But the documentation is vague enough that you can probably do whatever you like with it. 

But that still seems to defy the notion of tracking computational provenance so that it is verifiable and repeatable; i.e., so that the way the result was obtained can be verified to be according to sound and desirable practices, and that ideally the result can be recreated by someone else and independent of the person who ran the program and the machine he/she ran it on. Because for that what I'd need to know is the input, the software and its exact version, and the parameters with which it was run, but not who ran it and where. 

Obviously. If information is important then you should record it. And if you don't care anything about the agent that is running the software/plan, other than the software version it is running, use a blank node (or OWL equivalent) and record about it only those properties that matter to you. The question is only how to express the intended meaning. The prevailing style in semantic-webbish ontologies is "anything goes" which is equivalent to "no inference" and "reverse engineering required" (i.e. no agreed semantics). IAO is a minority attempt to buck the trend of ontologies that have no associated inference (semantics) and require human judgment in every application, often different judgments in different applications. Formal inference is often constraining and awkward for people, which is why IAO/BFO/OBI are not in style.

How well IAO/BFO/OBI succeed in reducing or eliminating judgment is a different story, but at least they're trying.

I can see how :killing :prov:wasAssociatedWith :the-killer , prov:used :smtih-and-wesson ;  correctly puts the tool in the prov:Plan slot and the killer in the prov:Agent slot, but doesn't replicating this pattern for computational analysis seem inconsistent with how computational methods are commonly reported in papers?

Papers are written for people, not machines or curators. Not a good comparison. For machine inference and judgment elimination you need strong rules that may be at odds with what is natural in human communication.

I.e., normally the person who ran the software isn't specifically mentioned ("we ran BLAST v2.2.12 to obtain xyz" - but obviously it wasn't all of the authors who ran this together), because, unlike knowing who pulled the trigger, knowing who typed the command or pushed the button is not important. 

So I think we still don't have an answer who or what should be the instance of prov:SoftwareAgent that goes into the object of prov:wasAssociatedWith. But the discussion here is getting interesting, so hopefully more people will chime in.

PROV gives an answer: a robot (which I take to mean: a physical computer, whose software version(s) are its most important properties). PROV is vague enough that probably anything goes and the IAO list is not a good place to discuss it. I don't know what IAO says, except to say that it draws a strong distinction between a GDC (immaterial thing such as software) and a computer, and would never have a property whose domain includes both.

Maybe I'm pushing too hard on this point, but you *did* send this to the IAO list, and IAO is pretty hard core as ontologies go.

Jonathan 

-hilmar

-- 
===========================================================
: Hilmar Lapp  -:- Durham, NC -:- informatics.nescent.org :
===========================================================



Alan Ruttenberg

unread,
Feb 4, 2013, 8:38:09 AM2/4/13
to Hilmar Lapp, Philippe, information-ontology Discuss
Hi Hilmar,

This looks like a great start. The first thing that comes to my attention are the relations, e.g. wasInfluencedBy, used, is_annotation_of, etc, which could be replaced by better defined relations used in IAO/OBI. There's also some distraction by use of both the PROV ontology and IAO, where I expect IAO/OBI terms could be used in most cases. I would recommend first using OBI/IAO and after than is done and clear consider a mapping to PROV. 

You would also benefit from a round of trying to give definitions to more of your terms. Even if you have imported them from other ontologies which don't give definitions, if you think it important to use those terms then have a go at some documentation of what you think they mean. For example what is an instance of 'Phylogenetic tree construction (method centric)'?

I have a pretty packed day today, but if you are interested we could schedule a call to do a walk through either late in the week or next week. 

Best,
Alan

Hilmar Lapp

unread,
Feb 4, 2013, 10:54:02 AM2/4/13
to Alan Ruttenberg, Philippe, information-ontology Discuss
On Feb 4, 2013, at 8:38 AM, Alan Ruttenberg wrote:

The first thing that comes to my attention are the relations, e.g. wasInfluencedBy, used, is_annotation_of, etc, which could be replaced by better defined relations used in IAO/OBI.

wasInfluencedBy and used are from PROV. is_annotation_of I'll have to check - I wouldn't have expected this to be needed. 

There's also some distraction by use of both the PROV ontology and IAO, where I expect IAO/OBI terms could be used in most cases. I would recommend first using OBI/IAO and after than is done and clear consider a mapping to PROV. 

That sounds fine - I just do think that in the end we do want a mapping to PROV.

For example what is an instance of 'Phylogenetic tree construction (method centric)'?

Good question. I wanted to ask that the SWO folks. Who, incidentally, include IAO terms, such as IAO:software.

I have a pretty packed day today, but if you are interested we could schedule a call to do a walk through either late in the week or next week. 

That sounds great, let's plan for that.

-hilmar
-- 

Philippe

unread,
Feb 19, 2013, 4:07:39 PM2/19/13
to Hilmar Lapp, Alan Ruttenberg, information-ontology Discuss
Hi Hilmar Alan,

Was there a follow-up on this and resolution? If yes can you update us?

Best

Philippe
> <http://informatics.nescent.org> :
> ===========================================================
>
>
>

Hilmar Lapp

unread,
Feb 19, 2013, 4:21:09 PM2/19/13
to Philippe, Alan Ruttenberg, information-ontology Discuss, MIAPA
There hasn't been yet. I am going to have to keep effort on this on lower heat for a few weeks, and there are a number of issues with the ontology (the MIAPA one I constructed) that need documenting and sorting out.

That said, I'll be attending the I Annotate workshop in SF in April, and intend to be in a position to make major progress on the below and other MIAPA ontology issues/targets (including, actually, mapping to the Open Annotation ontology vocabulary) on the hackday that's part of that event.

(cc'ing the MIAPA list so that group is in the loop)

-hilmar
: Hilmar Lapp -:- Durham, NC -:- informatics.nescent.org :
===========================================================



Philippe

unread,
Feb 19, 2013, 6:22:45 PM2/19/13
to Hilmar Lapp, Alan Ruttenberg, information-ontology Discuss, MIAPA
hi Hilmar, thanks for the feedback.

On top of my head, things could look like this (I hope the mail client
does not mess up the formatting/outline:

I have also included an outline of how terms could be submitted to
IAO/OBI wherever application. The key thing to remember is that module
can be extracted from IAO/OBI (e.g using Ontofox or the owlapi) so a
MIAPA compatible module could be generated for you.

you can post to obi list too.

Hope this helps

Best

Philippe

> IAOorOBI:<software execution process> realises some (concretizes some (IAO:plan specification/software(*) and has_part some 'IAO:algorithm')
> has_specified_input some ('IAO:data set' and is_specified_output of some 'assay(+)')
> has_specified_input some ('IAO:data item' and is_about some 'character matrix')
> has_part some <OBI:scaling data transformation>
> has_part not <OBI:planned process/phylotastic manipulation(**)>
> has_specified_output some 'IAO:dendrogram'
> (optional and of limited interest)
> has_participant some (Homo sapiens and has_role some 'investigator role' and is_denoted_by some 'IAO:author identification')
>
> <OBI:software execution process> realises some (concretizes some ( OBI:PAUP and has_part some 'OBI:maximum_parsimony_algorithm'))
> has_specified_input some ('IAO:data set' and is_specified_output of some 'PCR assay')
> has_specified_input some ('IAO:data item' and is_about some 'character matrix')
> has_part some <OBI:scaling data transformation>
> has_part not <OBI:planned process/phylotastic manipulation(**)>
> has_specified_output some 'IAO:dendrogram'
> (optional and of limited interest)
> has_participant some (Homo sapiens and has_role some 'investigator role' and is_denoted_by some 'IAO:author identification')
>
>
> (*)submit all necessary phylogenetic analysis software to OBI
> (**) submit all necessary phylostatic manipulation to OBI/data transformation
> (+) depending on the type of the assay (or assays), the classification between molecular or morphological measurement could be determined.
> We can provide spreadsheet templates for collection and loading of these new classes.
Reply all
Reply to author
Forward
0 new messages