Re: UML diagrams

Hi Aldo,

  thanks for your comments, see my answers inline:

Philipp.

Am 07.03.14 10:07, schrieb Aldo Gangemi:
> Hi Philipp, instead of Poseidon, I forgot to mention Argo UML, which has similar functionalities, but it’s open source :)
>
> argouml.tigris.org/‎

Fair enough, I will install the fourth UML tool in 24h ;-) I am 
confident that I will find one that suits our needs (model can be saved, 
looks nice and has numeric cardinalities).

Thanks for the pointer.
>
> concerning cardinalities, I have the following doubts:
>
> 1) is it better to include inverse names as well, or an arrow? I always find counterintuitive that I have to figure out how to read the ordering of associations, while NL is so clear ;)
Yes, actually I wanted to include an arrow, but it Poseidon this is only 
possible by chosing a "directed association", which creates an arrow. 
The cardinality is then implicitly set to "1" at the arrow side, but can 
not be edited explicitly. I want them to be explicit so that there are 
no doubts and the picture is sort of self-contained. Ideally, people 
could simply read off the diagram how to use the model without reading 
the text in the spec ;)

>
> 2) can a lexicon be empty? maybe a 1..* would be better on the lexicon side

Well, good question. I had not definite answer to this. My intuition is 
that a lexicon can indeed be empty. A lexicon is a set/collection and 
can thus be empty, as there are empty sets and empty collections.

Using 1..* interpreted as OWL minCardinality would lead to inference of 
at least one lexical entry, which I personally do not want to have as my 
intuition is that lexica can be empty indeed.

Not that empty lexica are particularly useful I agree, but ...

I agree though that a validator should possibly issue a warning like 
"Empty lexicon", but this is a different thing to including a 
minCardinality restriction.

>
> 3) why 0..1 lexical concepts for a sense? 0 is clear, but why do we impose that e.g. a wordnet word sense should mandatory belong to at most 1 lexical concept. If this is for the synset pattern, then we should put 1..1, otherwise, we can be liberal, and accept that some other lexicon can provide a different sense assemblage. I’d go for a 0..*
Yes, good question as well. John and myself were thinking about this 
also the other day and our intuitions are not clear.

The reason for having at most one concept for a sense is rather 
pragmatic and can not be decided only locally (for the directly involved 
classes). The thing is the following: if you would like to attach 
information about preferred lexicalization (like done in SKOS through 
prefLabel), then the question is where to attach this "preferred" that 
concerns a particular Lexical Concept and a particular lexical entry. 
One solution was to make all connections from a sense to be 0..1 (i.e. 
to Lexical Entry, to Reference and to Lexical Concept). Thus, the 
concept is uniquely determined by the sense and one could attach this 
information to the "sense" object.

But I am happy to reconsider this as it seems to be some sort of a hack. 
The alternative would be to allow for a property "preferredLex" between 
Concept and Lexical Entry, but this only covers some of the cases. 
Imagine that I would like to add diachronic information, i.e. saying 
that a certain lexical entry is an outdated form or colloquial way of 
referring to a LexicalConcept. Clearly, these things can not be 
expressed properly in SKOS, because prefLabel, altLabel etc. are a 
"hack" that only works for preference relationships in lexicalization.

Btw. John: i think this is clearly a case where vanilla SKOS is not 
enought. If one wants to add such information to a vanilla SKOS 
instance, then where would one do it?

In conclusion: the relation between a LexicalConcept and LexicalEntry 
would need to be reified and we would have a further (reified) entity in 
the model. So we thought about reusing the LexicalSense object for this.

If anyone has a better solution, please shout. At least, I hope this 
reasoning explains why I indicated the cardinalities in this way for now.

> 4) similarly for the 0..1 references for a sense: do we assume that at most one ontological entity can actualize a sense?
More or less the same as above. If we make reference functional, then 
the ontology class is uniquely determined and we can attach information 
the sense. I think this is fine, there can be several references of 
course, but we would need different sense objects, unless the references 
are equivalent of course. Well, actually using two different URIs as 
references is fine, but due to the functionality of reference they would 
be inferred to be owl:sameAs. This however is an inference between the 
punned individuals representing the class and my rudimentary OWL2 
knowledge is not enough to say whether this has any consequences for the 
actual classes.

Not that easy ;-)

I hope everyhting said above makes sense.

