<p>I think a patch that would allow relations to appear in any order would be welcome, although in this instance it could have been fixed on the client since it's an ordering issue rather than circular references.</p>
<p>Not handling circular relation references is, to some degree, a feature rather than a bug. Circular references aren't explicitly disallowed, but it would be strongly recommended not to create them or rely upon them.</p>
<p>Firstly, they create a problem when trying to delete either one, as it relies on the other and so has to be "disentangled" before deletion. This is not handled automatically in the upload process, and is something the client has to handle. Most probably don't.</p>
<p>Secondly, recursive or circular relations might not be handled well in other software that consumes OSM data. Or possibly it might be ignored altogether. Either way, it seems unlikely that whatever was intended by the circular relation would be accurately conveyed.</p>
<p>In summary: Circular relation dependencies, while possible, should be avoided.</p>

<p style="font-size:small;-webkit-text-size-adjust:none;color:#666;">—<br />You are receiving this because you are subscribed to this thread.<br />Reply to this email directly, <a href="https://github.com/openstreetmap/openstreetmap-website/issues/1465#issuecomment-282323187">view it on GitHub</a>, or <a href="https://github.com/notifications/unsubscribe-auth/ABWnLdojEeXk6bTUkRIAGHnEnsCSbfEPks5rfvqCgaJpZM4MLUZv">mute the thread</a>.<img alt="" height="1" src="https://github.com/notifications/beacon/ABWnLQl5vdkPm9yXQwlUD8jMzLaLHM5eks5rfvqCgaJpZM4MLUZv.gif" width="1" /></p>
<div itemscope itemtype="http://schema.org/EmailMessage">
<div itemprop="action" itemscope itemtype="http://schema.org/ViewAction">
  <link itemprop="url" href="https://github.com/openstreetmap/openstreetmap-website/issues/1465#issuecomment-282323187"></link>
  <meta itemprop="name" content="View Issue"></meta>
</div>
<meta itemprop="description" content="View this Issue on GitHub"></meta>
</div>

<script type="application/json" data-scope="inboxmarkup">{"api_version":"1.0","publisher":{"api_key":"05dde50f1d1a384dd78767c55493e4bb","name":"GitHub"},"entity":{"external_key":"github/openstreetmap/openstreetmap-website","title":"openstreetmap/openstreetmap-website","subtitle":"GitHub repository","main_image_url":"https://cloud.githubusercontent.com/assets/143418/17495839/a5054eac-5d88-11e6-95fc-7290892c7bb5.png","avatar_image_url":"https://cloud.githubusercontent.com/assets/143418/15842166/7c72db34-2c0b-11e6-9aed-b52498112777.png","action":{"name":"Open in GitHub","url":"https://github.com/openstreetmap/openstreetmap-website"}},"updates":{"snippets":[{"icon":"PERSON","message":"@zerebubuth in #1465: I think a patch that would allow relations to appear in any order would be welcome, although in this instance it could have been fixed on the client since it's an ordering issue rather than circular references.\r\n\r\nNot handling circular relation references is, to some degree, a feature rather than a bug. Circular references aren't explicitly disallowed, but it would be strongly recommended not to create them or rely upon them.\r\n\r\nFirstly, they create a problem when trying to delete either one, as it relies on the other and so has to be \"disentangled\" before deletion. This is not handled automatically in the upload process, and is something the client has to handle. Most probably don't.\r\n\r\nSecondly, recursive or circular relations might not be handled well in other software that consumes OSM data. Or possibly it might be ignored altogether. Either way, it seems unlikely that whatever was intended by the circular relation would be accurately conveyed.\r\n\r\nIn summary: Circular relation dependencies, while possible, should be avoided."}],"action":{"name":"View Issue","url":"https://github.com/openstreetmap/openstreetmap-website/issues/1465#issuecomment-282323187"}}}</script>