Re: [NTG-context] xml and lpath

2011-10-25 Thread Martin Fechner

Am 25.10.2011 14:20, schrieb Hans Hagen:



\startxmlsetups xml:hiding
\doifelse {\xmlatt{#1}{type}} {begin} {
\startnointerference
} {
\stopnointerference
}
\stopxmlsetups

\starttext
\xmlprocessbuffer{main}{text}{}
\stoptext

maybe it makes sense to have a 'hide' flag built in the serializer (or
maybe some explicit stream related hooks)

Hans



Thank you very much. Now every thing works. It helps me a lot. I am glad 
about such possibilities with XML and ConTeXt.


Martin
___
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
___


Re: [NTG-context] xml and lpath

2011-10-25 Thread Hans Hagen

On 25-10-2011 12:52, Martin Fechner wrote:

Hi all,

I'm testing the possibilities of xml and ConTeXt. I was wondering if it
is possible to make an extra setup for every text-element. So it would
be possible to have an setup in a very flexible way. It should be
something like this:

\startbuffer[text]


First text.

Second text.

Third text.

Fourth text.

\stopbuffer

\startxmlsetups xml:textsetups
\xmlsetsetup{#1}{a|b}{xml:*}
\xmlsetsetup{#1}{hiding[type='begin']}{xml:hiding:begin}
\xmlsetsetup{#1}{hiding[type='end'}{xml:hiding:end}
\xmlsetsetup{#1}{text()}{xml:text} % Something like this is needed
\stopxmlsetups

\startxmlsetups xml:a
\xmlflush{#1}
\stopxmlsetups

\startxmlsetups xml:b
\xmlflush{#1}
\stopxmlsetups

\startxmlsetups xml:hiding:begin
\enablemode[hiding]
\stopxmlsetups

\startxmlsetups xml:hiding:end
\disablemode[hiding]
\stopxmlsetups

\startxmlsetups xml:text
\startnotmode[hiding]
\xmlflush{#1}
\crlf
\stopnotmode
\stopxmlsetups

So that the result will be:

First text.
Fourth text.

Is something like this possible or is there still another way?


it really depends on how the nesting works out as explicit grouping can 
interfere


\startbuffer[text]

  
First text.

Second text.
  
  Third text.
  
  Fourth text.

\stopbuffer

\startxmlsetups xml:textsetups
\xmlsetsetup{#1}{a|b|hiding}{xml:*}
\stopxmlsetups

\xmlregistersetup{xml:textsetups}

\startxmlsetups xml:a
\xmlflush{#1}
\stopxmlsetups

\startxmlsetups xml:b
\xmlflush{#1}
\stopxmlsetups

\startxmlsetups xml:hiding
\doifelse {\xmlatt{#1}{type}} {begin} {
\startnointerference
} {
\stopnointerference
}
\stopxmlsetups

\starttext
\xmlprocessbuffer{main}{text}{}
\stoptext

maybe it makes sense to have a 'hide' flag built in the serializer (or 
maybe some explicit stream related hooks)


Hans

-
  Hans Hagen | PRAGMA ADE
  Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
tel: 038 477 53 69 | voip: 087 875 68 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
___


[NTG-context] xml and lpath

2011-10-25 Thread Martin Fechner

Hi all,

I'm testing the possibilities of xml and ConTeXt. I was wondering if it 
is possible to make an extra setup for every text-element. So it would 
be possible to have an setup in a very flexible way. It should be 
something like this:


\startbuffer[text]

  
First text.

Second text.
  
  Third text.
  
  Fourth text.

\stopbuffer

\startxmlsetups xml:textsetups
\xmlsetsetup{#1}{a|b}{xml:*}
\xmlsetsetup{#1}{hiding[type='begin']}{xml:hiding:begin}
\xmlsetsetup{#1}{hiding[type='end'}{xml:hiding:end}
\xmlsetsetup{#1}{text()}{xml:text} % Something like this is needed
\stopxmlsetups

\startxmlsetups xml:a
\xmlflush{#1}
\stopxmlsetups

\startxmlsetups xml:b
\xmlflush{#1}
\stopxmlsetups

\startxmlsetups xml:hiding:begin
\enablemode[hiding]
\stopxmlsetups

\startxmlsetups xml:hiding:end
\disablemode[hiding]
\stopxmlsetups

\startxmlsetups xml:text
\startnotmode[hiding]
\xmlflush{#1}
\crlf
\stopnotmode
\stopxmlsetups

So that the result will be:

First text.
Fourth text.

Is something like this possible or is there still another way?

Best regards,

Martin
___
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
___