[OSM-dev] generate_xml.py not generating osm.xml file?

Ákos Maróy akos at maroy.hu
Sun Aug 29 13:31:43 BST 2010


Lennard,

> They are dynamically included, by putting the relevant &layer-xxx;
> references at the right spot in osm.xml. The ordering of <Layer>
> elements in the stylesheet determines the order in which mapnik renders.

what do you mean by 'stylesheet' in this context?

> So water, for instance, is loaded by way of osm.xml including
> inc/layers.xml.inc, then including any file defined there, and then it's
> actually 'activated' by encountering &layer-water; in osm.xml itself.
> You may have missed that last bit.

yes, I see that. but to 'activate' my own layer, I'd still have to
manually edit osm.xml, wouldn't I?

it's actually a pit confusing, that osm.xml both references layers via
these external entities, and contains <Layer> and <Style> definitions on
its own.

> The normal osm.xml file on SVN does not have the xml.inc files included.
> They are dynamically loaded by libxml2 during parsing of osm.xml.

I see. the confusion comes from the content of these xml.inc files and
osm.xml in general to be of similar purpose. wonder what make something
get into a layer files, and what is in osm.xml itself.

> They would only be included in a stylesheet if you tell generate_xml.py
> to create a new stylesheet from osm.xml. You would also loose the
> ability to do a simple svn up to keep in sync with osm.org, as you would
> then also have to rerun generate_xml.py to recreate your local
> stylesheet, after every svn update.

yes, I see. my impression was that all of osm.xml is actually generated
from the includes & stuff, and contains no other information.

but, still. it seems that there is no 'simple' or 'elegant' way of just
dropping a new layer-foo.xml.inc file into inc, and to make osm.xml
automatically use the definitions in there. as at least one has to add
an external entity reference manually.

is this correct?


Akos



More information about the dev mailing list