You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: .github/workflows/deploy-preview.yml
+1-1Lines changed: 1 addition & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -80,7 +80,7 @@ jobs:
80
80
owner: context.repo.owner,
81
81
repo: context.repo.repo,
82
82
issue_number: pullRequestNumber,
83
-
body: `${start} **[Your pull request preview is ready](https://pr-${pullRequestNumber}--ideditor-presets-preview.netlify.app/id/dist/#locale=en&map=17.00/14.65485/121.06466)**\n\nPlease use this preview to check your changes. Ideally use [the **test documentation** template](https://github.com/openstreetmap/id-tagging-schema/blob/main/.github/PULL_REQUEST_TEMPLATE.md?plain=1#L38-L69) and document your test results by commenting on the PR. This will speed up the review process for everyone.\n\nFYI, once this PR is merged, you can use [the iD Editor Preview](http://preview.ideditor.com/) to test your changes in interaction with all other changes.`
83
+
body: `${start} **[Your pull request preview is ready](https://pr-${pullRequestNumber}--ideditor-presets-preview.netlify.app/id/dist/#locale=en&map=18.00/48.841708/2.587656)**\n\nPlease use this preview to check your changes. Ideally use [the **test documentation** template](https://github.com/openstreetmap/id-tagging-schema/blob/main/.github/PULL_REQUEST_TEMPLATE.md?plain=1#L38-L69) and document your test results by commenting on the PR. This will speed up the review process for everyone.\n\nFYI, once this PR is merged, you can use [the iD Editor Preview](http://preview.ideditor.com/) to test your changes in interaction with all other changes.`
84
84
});
85
85
} else {
86
86
console.log(`Preview URL comment already added to PR #${pullRequestNumber}`);
Copy file name to clipboardExpand all lines: CONTRIBUTING.md
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -50,10 +50,10 @@ Icons from different sources (_icon sets_) can be used in the tagging schema. He
50
50
51
51
### Info-`i`
52
52
53
-

53
+
<imgalt="Screenshot of a preset in iD with the information details open."src="https://github.com/openstreetmap/id-tagging-schema/assets/111561/13549318-cd7c-4dd1-9948-7a2d84662f04"width="400" />
54
54
55
55
iD and other tools provide users with a way to learn more about the main tag of a preset. It is important to provide good information in this information panel. Here are a few notes on how to do this:
56
-
- Does your tag have a Wikibase entry? Click the small pencil icon next to the text to open the Wikibase item on the OSM wiki. Improve this wording if needed. If the Wikibase item is missing, [learn more about how to add it in "Current methods for creating new items"](https://wiki.openstreetmap.org/wiki/Data_items#Item_creation_process).
56
+
- Does your tag have a OSM Wiki data item? Click the small pencil icon next to the text to open the data item on the OSM Wiki. Improve this wording if needed. If the data item is missing, [learn more about how to add it in "Current methods for creating new items"](https://wiki.openstreetmap.org/wiki/Data_items#Item_creation_process).
57
57
- Does your tag have a Wiki page with a good image?
58
58
- Your preset might need [a `reference` property](https://github.com/ideditor/schema-builder?tab=readme-ov-file#reference) to force the system to use a specific tag for the information section.
Copy file name to clipboardExpand all lines: GUIDELINES.md
+18-2Lines changed: 18 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -49,7 +49,7 @@ In addition, the deprecated tag must have reasonably high usage to be considered
49
49
50
50
Deprecation rules work such that the user sees a message with suggestions and can act only when editing the given element. This makes them well-suited for gradual, human-reviewed updates of taggings like crossings. However, they are not suitable for cleaning up incorrect tagging from the database, especially for low-volume changes.
51
51
52
-
There are, however, alternatives to consider:
52
+
There are, however, alternatives to consider:
53
53
- Your cleanup task might be eligible for an automated (bot) edit. [Please learn more on the wiki…](https://wiki.openstreetmap.org/wiki/Automated_Edits_code_of_conduct)
54
54
- If your task is small enough, a few [editing sessions in JOSM](https://wiki.openstreetmap.org/wiki/JOSM) will often do the trick. However, mass-replacing without checking each object is still considered an automated edit, so the [guidelines apply](https://wiki.openstreetmap.org/wiki/Automated_Edits_code_of_conduct). Please consult other mappers first.
55
55
- A good way to work down a list of tasks is to create [a MapRoulette Challenge](https://maproulette.org/).
@@ -65,7 +65,7 @@ The user interface must be clear, concise, and easy to use, leaving no room for
65
65
- Check the search functionality to ensure other presets do not cause confusion.
66
66
- Select an icon or start the process to create a new one.
67
67
- Define which fields to show (`fields`) and suggest (`moreFields`), considering the order of fields.
68
-
- Check the `(i)` documentation and add or update the [OSM Wikibase item](https://wiki.openstreetmap.org/wiki/Data_items) if needed to provide a helpful short text.
68
+
- Check the [`(i)` documentation](./CONTRIBUTING.md#info-i) and add or update the OSM Wiki data item if needed to provide a helpful short text.
69
69
- Use the PR preview to add test cases with deep links to OSM objects that demonstrate the preset in use.
70
70
71
71
## 3. Implement
@@ -75,3 +75,19 @@ If you are familiar with `JSON`, you can implement the preset or field yourself.
75
75
For more details on adding presets, see ["Making changes"](./CONTRIBUTING.md#making-changes).
76
76
77
77
If you are not familiar with `JSON`, still create a ticket. The more you have considered and prepared from the above steps, the easier it will be for someone else to code it.
78
+
79
+
### File Name Conventions and Directory Structure
80
+
81
+
The folder structure and file names of the presets and fields closely follows the main `tags` of the respective files.
82
+
* For example, the preset for `natural=tree` is defined in the file `tree.json` in the directory `data/presets/natural`.
83
+
* For presets with more than one tag, the directory structure is nested: e.g. the preset for `highway=service + service=driveway` is included as `highway/service/driveway.json`.
84
+
* Unsearchable presets are defined in a file name starting with an underscore.
85
+
* Regional presets or fields should be suffixed with a dash and the respective region codes where they are applied, the "default" preset for the rest of the world is kept without a suffix (e.g. `royal_cypher-GB.json`).
86
+
* If reasonable, avoid renaming or moving files when altering the tags of a presets: because translations and some external datasets (e.g. [NSI](https://github.com/osmlab/name-suggestion-index)) are referencing presets by their file and directory name as an identifier, every time a preset or field file is renamed or moved, existing translations are lost and external references potentially broken. If a file name really need to be changed, consider the following approach to limit the impact of the identifier change:
87
+
1. add a placeholder preset with the file name and directory as the preset's previous version that is:
88
+
* not searchable
89
+
* references the strings and fields of the new preset or field
90
+
* has a low matchscore
91
+
2. after the id-tagging-schema release that includes the id change: notify upstream consumers of the data (e.g. NSI) about the change and ask them to update their ids to the new ids
92
+
3. delete the placeholder presets some time after all relevant upstream data was updated and released
0 commit comments