Abstract
This document specifies Pairtree, a filesystem hierarchy for holding objects that are located within that
hierarchy by mapping identifier strings to object directory (or folder) paths two characters at a time. If
an object directory (folder) holds all the files, and nothing but the files, that comprise the object, a
"pairtree" can be imported by a system that knows nothing about the nature or structure of the
objects but can still deliver any object's files by requested identifier.
Schema.org is a set of extensible schemas that enables webmasters to embed structured data on their web pages for use by search engines and other applications.
DB-SVG is a java web application that generates SVG data model diagrams for any database with a JDBC driver. Database connections are configured via an XML file. The interactive interface allows tables to be dragged around and their positions saved. It is designed to make internal database coordination and documentation easy and accessible. See the demo to understand how it works.
CREATE VIEW INFORMATION_SCHEMA_TABLES AS SELECT 'main' AS TABLE_CATALOG, 'sqlite' AS TABLE_SCHEMA, tbl_name AS TABLE_NAME, CASE WHEN type = 'table' THEN 'BASE TABLE' WHEN type = 'view' THEN 'VIEW' END AS TABLE_TYPE, sql AS TABLE_SOURCE FROM sqlite_master WHERE type IN ('table', 'view') AND tbl_name NOT LIKE 'INFORMATION_SCHEMA_%' ORDER BY TABLE_TYPE, TABLE_NAME;
SchemaSpy is a Java-based tool (requires Java 5 or higher) that analyzes the metadata of a schema in a database and generates a visual representation of it in a browser-displayable format. It lets you click through the hierarchy of database tables via child and parent table relationships as represented by both HTML links and entity-relationship diagrams. It's also designed to help resolve the obtuse errors that a database sometimes gives related to failures due to constraints.
If you release a new version of your module and it needs to have a new database schema, you need to do two things to make this change work. First, be sure to update the schema structure in mymodule_schema() so that new installations of your module get the new database table structure. Second, use a hook_update_N() function,
M. Sampaio, J. Quesado, and S. Barros. Advances in Databases and Information Systems, volume 186 of Advances in Intelligent Systems and Computing, Springer Berlin Heidelberg, (2013)