summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Mollekopf <mollekopf@kolabsys.com>2012-10-24 15:41:57 (GMT)
committerChristian Mollekopf <mollekopf@kolabsys.com>2012-10-24 15:41:57 (GMT)
commitefc190a32ad3e7d0016e00e8d2d8aecc3d75d7e0 (patch)
treef21313c9a1bec1f9c42096414f0a24a4fe622b1e
parent52015a3dd38aff803611949a5ad568c4331ea334 (diff)
downloadkeps-efc190a32ad3e7d0016e00e8d2d8aecc3d75d7e0.tar.gz
Hierachical categories are deprecated.
-rw-r--r--KEP-0017.txt48
1 files changed, 32 insertions, 16 deletions
diff --git a/KEP-0017.txt b/KEP-0017.txt
index 1b77cc0..7ff4720 100644
--- a/KEP-0017.txt
+++ b/KEP-0017.txt
@@ -171,32 +171,21 @@ Implements:
value-category = ( [[#String]] )
- category-hierarchy = value-category("\"value-category)*
-
property-categories = (
- element text { category-hierarchy } +
+ element text { value-category } +
)
''A simple text tag used to categorize the object.''
-Category tags are mostly used to group objects into categories.
-
-The tags '''MAY''' use a hierarchy by prepending parent tags using '\' (Backslash: U+005C) as delimiter.
-
-A value-category '''MUST NOT''' contain a '\' (Backslash: U+005C).
-
-Defining a single category-hierarchy '''SHALL''' be sufficient to define all categories which are part of the hierarchy, but the object "MUST" only get the whole category-hierarchy as category and not each indvidual value-category.
-
-A category '''SHALL''' be identifieable by string comparison. The whole category-hierarchy '''MUST''' be compared.
+Categories are plaintext tags which are used group objects into categories.
-{{note|Example|"parent\child" would indicate a parent-child relationship between "parent" and "child". This defines the categories "parent" and "parent\child". Note that the "child" category of "parent2\child" is not the same as "parent\child". Note also that unless "parent" is also explicitly added to the categories list the object has only the "parent\child" category and not the "parent" category.}}
+Categories '''SHALL''' be used as plaintext tags only and '''SHOULD NOT''' have any encoded structure.
Implements:
* {{rfc|5545}} [https://tools.ietf.org/html/rfc5545#section-3.8.1.2 section-3.8.1.2]
* {{rfc|6350}} [https://tools.ietf.org/html/rfc6350#section-6.7.1 section-6.7.1]
-{{note|Implementation note: Structured Tags|In the future the might be a need for structured tags consiting of type, identifier, display name (and possibly a hierarchical relation). This is however not currently used (except for nepomuk) and was therefore not implemented. For the current needs this would have been a overengineering solution. Structured tags can be introduced at a later stage without rendering this property useless.}}
-{{note|Implementation note: Hierarchy|The hierarchy is not build using xml element nesting (such as in the category configuration) for compatibility with the used RFCs.}}
+{{note|Hierarchical Categories|See [[#Hierarchical Categories]] for a specification of the deprecated hierarchical categories as used by Kontact}}
=== xCal based objects ===
@@ -1486,7 +1475,7 @@ The vcard:kind element '''MUST''' have the value "group".
element prodid { [[#Product ID|value-productid]] },
element creation-date { [[#Creation date|value-creation-date]] },
element last-modification-date { [[#Last modification date|value-lastmodified-date]] },
- element categories { [[#Categories|category-hierarchy]] } *,
+ element categories { [[#Categories|value-category]] } *,
element classification { [[#Classification|value-classification]] } ?,
element attachment { [[#Attachment]] } *,
element summary { [[#String]] } ?,
@@ -1928,6 +1917,33 @@ The said workaround is to make all types of the unordered list an extension of a
To fix this shortcoming of the used RFC's the order is required in the Kolab XML Format.
+=== Hierarchical Categories ===
+
+This part describes hierarchical categories as they're traditionally used by Kontact.
+Hierachical categories are still being used until more powerful concepts such as [http://wiki.kolab.org/PIM-Item_Relations PIM-Item Relations] are in place.
+
+ value-category = ( [[#String]] )
+
+ category-hierarchy = value-category("\"value-category)*
+
+ property-categories = (
+ element text { category-hierarchy } +
+ )
+
+''Hierachical categories used for backwards compatibility''
+
+The tags '''MAY''' use a hierarchy by prepending parent tags using '\' (Backslash: U+005C) as delimiter.
+
+A value-category '''MUST NOT''' contain a '\' (Backslash: U+005C).
+
+Defining a single category-hierarchy '''SHALL''' be sufficient to define all categories which are part of the hierarchy, but the object "MUST" only get the whole category-hierarchy as category and not each indvidual value-category.
+
+A category '''SHALL''' be identifieable by string comparison. The whole category-hierarchy '''MUST''' be compared.
+
+{{note|Example|"parent\child" would indicate a parent-child relationship between "parent" and "child". This defines the categories "parent" and "parent\child". Note that the "child" category of "parent2\child" is not the same as "parent\child". Note also that unless "parent" is also explicitly added to the categories list the object has only the "parent\child" category and not the "parent" category.}}
+{{note|Implementation note: Hierarchy|The hierarchy is not build using xml element nesting (such as in the category configuration) for compatibility with the used RFCs.}}
+{{note|PIM-Item Relations|Hierachical categories are to be replaced with something like PIM-Item Relations. The hierarchical categories here are only a temporary solution for backwards compatiblity.}}
+
== References ==
{{Reflist}}