OK, I am slowly getting there. The status now is that it defaults to
setting the value to null if the "parent" is deleted. The best thing
would be if it was possible to have a cascade delete and maybe even
refuse behavior, too. I'm not sure how to implement that, though... I
don't even know if that is possible without a big rewrite. I guess I
would need a kind of hook into the deleting routine of all objects...

Any ideas?

Thomas

On Sat, Oct 25, 2008 at 12:03 PM, Pascal Voitot
<[EMAIL PROTECTED]> wrote:
> fully agree with that!
> if need any support, don't hesitate to ask... will try to find a few
> minutes...
>
>
>
> On Fri, Oct 24, 2008 at 6:20 AM, Artem Melentyev <[EMAIL PROTECTED]>wrote:
>
>> Hi, Thomas.
>>
>> I think it is a good idea. It would be very useful for xwiki.
>>
>> I propose
>>  ReferencePropertyClass (contains reference target
>> (object,document,attachment), cascade delete options and other
>> configurations)
>>  ObjectReferenceProperty (reference to BaseObject)
>>  DocumentReferenceProperty (if needed. reference to XWikiDocument)
>> as name of these properties.
>> I think "Foreign key" is too technical name for this.
>>
>> Please create a jira issue (new feature) and attach patches.
>>
>> Thanks
>>
>> Thomas McColgan wrote:
>> > I'm proposing to implement a new property type: A foreign key,
>> > analogous to the concept in relational databases. Together with custom
>> > mapping, a property like this would make it possible to use Xwiki as a
>> > frontend for a relational database, while making full use of the wikis
>> > capabilities(configurability, history, etc).
>> > The implementation would look similar to the existing "Database list"
>> > on the outside, but it would make a lot more use of the databases
>> > features. If A links to B, and someone deletes B the reference in A
>> > would either be set to null, or the delete would be stopped, depending
>> > on the configuration. It would also make it possible to adress
>> > associated objects directly in hql.
>> >
>> > The basic functionality can be emulated using DBList(adding a property
>> > to one object by choosing from existing instances of another class),
>> > but this is not useful if one wants to have "real" foreign key
>> > behaviour in the wiki and the underlying DB. If there is a demand for
>> > this I will be happy to contribute a patch once I am done, and I will
>> > try make the code nice enough to submit. Otherwise I will probably
>> > just make it as a hack to meet the exact need that I have...
>> >
>> > Thomas
>> > _______________________________________________
>> > devs mailing list
>> > [email protected]
>> > http://lists.xwiki.org/mailman/listinfo/devs
>>
>>
>> --
>>    Artem Melentyev
>> _______________________________________________
>> devs mailing list
>> [email protected]
>> http://lists.xwiki.org/mailman/listinfo/devs
>>
> _______________________________________________
> devs mailing list
> [email protected]
> http://lists.xwiki.org/mailman/listinfo/devs
>
_______________________________________________
devs mailing list
[email protected]
http://lists.xwiki.org/mailman/listinfo/devs

Reply via email to