Re: A couple of questions on OWL modeling

HI,

Good point about the anonymous datatype restrictions. I didn't see that.
As for the other two issues, I have one problem:
I may need to represent the order of ingredient (in terms of quantity), this I need some sort of more than relation.
If I use a construct like:
myCheese type (Ingredient and hasPart some (hasIngredient some Fat Cheese)) [random syntax]
then I cannot refer to the unnamed class which represent the part, and I cannot say that this is more than another part.
Going explicit naming parts is risky: it would look too bloated to users (of many sorts).

ciao,
Andrea



Il giorno 22/nov/2013, alle ore 15:38, Alan Ruttenberg <alanruttenberg@gmail.com> ha scritto:
> 
> You can also use an anonymous datarange - you don't have to give it a name if you don't want to. See
> http://www.w3.org/TR/owl2-syntax/#Data_Ranges
> http://www.w3.org/TR/owl2-syntax/#Data_Property_Range


> > Another question. This is actually an interesting case (at least for me). I have an individual (which is a real world individual, like a packaged cheese I hold in my hand) whose ingredients are (example) "Salt", "Any fat cheese".
> > How would you model this ? Would you go for an anonymous individual ?
> > Like in: myCheese hasIngredient -- anon -- of type Fat Cheese.
> 
> You don't have to create the individual if you don't want to. You can either use an anonymous class expression
> 
> myCheese type (hasIngredient some Fat Cheese)
> 
> or name the type
> 
> 'has fat cheese' equivalentTo: (hasIngredient some Fat Cheese)
> 
> then
> 
> myChess type 'has fat cheese'
> 
> > Finally, how would you model quantities of ingredients ?
> > let's say that food x (normalized to 100g) contains 10g of salt.
> > One option (the one I would prefer) is to have the food having an "Component" kind of entity, and this "Component" being characterized by a quantity and an substance (salt).
> > Another option could be to have cardinalities restrictions (hasIngredient exactly 10 salt). I have seen used this approach but I think it is not appropriate. having 10g of salt is not the same has saying "ha person has one and only one head". If it was 11g, it would not change the entity type, really. Plus not all numbers are integer.
> 
> In OBI, where we've worked this out, there are two issues. The first is the choice between having a part with a quality versus using cardinality restrictions. We opted to use the former for cases like this because of the issue of non-integer quantities. So we would say:
> 
> 1. food1 hasPart 'cheese part 1'
> 2. 'cheese part 1' type 'cheese'
> 3. 'cheese part 1' 'has quality' 'mass of cheese part 1'
> 
> Then the question is how one adds the numerical information to 'mass of cheese part 1'.
> 
> Since we make the ontological choice that no unit is preferred, among others, we wrap the number in a 'mass measurement datum'. All 'scalar measurements datum's have have three properties
> 
> - 'has measurement unit label' (range: unit, value: mass for 'mass measurement datum') 
> - 'has measurement value' (range:float),
> - 'is quality measurement of' (range:quality - specialized to 'mass quality' for 'mass measurement datum') 
> 
> So we would add:
> 
> 4. 'cheese mass datum 1' type 'mass measurement datum'
> 5. 'cheese mass datum 1' 'has measurement value' "10.0"^^xsd::float
> 6. 'cheese mass datum 1' 'has measurement unit label' 'gram'
> 7. 'cheese mass datum 1' 'is quality measurement of ' 'mass of cheese part 1'
> 
> The representation takes a couple more triples than you might expect, but has the benefit of allowing variations in the right places. It supports a number of cases you might not otherwise think about - that measurements can be other than scalar (e.g. vector velocity), that there might be more than one measurement of the mass, that there might be different units used, that measurements data in different units can be related to each other because the measurement datum is reified.
> 
> While this amount of elaboration might be more than someone who only cares about representing product labels for an internal project, for linked data it has the benefit of not being to simple that scientific results be linked to it. One of the member communities that participated in the development of OBI represented the Nutrigenomics community.
> 
> References:
> 
> scalar measurement datum
> mass measurement datum
> has measurement unit label
> is quality measurement of
> has measurement value
> mass
> mass unit
> 
> Modeling biomedical experimental processes with OBI
> http://purl.obolibrary.org/obo/obi.owl
> http://purl.obolibrary.org/obo/iao.owl
> http://obi-ontology.org
> http://obi-ontology.org/page/Consortium
> 
> Regards,
> Alan
> 
> ps. have you always worn glasses?
> 
> >
> > Any hints/opinions ?
> >
> > best,
> > Andrea Splendiani
> >
> >
> >

Received on Tuesday, 26 November 2013 10:22:12 UTC