Ik ben bezig met een database voor oud Hollandsche archieven gebaseerd op Zend met MySQL. Aan een archief stuk kan ik tags hangen zoals personen, materialen, plaatsen, etc.
Nu wil ik graag tags aan elkaar kunnen relateren dus als iemand zoekt op goudsmit dat daar dan ook de gerelateerde tags goudtsmit en goudsmid aan worden gekoppeld. Hoe kan ik dit database technisch goed oplossen? Zelf denk ik aan een tabel die er als volgt uit ziet:
tag_tag id PK tag1 FK (tag.id) tag2 FK (tag.id)
Maar hoe ga ik hier mee om? Wat moet ik doen met mijn query's om deze koppeling ook backwards te laten werken, zonder dat ik alle mogelijkheden met relaties in de database moet zetten? De relatie wordt handmatig aangemaakt in eerste instantie.
Ik heb hier totaal nog geen kaas van gegeten. Wie kan me hier mee helpen?
Maar ik denk dat je het nu veel moeilijker maakt dan nodig.
1 tabel voor je tags, met een moeder-tag (het norm-woord)
1 tabel waarin je de tags aan het archief-id koppelt
1 tabel voor je archieven
Als je opent en dan SAVE/LOAD kies >> dan rechtsbovenin bij SERVER kies je voor "load".
Gebruik naam "archieven". Dan moet je het te zien krijgen.
Leuke tool die je daar laat zien Eddy. Zo heel veel anders is de opzet toch niet dan zoals ik 't heb? Ik heb de benamingen aangepast en een tabel toegevoegd.
Nee, maar ik doe het in het nederlands. Die invoices (wat is dat?) laat ik buiten wege. Opzet is wel iets anders (namelijk alleen maar veel-op-1-relaties).
Klopt, dat is hiërarchisch ook zo geregeld. Invoice is echt de regel in het archief. Soort van gedetailleerde paginanummering die later goed terug te zoeken is.
Ik ga binnenkort pielen, ik laat wel horen hoe ik het heb opgelost uiteindelijk :)
Ik vind het wel een intressant onderwerp.
Zelf heb ik op mijn eigen site ( www.zunflappie.nl/foto/ ) ook zoiets.
Meerdere tags op een foto. Daar kan je ook filteren op meerdere tags (hoe meer tags, hoe preciezer de selectie).
Maar jij wilt ook synoniemen.
Alleen snap ik niet waarom je een tag 'goudtsmid' wilt hebben.
Het was een voorbeeld van de goudsmit. Ik wil tags aan elkaar kunnen relateren die familie van elkaar zijn. 'Henk de architect' kan ook 'Henk de huizenbedenker' heten in een ander archief stuk en die moeten wel allebei te vinden zijn als op één van de twee gezocht wordt.
Leuk grafisch ontwerp heb je daar trouwens Eddy, zelf ontworpen allemaal?
Om hier op terug te komen, de tags worden inderdaad straks allemaal samengevoegd tot één die goed Nederlands is. In mijn geval dus goudsmid, alle andere varianten komen te vervallen omdat ik een merge functie heb gemaakt. De similar text functie ga ik toepassen op de zoekfunctie, omdat het netjes is en straks de gebruikers nogal in leeftijd (internet ervaring) zullen verschillen :)