### Problem

Do you have some key-value meta-data you would like to store with map notes? 
Would you like to do it like with tags in nodes / ways / relations / changesets 
/ .. instead of writing in description / comments? Note tags have already been 
mentioned / requested several times in #385 , #801 , #3932 and similar. Here we 
expose our plan about how we could add them.

### Description

Here is a list of PRs (steps) we would like to work on with rough description 
of what they will do. We would highly appreciate your feedback and suggestions 
on how we could improve the plan:

1. Create migration script for creating note-tags table:
   - create new table **note_tags** with note_id (bigint(8)), k (string, 
default “”, not-null) and v (string, default(“”), not-null) attributes
   - **(note_id, k)** will be set as private key and **note_id** will be 
foreign key referring id attribute from **notes** table
2. Add loading and displaying note tags using **browse/tag_details** partial
   - Add displaying of note tags using **browse/tag_details** partial between 
Description (currently "special first comment") and Comments (remaining 
comments)
   - Add / improve new / existing unit tests for testing new functionalities
3. Update Notes API to include retrieving note tags
   - Update **(j)builder** / **API::NotesController** / **Note model** files to 
include note tags in generated files
      It will insert **<tag k="" v=""/>** pairs between **ID** and **URL** like 
in [this 
example](https://wiki.openstreetmap.org/wiki/API_v0.6#:~:text=api/0.6/notes-,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF%2D8%22%3F%3E%0A%3Cosm%20version%3D%220.6,html%3E%0A%09%09%09%3C/comment%3E%0A%09%09%09...%0A%09%09%3C/comments%3E%0A%09%3C/note%3E%0A%09...%0A%3C/osm%3E,-Response%20JSON)
   - Add / improve new / existing unit tests for testing new functionalities
4. Update Notes API to include creating Note instances with tags
   - Update **API::NoteController** to create Note instances with tags
   - Add / improve new / existing unit tests for testing new functionalities
5. Improve existing and add new unit tests for testing new features
   - Add more stressful unit tests for testing new features 
6. Update Wiki documentation about OSM API v0.6 section Map Notes (this will be 
more of a side task than a PR)



### Screenshots

![image](https://github.com/user-attachments/assets/6d3b9928-ac69-43f5-b3a4-f875cdb53c6a)


-- 
Reply to this email directly or view it on GitHub:
https://github.com/openstreetmap/openstreetmap-website/issues/5294
You are receiving this because you are subscribed to this thread.

Message ID: <openstreetmap/openstreetmap-website/issues/5...@github.com>
_______________________________________________
rails-dev mailing list
rails-dev@openstreetmap.org
https://lists.openstreetmap.org/listinfo/rails-dev

Reply via email to