Skip to content
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

More extensions #3

Closed
Bananeweizen opened this issue Sep 17, 2017 · 4 comments
Closed

More extensions #3

Bananeweizen opened this issue Sep 17, 2017 · 4 comments

Comments

@Bananeweizen
Copy link

Not sure if you are interested in these, but it might make sense to refer to some other extensions too, depending on what you want to do with the document later:

Just skimmed through the cgeo XML parser for these: https://github.com/cgeo/cgeo/blob/master/main/src/cgeo/geocaching/files/GPXParser.java#L77 and following.

@wrygiel
Copy link
Member

wrygiel commented Sep 17, 2017

GSAK has a multitude of extensions under http://www.gsak.net/xmlv1/1 to http://www.gsak.net/xmlv1/6 (or maybe even more nowadays).

OMG. They have more than one namespace too? They seem to follow the same weird behavior which Topografix and Groundspeak does.

@wrygiel
Copy link
Member

wrygiel commented Sep 17, 2017

Added in dee829a

@wrygiel wrygiel closed this as completed Sep 17, 2017
@Bananeweizen
Copy link
Author

I also was not aware that this strategy is bad until you mentioned it. In cgeo we have been able to handle all the extension versions simultaneously by basically registering all combined rules in a single parser.

@wrygiel
Copy link
Member

wrygiel commented Sep 18, 2017

In cgeo we have been able to handle all the extension versions simultaneously by basically registering all combined rules in a single parser.

Yes, I saw that in the code sample you sent us 2 days ago. You have handled the situation correctly, but this is caused by bad (backward-incompatible) schema design. If this continues, then you will also be forced to add new xmlns to your list in the future, once new versions are released, and you shouldn't be forced to do that (that's why it's not backward compatible).

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

No branches or pull requests

2 participants