[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [Elist Home]
Subject: Re: [topicmaps-comment] Re: RDF/Topic Maps: late/lazy reificationvs.early/preemptive reification
[Piotr Kaminski] > > 2. There is redundancy: you're effectively recording the membership of > the club in two places. Once in the original association, and again in > the sponsorship associations you're creating. > This is a very interesting matter. Maybe you are duplicating it and maybe you are not. It depends a lot on exactly what these roles are supposed to mean. Also, don't forget, we had a ground rule of sorts- not to mess with the original association too much. Now about the sponsorship association - you are making a statement about the ***membership*** of the person, not about the club per se. So the club actually does not appear twice in the same way. Instead, it plays a different role in the sponsorship association than it did in the membership association. In fact, you could have a sponsorship that did not result in a membership - because the person was rejected by the club. So does the "sponsorship" association include the success of the sponsored attempt to join, or not? This could make a difference in the degree of redundancy, too. I don't think that having a separate association for sponsorship in itself indicates a loss of normalization (in the relational database sense). In a relational system, one key test for correct normalization is whether any items in a row (which represents an association between the items) actually depend on each other (not counting the primary key, on which they must all depend). Whether they do in this case depends on the exact meaning of "sponsorship", as we've just seen. On the other hand, if you did not have to start with an existing association, you might model this example with a single association (for each person who is a member) called "membership". Membership could have an organization role, a person role, and a sponsor role. This approach would eliminate the original assocation altogether. It's good that topic maps have the flexibility to model the situation either way. The real issue, at least for me, is establishing the intended meaning of the relationships, especially if we are interested in machine processing as well as human consumption. This is an unsolved problem, so far as I am concerned. RDF Schema tries to address it, DAML+OIL tries to do it with logic and ontologies, but I think there is a long way to go. In Conceptual Graphs, you can define a relationship by means of a subgraph that has formal parameters (lambda expressions or their graphical equivalent). At present, topic maps don't have that capability, but maybe it will come out of activities to define templates. Once you can do that, you have a lot of freedom to represent a situation with relationships or with concepts as the focus, as seems to fit the case or your particular view of it. Cheers, Tom P
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [Elist Home]
Powered by eList eXpress LLC