Use case: People sign up on cloud to explore Wikibase and experiment with how to model their data, and evaluate whether Wikibase(.cloud) is the solution for them. This experimentation can result in needing a fresh start to re-build the Wikibase with the newly gained experience to do it properly this time.
Secondary, even without the explicit intent of experimentation, people might end up making errors in their Wikibase that are too complicated, large scale etc. to be corrected, and result in needing a fresh start as well.
Idea: We've had multiple requests from users to "reset" their Wikibase. Currently the work-around to do this is it to delete the Wikibase and start over with a new one, but the user would lose the domain they used. Therefore, it was suggested to give the users a feature that allows them to empty their Wikibase of all entities, whilst preserving the Wikibase domain. This does not include selective removal, only emptying the entire thing.
Concern: Fully deleting data might remove created links in the future Linked Open Data web, one person's experimental data might be another's foundational data. Furthermore, where does the ability to mass delete in such a way end?
Solutions to consider:
- Explicitly making the decision to fully delete the data, potentially severing links, based on the knowledge that this data is fully experimental and the deletion was a very conscious decision made by the owner of the Wikibase (potentially add some education towards the user as to what impact this might have, and a limit to when this is possible, e.g. Wikibase age, size etc.)
- Allow users to delete the data, but preserving it in history. This would result in users re-starting from e.g. Q50 instead of Q1, but would otherwise not affect the experience
- Don't introduce the feature, instead introduce a heads up to users when creating the Wikibase, that it's not possible to re-start. We'd recommend them making use of the limit of 6 Wikibases, so that they can have an experimental Wikibase and the "real deal" running in parallel
- Don't introduce the feature, instead allow users to create a separate Sandbox Wikibase during the first onboarding. This will allow people to play around as much as they want without it being part of the ecosystem just yet
AC:
- Users can easily remove all entities of the Wikibase themselves
- The feature should live in the platform UI
- There should be a double-check to confirm "are you sure.."
- The count of deleted entities should be trackable for internal analytics purposes
- This feature is only available to the admin of the Wikibase