-
Notifications
You must be signed in to change notification settings - Fork 23
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
support @values for describing multidimensional containers #7
Comments
Appologies -- Wrongly assumed opening this issue meant it was going to be adopted in JSON-LD 1.1 - https://twitter.com/pietercolpaert/status/1013100062879178754 Would love this proposal to be taken into account for the 1.1 spec though! |
Any thoughts how this could map to GeoSPARQL? |
+1 to the issue, we should discuss the proposed solution. |
Actually, in re-reading, re-thinking I'm 👎 to the issue as it doesn't round trip back to the right structure. Lists of Lists is the critical one for GeoJSON-LD (and others), not being able to insert predicates into the structure. I think this one crosses the line into data transformation, which is not the point of a JSON-LD context. |
Following discussion on WG call 2018-08-31, the current thinking is to close Please weigh in by 2018-09-07. |
I think it would be very sad if one could not use JSON-LD together with GeoJSON. It means that GeoJSON-LD community would have to fork JSON-LD and create its own dialect, just to support that. Please see some comments in the original issue and the original discussion. |
According to json-ld/json-ld.org#397 (comment) that issue was closed in favor of this issue and now the declared intention is to also close this issue? My experience is that the importance of geo-data is increasing significantly. JSON-LD should provide the necessary features to bridge the gap to GeoJSON - and vice versa. |
This is one of the reasons that I proposed #33. We need to find a way for communities to sub-dialect JSON-LD in extensible ways that we know will never become mainstream JSON-LD. We need to provide a mechanism so that the GeoJSON community can use JSON-LD without impacting processors that don't want to support that particular feature. Without this, we're slamming the door in their face. The only alternative I can think of is to create pre and post processing libraries for this specific use case to demonstrate that it is possible to trivially write .toGeoJSONLD() and .fromGeoJSONLD() functions. So, the other proposal is to enable pipelining in JSON-LD processors where you can inject a series of functions that are called before/after compaction/expansion. |
@msporny I think you would get into interoperability hell in this way. The whole idea of standardization is to get to a common standard. It is also not that GeoJSON requires many additions to JSON-LD. Community has identified one and proposed a solution. Maybe some other solution could also be found if this one is not desirable? |
See for example the developing Linked Places format spec [1], which is intended to be both valid JSON-LD and valid GeoJSON. It will be used for contributions to two aggregating systems for historical geodata, Pelagios/Peripleo and World-Historical Gazetteer. At this point we have to tell users that coordinates are okay for Points, but for polygons and lines, to supply Well-Known Text (WKT). If they do, the data is no longer valid GeoJSON. We've gone ahead with this on a presumption that the JSON-LD community would find a fix - sure hope that's the case. [1] latest "v3" draft example and context here: https://github.com/LinkedPasts/linked-places/tree/master/new |
@kgeographer I think you're confusing the (accepted) list-of-lists issue with the ability to associate predicates with arbitrary data structures (this issue). Users in 1.1 would absolutely be able to represent the polygons and lines with the regular GeoJSON construction of a list of lists. What they would not be able to do is generate new information that the inner list is an instance of the class The rabbit hole would then be that any arbitrary structure could have contexts inject arbitrary information into instances that would be invisible to the instance until expanded with the context, and not round trip back to the same format when it is compacted. |
There are other cases where there might be special "template" processing for array members, such as #15, but these are fundamentally much different than existing JSON-LD behavior. We might, at some time, consider a spec for "JSON-LD Templating", that would allow these to be treated using the same mechanism, so that templates could be applied to successive (possibly repeating) array values to perform different transformations, but I would not like to see this as part of the core API. This might also provide a mechanism for another group (such as the JSON-LD CG) to foster such a specification. Simply seeing otherwise illegal constructs in a context definition is probably sufficient to key in the extension; the |
(Admin comment) I think there are several issues around that refer to GeoJSON. I think that it would be more fruitful to give these a rest and have these issues discussed on a dedicated session at the F2F at TPAC. |
Only if we'll have GeoJSON folks on hand. Otherwise, we'll be flying blind on the topic... Perhaps we can at least create a list (pre-TPAC) of GeoJSON related needs/wants with the help of @kgeographer and others, so that we can have some targets to hit (or not hit) when the time comes. Additionally, we might consider inviting a few of the GeoJSON-LD and LinkedPasts folks to a call (or two) to help us understand their use cases better. |
Huge 👍 s to getting some f2f or 'phone time with GeoJSON folks. Perhaps we can reach out and see if anyone from that community will be at TPAC and available to talk? |
Obviously, that would be the ideal. But even if they cannot be around, we seem to
A F2F meeting seems to be a good place to concentrate on this. |
@iherman agreed that a F2F meeting will help us cover this ground faster/better. I was mostly reacting to "give these [GeoJSON topics] a rest." If there's interest from that community (as there seems to be) in mapping GeoJSON into JSON-LD, then we have a quality JSON-first set of use cases to help us define JSON-LD features. It seems like a valuable thing to put on hold. In fact, I'd like many more such scenarios/formats to help us confirm or deny our approach(es). JSON-LD is a bridge between the worlds, after all. 😃 |
@azaroth42 I was not aware 1.1 accommodates lists of lists; I presumed wrongly that the Dev Playground reflected 1.1 as it it stands. At the moment, the Playground won't validate them. Very glad to know accommodating GeoJSON matters to a number of people. For all matters related to interactions between JSON-LD and GeoJSON-LD I defer to @sgillies. |
Taking into account the comments above, the resolution of the WG on 2018-09-07 was to close this issue and refer it to the JSON-LD Community Group for further exploration. This has been done in issue 677 The rationale for this decision is as follows:
|
@azaroth42 thanks for the closing note! It seems like there was just a bit of confusion here earlier. I'm looking forward to removing the outstanding issues note in http://geojson.org/geojson-ld/. |
With the release of [JSON-LD 1.1](https://www.w3.org/TR/json-ld11/) is this still an issue? Looking at this comment as a reference w3c/json-ld-syntax#7 (comment)
Allows a term definition to include an
@values
block to describe structured values, such as for GeoJSONExample
Would transform to (and vice versa):
Original issue is JSON-LD 1.1 Feature Request: support @values for describing multidimensional containers (list of lists) #397
The text was updated successfully, but these errors were encountered: