Re: [NTG-context] Problems mapping Xml into ConTeXt

2006-10-12 Thread Hans Hagen
Michael Wigston wrote:

 Hans Hagen wrote:
  Michael Wigston wrote:
   1.  This def of u does nothing ...
   \defineXMLgrouped [u] \underbar
  
  \defineXMLargument[u]{\underbar}
 
  underbar is not a font switch but a macro that takes an argument

 Hans,

 Thanks, that works fine with \underbar, as well as \underbars, 
 \overstrike, \overstrikes, \low, \high and \lohi.

 You mentioned that \underbar (and presumably the others I mentioned 
 above) are macros taking arguments e.g. \acommand{...}. However 
 presumably something like \midaligned{...}  is also a macro requiring 
 an argument, but this works as a \defineXMLgrouped and as a 
 \defineXMLargument - why does it  work with both?
the macro ones do manipulate their argument, for instance, underbar is 
not a font charateristic or color switch or so i.e. not a real 
attribute; esp using setups will make your style look better (look into 
x-fo for instance, forget about the dirty tricks there, but it's pretty 
clean; mapping values and so save many macro definitions

 The manual XML in ConTeXt very briefly sketched over these XML 
 commands and I can see great potential to use them directly on XML to 
 generate ConTeXt for PDF rather than the XSLT/XSL-FO route which seems 
 to be gaining momentum in much of the industry. I don't suppose there 
 is another more detailed document which elaborates on the XML 
 commands, and how you may determine which of these is most appropriate 
 for what kind of ConTeXt command mapping? 
you can take a look into the x-* files which show quite some mappings; 
indeed direct mapping is often more convenient than transformations; 
future versions of context will also offer more manipulation possibilities


 Also at the moment a non-mapped element seems to automatically type 
 out its contents as straight text - is there a way to override this 
 behaviour and specify this as an error? (This is rather like the Ruby 
 duck-typing approach - if an XML element is mapped, process it, else 
 it is an error).  
\startXMLignore
\stopXMLignore 

in xtag-pre you can see: 

\defineXMLenvironment [\s!default] \defaultXMLelement \defaultXMLelement
\defineXMLsingular[\s!default] \defaultXMLelement

% \def\defaultXMLelement
%   {\iftraceXMLelements[\currentXMLfullidentifier]\fi}

\def\defaultXMLelement
  {\iftraceXMLelements{\infofont\currentXMLfullidentifier}\fi}

%D We can use the default handler to implement automatic
%D element hiding. Beware: this overloads the tracer.

\def\startXMLignore{\dododefineXMLignore \s!default}
\def\stopXMLignore {\dododefineXMLprocess\s!default}

so you can play with the default handlers 

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
-

___
ntg-context mailing list
ntg-context@ntg.nl
http://www.ntg.nl/mailman/listinfo/ntg-context


Re: [NTG-context] Problems mapping Xml into ConTeXt

2006-10-12 Thread Michael Wigston

 Michael Wigston wrote:
 
  Hans Hagen wrote:
   Michael Wigston wrote:
1. This def of u does nothing ...
\defineXMLgrouped [u] \underbar
   
   \defineXMLargument[u]{\underbar}
  
   underbar is not a font switch but a macro that takes an
argument
 
  Hans,
 
  Thanks, that works fine with \underbar, as well as \underbars,

  \overstrike, \overstrikes, \low, \high and \lohi.
 
  You mentioned that \underbar (and presumably the others I mentioned

  above) are macros taking arguments e.g. \acommand{...}. However

  presumably something like \midaligned{...} is also a macro
requiring 
  an argument, but this works as a \defineXMLgrouped and as a 
  \defineXMLargument - why does it work with both?
 the macro ones do manipulate their argument, for instance, underbar
is 
 not a font charateristic or color switch or so i.e. not a real 
 attribute; esp using setups will make your style look better (look
into 
 x-fo for instance, forget about the dirty tricks there, but it's pretty

 clean; mapping values and so save many macro definitions
 
  The manual XML in ConTeXt very briefly sketched over
these XML 
  commands and I can see great potential to use them directly on
XML to 
  generate ConTeXt for PDF rather than the XSLT/XSL-FO route which
seems 
  to be gaining momentum in much of the industry. I don't suppose
there 
  is another more detailed document which elaborates on the XML

  commands, and how you may determine which of these is most appropriate

  for what kind of ConTeXt command mapping? 
 you can take a look into the x-* files which show quite some mappings;

 indeed direct mapping is often more convenient than transformations;

 future versions of context will also offer more manipulation possibilities
 
 
  Also at the moment a non-mapped element seems to automatically
type 
  out its contents as straight text - is there a way to override
this 
  behaviour and specify this as an error? (This is rather like
the Ruby 
  duck-typing approach - if an XML element is mapped, process it,
else 
  it is an error). 
 \startXMLignore
 \stopXMLignore 
 
 in xtag-pre you can see: 
 
 \defineXMLenvironment [\s!default] \defaultXMLelement \defaultXMLelement
 \defineXMLsingular  [\s!default] \defaultXMLelement
 
 % \def\defaultXMLelement
 %  {\iftraceXMLelements[\currentXMLfullidentifier]\fi}
 
 \def\defaultXMLelement
  {\iftraceXMLelements{\infofont\currentXMLfullidentifier}\fi}
 
 %D We can use the default handler to implement automatic
 %D element hiding. Beware: this overloads the tracer.
 
 \def\startXMLignore{\dododefineXMLignore \s!default}
 \def\stopXMLignore {\dododefineXMLprocess\s!default}
 
 so you can play with the default handlers 
 

Thanks, looks like I'll have to do some digging in
the x-* files ...

Regards,


NOTICE

This e-mail and any attachments are intended for the addressee(s) only and may be confidential.  They may contain legally privileged or copyright material.  You should not read, copy, use or disclose them without authorisation.  If you are not the intended recipient please contact the sender as soon as possible by return e-mail and then please delete both messages.  This notice should not be removed.   
___
ntg-context mailing list
ntg-context@ntg.nl
http://www.ntg.nl/mailman/listinfo/ntg-context


Re: [NTG-context] Problems mapping Xml into ConTeXt

2006-10-11 Thread Hans Hagen
Michael Wigston wrote:
 1.  This def of u does nothing ...
 \defineXMLgrouped [u] \underbar

\defineXMLargument[u]{\underbar}

underbar is not a font switch but a macro that takes an argument

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
-

___
ntg-context mailing list
ntg-context@ntg.nl
http://www.ntg.nl/mailman/listinfo/ntg-context


Re: [NTG-context] Problems mapping Xml into ConTeXt

2006-10-11 Thread Michael Wigston

Hans Hagen wrote:
 Michael Wigston wrote:
  1. This def of u does nothing ...
  \defineXMLgrouped [u] \underbar
 
 \defineXMLargument[u]{\underbar}
 
 underbar is not a font switch but a macro that takes an argument

Hans,

Thanks, that works fine with \underbar,
as well as \underbars, \overstrike, \overstrikes, \low, \high and \lohi.

You mentioned that \underbar (and presumably
the others I mentioned above) are macros taking arguments e.g. \acommand{...}.
However presumably something like \midaligned{...} is also a macro
requiring an argument, but this works as a \defineXMLgrouped and as a \defineXMLargument
- why does it work with both?

The manual XML in ConTeXt
very briefly sketched over these XML commands and I can see great potential
to use them directly on XML to generate ConTeXt for PDF rather than the
XSLT/XSL-FO route which seems to be gaining momentum in much of the industry.
I don't suppose there is another more detailed document which elaborates
on the XML commands, and how you may determine which of these is most appropriate
for what kind of ConTeXt command mapping? 

Also at the moment a non-mapped element
seems to automatically type out its contents as straight text - is there
a way to override this behaviour and specify this as an error? (This is
rather like the Ruby duck-typing approach - if an XML element is mapped,
process it, else it is an error). 

Michael
NOTICE

This e-mail and any attachments are intended for the addressee(s) only and may be confidential.  They may contain legally privileged or copyright material.  You should not read, copy, use or disclose them without authorisation.  If you are not the intended recipient please contact the sender as soon as possible by return e-mail and then please delete both messages.  This notice should not be removed.   
___
ntg-context mailing list
ntg-context@ntg.nl
http://www.ntg.nl/mailman/listinfo/ntg-context


[NTG-context] Problems mapping Xml into ConTeXt

2006-10-10 Thread Michael Wigston

Hi everyone,

I am attempting to map some XML into
ConTeXt as described in the manual XML in ConTeXt. Essentially
we have a bunch of tagged text (the XML loosely based on some
of the XHTML tags) from which we want to produce PDF letters for
dispatch (via email, post etc). 

I am having particular problems implementing
the following commands: -
\underbar,
\underbars, \overstrike, \overstrikes, \low, \high and \lohi

I was expecting that they would all
easily be defined using the \defineXMLgrouped [name] {command} element
mapping. There is probably something very simple that I have not setup
correctly since I am sure that this has been attempted before and would
appreciate pointers as to where I am going wrong.

The following attempts at mapping element
u to \underbar illustrates my problem which also seems largely
applicable to the strike, sub and sup mapping:
-

1. This def of u does
nothing ...
\defineXMLgrouped [u] \underbar

2. This def of u also
does nothing ...
\defineXMLgrouped [u] {\groupedcommand{\underbar}{}}

3. This def of u underlines
the 1st character only ...
\defineXMLenvironment [u] {\bgroup\underbar}
{\egroup}

4. In the mailing list, there is a suggestion
that \underbar does not allow line-breaking, so I also tried the
following. This def of u works partially, in
that it does underline, however it causes havoc with alignment - everything
seems to shift over to the right about 4cm ...

\defineXMLenvironment [u] \startul \stopul
\definetextbackground[ul]
 [location=text,alternative=1,background="">

\definestartstop[ul]
  [before={\starttextbackground[ul]
},
after={\stoptextbackground\
}]


Below is a sample .tex file that
I have been playing with: -

\usemodule[contml]
\autoXMLnamespace [context]

% Attempts at defining a mapping for
u: -
% This def of u does nothing
...
%\defineXMLgrouped [u] \underbar
% This def of u does nothing
...
%\defineXMLgrouped [u] {\groupedcommand{\underbar}{}}
% This def of u underlines the
1st character only ...
%\defineXMLenvironment [u] {\bgroup\underbar}
{\egroup}
%
% This def of u works
partially, in that it does underline, however it
% causes havoc with alignment - everything
seems to shift over to the right
% about 4cm ...

\defineXMLenvironment [u] \startul \stopul
\definetextbackground[ul]
 [location=text,alternative=1,background="">

\definestartstop[ul]
  [before={\starttextbackground[ul]
},
  %  after={\stoptextbackground\fixedspaces}]
after={\stoptextbackground\
}]

% Other mappings
\defineXMLgrouped [right] \rightaligned
\defineXMLgrouped [centre] \midaligned
\defineXMLgrouped [em] \em
\defineXMLsingular [br] [nr=1]
  {\blank[\XMLop{nr}*medium]}

\showstruts \showframe

\starttext

start of 'normal' \CONTEXT\ text

\underbar{This} is {\em left} aligned
\blank[medium]
\rightaligned{\underbar{This} is {\em
right} aligned}
\blank[medium]
\midaligned{\underbar{This} is {\em
centre} aligned}

end of 'normal' \CONTEXT\ text - starting
xml ...

\startXMLdata

pThis is emleft/em
aligned/p

pcentreuThis/u
is emcentre/em aligned/centre/p

pcentreThis is emcentre/em
aligned/centre/p

prightThis is emright/em
aligned/right/p

\stopXMLdata
\blank[medium]
finished xml - back in 'normal' \CONTEXT\
text
\stoptext



NOTICE

This e-mail and any attachments are intended for the addressee(s) only and may be confidential.  They may contain legally privileged or copyright material.  You should not read, copy, use or disclose them without authorisation.  If you are not the intended recipient please contact the sender as soon as possible by return e-mail and then please delete both messages.  This notice should not be removed.   
___
ntg-context mailing list
ntg-context@ntg.nl
http://www.ntg.nl/mailman/listinfo/ntg-context