> But a link can be broken, mgd_delete_article($real),
> and with MySQL deleted article id can be reused linking to another one.
If you want to handle this within Midgard (instead of in self-supplied
php functions to wrap the create and delete functions) an
article/topic could include a reference count to prohibit deletion
of them while they are still linked to a topic.
But links change the topic/topic and topic/article relationship
from a one-to-many to a many-to-many relationship, which requires
an extra table and changes to the topic/article implementation.
Another way would be to create 'ghost' articles/topics whose
sole purpose is to represent a link. Fetching a ghost article
could then automatically fetch the linkee (taking into account
links to links to links to...). The ghost records could double
as a reference count.
This is pretty straightforward, technically, but has performance
implications, and might make access control more 'interesting'.
And the Admin site would need a large rework, I guess.
> Only transactions can solve the problem.
Transactions would be cool to have, but not all databases support
them. It will be quite a challenge to build a layer that can
be slipped in between Midgard and ODBC that would implement
transactions for any backend.
Bye,
Emile
--
This is The Midgard Project's mailing list. For more information,
please visit the project's web site at http://www.midgard-project.org
To unsubscribe the list, send an empty email message to address
[EMAIL PROTECTED]