>
> OK for the rest
> Thanks
> Aldo
>
> On Mar 7, 2014, at 7:54:58 AM , Philipp Cimiano <cimiano@cit-ec.uni-bielefeld.de> wrote:
>
>> Dear all,
>>
>> ok, thanks for the suggestions. I now used Poseidon to generate the diagram attached.
>>
>> Do we agree that this is the kind of diagram that we want to have?
>>
>> If yes, I will look for another suitable tool as one needs to obtain a Poseidon license to save the models :-o
>>
>> Bzw. do we agree on the cardinialities as they are indicated there?
>>
>> Philipp.
>>
>> Am 06.03.14 22:59, schrieb Aldo Gangemi:
>>> Two possibilities:
>>>
>>> 1) use yEd Graffoo notation: just downlaod the graphml file and put it in the same yEd directory: http://www.essepuntato.it/graffoo/, specification is there. However, cardinalities come as boxes where you can write owl restrictions in Manchester syntax. I put Silvio Peroni in cc, he developed Graffo and DiTTO.
>>>
>>> 2) use the ER notation, but as you say, Crow’s foot notation is used instead of numbers to express cardinalities.
>>>
>>> Another approximation is the diagram drawer in TopBraid Composer, which (after proper configuration) shows a UML-like notation with numeric cardinalities. It is generated automatically, and editing is not allowed.
>>> There are other possibilities (e.g. Enrico Franconi’s ICOM), but I should say that the perfect visual bridge between UML and OWL is yet to come.
>>>
>>> Using native UML editors like Poseidon are of course a possibility, but the semantics of class diagrams is not necessarily correspondent to OWL semantics (however, who cares if that is just for visually supporting intuition without formal claims …).
>>>
>>> Last possibility: use RDF Gravity, and configure nodes and edge filters to obtain what you want.
>>>
>>> Aldo
>>>
>>> On Mar 6, 2014, at 9:55:26 PM , Philipp Cimiano <cimiano@cit-ec.uni-bielefeld.de> wrote:
>>>
>>>> Aldo, all,
>>>>
>>>> I started to use yEd. Attached are the two UML diagrams for the ontolex and the vartrans modules.
>>>>
>>>> However: how do I add cardinalities to the model using yEd. For instance I would like to say something like that the "sense" relation is functional, i.e. 1..1 -- 1..1 on both sides.
>>>>
>>>> How do I say that. I would really like to use some numeric cardinalities rather than weird symbols as people with a general modelling background can read them without knowing the symbols.
>>>>
>>>> Any ideas?
>>>>
>>>> Philipp.
>>>>
>>>> Am 06.03.14 13:24, schrieb Aldo Gangemi:
>>>>> yEd with the Graffoo plugin
>>>>> Also model in ER with yEd and convert to DITTO plugin to check the assumptions
>>>>>
>>>>> Aldo
>>>>>
>>>>> sent by aldo from a mobile
>>>>>
>>>>>> On 06/mar/2014, at 13:06, "Armando Stellato" <stellato@info.uniroma2.it> wrote:
>>>>>>
>>>>>> I used UML Designer
>>>>>> http://marketplace.eclipse.org/content/uml-designer-eclipse-kepler-version#.
>>>>>> UxhcsfmwaN0
>>>>>> though it depends if it is useful to have a tool in Eclipse...
>>>>>>
>>>>>> Another option (probably even better considering we are talking RDF) is the
>>>>>> one from Top Braid:
>>>>>> http://composing-the-semantic-web.blogspot.it/2012/06/graphical-ontology-edi
>>>>>> ting-with.html
>>>>>> but I think it is only available in the standard edition (not free one)
>>>>>>
>>>>>>> -----Original Message-----
>>>>>>> From: Philipp Cimiano [mailto:cimiano@cit-ec.uni-bielefeld.de]
>>>>>>> Sent: Thursday, March 6, 2014 6:58 AM
>>>>>>> To: public-ontolex@w3.org
>>>>>>> Subject: UML diagrams
>>>>>>>
>>>>>>> Dear all,
>>>>>>>
>>>>>>>   I think I would like to include some UML diagrams in our final model
>>>>>>> specification to give simple overviews of the modules, so we would have
>>>>>> five
>>>>>>> UML diagrams ideally ;-)
>>>>>>>
>>>>>>> Does anyone know a good tool for producing UML diagrams that runs on
>>>>>>> Mac/Linux?
>>>>>>>
>>>>>>> Regards,
>>>>>>>
>>>>>>> Philipp.
>>>>>>>
>>>>>>> --
>>>>>>>
>>>>>>> Prof. Dr. Philipp Cimiano
>>>>>>>
>>>>>>> Phone: +49 521 106 12249
>>>>>>> Fax: +49 521 106 12412
>>>>>>> Mail: cimiano@cit-ec.uni-bielefeld.de
>>>>>>>
>>>>>>> Forschungsbau Intelligente Systeme (FBIIS) Raum 2.307 Universität
>>>>>> Bielefeld
>>>>>>> Inspiration 1
>>>>>>> 33619 Bielefeld
>>>> -- 
>>>>
>>>> Prof. Dr. Philipp Cimiano
>>>>
>>>> Phone: +49 521 106 12249
>>>> Fax: +49 521 106 12412
>>>> Mail: cimiano@cit-ec.uni-bielefeld.de
>>>>
>>>> Forschungsbau Intelligente Systeme (FBIIS)
>>>> Raum 2.307
>>>> Universität Bielefeld
>>>> Inspiration 1
>>>> 33619 Bielefeld
>>>>
>>>> <ontolex.png><vartrans.png>
>>
>> -- 
>>
>> Prof. Dr. Philipp Cimiano
>>
>> Phone: +49 521 106 12249
>> Fax: +49 521 106 12412
>> Mail: cimiano@cit-ec.uni-bielefeld.de
>>
>> Forschungsbau Intelligente Systeme (FBIIS)
>> Raum 2.307
>> Universität Bielefeld
>> Inspiration 1
>> 33619 Bielefeld
>>
>> <ontolex2.png>
>


-- 

Prof. Dr. Philipp Cimiano

Phone: +49 521 106 12249
Fax: +49 521 106 12412
Mail: cimiano@cit-ec.uni-bielefeld.de

Forschungsbau Intelligente Systeme (FBIIS)
Raum 2.307
Universität Bielefeld
Inspiration 1
33619 Bielefeld

Received on Friday, 7 March 2014 09:51:30 UTC