dflemstr
It's a ball.
OK, you are all probably wondering what this thread is about.
If you are, read this thread:
www.gp32x.de/board/index.php?showtopic=46903
This post is mainly targeted at pandora devs, but might be interesting for the rest of the devs around here that will be using PXML.
Basically, I have made a XML compliant version of the PXML format, and fixed some of the "format bugs" that the old format had (for example, it only supported 2 category trees etc.)
This is a WIP (I started with it on Sunday XD), but if you're interested in getting the code, it can be found here (a cloned git tree):
github.com/dflemstr/pandora-libraries/tree/new-pxml-format
The branch that you are interested in is the "new-pxml-format" branch.
Clone that repo, or pull from it if you already have an old version of pandora-libraries laying around.
Current implementation (in code):
- The format can be read by libpnd, with the existing api. No existing code that uses libpnd has to be changed for the new format to work.
- The format can be generated by any editor that supports XSD-generators
What has to be done (in code):
- A writer in libpnd has to be written
- The libpnd api should be extended/changed to support some of the new features that this format provides.
-------------------------------------------------------------
Some features that the format currently HAS:
- It is fully XML compliant and has a XSD spec. This means that any library you have that supports XML can make a PXML file for you, or read one (with some effort on your part, of course). This also means that PXML files can be validated (aka "syntax checked") for you.
- It is alot shorter and imho more intuitive than the old version was. You don't need tags for everything, and things were put in attributes.
- The format can and probably will be extended (it's eXtensible Markup Language, after all). By, for example, putting the application ID in an attribute, the format could potentially support multiple apps in one PXML (this would require breaking backwards compatibility, however)
Some new features that this format has/CAN have, but that aren't supported by the backend (yet):
- Description and title could be specified any language known to man. This includes languages that differ a only a little from each other, like UK english and US english ("en_GB" and "en_US"). The old format currently only supports "en"-style country codes, aka not variations.
- There can be an unlimited number of categories that the app can be sorted into. Currently, the backend supports 2.
- The filetypes could be specified as MIME types instead of by "*.suffix"
- The file association launch lines could support not having to have the filename at the end (like it has to have now)
- The format COULD support basic HTML in description and title. Might be difficult for the title, though.
- The format COULD be extended to support preview picture slideshows (by introducing timing). This will probably not happen, though.
- There's a possibility for the app author to add an email address. Yes, this isn't supported currently by the old format, even if the spec says so.
- As said before, the format could be able to store multiple application data in one file, by extending the current spec.
-------------------------------------------------------------
If you want an example file to see how the format is like, either clone the GIT repository up there, or tell me about it so that I can upload one and link here.
Also, a "spec" for the format (like the one ED did) is being worked on, to make the format understandable by developers
EDIT: Fight vs forum bugs
If you are, read this thread:
www.gp32x.de/board/index.php?showtopic=46903
This post is mainly targeted at pandora devs, but might be interesting for the rest of the devs around here that will be using PXML.
Basically, I have made a XML compliant version of the PXML format, and fixed some of the "format bugs" that the old format had (for example, it only supported 2 category trees etc.)
This is a WIP (I started with it on Sunday XD), but if you're interested in getting the code, it can be found here (a cloned git tree):
github.com/dflemstr/pandora-libraries/tree/new-pxml-format
The branch that you are interested in is the "new-pxml-format" branch.
Clone that repo, or pull from it if you already have an old version of pandora-libraries laying around.
Current implementation (in code):
- The format can be read by libpnd, with the existing api. No existing code that uses libpnd has to be changed for the new format to work.
- The format can be generated by any editor that supports XSD-generators
What has to be done (in code):
- A writer in libpnd has to be written
- The libpnd api should be extended/changed to support some of the new features that this format provides.
-------------------------------------------------------------
Some features that the format currently HAS:
- It is fully XML compliant and has a XSD spec. This means that any library you have that supports XML can make a PXML file for you, or read one (with some effort on your part, of course). This also means that PXML files can be validated (aka "syntax checked") for you.
- It is alot shorter and imho more intuitive than the old version was. You don't need tags for everything, and things were put in attributes.
- The format can and probably will be extended (it's eXtensible Markup Language, after all). By, for example, putting the application ID in an attribute, the format could potentially support multiple apps in one PXML (this would require breaking backwards compatibility, however)
Some new features that this format has/CAN have, but that aren't supported by the backend (yet):
- Description and title could be specified any language known to man. This includes languages that differ a only a little from each other, like UK english and US english ("en_GB" and "en_US"). The old format currently only supports "en"-style country codes, aka not variations.
- There can be an unlimited number of categories that the app can be sorted into. Currently, the backend supports 2.
- The filetypes could be specified as MIME types instead of by "*.suffix"
- The file association launch lines could support not having to have the filename at the end (like it has to have now)
- The format COULD support basic HTML in description and title. Might be difficult for the title, though.
- The format COULD be extended to support preview picture slideshows (by introducing timing). This will probably not happen, though.
- There's a possibility for the app author to add an email address. Yes, this isn't supported currently by the old format, even if the spec says so.
- As said before, the format could be able to store multiple application data in one file, by extending the current spec.
-------------------------------------------------------------
If you want an example file to see how the format is like, either clone the GIT repository up there, or tell me about it so that I can upload one and link here.
Also, a "spec" for the format (like the one ED did) is being worked on, to make the format understandable by developers
EDIT: Fight vs forum bugs
Last edited by a moderator: