{
  "format": "dataset-manifest/1",
  "slug": "insurance-document-management",
  "version": 1,
  "seed": "insurance-document-management:1",
  "spec": {
    "format": "dataset/1",
    "slug": "insurance-document-management",
    "name": "Insurance Document Management",
    "tagline": "Organize, version, and manage insurance documents effectively.",
    "description": "Insurance professionals handle a multitude of documents daily, ensuring that every policy, claim, and compliance requirement is met. Users access a range of documents from policy agreements to claims submissions, while the meticulous management of these documents is vital for maintaining efficiency and regulatory compliance. Each document can have multiple versions, reflecting updates or changes over time, especially in the context of significant claims. This dynamic environment necessitates careful tracking of who accesses which documents and when, fostering collaboration while ensuring the security of sensitive information.\n\nThe dataset features several interconnected tables that mirror this operation. The 'documents' table contains individual records for each file, including details like the document type and creation date. The 'versions' table tracks the different iterations of these documents, linking back to the 'documents' table through a unique identifier for each document. Users are managed in the 'users' table, which captures information on who interacts with the documents. To facilitate easy retrieval, the 'tags' table allows for categorization of documents, linking to specific documents and enhancing searchability. Finally, the 'policies' table outlines the retention and storage guidelines that govern how documents are handled, which can be linked back to the documents they pertain to.\n\nThis dataset is excellent for practicing queries that answer pivotal questions about document management in an insurance context. For instance, one could explore how many times documents have been accessed, analyze trends in document versioning, or determine which tags are used most frequently. Additionally, it offers opportunities to work with complex joins, allowing developers to visualize data relationships and derive insights from user interactions, document versions, and compliance requirements. Keep in mind, the data provided is synthetic, designed to simulate real-world scenarios for effective learning.",
    "domain": "insurance",
    "shape": "slowly-changing",
    "useCases": [
      "etl-pipelines",
      "teaching"
    ],
    "keywords": [
      "insurance",
      "document management",
      "version control",
      "user access",
      "tags",
      "retention policies"
    ],
    "locale": "en",
    "license": "CC0-1.0",
    "version": 1,
    "tables": {
      "documents": {
        "description": "This table holds the primary records of insurance documents, including their titles and creation dates. Each document can have multiple versions and is linked to specific policies.",
        "rows": 200,
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each document."
          },
          "title": {
            "kind": "sentence",
            "max": 100,
            "description": "The title of the document.",
            "nullable": true
          },
          "created_at": {
            "kind": "date",
            "from": "2020-01-01",
            "to": "2023-10-01",
            "description": "The date the document was created.",
            "trend": "growing"
          },
          "policy_id": {
            "kind": "fk",
            "ref": "policies.id",
            "description": "The policy associated with this document."
          }
        }
      },
      "versions": {
        "description": "Versions of documents are tracked in this table, allowing for management of changes and updates over time. Each version is linked to its corresponding document and includes an update timestamp.",
        "rows": {
          "per": "documents",
          "via": "document_id",
          "min": 1,
          "max": 3,
          "skew": "long-tail"
        },
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each version record."
          },
          "document_id": {
            "kind": "fk",
            "ref": "documents.id",
            "description": "The document this version belongs to."
          },
          "updated_at": {
            "kind": "date",
            "from": "2020-01-01",
            "to": "2023-10-01",
            "description": "The date of the document update.",
            "trend": "growing"
          },
          "version_number": {
            "kind": "int",
            "min": 1,
            "max": 10,
            "description": "The version number of the document.",
            "nullable": true
          }
        }
      },
      "users": {
        "description": "This table captures users who access the documents, including their roles and permissions.",
        "rows": 50,
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each user."
          },
          "full_name": {
            "kind": "fullName",
            "description": "The full name of the user.",
            "nullable": true,
            "when": {
              "column": "role",
              "in": [
                "editor",
                "admin"
              ]
            }
          },
          "email": {
            "kind": "email",
            "from": "full_name",
            "description": "The email address of the user.",
            "nullable": true
          },
          "role": {
            "kind": "enum",
            "values": [
              "viewer",
              "editor",
              "admin"
            ],
            "description": "The role of the user in document management."
          }
        }
      },
      "tags": {
        "description": "Tags assigned to documents for easy retrieval are stored in this table. Each tag links back to its associated document.",
        "rows": {
          "per": "documents",
          "via": "document_id",
          "min": 0,
          "max": 5,
          "skew": "long-tail"
        },
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each tag."
          },
          "document_id": {
            "kind": "fk",
            "ref": "documents.id",
            "description": "The document this tag is associated with."
          },
          "tag_name": {
            "kind": "words",
            "max": 20,
            "description": "The name of the tag for document classification.",
            "nullable": true
          }
        }
      },
      "policies": {
        "description": "Policies governing document retention and access are recorded in this table. Each policy can be linked to multiple documents.",
        "rows": 30,
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each policy."
          },
          "policy_name": {
            "kind": "sentence",
            "max": 100,
            "description": "The name of the retention policy.",
            "nullable": true
          },
          "retention_period": {
            "kind": "int",
            "min": 1,
            "max": 30,
            "description": "Retention period in years for the document under this policy."
          }
        }
      }
    },
    "structure": "multi-table",
    "traits": [
      "categorical",
      "nullable",
      "timestamped"
    ],
    "analysisQuestions": [
      "What are the most common tags assigned to documents?",
      "How many versions of each document exist?",
      "What roles have access to the most documents?",
      "Which retention policies are applied to the most documents?",
      "What is the average retention period for documents?"
    ],
    "suggestedQueries": [
      {
        "title": "Join Documents and Versions",
        "sql": "SELECT d.title, v.version_number FROM documents d JOIN versions v ON d.id = v.document_id;",
        "dialect": "postgres"
      },
      {
        "title": "Count Versions per Document",
        "sql": "SELECT d.title, COUNT(v.id) as version_count FROM documents d LEFT JOIN versions v ON d.id = v.document_id GROUP BY d.title;",
        "dialect": "postgres"
      },
      {
        "title": "Users Accessing Documents",
        "sql": "SELECT u.full_name, COUNT(d.id) as document_count FROM users u LEFT JOIN documents d ON u.role = 'editor' GROUP BY u.full_name;",
        "dialect": "postgres"
      },
      {
        "title": "Retention Policy Distribution",
        "sql": "SELECT p.policy_name, COUNT(d.id) as document_count FROM policies p LEFT JOIN documents d ON p.id = d.policy_id GROUP BY p.policy_name;",
        "dialect": "postgres"
      }
    ],
    "usageScenarios": [
      {
        "title": "Training New Employees",
        "body": "Insurance companies can use this dataset to train new employees on document management systems. They can simulate real-world scenarios involving document creation, version control, and policy applications, enhancing their understanding of compliance and operational efficiency."
      },
      {
        "title": "ETL Process Demonstration",
        "body": "Educators can leverage this dataset to teach students about ETL processes. By extracting data from the various tables, transforming it to meet reporting needs, and loading it into a data warehouse, students can learn valuable skills in data management and analytics."
      },
      {
        "title": "Audit and Compliance Checks",
        "body": "Compliance officers within insurance firms can use the dataset to simulate audit scenarios. By analyzing document versions, user access logs, and retention policies, they can ensure that their document management practices meet regulatory requirements."
      },
      {
        "title": "Data Analytics Projects",
        "body": "Data scientists can utilize this dataset for analytics projects focused on document management efficiency. By querying the relationships between documents, versions, and user roles, they can derive insights that drive improvements in operational processes."
      }
    ]
  },
  "counts": {
    "policies": 30,
    "documents": 200,
    "tags": 309,
    "users": 50,
    "versions": 309
  },
  "stats": {
    "documents": {
      "rows": 200,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 200,
          "min": 1,
          "max": 200
        },
        "title": {
          "nulls": 14,
          "distinct": 185
        },
        "created_at": {
          "nulls": 0,
          "distinct": 185,
          "min": "2020-01-17",
          "max": "2023-10-01"
        },
        "policy_id": {
          "nulls": 0,
          "distinct": 30,
          "min": 1,
          "max": 30
        }
      }
    },
    "versions": {
      "rows": 309,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 309,
          "min": 1,
          "max": 309
        },
        "document_id": {
          "nulls": 0,
          "distinct": 200,
          "min": 1,
          "max": 200
        },
        "updated_at": {
          "nulls": 0,
          "distinct": 275,
          "min": "2020-01-14",
          "max": "2023-09-26"
        },
        "version_number": {
          "nulls": 31,
          "distinct": 10,
          "min": 1,
          "max": 10
        }
      }
    },
    "users": {
      "rows": 50,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 50,
          "min": 1,
          "max": 50
        },
        "full_name": {
          "nulls": 16,
          "distinct": 34,
          "min": "Andre Jensen",
          "max": "Zoe Murphy"
        },
        "email": {
          "nulls": 19,
          "distinct": 31
        },
        "role": {
          "nulls": 0,
          "distinct": 3,
          "min": "admin",
          "max": "viewer"
        }
      }
    },
    "tags": {
      "rows": 309,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 309,
          "min": 1,
          "max": 309
        },
        "document_id": {
          "nulls": 0,
          "distinct": 114,
          "min": 2,
          "max": 200
        },
        "tag_name": {
          "nulls": 27,
          "distinct": 282
        }
      }
    },
    "policies": {
      "rows": 30,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 30,
          "min": 1,
          "max": 30
        },
        "policy_name": {
          "nulls": 4,
          "distinct": 26
        },
        "retention_period": {
          "nulls": 0,
          "distinct": 22,
          "min": 1,
          "max": 30
        }
      }
    }
  },
  "artifacts": [
    {
      "file": "csv/policies.csv",
      "format": "csv",
      "table": "policies",
      "key": "datasets/insurance-document-management/v1/csv/policies.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/insurance-document-management/v1/csv/policies.csv",
      "bytes": 1687,
      "sha256": "e5ca09bcb1ea23b84574ecc56aa96b7e5972efcabe92e5447141eada858ddb9d",
      "rows": 30,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/documents.csv",
      "format": "csv",
      "table": "documents",
      "key": "datasets/insurance-document-management/v1/csv/documents.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/insurance-document-management/v1/csv/documents.csv",
      "bytes": 14269,
      "sha256": "d9a226c9d5036e0927eda1c203bb3f31ef85beca32c812d09053a440e41212be",
      "rows": 200,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/tags.csv",
      "format": "csv",
      "table": "tags",
      "key": "datasets/insurance-document-management/v1/csv/tags.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/insurance-document-management/v1/csv/tags.csv",
      "bytes": 23932,
      "sha256": "580949b970f87d6f3b1904b9b9107cb169557eef4df0ad34f833972b63408ebc",
      "rows": 309,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/users.csv",
      "format": "csv",
      "table": "users",
      "key": "datasets/insurance-document-management/v1/csv/users.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/insurance-document-management/v1/csv/users.csv",
      "bytes": 1736,
      "sha256": "e5d38976531a8a9821af20128a769ce527ab3118db374b1803abfe51022b72e1",
      "rows": 50,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/versions.csv",
      "format": "csv",
      "table": "versions",
      "key": "datasets/insurance-document-management/v1/csv/versions.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/insurance-document-management/v1/csv/versions.csv",
      "bytes": 6551,
      "sha256": "a9905ed51a718ef17f998e12774ce2ac10ba6d7ffcb7906477b07597fa2fa18d",
      "rows": 309,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "insurance-document-management.json",
      "format": "json",
      "table": null,
      "key": "datasets/insurance-document-management/v1/insurance-document-management.json",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/insurance-document-management/v1/insurance-document-management.json",
      "bytes": 121361,
      "sha256": "7ef4cbc169bb128c384f7a5471b475b01dcb424324e0d47eb8039b54d40a1017",
      "rows": null,
      "contentType": "application/json; charset=utf-8"
    },
    {
      "file": "sql/postgres.sql",
      "format": "sql-postgres",
      "table": null,
      "key": "datasets/insurance-document-management/v1/sql/postgres.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/insurance-document-management/v1/sql/postgres.sql",
      "bytes": 60843,
      "sha256": "54f5fcc6e4f0909f566f4169f8e2d2273e9ed683f5a3691969340bfc0782ef42",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/mysql.sql",
      "format": "sql-mysql",
      "table": null,
      "key": "datasets/insurance-document-management/v1/sql/mysql.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/insurance-document-management/v1/sql/mysql.sql",
      "bytes": 60304,
      "sha256": "5b0f285483b6ed7d06698deff6baf7f58b994daa0651b8eab52d0ff453903d31",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/mssql.sql",
      "format": "sql-mssql",
      "table": null,
      "key": "datasets/insurance-document-management/v1/sql/mssql.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/insurance-document-management/v1/sql/mssql.sql",
      "bytes": 61737,
      "sha256": "3356888fde2708c2a7fd1236374dcc8b7d7f527bdd3146d4a28955035960db1c",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/sqlite.sql",
      "format": "sql-sqlite",
      "table": null,
      "key": "datasets/insurance-document-management/v1/sql/sqlite.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/insurance-document-management/v1/sql/sqlite.sql",
      "bytes": 60170,
      "sha256": "a7cd2de1862bed3b27f35b77e5b43eb0ae963c384e9be21c7ef97333b98de91c",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "prisma/seed.ts",
      "format": "prisma-seed",
      "table": null,
      "key": "datasets/insurance-document-management/v1/prisma/seed.ts",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/insurance-document-management/v1/prisma/seed.ts",
      "bytes": 99872,
      "sha256": "de87350c9d122987937c510935010128d82c568027c8f8995a8b66b3f859bb5a",
      "rows": null,
      "contentType": "application/typescript; charset=utf-8"
    },
    {
      "file": "django/fixtures.json",
      "format": "django-fixture",
      "table": null,
      "key": "datasets/insurance-document-management/v1/django/fixtures.json",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/insurance-document-management/v1/django/fixtures.json",
      "bytes": 157109,
      "sha256": "5233f3045b40ffc11ec999666e2379e0f8ead574a5924fff3e0cd17b6f59096e",
      "rows": null,
      "contentType": "application/json; charset=utf-8"
    }
  ],
  "publishedAt": 1788767392618,
  "updatedAt": 1788767392618
}
