forked from MapComplete/MapComplete
Improve documentation of Tags_format, add a few backlinks, see #887
This commit is contained in:
parent
d0b5163ff0
commit
2731c64856
3 changed files with 13 additions and 3 deletions
|
@ -4,6 +4,8 @@ Tags format
|
||||||
When creating the `json` file describing your layer or theme, you'll have to add a few tags to describe what you want.
|
When creating the `json` file describing your layer or theme, you'll have to add a few tags to describe what you want.
|
||||||
This document gives an overview of what every expression means and how it behaves in edge cases.
|
This document gives an overview of what every expression means and how it behaves in edge cases.
|
||||||
|
|
||||||
|
If the schema-files note a type `string | AndOrTagConfigJson`, you can use one of these values.
|
||||||
|
|
||||||
Strict equality
|
Strict equality
|
||||||
---------------
|
---------------
|
||||||
|
|
||||||
|
@ -38,8 +40,8 @@ If `key` is not present or empty, this will match too.
|
||||||
This implies that, to check if a key is present, `key!=` can be used. This will only match if the key is present and not
|
This implies that, to check if a key is present, `key!=` can be used. This will only match if the key is present and not
|
||||||
empty.
|
empty.
|
||||||
|
|
||||||
Number comparison
|
Number and date comparison
|
||||||
-----------------
|
--------------------------
|
||||||
|
|
||||||
If the value of a tag is a number (e.g. `key=42`), one can use a filter `key<=42`, `key>=35`, `key>40` or `key<50` to
|
If the value of a tag is a number (e.g. `key=42`), one can use a filter `key<=42`, `key>=35`, `key>40` or `key<50` to
|
||||||
match this, e.g. in conditions for renderings. These tags cannot be used to generate an answer nor can they be used to
|
match this, e.g. in conditions for renderings. These tags cannot be used to generate an answer nor can they be used to
|
||||||
|
@ -51,6 +53,8 @@ special circumstances (e.g. `surface_area=42 m2` or `length=100 feet`), this wil
|
||||||
values (`surface=422` or if a length in meters is compared to). However, this can be partially alleviated by using '
|
values (`surface=422` or if a length in meters is compared to). However, this can be partially alleviated by using '
|
||||||
Units' to rewrite to a default format.
|
Units' to rewrite to a default format.
|
||||||
|
|
||||||
|
Dates can be compared with the same expression: `somekey<2022-06-22` will match if `somekey` is a date and is smaller then 22nd june '22.
|
||||||
|
|
||||||
Regex equals
|
Regex equals
|
||||||
------------
|
------------
|
||||||
|
|
||||||
|
@ -87,7 +91,7 @@ To mitigate this, use:
|
||||||
{
|
{
|
||||||
"mappings": [
|
"mappings": [
|
||||||
{
|
{
|
||||||
"if":"key:={some_other_key}"
|
"if":"key:={some_other_key}",
|
||||||
"then": "...",
|
"then": "...",
|
||||||
"hideInAnswer": "some_other_key="
|
"hideInAnswer": "some_other_key="
|
||||||
}
|
}
|
||||||
|
|
|
@ -182,6 +182,7 @@ export class TagUtils {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns wether or not a keys is (probably) a valid key.
|
* Returns wether or not a keys is (probably) a valid key.
|
||||||
|
* See 'Tags_format.md' for an overview of what every tag does
|
||||||
*
|
*
|
||||||
* // should accept common keys
|
* // should accept common keys
|
||||||
* TagUtils.isValidKey("name") // => true
|
* TagUtils.isValidKey("name") // => true
|
||||||
|
|
|
@ -1,3 +1,8 @@
|
||||||
|
/**
|
||||||
|
* A small interface to combine tags and tagsfilters.
|
||||||
|
*
|
||||||
|
* See https://github.com/pietervdvn/MapComplete/blob/develop/Docs/Tags_format.md for documentation
|
||||||
|
*/
|
||||||
export interface AndOrTagConfigJson {
|
export interface AndOrTagConfigJson {
|
||||||
and?: (string | AndOrTagConfigJson)[]
|
and?: (string | AndOrTagConfigJson)[]
|
||||||
or?: (string | AndOrTagConfigJson)[]
|
or?: (string | AndOrTagConfigJson)[]
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue