Best Practices and Example for Tagging Data

From IDESG Wiki
Jump to navigation Jump to search

Introduction

User Private Information will be held in a variety of Digital Entity types on the internet. Some means will be required for tracking that data to remain in compliance with multiple rules and regulations. This page seeks to frame the problem and suggests tagging as one best practice for dealing with the issue.

Context

Each Digital Entity that collects User Private Information has an obligation to a variety of regulations and business reasons for collecting and storing that information. They also have obligations to the user to follow the user intent to collect and store that information. In the simplest case, the Digital Entity will have a privacy policy that specifies what information is collected and for what reason. Some collection is required for regulatory or business purposes and some is optionally provided by users for personalization and other matters of convenience to the user. For the purposes of this paper we categorize each Digital Entity as either:

  1. an entity that has a fixed set of data elements each with its own predetermined retention policy,
  2. an entity where data element collection and retention varies depending on user stipulations and the status of the user which may change over time.

One other reason for the status of user elements being retained beyond the period stipulated by the user is governmental actions, either regulatory or legal. Those are not considered in this paper.

Problem

The problem addressed in the paper is the second above, where User Private Information status is variable. For the case where it is not look at Best Practices and Example for RP System.

Solutions

For simplicity the assumption is made that all User Private Information is tagged in the User Object held by the Digital Entity. It is certainly possible to build a system were some or none of the data is tagged, but it is hoped that this best practice document will help designers and architects to the best solution for their particular design parameters.

  • table with data
  • table with tags
  • share the same main key - tags table also has a portion of the key which is the column name for the tagged data
  • columns in tag table
  1. validated - small (16) int 0 = no validation, 1 = user has control of data element (like email address or phone number entered or validated by user), 16 = External control of data element
  2. tags - string - multiple space separated tags
  3. structure - xml - rich control structure that has db support or JSON - rich control structure JWT widely used on web, but would likely need restructured for this purpose

References and Coordination

  1. Recommended SQL database design for tags or tagging
  2. Database schema for posts with multiple tags
  3. tag in SQL database
  4. Database Design for Tagging
  5. Best way to store Tags in a SQL Server Table