From ae09088968058f1dfcbac08e2b97e5afbf684c04 Mon Sep 17 00:00:00 2001
From: apriestman <apriestman@basistech.com>
Date: Wed, 3 Feb 2021 11:25:10 -0500
Subject: [PATCH] Reorganizing schema docs. Added info on Autopsy version and
 major changes. Added page listing older schemas.

---
 bindings/java/doxygen/Doxyfile                     |  5 +++--
 bindings/java/doxygen/main.dox                     |  1 +
 .../java/doxygen/{ => schema}/db_schema_8_6.dox    |  6 ++++++
 bindings/java/doxygen/schema/schema_list.dox       | 14 ++++++++++++++
 4 files changed, 24 insertions(+), 2 deletions(-)
 rename bindings/java/doxygen/{ => schema}/db_schema_8_6.dox (99%)
 create mode 100644 bindings/java/doxygen/schema/schema_list.dox

diff --git a/bindings/java/doxygen/Doxyfile b/bindings/java/doxygen/Doxyfile
index d10f4c37d..aaf864421 100644
--- a/bindings/java/doxygen/Doxyfile
+++ b/bindings/java/doxygen/Doxyfile
@@ -765,8 +765,9 @@ INPUT                  = main.dox \
                          artifact_catalog.dox \
                          insert_and_update_database.dox \
                          communications.dox \
-                         db_schema_8_6.dox \
-						 ../src
+                         schema/schema_list.dox \
+                         schema/db_schema_8_6.dox \
+                         ../src
 
 # This tag can be used to specify the character encoding of the source files
 # that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses
diff --git a/bindings/java/doxygen/main.dox b/bindings/java/doxygen/main.dox
index 234245d78..b49013b51 100644
--- a/bindings/java/doxygen/main.dox
+++ b/bindings/java/doxygen/main.dox
@@ -46,6 +46,7 @@ The Sleuth Kit has its own database schema that is shared with Autopsy and other
 
 - Database Schema Documentation:
  - \subpage db_schema_8_6_page 
+ - \subpage db_schema_page "Older schemas"
 - Refer to \subpage query_database_page if you are going to use one of the SleuthkitCase methods that requires you to specify a query. 
 - Refer to \subpage insert_and_update_database_page if you are a Sleuth Kit developer and want to avoid database issues.
 
diff --git a/bindings/java/doxygen/db_schema_8_6.dox b/bindings/java/doxygen/schema/db_schema_8_6.dox
similarity index 99%
rename from bindings/java/doxygen/db_schema_8_6.dox
rename to bindings/java/doxygen/schema/db_schema_8_6.dox
index 0197b0b88..987e56e31 100644
--- a/bindings/java/doxygen/db_schema_8_6.dox
+++ b/bindings/java/doxygen/schema/db_schema_8_6.dox
@@ -18,6 +18,12 @@ Some general notes on this schema:
 - The Blackboard is used to store artifacts, which contain attributes (name/value pairs).  Artifacts are used to store data types that do not have more formal tables. Module writers can make whatever artifact types they want. See \ref mod_bbpage for more details. 
 - The Sleuth Kit will make virtual files to span the unallocated space.  They will have a naming format of 'Unalloc_[PARENT-OBJECT-ID]_[BYTE-START]_[BYTE-END]'.
 
+# Schema Information
+
+- <b>Autopsy versions: </b> Autopsy 4.18
+- <b>Changes from version 8.5:</b>
+ - New column for SHA-256 hash in tsk_files
+
 
 # General Information Tables 
 ## tsk_db_info 
diff --git a/bindings/java/doxygen/schema/schema_list.dox b/bindings/java/doxygen/schema/schema_list.dox
new file mode 100644
index 000000000..54a0b37f8
--- /dev/null
+++ b/bindings/java/doxygen/schema/schema_list.dox
@@ -0,0 +1,14 @@
+/*! \page db_schema_page TSK & Autopsy Database Schemas
+
+This page contians links to the documention for selected versions of the TSK & Autopsy database schema.
+
+- Current Schema
+ - \subpage db_schema_8_6_page 
+ 
+- Older Schemas
+ - <a href="https://wiki.sleuthkit.org/index.php?title=Database_v7.2_Schema">Schema version 7.2</a>
+ - <a href="https://wiki.sleuthkit.org/index.php?title=SQLite_Database_v6_Schema">Schema version 6</a>
+ - <a href="https://wiki.sleuthkit.org/index.php?title=SQLite_Database_v3_Schema">Schema version 3</a>
+ - <a href="https://wiki.sleuthkit.org/index.php?title=SQLite_Database_v2_Schema">Schema version 2</a>
+
+*/
\ No newline at end of file
-- 
GitLab