Skip to content

Explain complex attributes and linking from within #417

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 3 commits into from
Mar 8, 2015

Conversation

bintoro
Copy link
Contributor

@bintoro bintoro commented Mar 6, 2015

Submitting for last-minute review because this cannot happen post-1.0 in the form proposed here due to the reserved-key issue.

Resolves: #289, #383

The representation of outbound links follows my suggestion in this comment that was later vetted against alternative approaches in #383.

(cc @ethanresnick)

@ethanresnick
Copy link
Member

+1. I don't know if I'm for #313 but, if we don't do #313 or this, we'll likely have to break backwards-compatibility (at least in a limited sense) to add linking from complex attributes down the line.

@bintoro bintoro force-pushed the complex-attrs branch 3 times, most recently from b414fae to 98276d7 Compare March 6, 2015 12:32
@dgeb dgeb added this to the 1.0 milestone Mar 6, 2015
@dgeb
Copy link
Member

dgeb commented Mar 6, 2015

Adding for 1.0 final review.

@tkellen
Copy link
Member

tkellen commented Mar 8, 2015

I'm 👍 to finding a way to explicitly allow nested links for future consideration, but I think it is premature to have examples of this usage in the spec. What about simply reserving the links key at any level of nesting and leaving it at that?

@tkellen
Copy link
Member

tkellen commented Mar 8, 2015

Actually, reserving any reserved keywords at any level of nesting.

@dgeb
Copy link
Member

dgeb commented Mar 8, 2015

Actually, reserving any reserved keywords at any level of nesting.

Yes, this is sufficient I believe.

@bintoro
Copy link
Contributor Author

bintoro commented Mar 8, 2015

"Any reserved keywords" is not well-defined. Would this mean id, type, links, and meta?

@dgeb
Copy link
Member

dgeb commented Mar 8, 2015

Yes - any keywords reserved in a resource object.

@bintoro
Copy link
Contributor Author

bintoro commented Mar 8, 2015

@dgeb Gotcha. What about the example? Remove altogether, remove linking, or leave as is?

Example usage was requested in #289.

@dgeb
Copy link
Member

dgeb commented Mar 8, 2015

@bintoro I definitely don't want to include an example here. We are simply reserving the keys, without making a statement about their usage.

@bintoro
Copy link
Contributor Author

bintoro commented Mar 8, 2015

Updated!

@tkellen
Copy link
Member

tkellen commented Mar 8, 2015

👍

@dgeb
Copy link
Member

dgeb commented Mar 8, 2015

@bintoro please rebase

@bintoro
Copy link
Contributor Author

bintoro commented Mar 8, 2015

Rebased.

By the way, if there's a short answer to why linking from complex attributes is so contentious, I'd love to hear it!

dgeb added a commit that referenced this pull request Mar 8, 2015
Explain complex attributes and linking from within
@dgeb dgeb merged commit 1a99492 into json-api:gh-pages Mar 8, 2015
@tkellen
Copy link
Member

tkellen commented Mar 8, 2015

For my part, it's lack of experience with implementations doing this in the wild. It could well be that the resulting impact is minor, but I feel it bears more consideration before we explicitly support this. I'd love to continue the discussion post 1.0, though!

I am out of town for most of March but when I return I am going to create a test suite using a reference database that any implementor can use to validate compliance with the spec. Once that is in place I think it will be much easier for us to reason about additions like this--we can temporarily add them to the test suite and reference database to see the real world implications.

@dgeb
Copy link
Member

dgeb commented Mar 8, 2015

@bintoro thanks for rebasing!

By the way, if there's a short answer to why linking from complex attributes is so contentious, I'd love to hear it!

The possibility of nested, n-level deep links that must be maintained and accessed independent of the containing object (ie. resource) adds a large burden of complexity to implementations. I would prefer that this be implemented as an extension first (and perhaps exclusively) as a proof of concept.

I am going to create a test suite using a reference database that any implementor can use to validate compliance with the spec.

Very excited for this @tkellen!

@bintoro bintoro deleted the complex-attrs branch March 8, 2015 19:00
@seanrucker
Copy link

Has linking from complex attributes made any headway since this discussion?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

q: nested attrs without links?
5 participants
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy