Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Resolve redundant methods of creating tag implications #1371

Open
discomrade opened this issue Dec 26, 2024 · 0 comments
Open

Resolve redundant methods of creating tag implications #1371

discomrade opened this issue Dec 26, 2024 · 0 comments

Comments

@discomrade
Copy link
Contributor

A tag implication (aka. tag parent) is when a tag logically implies another: a fox is always a canine, animal. It is similar to a tag alias (aka. tag sibling) where two tags have the same meaning: smiling is another way of tagging smile.

There are currently two ways to create tag implications:

  1. Setting a tag alias as itself plus the implication: fox -> fox canine animal [1], which has recently been officially recognised on the tag alias settings page[2].
  2. Enabling the Auto-Tagger extension[3] and adding them.

Both are being used by Shimmie admins and having two ways to tag implications seems like a maintenance and administrative problem. The first is hacky (even if valid) and the second is a misleadingly-named optional extension. I propose they be consolidated into a core extension (like Alias Editor already is), which creates an Implications tab next to Aliases.

image

I think the best option is to duplicate the aliases table and page, rename and polish it, and then write a SQL migration script to convert any existing Auto-tagger entries to the implications table, and to convert implication-aliases to become implications, and then finally add an input validation check to prevent new aliases being abused as implications. This allows the Auto-tagger extension to be removed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant