ntg-context - mailing list for ConTeXt users
 help / color / mirror / Atom feed
From: Hans Hagen <pragma@wxs.nl>
To: mailing list for ConTeXt users <ntg-context@ntg.nl>
Subject: Re: XML - creating a list by hand (mkiv)
Date: Tue, 22 Dec 2009 14:33:49 +0100	[thread overview]
Message-ID: <4B30CABD.1080303@wxs.nl> (raw)
In-Reply-To: <4B30C7DD.4020505@gmx.net>

Peter Rolf wrote:
> Am 22.12.2009 14:04, schrieb Hans Hagen:
>> Peter Rolf wrote:
>>> Hi,
>>>
>>> can someone give me a helping hand with the following example. I still
>>> have no general survey over the XML related code in ConTeXt (donno
>>> what functions to use). The last time I played with it is one and a
>>> half year ago and many things have changed (meaning that the old
>>> examples no longer work).
>> http://www.pragma-ade.com/general/manuals/xml-mkiv.pdf
>>
> oeps, how could I missed that one... :(
> 
> 
>>> I simply want to create a XML document and insert some elements. My
>>> main problem is to insert an element at root level. I can insert an
>>> element before and after another element, but not into the element.
>>> I'm not sure, if I have understood the meaning of the pattern
>>> parameter correctly. Is this equal to XPath?
>>>
>>>
>>> %-----
>>> \starttext
>>>
>>> \startluacode
>>>
>>> local xmp = xml.convert("<?xml version='1.0'
>>> standalone='yes'?>\n<root>\n<bar>bla</bar>\n</root>")
>>> --xml.before(xmp,"/root/bar","<sub>foo</sub>")
>>>
>>> --xml.delete(xmp,"bar")
>>> --xml.inject(xmp,"/sub","<sub>bar</sub>")-- only for xml-files?
>>>
>>> xml.insert(xmp,"/root/bar","<sub/>")
>>> --xml.inject(xmp,"/*/bar","<sub/>")
>> this works
>>
>> <sub></sub>
>>
> Mhh, not here. When I look into the saved file (test.xml) I get

add some content (i need to look into the empty case (root only))

> <?xml version='1.0' standalone='yes'?>
> <root>
> <bar>bla</bar><error>invalid xml file - unparsed text</error>
> </root>
> 
> 
> But I guess that the linked PDF will give all the answers I need.

the most important change is that we now can have many handlers; when 
you are inside tex and want to manipulate xml without piping to tex, you 
need the xml:// path prefix but the manual mentions this

also, there are some tracing options that can be handy

Hans


-----------------------------------------------------------------
                                           Hans Hagen | PRAGMA ADE
               Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
      tel: 038 477 53 69 | fax: 038 477 53 74 | www.pragma-ade.com
                                              | www.pragma-pod.nl
-----------------------------------------------------------------
___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the Wiki!

maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://tex.aanhet.net
archive  : http://foundry.supelec.fr/projects/contextrev/
wiki     : http://contextgarden.net
___________________________________________________________________________________


  reply	other threads:[~2009-12-22 13:33 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-12-21 13:36 Peter Rolf
2009-12-22 13:04 ` Hans Hagen
2009-12-22 13:21   ` Peter Rolf
2009-12-22 13:33     ` Hans Hagen [this message]
2010-01-12 14:47       ` Peter Rolf
2010-01-13 22:10         ` Hans Hagen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4B30CABD.1080303@wxs.nl \
    --to=pragma@wxs.nl \
    --cc=ntg-context@ntg.nl \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).