diff -r 0af8e6b6dfe0 -r b50ade8e7197 docs/src/sync-configuration.md
--- a/docs/src/sync-configuration.md Sun Jun 24 11:22:02 2018 +0200
+++ b/docs/src/sync-configuration.md Sun Jun 24 11:51:07 2018 +0200
@@ -100,6 +100,47 @@
Default: 0 \
Example: `50`
+### tagconfig
+
+Configures the local store for resource tags. If this element is specified, resource tags are stored locally.
+
+Optional elements: local-store, detect-changes, xattr-name, on-conflict
+
+### local-store
+
+Specifies the tag-store type. Currently the only available type is `xattr`.
+
+The element can contain the attribute `format` with one of the following values: `text`, `csv`, `xml`, `macos`. The default value is `text`.
+
+Type: tagstore type enum \
+Default: xattr \
+Example: `xattr`
+
+### xattr-name
+
+Specifies the name of the extended attribute for storing tags. The default value is `tags`, unless you are using the `macos` format, where the default value is `com.apple.metadata:_kMDItemUserTags`.
+
+Type: string \
+Default: tags \
+Example: `file_tags
+
+### detect-changes
+
+Controls, if tag changes should be detected.
+
+Type: boolean \
+Default: false \
+Example: `true`
+
+### on-conflict
+
+Specifies the behavior, when tag conflicts occur. Possible values are: `no_conflict`, `keep_local`, `keep_remote`, `merge`
+
+Type: onconflict enum \
+Default: no_conflict \
+Example: `merge`
+
+
### filter
With the filter element, include and exclude filters can be specified, to control which files are synchronized. The *pull*, *push* and *archive* command apply these filters to file paths. At first it is checked if a file is matching any include filter. If so only files matching not an exclude filter are further processed.
@@ -136,13 +177,19 @@
### tags
-TODO
+Filters resources by tags. Only resources, that are not a collection, are effected. If tags are not stored locally, the pull command still uses the filter.
+
+Filter Syntax:
+
+ filter ::= operator? , (tag_list | ("(" , filter , ")")+)
+ tag_list ::= tag , ("," tag)*
+ operator ::= "&" | "|" | "1" | "0"
Type: tag filter expression \
Example:
- | (tag1, tag2, tag3)
+ | (tag1, tag2, tag3)