forrest-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Cameron McCormack <...@mcc.id.au>
Subject Re: Own type of document transformed to document-v20
Date Sun, 14 May 2006 23:48:56 GMT
Hi Ross.

Ross Gardler:
> The document-v20 DTD is to intented to include all the elements in the 
> XHTML2 subset we are working towards supporting. If the elements you 
> want to add are in this subset then you can add them to our DTD, 
> otherwise you should use your own DTD and convert as you suggest.
> 
> So, what are the elements you want to add?

I want to have content like:

  <section id="elements">
  <p>
    The table below lists the supported SVG elements, and what CSS
    properties and XML attributes are supported on those:
  </p>
  <elements>
    <element name="a" ns="http://www.w3.org/2000/svg">
      <prop name="clip-path"><yes/></prop>
      <prop name="color-interpolation"><yes/></prop>
      ...
      <attr name="class" ns=""><yes/></attr>
      <attr name="externalResourcesRequired" ns=""><no/></attr>
    </element>
    ...
  </elements>

Basically, a table of elements and what CSS properties and XML
attributes are supported on them.  I want to do this because it will be
slightly easier to maintain than the 'table' element I want it converted
into.

Ross Gardler:
> The sourcetype resolver can only work if you define the type of 
> document. To do this you have to use DTD's.

Understood.

> You could work without DTD's but you would have to place your home grown 
> files in a specific directory so that you can match on location rather 
> than type.
> 
> If you did this you would have to turn validation off (see 
> forrest.properties)

Yes it's currently turned off anyway.

> (you don't mention which version of Forrest you are working with, the 
> below is 0.7, in 0.8-dev this will still work but you should realy use 
> the locationmap to resolve source locations).

I'm working with 0.7.

> <map:match pattern ="path/to/my/files/**.xml">
>   <map:generate src="{project:content.xdocs}/path/to/my/sources/{{1}.xml"/>
>   <map:transform src="myFormat-to-document.xsl"/>
>   <map:serialize type="xml"/>
> </map:match>

Aha!  With a bit of jiggering with the paths, that works perfectly,
thanks.

> Gavin points to some examples in forrest, but these all use the 
> sourceresolver, and requrie a DTD.
> 
> I really would recomend using a DTD it makes things much more flexible 
> and will prevent time hunting errors in your source files. But the 
> choice is yorus.

DTDs flexible?  Surely you kid.  ;-)  But I guess you mean that it will
be more flexible since I won't have to restrict myself to particular
files to be processed as 'status' documents, instead having it look it
up based on the DOCTYPE declaration.  If I find this gets in my way,
I'll go to the effort of making a DTD.

By the way, I like to use the 'extra-css' element in my skinconf.xml to
customize the styling of one of the included skins a bit.  Is there a
similarly easy way to modify the styling of the XSL-FO elements that are
used to generate the PDF versions of pages?  Perhaps I can reference
some XSLT file that will be applied to the generated FO that adds on
some attributes?

Thanks for your help,

Cameron

-- 
 Cameron McCormack			ICQ: 26955922
 cam (at) mcc.id.au			MSN: cam (at) mcc.id.au
 http://mcc.id.au/			JBR: heycam (at) jabber.org

Mime
View raw message