Skip to content

Commit 2f0cb6e

Browse files
committed
Update MP Design Rules.md
1 parent d738084 commit 2f0cb6e

File tree

1 file changed

+2
-1
lines changed

1 file changed

+2
-1
lines changed

MP Design Rules.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ permalink: /mat-paths/design-rules
88

99
This project explores SQLite capacity and features for managing hierarchical systems of categories. While the classical relational model does not mesh well with hierarchical data, there are several [approaches](#TreesAndRDBMS) to marrying these concepts. Category systems facilitate information [management](#ClassRefs) by associating each category with a specific characteristic/feature that distinguishes its members from nonmembers. The design of these category systems shall meet the following specification:
1010

11+
<a name="Rules"></a>
1112
1. Categories form a tree/forest structure.
1213
2. Each category has at most one parent.
1314
3. A category is identified by its *path* (vis-a-vis an absolute normalized file system path).
@@ -37,7 +38,7 @@ This rule is essentially common sense. Many broadly used classification systems
3738

3839
#### Rule #5
3940

40-
Each category is associated with a distinct classification feature (encoded in the category's path, see Rule #4) used to identify a subset of objects sharing the same feature. Allowing sibling namesakes among categories is, therefore, meaningless and degrades, if not breaks, the utility of the classification system (cf. with FS paths, which identify FSOs).
41+
Each category is associated with a distinct classification feature (encoded in the category's path, see Rule #4) used to identify a subset of objects sharing the same feature. Allowing sibling namesakes among categories is, therefore, meaningless and degrades, if not breaks, the utility of the classification system (cf. with FS paths, which identify FSOs). Because of this rule, the *path* column constitutes a natural primary key and is a suitable reference for foreign key relationships. Also, category subtree COPY/MOVE operations may cause name conflicts, and the processing script should partially follow FS logic (see following sections for further discussion). For each conflict, only a single conflicting node remians, retaining item assignments from both conflicitng nodes.
4142

4243
#### Rule #6
4344

0 commit comments

Comments
 (0)