Re: [Orgmode] suggestion: native orgmode XML export (and import?)
On Sat, Aug 8, 2009 at 22:25, Ilya Shlyakhterilya_...@alum.mit.edu wrote: In the meantime, it would be useful to describe what kind of XML output do you want, because XML does not really describe anything per se. I'm looking for XML output that would closely mirror the logical structure of the org file, and that would contain all the information in the orgfile (since it's easy to ignore the parts you don't need during XML processing). So, something like orgfile entry headlineTasks/headline bodyHere are the tasks I need to do/body children entry headlineBuy bread/headline todo-statusDONE/todo-status tagstagfood/tagtagerrands/tag/tags properties propertynameImportance/namevalue1/value/property propertynameDeadline/namevaluedateday07/daymonth08/monthyear09/year/date/value/property /properties /entry /children /entry /orgfile The details of the XML schema can of course change. But it should let you process org file data without having to parse any elements of the org file (ideally, even dates) -- it would all be parsed by orgmode's native parsing code and put into XML elements. If there are questions about how to represent specific org elements in XML I can try to write a more detailed spec. Out of curiosity, how would you want to handle textual content? Pass it through unchanged with org's wiki-like markup in tact, or somehow xml-ified?: *foo* -- *foo* *foo* -- strongfoo/strong // Ben ___ Emacs-orgmode mailing list Remember: use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode
Re: [Orgmode] suggestion: native orgmode XML export (and import?)
Out of curiosity, how would you want to handle textual content? Pass it through unchanged with org's wiki-like markup in tact, or somehow xml-ified?: *foo* -- *foo* *foo* -- strongfoo/strong Probably the latter, since converting XMLified content to wiki markup (or any other form) is easy and does not require manual parsing, while the other direction is harder. But for a first version, just leaving the markup as text would be fine too. What would help a lot is, if XML content could be imported as a subtree. Then you could have python plugins that take a subtree (or an entire orgfile) converted to XML, process it into updated XML, and then that updated XML gets imported back into org and replaces the original subtree. This would make it easy for users to implement something like http://tinyurl.com/nskzs8 , and probably other custom functions. On Sun, Aug 9, 2009 at 3:19 PM, B Smith-Mannschottbsmith.o...@gmail.com wrote: On Sat, Aug 8, 2009 at 22:25, Ilya Shlyakhterilya_...@alum.mit.edu wrote: In the meantime, it would be useful to describe what kind of XML output do you want, because XML does not really describe anything per se. I'm looking for XML output that would closely mirror the logical structure of the org file, and that would contain all the information in the orgfile (since it's easy to ignore the parts you don't need during XML processing). So, something like orgfile entry headlineTasks/headline bodyHere are the tasks I need to do/body children entry headlineBuy bread/headline todo-statusDONE/todo-status tagstagfood/tagtagerrands/tag/tags properties propertynameImportance/namevalue1/value/property propertynameDeadline/namevaluedateday07/daymonth08/monthyear09/year/date/value/property /properties /entry /children /entry /orgfile The details of the XML schema can of course change. But it should let you process org file data without having to parse any elements of the org file (ideally, even dates) -- it would all be parsed by orgmode's native parsing code and put into XML elements. If there are questions about how to represent specific org elements in XML I can try to write a more detailed spec. Out of curiosity, how would you want to handle textual content? Pass it through unchanged with org's wiki-like markup in tact, or somehow xml-ified?: *foo* -- *foo* *foo* -- strongfoo/strong // Ben ___ Emacs-orgmode mailing list Remember: use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode
Re: [Orgmode] suggestion: native orgmode XML export (and import?)
In the meantime, it would be useful to describe what kind of XML output do you want, because XML does not really describe anything per se. I'm looking for XML output that would closely mirror the logical structure of the org file, and that would contain all the information in the orgfile (since it's easy to ignore the parts you don't need during XML processing). So, something like orgfile entry headlineTasks/headline bodyHere are the tasks I need to do/body children entry headlineBuy bread/headline todo-statusDONE/todo-status tagstagfood/tagtagerrands/tag/tags properties propertynameImportance/namevalue1/value/property propertynameDeadline/namevaluedateday07/daymonth08/monthyear09/year/date/value/property /properties /entry /children /entry /orgfile The details of the XML schema can of course change. But it should let you process org file data without having to parse any elements of the org file (ideally, even dates) -- it would all be parsed by orgmode's native parsing code and put into XML elements. If there are questions about how to represent specific org elements in XML I can try to write a more detailed spec. thanks, ilya On Sat, Aug 8, 2009 at 7:48 AM, Bastienbastiengue...@googlemail.com wrote: Ilya Shlyakhter ilya_...@alum.mit.edu writes: That's great, thanks! I should be able to take it from there. It would be great if at some point this became official, and also included an XML exporter and specification. FYI, I'll upload a slightly improved version of org-export.el next week, together with documentation on how to write an exporter. But the basic structure of the parsed buffer is the same, you can use it safely. In the meantime, it would be useful to describe what kind of XML output do you want, because XML does not really describe anything per se. Best, -- Bastien ___ Emacs-orgmode mailing list Remember: use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode
Re: [Orgmode] suggestion: native orgmode XML export (and import?)
[re-adding the mailing list] No, EXPERIMENTAL/org-export.el. Here's what I did after M-x load-file /path/to/org-export.el: (defun org-export-sexp (arg) (interactive p) (let ((bufstr (org-export-parse arg))) (save-excursion (switch-to-buffer (get-buffer-create *Org export*)) (erase-buffer) (insert (format %s bufstr) An org file such as: Objectives * Q3 2009 :PROPERTIES: :SCORE:0.77 :END: ** Operations *** [#0] Oncall. Keep the site up *** [#1] Keep the tubes clear. ** Projects comes out as: ((:level 1 :heading Q3 2009 :properties ((SCORE . 0.77) (CATEGORY . proj-sanitised)) :content :subtree ((:level 2 :heading Operations :properties ((CATEGORY . proj-sanitised)) :content :subtree ((:level 3 :heading Oncall. Keep the site up :properties ((PRIORITY . 0) (CATEGORY . proj-sanitised)) :content :subtree nil) (:level 3 :heading Keep the tubes clear. :properties ((PRIORITY . 1) (CATEGORY . proj-sanitised)) :content :subtree nil))) (:level 2 :heading Projects :properties ((CATEGORY . proj-sanitised)) :content :subtree nil 2009/8/7 Ilya Shlyakhter ilya_...@alum.mit.edu: Thanks for the pointer. Did you mean org-exp.el? How exactly do I get the internal representation? thanks, ilya On Thu, Aug 6, 2009 at 11:58 PM, Andrew Stribblehilla...@wompom.org wrote: I notice the experimental org-export.el contains an internal representation. It would probably be very easy for your python to parse the lisp s-expression it uses, if it were exported. On Aug 6, 2009 3:55 PM, Ilya Shlyakhter ilya_...@alum.mit.edu wrote: I'm not an emacs-lisp programmer, but I'd like to write scripts (ideally in Python) to generate custom reports from my .org files. What would help a lot, is if there was a command to export an .org file to a native XML format that would mirror the org file's structure and all its logical elements (tags, properties, drawers, dates etc). I know about the DocBook exporter, but it maps orgmode's concepts onto DocBook concepts such as articles. I'm a longtime orgmode user and it would be much simpler to write a program in terms of the familiar org concepts (hierarchical entries, tags, properties etc). It would also be great if there was a way to import such an XML file back into org. Then one could e.g. take Toodledo.com tasks and transform them into an orgmode file. There is an orgmode Python reader at http://www.members.optusnet.com.au/~charles57/GTD/orgnode.html and I plan to use that for now. But it doesn't support all orgmode features, and more importantly it does its own parsing of orgfiles (so may not keep up with any future changes). Using orgmode's own parser, and then exporting the results as XML, would be much more reliable. ilya ___ Emacs-orgmode mailing list Remember: use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode ___ Emacs-orgmode mailing list Remember: use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode
Re: [Orgmode] suggestion: native orgmode XML export (and import?)
Ilya Shlyakhter ilya_...@alum.mit.edu writes: That's great, thanks! I should be able to take it from there. It would be great if at some point this became official, and also included an XML exporter and specification. FYI, I'll upload a slightly improved version of org-export.el next week, together with documentation on how to write an exporter. But the basic structure of the parsed buffer is the same, you can use it safely. In the meantime, it would be useful to describe what kind of XML output do you want, because XML does not really describe anything per se. Best, -- Bastien ___ Emacs-orgmode mailing list Remember: use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode
[Orgmode] suggestion: native orgmode XML export (and import?)
I'm not an emacs-lisp programmer, but I'd like to write scripts (ideally in Python) to generate custom reports from my .org files. What would help a lot, is if there was a command to export an .org file to a native XML format that would mirror the org file's structure and all its logical elements (tags, properties, drawers, dates etc). I know about the DocBook exporter, but it maps orgmode's concepts onto DocBook concepts such as articles. I'm a longtime orgmode user and it would be much simpler to write a program in terms of the familiar org concepts (hierarchical entries, tags, properties etc). It would also be great if there was a way to import such an XML file back into org. Then one could e.g. take Toodledo.com tasks and transform them into an orgmode file. There is an orgmode Python reader at http://www.members.optusnet.com.au/~charles57/GTD/orgnode.html and I plan to use that for now. But it doesn't support all orgmode features, and more importantly it does its own parsing of orgfiles (so may not keep up with any future changes). Using orgmode's own parser, and then exporting the results as XML, would be much more reliable. ilya ___ Emacs-orgmode mailing list Remember: use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode