sorenrye.7238:

Why does the data returned by the GW2 json services return so much redundant data?

I tried to search the forum for the question I just asked, but couldn’t find any posts discussing it. I found some links that are concerned about duplicate data, but they don’t discuss why the data is present (see my 3 questions at the end of the post).

Here is one example from maps.json and map_floors.json:

From maps.json:

“80”: {
“map_name”: “A Society Function”,
“min_level”: 8,
“max_level”: 8,
“default_floor”: 1,
[…snip…]
“map_rect”: [[-21504,-21504],[24576,21504]],
“continent_rect”: [[10240,9856],[12160,11648]]
}

From map_floors.json:

“80”: {
“name”: “A Society Function”,
“min_level”: 8,
“max_level”: 8,
“default_floor”: 1,
“map_rect”: [[-21504,-21504],[24576,21504]],
“continent_rect”: [[10240,9856],[12160,11648]],
[…snip…]
}

Notice that the same data is present in both services / endpoints / (whatever). There is a lot of duplicate / redundant data in the different json services.

1) Does any of you know why the data is not more ‘normalized’?
2) Has anyone created a project that normalizes the data (fx into an sql database)?
3) Does anet plan to normalize the services (or add additional normalized services)?

If any of you have links to posts that discuss the subject, then please link them. Or please enlighten me by following up on this thread.

smiley.1438:

The difference between maps.json and map_floor.json is that maps.json just holds basic map info while map_floor.json has all data for all maps on a given floor_id. Also, you can define a map_id for maps.json while you would have to parse the full map_floor.json to find the needed snippet and you need to know the floor_id where you can find the map you’re looking for.

Regarding your questions:

1. From the API documentation:

These APIs are in beta, so don’t be surprised if the interfaces change, but we will try to warn you if we have to make any breaking changes.

2. See: https://github.com/codemasher/gw2-database

3. See 1. and: https://forum-en.guildwars2.com/forum/community/api/API-Suggestions-Master-Sticky

;)

sorenrye.7238:

Thank you for your reply. I looked through the links after reading your post. I couldn’t find any posts discussing the normalization (focused on reading the posts related to maps). And I know the api/service is in beta. But I still don’t understand:

==> Why does the data returned by the GW2 json services return so much redundant data?

==> Why isn’t it somewhat normalized?

This seems VERY odd to me. And as you can see, many posts report bugs (I haven’t checked if the claims in the posts are true) about duplicate data that should be identical but isn’t – which is the very reason you normalize database services like this in the first place.