<div style="display: flex; flex-wrap: wrap; white-space: pre-wrap; align-items: center; "><img height="20" width="20" style="border-radius:50%; margin-right: 4px;" decoding="async" src="https://avatars.githubusercontent.com/u/5842757?s=20&v=4" /><strong>mmd-osm</strong> left a comment <a href="https://github.com/openstreetmap/openstreetmap-website/pull/5973#issuecomment-2885019998">(openstreetmap/openstreetmap-website#5973)</a></div>
<p dir="auto">Thank you for your feedback, in particular for the interesting example about the create action.</p>
<blockquote>
<p dir="auto">I didn't see anyone respond above to <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/joto/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/joto">@joto</a>'s point</p>
</blockquote>
<p dir="auto">I think I sort of addressed this one: <em>I agree that the action attribute doesn't add much value, the information is anyway available in version and visible attributes. I guess there are historical reasons which I'm not familiar with in detail.</em></p>
<p dir="auto">When designing the format from scratch again, there's a high probability that we might simply skip it. It seems there were good reasons to introduce it for the XML format back in the days... zerebubuth might know?</p>
<p dir="auto">By the way, I'm assuming that even in case we wouldn't use an action attribute, the data is still processed top to bottom, meaning that you can't create a new way, and refer to new nodes that are appearing further down in the file.</p>
<blockquote>
<p dir="auto">This is nice especially in strongly typed languages: if you have a type definition for an Element as returned by the OSM API, you can reuse that definition when fetching data from any of these endpoints.</p>
</blockquote>
<p dir="auto">Right, it seems we all agree that a common definition of an element has some benefits, and that we don't want to taint it with unrelated properties, such as "if-unused".</p>
<blockquote>
<p dir="auto">I'm ignoring the if-unused attribute used for uploading in these examples for simplicity</p>
</blockquote>
<p dir="auto">The question now is, how would you handle such additional attributes in case of an upload? My goal was to keep upload and download somehow similar enough that we don't end up with entirely different structures.</p>
<p dir="auto">The other goal I had in mind was to keep XML and JSON format similar enough, that both can cover the same use cases, and they don't look totally different (which could result in a major maintenance burden in the future).</p>
<p style="font-size:small;-webkit-text-size-adjust:none;color:#666;">—<br />Reply to this email directly, <a href="https://github.com/openstreetmap/openstreetmap-website/pull/5973#issuecomment-2885019998">view it on GitHub</a>, or <a href="https://github.com/notifications/unsubscribe-auth/AAK2OLKJG5WMEZNRGHIC4MT26T4R7AVCNFSM6AAAAAB4HU3NT2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDQOBVGAYTSOJZHA">unsubscribe</a>.<br />You are receiving this because you are subscribed to this thread.<img src="https://github.com/notifications/beacon/AAK2OLOWHOSJESSR6IPX6OL26T4R7A5CNFSM6AAAAAB4HU3NT2WGG33NNVSW45C7OR4XAZNMJFZXG5LFINXW23LFNZ2KUY3PNVWWK3TUL5UWJTVL6XUV4.gif" height="1" width="1" alt="" /><span style="color: transparent; font-size: 0; display: none; visibility: hidden; overflow: hidden; opacity: 0; width: 0; height: 0; max-width: 0; max-height: 0; mso-hide: all">Message ID: <span><openstreetmap/openstreetmap-website/pull/5973/c2885019998</span><span>@</span><span>github</span><span>.</span><span>com></span></span></p>
<script type="application/ld+json">[
{
"@context": "http://schema.org",
"@type": "EmailMessage",
"potentialAction": {
"@type": "ViewAction",
"target": "https://github.com/openstreetmap/openstreetmap-website/pull/5973#issuecomment-2885019998",
"url": "https://github.com/openstreetmap/openstreetmap-website/pull/5973#issuecomment-2885019998",
"name": "View Pull Request"
},
"description": "View this Pull Request on GitHub",
"publisher": {
"@type": "Organization",
"name": "GitHub",
"url": "https://github.com"
}
}
]</script>