All pastes #438861 Raw Edit

Osmarender rule file

public xml v1 · immutable
·published 2007-04-13 22:04 UTC
rendered paste body
<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet type="text/xsl" href="osmarender.xsl"?><!-- This file should be used with Osmarender 4 --><!-- This file implements a sub-set of the items described at http://wiki.openstreetmap.org/index.php/Map_Features --><!-- A scale of 0.1 will make fat roads on a small map, a scale of 5 will draw very thin roads on a large scale map --><!-- minimumMapWidth/Height is in kilometres --><!-- Set javaScript="no" if you want an svg file that contains no javascript.  This is so that you can upload it to Wikipedia etc --><rules    xmlns:xlink="http://www.w3.org/1999/xlink"    xmlns:svg="http://www.w3.org/2000/svg"    data="data.osm"    svgBaseProfile="full"    scale="1"    symbolScale="4"    minimumMapWidth="4"    minimumMapHeight="3"    withOSMLayers="yes"    withUntaggedSegments="yes"    symbolsDir="symbols"    showScale="yes"    showGrid="yes"    showBorder="yes"    showLicense="yes"    interactive="no">    <!-- Uncomment this element if you want to explicitly specify the bounding box for a map, or you can add a <bounds> element to         your data.osm file, which is probably a better thing to do. -->    <!--<bounds        minlat="51.50583362991789"        minlon="-0.13313005495563884"        maxlat="51.516556840221504"        maxlon="-0.10891295872251346" />-->    <!-- For debugging this rule draws a one pixel wide trace of *all* segments.  This enables segments that have no            tags to be identified. Comment it out to hide the debug trace. -->    <!--<rule e="segment" k="~" v="~">        <line class='debug'/>    </rule>-->    <!-- Select all nodes, waysegments and ways (unless they have an osmarender:render=no tag) -->    <!-- If you really want to render segments then you will need to add segment to the element list, but please don't - tag the ways instead. -->    <rule e="node|waysegment|way" k="osmarender:render" v="~|yes">        <!-- Highway shading (abutters) first -->        <layer name="Abutters">            <rule k="highway" v="residential">                <line class='abutters-residential' />            </rule>            <rule k="abutters" v="residential">                <line class='abutters-residential'/>            </rule>            <rule k="abutters" v="retail">                <line class='abutters-retail'/>            </rule>            <rule k="abutters" v="industrial">                <line class='abutters-industrial'/>            </rule>            <rule k="abutters" v="commercial">                <line class='abutters-commercial'/>            </rule>            <rule k="abutters" v="mixed">                <line class='abutters-mixed'/>            </rule>        </layer>        <!-- Natural features -->        <layer name="Natural features and leisure">            <rule e="way" k="natural" v="coastline">                <line class='natural-coastline'/>            </rule>            <rule e="way" k="natural" v="land">                <area class='natural-land' />            </rule>            <rule e="way" k="landuse" v="forest|wood">                <area class='landuse-wood'/>            </rule>            <rule e="way" k="natural" v="forest|wood">                <area class='landuse-wood'/>            </rule>            <rule e="way" k="landuse" v="field|meadow">                <area class='landuse-field'/>            </rule>            <rule e="way" k="leisure" v="park|playing_fields|garden|pitch|golf_course|common|green">                <area class='leisure-park'/>            </rule>            <rule e="way" k="leisure" v="stadium|sports_centre">                <area class='leisure-stadium'/>            </rule>            <rule e="way" k="leisure" v="track">                <area class='leisure-track'/>            </rule>        </layer>        <!-- Waterways -->        <rule e="segment|way" k="waterway" v="*">            <layer name="Waterways">                <rule e="way" k="waterway" v="riverbank">                    <area class='waterway-riverbank'/>                </rule>                <rule e="segment|way" k="waterway" v="river">                    <line class='waterway-river-casing'/>                </rule>                <rule e="segment|way" k="waterway" v="stream">                    <line class='waterway-stream-casing'/>                </rule>                <rule e="segment|way" k="waterway" v="canal">                    <line class='waterway-canal-casing'/>                </rule>                <rule e="segment|way" k="waterway" v="drain">                    <line class='waterway-drain-casing'/>                </rule>                <rule e="segment|way" k="waterway" v="river">                    <line class='waterway-river-core'/>                </rule>                <rule e="segment|way" k="waterway" v="stream">                    <line class='waterway-stream-core'/>                </rule>                <rule e="segment|way" k="waterway" v="canal">                    <line class='waterway-canal-core'/>                </rule>                <rule e="segment|way" k="waterway" v="drain">                    <line class='waterway-drain-core'/>                </rule>            </layer>        </rule>         <!-- Landuse -->        <rule e="way" k="landuse|natural" v="*">            <layer name="Land use">                <rule e="way" k="landuse" v="residential">                    <area class='landuse-residential'/>                </rule>                <rule e="way" k="landuse" v="retail">                    <area class='landuse-retail'/>                </rule>                <rule e="way" k="landuse" v="industrial">                    <area class="landuse-industrial" />                </rule>                <rule e="way" k="landuse" v="commercial">                    <area class="landuse-commercial" />                </rule>                <rule e="way" k="natural" v="water|pond|lake">                    <area class='natural-water' />                </rule>                <rule e="way" k="landuse" v="reservoir">                    <area class='natural-water' />                </rule>                <rule e="way" k="landuse" v="basin">                    <area class='natural-water' />                </rule>                <rule e="way" k="landuse" v="cemetery">                    <area class='landuse-cemetery' />                </rule>            </layer>        </rule>        <!-- Man-made areas -->        <layer name="Man-made">            <rule e="way" k="sport" v="rugby|soccer|cricket|horse_racing|golf|hockey|tennis|football|baseball|bowls|basketball">                <area class='sport'/>            </rule>            <rule e="way" k="amenity" v="parking">                <area class='amenity-parking'/>            </rule>            <rule e="way" k="amenity" v="school|university|college">                <area class='school-area'/>            </rule>            <rule e="way" k="tourism" v="attraction">                <area class='tourism-attraction'/>            </rule>            <rule e="way" k="building" v="barn|warehouse|oast_house|tower|castle|monument|hall|shed|store|stadium">                <area class='building'/>            </rule>            <rule e="way" k="building" v="barn|warehouse|oast_house|block|tower|castle|monument|hall|shed|store|stadium">                <area class='building-block'/>            </rule>            <rule e="way" k="building" v="detached|semi|terrace|apartments">                <area class='building-residential'/>            </rule>        </layer>        <!-- Contours -->        <rule e="segment|way" k="contour" v="*">            <layer name="Contours">                <line class='contour' />                <text k="contour" text-anchor='middle' startOffset='50%' class="contour-name" />            </layer>        </rule>        <!-- Bridges -->        <rule e="segment|way" k="bridge" v="yes|true">            <layer name="Bridges">                <rule e="segment|way" k="highway" v="motorway|trunk">                    <line class='bridge-casing-35' />                    <line class='bridge-core-35' />                </rule>                <rule e="segment|way" k="highway" v="motorway_link|trunk_link|primary|primary_link|secondary">                    <line class='bridge-casing-30' />                    <line class='bridge-core-30' />                </rule>                <rule e="segment|way" k="highway" v="unclassified|residential|pedestrian|track">                    <line class='bridge-casing-25' />                    <line class='bridge-core-25' />                </rule>                <rule e="segment|way" k="railway" v="rail">                    <line class='bridge-casing-25' />                    <line class='bridge-core-25' />                </rule>                <rule e="segment|way" k="railway" v="light_rail|subway|tram">                    <line class='bridge-casing-20' />                    <line class='bridge-core-20' />                </rule>                <rule e="segment|way" k="highway" v="cycleway">                    <line class='bridge-casing-20' />                    <line class='bridge-core-20' />                </rule>                <rule e="segment|way" k="highway" v="service">                    <line class='bridge-casing-15' />                    <line class='bridge-core-15' />                </rule>                <rule e="segment|way" k="highway" v="footway">                    <line class='bridge-casing-10' />                    <line class='bridge-core-10' />                </rule>            </layer>        </rule>        <!-- Roads and paths -->        <layer name="Roads and Paths">            <!-- Highway casings -->            <rule e="segment|way" k="tunnel" v="~|no">            <!-- <rule e="segment|way" k='passing_places' v="~|no"> -->                <rule e="segment|way" k="highway" v="pedestrian">                    <line class='highway-pedestrian-casing' />                </rule>                <rule e="segment|way" k="highway" v="track">                    <line class='highway-track-casing' />                </rule>                <rule e="segment|way" k="highway" v="unclassified|residential|minor|tertiary">                    <line class='highway-unclassified-casing' />                </rule>                <rule e="segment|way" k="highway" v="unsurfaced">                    <line class='highway-unsurfaced-casing' />                </rule>                <rule e="segment|way" k="highway" v="service">                    <line class='highway-service-casing' />                </rule>                <rule e="segment|way" k="highway" v="secondary">                    <line class='highway-secondary-casing' />                </rule>                <rule e="segment|way" k="highway" v="primary">                    <line class='highway-primary-casing' />                </rule>                <rule e="segment|way" k="highway" v="primary_link">                    <line class='highway-primary-link-casing' />                </rule>                <rule e="segment|way" k="highway" v="trunk">                    <line class='highway-trunk-casing' />                </rule>                <rule e="segment|way" k="highway" v="trunk_link">                    <line class='highway-trunk-link-casing' />                </rule>                <rule e="segment|way" k="highway" v="motorway">                    <line class='highway-motorway-casing' />                </rule>                <rule e="segment|way" k="highway" v="motorway_link">                    <line class='highway-motorway-link-casing' />                </rule>            <!-- </rule> -->            </rule>            <!-- Mini roundabout -->            <rule e="node" k="highway" v="mini_roundabout">                <circle r="0.95px" class="mini-roundabout-casing"/>            </rule>            <!-- Paths in tunnels -->            <rule e="segment|way" k="tunnel" v="yes|true">                <rule e="segment|way" k="highway" v="footway|steps|cycleway|bridleway|byway">                    <tunnel width="0" class='highway-tunnel-narrow' />                </rule>            </rule>            <!-- Paths not in tunnels -->            <rule e="segment|way" k="tunnel" v="~|no">                <rule e="segment|way" k="highway" v="footway|steps">                    <line class='highway-footway' />                    <text k="ref" class='highway-footway-ref' dx='2px' dy='-2px' />                </rule>                <rule e="segment|way" k="highway" v="steps">                    <line class='highway-steps' />                </rule>                <rule e="segment|way" k="highway" v="cycleway">                    <line class='highway-cycleway' />                    <text k="ref" class='highway-cycleway-ref' dx='2px' dy='-2px' />                </rule>                <rule e="segment|way" k="highway" v="bridleway">                    <line class='highway-bridleway' />                    <text k="ref" class='highway-bridleway-ref' dx='2px' dy='-2px' />                </rule>                <rule e="way" k="highway" v="byway">                    <line class='highway-byway' />                    <text k="ref" class='highway-byway-ref' dx='2px' dy='-2px' />                </rule>            </rule>            <!-- Highway cores (not in tunnel or passing places) -->            <rule e="segment|way" k="tunnel" v="~|false|no">            <rule e="segment|way" k="passing_places" v="~|false|no">                <addclass e="segment|way" k="bridge" v="yes|true" class="round">                    <rule e="segment|way" k="highway" v="pedestrian">                        <line class='highway-pedestrian-core' />                    </rule>                    <rule e="segment|way" k="highway" v="track">                        <line class='highway-track-core' />                    </rule>                    <addclass k="oneway" v="1|yes|true" class="oneway">                        <addclass k="oneway" v="-1" class="otherway">                            <rule e="segment|way" k="highway" v="unclassified|residential|minor|tertiary">                                <line class='highway-unclassified-core' />                            </rule>                            <rule e="segment|way" k="highway" v="unsurfaced">                                <line class='highway-unsurfaced-core' />                            </rule>                            <rule e="segment|way" k="highway" v="service">                                <line class='highway-service-core' />                            </rule>                            <rule e="segment|way" k="highway" v="secondary">                                <line class='highway-secondary-core' />                            </rule>                            <rule e="segment|way" k="highway" v="primary_link">                                <line class='highway-primary-link-core' />                            </rule>                        </addclass>                    </addclass>                    <rule e="segment|way" k="highway" v="trunk_link">                        <line class='highway-trunk-link-core' />                    </rule>                    <rule e="segment|way" k="highway" v="motorway_link">                        <line class='highway-motorway-link-core' />                    </rule>                    <rule e="segment|way" k="highway" v="primary">                        <addclass k="oneway" v="1|yes|true" class="oneway">                            <addclass k="oneway" v="-1" class="otherway">                                <line class='highway-primary-core' />                            </addclass>                        </addclass>                    </rule>                    <rule e="segment|way" k="highway" v="trunk">                        <line class='highway-trunk-core' />                    </rule>                    <rule e="segment|way" k="highway" v="motorway">                        <line class='highway-motorway-core' />                    </rule>                </addclass>            </rule>            </rule>            <!-- Passing places cores -->            <rule e="segment|way" k="passing_places" v="true|yes">                <rule e="segment|way" k="highway" v="trunk">                    <line class='trunk-passing-places-core' />                </rule>                <rule e="segment|way" k="highway" v="primary">                    <line class='primary-passing-places-core' />                </rule>                <rule e="segment|way" k="highway" v="secondary">                    <line class='secondary-passing-places-core' />                </rule>                <rule e="segment|way" k="highway" v="unclassified|residential|minor|tertiary">                    <line class='unclassified-passing-places-core' />                </rule>             </rule>            <!-- Highway tunnels -->            <rule e="segment|way" k="tunnel" v="true|yes">                <rule e="segment|way" k="highway" v="pedestrian">                    <tunnel width="2" class='highway-pedestrian' />                </rule>                <rule e="segment|way" k="highway" v="track">                    <tunnel width="2" class='highway-track' />                </rule>                <rule e="segment|way" k="highway" v="unclassified|residential|minor|tertiary">                    <tunnel width="2" class='highway-unclassified' />                </rule>                <rule e="segment|way" k="highway" v="unsurfaced">                    <tunnel width="2" class='highway-unsurfaced' />                </rule>                <rule e="segment|way" k="highway" v="service">                    <tunnel width="1" class='highway-service' />                </rule>                <rule e="segment|way" k="highway" v="secondary">                    <tunnel width="3" class='highway-secondary' />                </rule>                <rule e="segment|way" k="highway" v="primary_link">                    <tunnel width="3" class='highway-primary-link' />                </rule>                <rule e="segment|way" k="highway" v="trunk_link">                    <tunnel width="3" class='highway-trunk-link' />                </rule>                <rule e="segment|way" k="highway" v="motorway_link">                    <tunnel width="3" class='highway-motorway-link' />                </rule>                <rule e="segment|way" k="highway" v="primary">                    <tunnel width="3" class='highway-primary' />                </rule>                <rule e="segment|way" k="highway" v="trunk">                    <tunnel width="4" class='highway-trunk' />                </rule>                <rule e="segment|way" k="highway" v="motorway">                    <tunnel width="4" class='highway-motorway' />                </rule>            </rule>            <rule e="node" k="highway" v="mini_roundabout">                <circle r="0.8px" class="mini-roundabout-core"/>                <circle r="0.2px" class="mini-roundabout-dot"/>            </rule>        </layer>        <!-- Railway lines -->        <rule e="segment|way" k="railway" v="*">            <layer name="Railway/Subway/Tram">                <!-- not in tunnel -->                <rule e="segment|way" k="tunnel" v="~|no|false">                    <rule e="segment|way" k="railway" v="rail">                        <line class='railway-rail' />                        <line class='railway-rail-dashes' />                    </rule>                    <rule e="segment|way" k="railway" v="light_rail|tram">                        <line class='railway-light-rail' />                    </rule>                    <rule e="segment|way" k="railway" v="subway">                        <line class='railway-subway-rail' />                    </rule>                </rule>                <!-- in tunnel -->                <rule e="segment|way" k="tunnel" v="true|yes">                    <rule e="segment|way" k="railway" v="rail">                        <tunnel width="3" class='railway-rail' />                    </rule>                    <rule e="segment|way" k="railway" v="light_rail|subway|tram">                        <tunnel width="0" class='railway-tunnel-narrow' />                    </rule>                </rule>            </layer>        </rule>        <!-- Airfields and airports -->        <rule e="node|segment|way" k="aeroway" v="*">            <layer name="Airfields and airports">                <rule e="segment|way" k="aeroway" v="runway">                    <line class='aeroway-runway-casing'/>                </rule>                <rule e="segment|way" k="aeroway" v="taxiway">                    <line class='aeroway-taxiway-casing'/>                </rule>                <rule e="segment|way" k="aeroway" v="runway">                    <line class='aeroway-runway-core'/>                </rule>                <rule e="segment|way" k="aeroway" v="taxiway">                    <line class='aeroway-taxiway-core'/>                </rule>                <rule e="node" k="aeroway" v="aerodrome">                    <symbol ref="airport" transform="scale(2)" />                    <rule k="osmarender:renderName" v="~|yes">                        <text k="name" class='aeroway-aerodrome-caption' dx='4px' dy='2.5px'/>                    </rule>                </rule>                <rule e="node" k="aeroway" v="airport">                    <symbol ref="airport" />                    <rule k="osmarender:renderName" v="~|yes">                        <text k="name" class='aeroway-airport-caption' dx='8px' dy='4px' />                    </rule>                </rule>            </layer>        </rule>        <!-- Aerialways -->        <rule e="node|way" k="aerialway" v="*">            <layer name="Aerialways">                <line class='aerialway-line'/>                <line class='aerialway-struts'/>            </layer>        </rule>        <!-- Power lines and pylons -->        <rule e="node|way" k="power" v="*">            <layer name="Power lines">                <rule e="node" k="power" v="tower">                    <symbol ref="power_tower" />                </rule>                <rule e="way" k="power" v="line">                    <line class='power-line'/>                </rule>            </layer>        </rule>        <!-- Non-pysical routes -->        <rule e="segment|way" k="route" v="ferry">            <layer name="Ferry">                <line class='route-ferry' />            </layer>        </rule>        <!-- Place names  -->        <rule e="node" k="place" v="*">            <layer name="Place names">                <rule e="node" k="place" v="continent">                    <text k="name" class='continent-caption' />                </rule>                <rule e="node" k="place" v="country">                    <text k="name" class='country-caption' />                </rule>                <rule e="node" k="place" v="state">                    <text k="name" class='state-caption' />                </rule>                <rule e="node" k="place" v="region">                    <text k="name" class='region-caption' />                </rule>                <rule e="node" k="place" v="county">                    <text k="name" class='county-caption' />                </rule>                <rule e="node" k="place" v="city">                    <text k="name" class='city-caption' />                </rule>                <rule e="node" k="place" v="town">                    <text k="name" class='town-caption' />                </rule>                <rule e="node" k="place" v="village">                    <text k="name" class='village-caption' />                </rule>                <rule e="node" k="place" v="suburb">                    <text k="name" class='suburb-caption' />                </rule>                <rule e="node" k="place" v="hamlet">                    <text k='name' class='hamlet-caption' />                </rule>                <rule e="node" k="place" v="farm">                    <text k='name' class='farm-caption' />                </rule>            </layer>        </rule>        <!-- Tourist features -->        <rule e="node" k="tourism" v="*">            <layer name="Tourist features">                <rule e="node" k="tourism" v="attraction">                    <text k='name' class='tourism-attraction-caption' />                </rule>                <rule e="node" k="tourism" v="hotel">                    <symbol ref="hotel" />                </rule>                <rule e="node" k="tourism" v="hostel">                    <symbol ref="hostel" />                </rule>                <rule e="node" k="tourism" v="camp_site">                    <symbol ref="camp_site" />                </rule>            </layer>        </rule>        <!-- Railway stations -->        <layer name="Railway stations">            <rule e="node" k="railway" v="station">                <circle r="1.5" class="railway-station" />                <rule k="osmarender:renderName" v="~|yes">                    <text k="name" class='railway-station-caption' dx='2.5px' dy='1.5px' />                </rule>            </rule>            <rule e="node" k="railway" v="halt">                <circle r="0.7" class="railway-halt" />                <rule k="osmarender:renderName" v="~|yes">                    <text k="name" class='railway-halt-caption' dx='2.5px' dy='1.5px' />                </rule>            </rule>        </layer>        <layer name="Amenities and other symbols">            <!-- Amenities -->            <rule e="node" k="amenity" v="hospital">                <symbol ref="hospital" />                <rule k="osmarender:renderName" v="~|yes">                    <text k='name' class='amenity-misc-caption' dx='2px' dy='0.4px'/>                </rule>            </rule>            <rule e="node" k="amenity" v="pharmacy">                <symbol ref="pharmacy_dispensing" />                <rule k="osmarender:renderName" v="~|yes">                    <text k='name' class='amenity-misc-caption' dx='2px' dy='0.4px'/>                </rule>            </rule>            <rule e="node" k="amenity" v="school">                <symbol ref="school" />                <rule k="osmarender:renderName" v="~|yes">                    <text k='name' class='amenity-misc-caption' dx='2px' dy='0.4px'/>                </rule>            </rule>            <rule e="node" k="amenity" v="university">                <symbol ref="university" />                <rule k="osmarender:renderName" v="~|yes">                    <text k='name' class='amenity-misc-caption' dx='2px' dy='0.4px'/>                </rule>            </rule>            <rule e="node" k="amenity" v="library">                <symbol ref="library" />                <rule k="osmarender:renderName" v="~|yes">                    <text k='name' class='amenity-misc-caption' dx='2px' dy='0.4px'/>                </rule>            </rule>            <rule e="node" k="amenity" v="post_office">                <symbol ref="post_office" />            </rule>            <rule e="node" k="amenity" v="post_box">                <symbol ref="post_box" />            </rule>            <rule e="node" k="amenity" v="telephone">                <symbol ref="telephone" />            </rule>            <rule e="node" k="amenity" v="cinema">                <symbol ref="cinema" />                <rule k="osmarender:renderName" v="~|yes">                    <text k='name' class='amenity-misc-caption' dx='2px' dy='0.4px'/>                </rule>            </rule>            <rule e="node" k="amenity" v="theatre">                <symbol ref="theatre" />                <rule k="osmarender:renderName" v="~|yes">                    <text k='name' class='amenity-misc-caption' dx='2px' dy='0.4px'/>                </rule>            </rule>            <rule e="node" k="amenity" v="restaurant">                <symbol ref="restaurant" />                <rule k="osmarender:renderName" v="~|yes">                    <text k='name' class='amenity-pub-caption' dx='2px' dy='0.4px'/>                </rule>            </rule>            <rule e="node" k="amenity" v="pub">                <symbol ref="pub" />                <rule k="osmarender:renderName" v="~|yes">                    <text k='name' class='amenity-pub-caption' dx='1px' dy='0.4px'/>                </rule>            </rule>            <rule e="node" k="amenity" v="supermarket">                <symbol ref="supermarket" />                <rule k="osmarender:renderName" v="~|yes">                    <text k='name' class='amenity-pub-caption' dx='2px' dy='0.4px'/>                </rule>            </rule>            <rule e="node" k="amenity" v="courthouse">                <symbol ref="courthouse" />                <rule k="osmarender:renderName" v="~|yes">                    <text k='name' class='amenity-pub-caption' dx='2px' dy='0.4px'/>                </rule>            </rule>            <rule e="node" k="amenity" v="place_of_worship">                <rule e="node" k="denomination|religion" v="~">                    <symbol ref="church" />                </rule>                <rule e="node" k="denomination|religion" v="christian|church_of_england">                    <symbol ref="church" />                </rule>                <rule e="node" k="denomination|religion" v="jewish">                    <symbol ref="synagogue" />                </rule>                <rule e="node" k="denomination|religion" v="muslim">                    <symbol ref="mosque" />                </rule>                <rule k="osmarender:renderName" v="~|yes">                    <text k='name' class='amenity-misc-caption' dx='2px' dy='0.4px'/>                </rule>            </rule>            <rule e="node" k="amenity" v="parking">                <symbol ref="parking" />            </rule>            <rule e="node" k="amenity" v="fuel">                <symbol ref="petrol_station" />                <rule k="osmarender:renderName" v="~|yes">                    <text k='name' class='amenity-misc-caption' dx='2px' dy='0.4px'/>                </rule>            </rule>            <rule k="amenity" v="recycling">                <symbol ref="recycling" />            </rule>            <!-- Historic symbols -->            <rule e="node" k="historic" v="museum">                <symbol ref="museum" />                <rule k="osmarender:renderName" v="~|yes">                    <text k='name' class='amenity-pub-caption' dx='1px' dy='0.4px'/>                </rule>            </rule>            <!-- Leisure symbols -->            <rule e="node" k="leisure" v="golf_course">                <symbol ref="golf_course" />            </rule>            <rule e="node" k="leisure" v="slipway">                <symbol ref="slipway" />            </rule>        </layer>        <!-- Street names for all highways -->        <rule k="osmarender:renderName" v="~|yes">            <rule e="segment|way" k="tunnel" v="~|no|false">    <!-- no names in tunnels -->                <rule e="segment|way" k="highway" v="*">                    <layer name="Street names">                        <rule e="segment|way" k="highway" v="unclassified|residential|minor|tertiary|pedestrian">                            <text k="name" text-anchor='middle' startOffset='50%' class="highway-unclassified-name" dy="0.33px" />                        </rule>                        <rule e="way" k="highway" v="unsurfaced|track">                            <text k="name" text-anchor='middle' startOffset='50%' class="highway-unsurfaced-name" dy="0.33px" />                        </rule>                        <rule e="way" k="highway" v="footway|cycleway">                            <text k="name" text-anchor='middle' startOffset='50%' class="highway-footway-name" dy="0.33px" />                        </rule>                        <rule e="segment|way" k="highway" v="service">                            <text k="name" text-anchor='middle' startOffset='50%' class="highway-unclassified-name" dy="0.33px" />                        </rule>                        <rule e="segment|way" k="highway" v="secondary">                            <text k="name" text-anchor='middle' startOffset='50%' class="highway-secondary-name" dy="0.33px" />                        </rule>                        <rule e="segment|way" k="highway" v="primary">                            <text k="name" text-anchor='middle' startOffset='50%' class="highway-primary-name" dy="0.33px" />                        </rule>                        <rule e="segment|way" k="highway" v="trunk">                            <text k="name" text-anchor='middle' startOffset='50%' class="highway-trunk-name" dy="0.33px" />                        </rule>                        <rule e="segment|way" k="highway" v="motorway">                            <text k="name" text-anchor='middle' startOffset='50%' class="highway-motorway-name" dy="0.33px" />                        </rule>                    </layer>                </rule>            </rule>        </rule>        <!-- Road numbers for all highways -->        <rule k="osmarender:renderRef" v="~|yes">            <rule e="segment|way" k="tunnel" v="~|no|false">    <!-- no road numbers in tunnels -->                <rule e="segment|way" k="highway" v="*">                    <layer name="Road numbers">                        <rule e="segment|way" k="highway" v="unclassified|residential">                            <text k="ref" class='highway-unclassified-ref' dx='2.5px' dy='-2.5px' />                        </rule>                        <rule e="way" k="highway" v="unsurfaced">                            <text k="ref" class='highway-unsurfaced-ref' dx='2.5px' dy='-2.5px' />                        </rule>                        <rule e="segment|way" k="highway" v="service">                            <text k="ref" class='highway-service-ref' dx='2.5px' dy='-2.5px' />                        </rule>                        <rule e="segment|way" k="highway" v="secondary">                            <text k="ref" class='highway-secondary-ref' dx='2.5px' dy='-2.5px' />                        </rule>                        <rule e="segment|way" k="highway" v="primary">                            <text k="ref" text-anchor='middle' startOffset='60%' class="highway-primary-name" />                        </rule>                        <rule e="segment|way" k="highway" v="trunk">                            <text k="ref" class='highway-trunk-ref' dx='2.5px' dy='-2.5px' />                        </rule>                        <rule e="segment|way" k="highway" v="motorway">                            <text k="ref" class='highway-motorway-ref' dx='2.5px' dy='-2.5px' />                        </rule>                    </layer>                </rule>            </rule>        </rule>        <!-- Traffic symbols -->        <layer name="Traffic symbols">            <rule e="node" k="highway" v="gate">                <symbol ref="gate" transform="scale(0.6)"/>            </rule>            <rule e="node" k="highway" v="traffic_signals">                <symbol ref="traffic_signal" />            </rule>        </layer>        <!-- Use the following three rules to display nodes, segments and ways as they would appear in JOSM, overlayed on top of anything else -->        <!--        <rule e="segment" k="*" v="*">            <line class='josm-segment' />        </rule>        <rule e="way" k="*" v="*">            <line class='josm-way' />        </rule>        <rule e="node" k="*" v="*">            <circle r='0.2' class='josm-node' />        </rule>        -->        <!-- Use this rule to highlight tags that you want to get rid of, or change -->        <!--<rule e="way" k="class|highway|waterway|route" v="~">                <line class='error'/>        </rule>-->    </rule>    <!-- SVG Definitions - markers, symbols etc go here -->    <defs>        <style id="styles" type="text/css" xmlns="http://www.w3.org/2000/svg">            .debug {                stroke-width: 0.1px;                stroke-linecap: round;                stroke: gray;                /* marker-end: url(#segment-direction); */            }            .contour-name {                fill: black;                font-family: "DejaVu Sans",sans-serif;                font-size: 3px;            }            .contour {                stroke-width: 0.4px;                stroke-linecap: round;                stroke: gray;                fill: none;                /* marker-end: url(#segment-direction); */            }            .error {                stroke-width: 2px;                stroke-linecap: round;                stroke: red;            }            .untagged-segments {                stroke-width: 0.5px;                stroke-linejoin: butt;                stroke-linecap: butt;                stroke: #e0e0e0;                stroke-dasharray: 0.5,0.5;            }            .abutters-residential {                stroke-width: 9px;                stroke-linecap: butt;                stroke: #f2f2f2;                fill: none;            }            /* Abutters */            .abutters-retail {                stroke-width: 9px;                stroke-linecap: butt;                stroke: #ffebeb;                fill: none;            }            .abutters-industrial {                stroke-width: 9px;                stroke-linecap: butt;                stroke: #ecd8ff;                fill: none;            }            .abutters-commercial {                stroke-width: 9px;                stroke-linecap: butt;                stroke: #fcffc9;                fill: none;            }            .abutters-mixed {                stroke-width: 9px;                stroke-linecap: butt;                stroke: #d8feff;                fill: none;            }            /* Bridge casing */            .bridge-casing-35 {                stroke-width: 3.5px;                stroke-linecap: butt;                stroke-linejoin: round;                stroke: #222222;                fill: none;                marker-start: url(#bridge-casing-start);                marker-end: url(#bridge-casing-end);            }            .bridge-casing-30 {                stroke-width: 3px;                stroke-linecap: butt;                stroke-linejoin: round;                stroke: #222222;                fill: none;                marker-start: url(#bridge-casing-start);                marker-end: url(#bridge-casing-end);            }            .bridge-casing-25 {                stroke-width: 2.5px;                stroke-linecap: butt;                stroke-linejoin: round;                stroke: #222222;                fill: none;                marker-start: url(#bridge-casing-start);                marker-end: url(#bridge-casing-end);            }            .bridge-casing-20 {                stroke-width: 2px;                stroke-linecap: butt;                stroke-linejoin: round;                stroke: #222222;                fill: none;                marker-start: url(#bridge-casing-start);                marker-end: url(#bridge-casing-end);            }            .bridge-casing-15 {                stroke-width: 1.5px;                stroke-linecap: butt;                stroke-linejoin: round;                stroke: #222222;                fill: none;                marker-start: url(#bridge-casing-start);                marker-end: url(#bridge-casing-end);            }            .bridge-casing-10 {                stroke-width: 1px;                stroke-linecap: butt;                stroke-linejoin: round;                stroke: #222222;                fill: none;                marker-start: url(#bridge-casing-start);                marker-end: url(#bridge-casing-end);            }            /* Bridge core */            .bridge-core-35 {                stroke-width: 3px;                stroke-linecap: butt;                stroke-linejoin: round;                stroke: #fcfcfc;                fill: none;            }            .bridge-core-30 {                stroke-width: 2.5px;                stroke-linecap: butt;                stroke-linejoin: round;                stroke: #fcfcfc;                fill: none;            }            .bridge-core-25 {                stroke-width: 2px;                stroke-linecap: butt;                stroke-linejoin: round;                stroke: #fcfcfc;                fill: none;            }            .bridge-core-20 {                stroke-width: 1.5px;                stroke-linecap: butt;                stroke-linejoin: round;                stroke: #fcfcfc;                fill: none;            }            .bridge-core-15 {                stroke-width: 1.25px;                stroke-linecap: butt;                stroke-linejoin: round;                stroke: #fcfcfc;                fill: none;            }            .bridge-core-10 {                stroke-width: 0.75px;                stroke-linecap: butt;                stroke-linejoin: round;                stroke: #fcfcfc;                fill: none;            }            /* Tunnels */            .tunnel-casing {                stroke-width: 2px;                stroke-dasharray: 0.01,100000;                stroke: #222222;                fill: none;                marker-start: url(#tunnel-start-wide);                marker-end: url(#tunnel-end-wide);            }            /* Highways */            .highway-motorway-casing {                stroke-width: 2.5px;                stroke-linejoin: round;                stroke: #222222;                fill: none;            }            .highway-motorway-link-casing {                stroke-width: 2px;                stroke-linejoin: round;                stroke: #222222;                fill: none;            }            .highway-motorway-core {                stroke-width: 2px;                stroke-linejoin: round;                stroke: #809BC0;                fill: none;            }            .highway-motorway-link-core {                stroke-width: 1.5px;                stroke-linejoin: round;                stroke: #809BC0;                fill: none;            }            .highway-motorway-name {                fill: black;                font-family: "DejaVu Sans",sans-serif;                font-size: 1.5px;                font-weight: normal;            }            .highway-motorway-ref {                fill: black;                stroke: white;                stroke-width: .4px;                font-family: "DejaVu Sans",sans-serif;                font-size: 7px;                font-weight: bolder;            }            .highway-trunk-casing {                stroke-width: 2.5px;                stroke-linejoin: round;                stroke: #222222;                fill: none;            }            .trunk-passing-places-casing {                stroke-width: 2.5px;                stroke-linejoin: round;                stroke: #dddddd;                fill: none;            }            .highway-trunk-link-casing {                stroke-width: 2px;                stroke-linejoin: round;                stroke: #222222;                fill: none;            }            .highway-trunk-core {                stroke-width: 2px;                stroke-linejoin: round;                stroke: #e46d71;                fill: none;            }            .trunk-passing-places-core {                stroke-width : 2px;                stoke-linejoin: round;                stroke: #e46d71;                stroke-dasharray: 8px;                fill: none;            }            .highway-trunk-link-core {                stroke-width: 1.5px;                stroke-linejoin: round;                stroke: #e46d71;                fill: none;            }            .highway-trunk-name {                fill: black;                font-family: "DejaVu Sans",sans-serif;                font-size: 1.5px;                font-weight: normal;            }            .highway-trunk-ref {                fill: black;                stroke: white;                stroke-width: 0.4px;                font-family: "DejaVu Sans",sans-serif;                font-size: 6px;                font-weight: bolder;            }            .highway-primary-casing {                stroke-width: 2px;                stroke-linejoin: round;                stroke: #222222;                fill: none;            }            .primary-passing-places-casing {                stroke-width: 2px;                stroke-linejoin: round;                stroke: #dddddd;                fill: none;            }            .highway-primary-link-casing {                stroke-width: 2px;                stroke-linejoin: round;                stroke: #222222;                fill: none;            }            .highway-primary-core {                stroke-width: 1.5px;                stroke-linejoin: round;                stroke: #7FC97F;                fill: none;            }            .primary-passing-places-core {                stroke-width : 1.5px;                stoke-linejoin: round;                stroke: #7FC97F;                stroke-dasharray: 8px;                fill: none;            }            .highway-primary-link-core {                stroke-width: 1.5px;                stroke-linejoin: round;                stroke: #7FC97F;                fill: none;            }            .highway-primary-name {                fill: black;                font-family: "DejaVu Sans",sans-serif;                font-size: 1px;                font-weight: bolder;                stroke: #ffffff;                stroke-width: 0px;            }            .highway-primary-ref {                fill: black;                font-family: "DejaVu Sans",sans-serif;                font-size: 1px;                font-weight: bolder;                stroke: white;                stroke-width: 0px;            }            .highway-secondary-casing {                stroke-width: 2px;                stroke-linejoin: round;                stroke: #222222;                fill: none;            }            .secondary-passing-places-casing {                stroke-width: 2px;                stroke-linejoin: round;                stroke: #dddddd;                fill: none;            }            .highway-secondary-core {                stroke-width: 1.5px;                stroke-linejoin: round;                stroke: #FDBF6F;                fill: none;            }            .secondary-passing-places-core {                stroke-width : 1.5px;                stoke-linejoin: round;                stroke: #FDBF6F;                stroke-dasharray: 8px;                fill: none;            }            .highway-secondary-name {                fill: black;                font-family: "DejaVu Sans",sans-serif;                font-size: 1px;                font-weight: bolder;            }            .highway-secondary-ref {                fill: black;                stroke: white;                stroke-width: 0.3px;                font-family: "DejaVu Sans",sans-serif;                font-size: 5px;                font-weight: bolder;            }            .highway-unclassified-casing {                stroke-width: 1.5px;                stroke-linejoin: round;                fill: none;                stroke: #222222;            }            .unclassified-passing-places-casing {                stroke-width: 1.5px;                stroke-linejoin: round;                stroke: #222222;                fill: none;            }            .highway-unclassified-core {                stroke-width: 1.2px;                stroke-linejoin: round;                stroke: #ffffff;                fill: none;            }            .unclassified-passing-places-core {                stroke-width : 1.2px;                stoke-linejoin: round;                stroke: #ffffff;                stroke-dasharray: 8px;                fill: none;            }            .highway-unclassified-name {                fill: black;                font-family: "DejaVu Sans",sans-serif;                font-size: 1px;                font-weight: bold;             }            .highway-unclassified-ref {                fill: black;                stroke: white;                stroke-width: 0.3px;                font-family: "DejaVu Sans",sans-serif;                font-size: 4.5px;                font-weight: bolder;            }            .highway-unsurfaced-casing {                stroke-width: 1.5px;                stroke-linejoin: round;                fill: none;                stroke: #222222;                stroke-dasharray: 1px, .5px;            }            .unsurfaced-passing-places-casing {                stroke-width: 1.5px;                stroke-linejoin: round;                stroke: #dddddd;                fill: none;            }            .highway-unsurfaced-core {                stroke-width: 1.2px;                stroke-linejoin: round;                stroke: #ffffff;                fill: none;            }            .highway-unsurfaced-name {                fill: black;                font-family: "DejaVu Sans",sans-serif;                font-size: 1px;                font-weight: bold;             }            .highway-footway-name {                fill: black;                font-family: "DejaVu Sans",sans-serif;                font-size: 1px;                font-weight: bold;             }            .highway-unsurfaced-ref {                fill: black;                stroke: white;                stroke-width: 0.3px;                font-family: "DejaVu Sans",sans-serif;                font-size: 4.5px;                font-weight: bolder;            }            .highway-track-casing {                stroke-width: 1.5px;                stroke-linejoin: round;                fill: none;                stroke: #d79331;            }            .track-passing-places-casing {                stroke-width: 1.5px;                stroke-linejoin: round;                stroke: #dddddd;                fill: none;            }            .highway-track-core {                stroke-width: 1.2px;                stroke-linejoin: round;                stroke: #ffffff;                fill: none;            }            .highway-pedestrian-casing {                stroke-width: 1.5px;                stroke-linejoin: round;                fill: none;                stroke: #aaaaaa;            }            .highway-pedestrian-core {                stroke-width: 1.2px;                stroke-linejoin: round;                stroke: #eeeeee;                fill: none;            }            .highway-service-casing {                stroke-width: 0.7px;                stroke-linejoin: round;                fill: none;                stroke: #222222;            }            .highway-service-core {                stroke-width: 0.4px;                stroke-linejoin: round;                stroke: #ffffff;                fill: none;            }            .highway-service-name {                fill: black;                font-family: "DejaVu Sans",sans-serif;                font-size: 0.3px;                font-weight: bold;            }            .highway-unclassified-ref {                fill: black;                stroke: white;                stroke-width: 0.3px;                font-family: "DejaVu Sans",sans-serif;                font-size: 4.5px;                font-weight: bolder;            }            .highway-bridleway {                stroke-width: 1px;                stroke-linecap: round;                stroke-linejoin: round;                stroke: #70b971;                fill: none;            }            .highway-byway {                stroke-width: 1px;                stroke-linecap: round;                stroke-linejoin: round;                stroke: #ef7771;                fill: none;            }            .highway-byway-ref {                fill: black;                stroke: white;                stroke-width: 0.3px;                font-family: "DejaVu Sans",sans-serif;                font-size: 4px;                font-weight: bolder;            }            .highway-cycleway {                stroke-width: 1px;                stroke-linejoin: round;                stroke: #008102;                fill: none;            }            .highway-cycleway-ref {                fill: black;                stroke: white;                stroke-width: 0.3px;                font-family: "DejaVu Sans",sans-serif;                font-size: 4px;                font-weight: bolder;            }            .highway-footway {                stroke-width: 0.5px;                stroke-linejoin: round;                stroke: #d79331;                fill: none;            }            .highway-footway-ref {                fill: black;                stroke: white;                stroke-width: 0.3px;                font-family: "DejaVu Sans",sans-serif;                font-size: 4px;                font-weight: bolder;            }            .highway-steps {                stroke-width: 0.5px;                stroke-linecap: butt;                stroke-linejoin: round;                stroke: #707070;                stroke-dasharray: 0.1px, 0.3px;                fill: none;            }            .highway-tunnel-narrow {                stroke-width: 0.1px;                stroke-dasharray: 0.2,0.2;                stroke-linecap: butt;                stroke-linejoin: round;                stroke: #000000;                fill: none;                marker-start: url(#tunnel-start-narrow);                marker-end: url(#tunnel-end-narrow);            }            .round {                stroke-linecap: round;            }            /* Mini roundabouts */            .mini-roundabout-casing {                fill: #222222;                stroke: #222222;            }            .mini-roundabout-core {                stroke: #ffffff;                fill: #ffffff;            }            .mini-roundabout-dot {                stroke: none;                fill: #222222;            }            /* Aeroways */            .aeroway-taxiway-core {                stroke-width: 1px;                stroke-linecap: butt;                stroke-linejoin: round;                stroke: #CCCCCC;                fill: none;            }            .aeroway-taxiway-casing {                stroke-width: 3px;                stroke-linecap: butt;                stroke-linejoin: round;                stroke: #000000;                fill: none;            }            .aeroway-runway-core {                stroke-width: 5px;                stroke-linecap: butt;                stroke-linejoin: round;                stroke: #CCCCCC;                fill: none;            }            .aeroway-runway-casing {                stroke-width: 7px;                stroke-linecap: butt;                stroke-linejoin: round;                stroke: #000000;                fill: none;            }            .aeroway-aerodrome-caption {                fill: black;                stroke: white;                stroke-width: 0.3px;                font-family: "DejaVu Sans",sans-serif;                font-size: 6px;                font-weight: bolder;            }            .aeroway-airport-caption {                fill: black;                stroke: white;                stroke-width: 0.3px;                font-family: "DejaVu Sans",sans-serif;                font-size: 10px;                font-weight: bolder;            }            /* Waterways */            .waterway-riverbank {                fill: #89bac6;                stroke: #aaaaaa;                stroke-width: 0px;            }            .waterway-river-casing {                stroke-width: 4px;                stroke-linecap: butt;                stroke-linejoin: round;                stroke: #aaaaaa;                fill: none;            }            .waterway-river-core {                stroke-width: 3px;                stroke-linecap: butt;                stroke-linejoin: round;                stroke: #89bac6;                fill: none;            }            .waterway-stream-casing {                stroke-width: 0.5px;                stroke-linecap: butt;                stroke-linejoin: round;                stroke: #aaaaaa;                fill: none;            }            .waterway-stream-core {                stroke-width: 0.4px;                stroke-linecap: butt;                stroke-linejoin: round;                stroke: #89bac6;                fill: none;            }            .waterway-canal-casing {                stroke-width: 2px;                stroke-linecap: butt;                stroke-linejoin: round;                stroke: #aaaaaa;                fill: none;            }            .waterway-canal-core {                stroke-width: 1px;                stroke-linecap: butt;                stroke-linejoin: round;                stroke: #89bac6;                fill: none;            }            .waterway-drain-casing {                stroke-width: 1px;                stroke-linecap: butt;                stroke-linejoin: round;                stroke: #aaaaaa;                fill: none;            }            .waterway-drain-core {                stroke-width: 0.5px;                stroke-linecap: butt;                stroke-linejoin: round;                stroke: #89bac6;                fill: none;            }            .railway-rail {                stroke-width: 1.5px;                stroke-linecap: butt;                stroke-linejoin: round;                stroke: #000000;                fill: none;            }            .railway-light-rail {                stroke-width: 0.8px;                stroke-linecap: butt;                stroke-linejoin: round;                stroke: #000000;                fill: none;            }            .railway-tunnel-narrow {                stroke-width: 0.2px;                stroke-dasharray: 1,2;                stroke-linecap: butt;                stroke-linejoin: round;                stroke: #000000;                fill: none;                marker-start: url(#tunnel-start-narrow);                marker-end: url(#tunnel-end-narrow);            }            .railway-subway-rail {                stroke-width: 0.8px;                stroke-linecap: butt;                stroke-linejoin: round;                stroke: #aaaaaa;                fill: none;                stroke-dasharray: 3px, 1px;                stroke-dashoffset: 0;                stroke-opacity: 1;            }            .railway-rail-dashes {                stroke-width: 1px;                stroke-linecap: butt;                stroke-linejoin: round;                stroke: #ffffff;                fill: none;                stroke-dasharray: 3px, 3px;                stroke-opacity: 1;            }            .railway-station {                fill: red;                stroke: black;                stroke-width: 0.5px;            }            .railway-station-caption {                fill: black;                stroke: white;                stroke-width: 0.2px;                font-family: "DejaVu Sans",sans-serif;                font-size: 4px;                font-weight: bolder;            }            .railway-halt {                fill: black;                stroke: black;                stroke-width: 0.5px;            }            .railway-halt-caption {                fill: black;                stroke: white;                stroke-width: 0.1px;                font-family: "DejaVu Sans",sans-serif;                font-size: 2px;                font-weight: bolder;            }            /* Ferry */            .route-ferry {                stroke-width: 0.5px;                stroke-linecap: butt;                stroke-linejoin: round;                stroke: #777777;                fill: none;            }            /* Points of interest */            .point-of-interest {                fill: red;                stroke: black;                stroke-width: 0.5px;            }            /* JOSM Debugging */            .josm-segment {                stroke-width: 0.2px;                stroke-linecap: butt;                stroke-linejoin: round;                stroke: #008000;                fill: none;                marker-end: url(#segment-direction);            }            .josm-way {                stroke-width: 0.2px;                stroke-linecap: butt;                stroke-linejoin: round;                stroke: #000060;                fill: none;            }            .josm-node {                fill: #ff0000;                stroke: none;            }            /* Place names */            .continent-caption {                fill: black;                stroke: white;                stroke-width: 0.6px;                font-family: "DejaVu Sans",sans-serif;                font-size: 20px;                font-weight: bolder;            }            .country-caption {                fill: black;                stroke: white;                stroke-width: 0.5px;                font-family: "DejaVu Sans",sans-serif;                font-size: 18px;                font-weight: bolder;            }            .state-caption {                fill: black;                stroke: white;                stroke-width: 0.5px;                font-family: "DejaVu Sans",sans-serif;                font-size: 16px;                font-weight: bolder;            }            .region-caption {                fill: black;                stroke: white;                stroke-width: 0.4px;                font-family: "DejaVu Sans",sans-serif;                font-size: 14px;                font-weight: bolder;            }            .county-caption {                fill: black;                stroke: white;                stroke-width: 0.4px;                font-family: "DejaVu Sans",sans-serif;                font-size: 12px;                font-weight: bolder;            }            .city-caption {                fill: black;                stroke: white;                stroke-width: 0.4px;                font-family: "DejaVu Sans",sans-serif;                font-size: 10px;                font-weight: bolder;            }            .town-caption {                fill: black;                stroke: white;                stroke-width: 0.4px;                font-family: "DejaVu Sans",sans-serif;                font-size: 8px;                font-weight: bolder;            }            .village-caption {                fill: black;                stroke: white;                stroke-width: 0.3px;                font-family: "DejaVu Sans",sans-serif;                font-size: 6px;                font-weight: bolder;            }            .suburb-caption {                fill: black;                stroke: white;                stroke-width: 0.3px;                font-family: "DejaVu Sans",sans-serif;                font-size: 6px;                font-weight: bolder;            }            .hamlet-caption {                fill: black;                stroke: white;                stroke-width: 0.2px;                font-family: "DejaVu Sans",sans-serif;                font-size: 4px;                font-weight: bolder;            }            .farm-caption {                fill: black;                stroke: white;                stroke-width: 0.1px;                font-family: "DejaVu Sans",sans-serif;                font-size: 3px;                font-weight: bold;            }            .church-caption {                fill: black;                stroke: white;                stroke-width: 0.3px;                font-family: "DejaVu Sans",sans-serif;                font-size: 5px;                font-weight: bold;            }            /* Natural */            .natural-water {                fill: #89bac6;                stroke: #aaaaaa;                stroke-width: 0px;            }            .natural-coastline {                fill: none;                stroke: #89bac6;                stroke-width: 0.4px;            }            .natural-land {                fill: #ffffff;                stroke: #e0e0e0;                stroke-width: 0.1px;            }            /* Landuse */            .landuse-wood {                fill: #72bf81;                stroke: #6fc18e;                stroke-width: 0.2px;            }            .landuse-cemetery {                fill: #bde3cb;                stroke: #eeeeee;                stroke-width: 0.2px;            }            .landuse-field {                fill: #bde3cb;                stroke: #6fc13d;                stroke-width: 0.2px;            }            .landuse-residential {                stroke: none;                fill: #f2f2f2;            }            .landuse-retail {                stroke: none;                fill: #ffebeb;            }            .landuse-industrial {                fill: #ecd8ff;                stroke: #eeeeee;                stroke-width: 0.2px;            }            .landuse-commercial {                fill: #fcffc9;                stroke: #eeeeee;                stroke-width: 0.2px;            }            .landuse-retail {                fill: #ffebeb;                stroke: #eeeeee;                stroke-width: 0.2px;            }            /* Leisure */            .leisure-park {                fill: #c7f1a3;                stroke: #6fc18e;                stroke-width: 0.2px;            }            /* colour might want tweaking slightly */            .leisure-stadium {                fill: #672a8e;                stroke: #461d61;                stroke-width: 0.2px;            }            .leisure-track {                fill: #ba4752;                stroke: #532226;                stroke-width: 0.2px;            }            .sport {                fill: #bde3cb;                stroke: #6fc18e;                stroke-width: 0.2px;            }            .amenity-parking {                fill: #f7efb7;                stroke: #e9dd72;                stroke-width: 0.2px;            }            .school-area {                fill: #B9ACD8;                stroke: #a18bd8;                stroke-width: 0.2px;            }            /* Boundary */            .boundary-areaOfInterest {                fill: #f2caea;                stroke: #aaaaaa;                stroke-width: 0px;            }            .boundary-areaOfInterest-A {                fill: #f2caff;                stroke: #aaaaaa;                stroke-width: 0px;            }            .boundary-areaOfInterest-B {                fill: #f2cabb;                stroke: #aaaaaa;                stroke-width: 0px;            }            .boundary-areaOfInterest-C {                fill: #f2cadd;                stroke: #aaaaaa;                stroke-width: 0px;            }            /* Tourism */            .tourism-attraction {                fill: #f2caea;                stroke: #f124cb;                stroke-width: 0px;            }            .tourism-attraction-caption {                fill: #f124cb;                stroke: white;                stroke-width: 0px;                font-family: "DejaVu Sans",sans-serif;                font-size: 3px;                font-weight: bolder;            }            .amenity-pub-caption {                fill: #e21e2f;                stroke: white;                stroke-width: 0px;                font-family: "DejaVu Sans",sans-serif;                font-size: 1px;                font-weight: bolder;            }            .amenity-misc-caption {                fill: #e21e2f;                stroke: white;                stroke-width: 0.03px;                font-family: "DejaVu Sans",sans-serif;                font-size: 1px;                font-weight: bolder;            }            /* Building */            .building {                fill: #dddddd;                stroke: #cccccc;                stroke-width: 0.2px;            }            .building-block {                fill: #a18bd8;                stroke: #6a5a8e;                stroke-width: 0.2px;            }            .building-residential {                fill: #c95e2a;                stroke: #80290a;                stroke-width: 0.2px;            }            /* Aerialway */            .aerialway-line {                fill: none;                stroke: #202020;                stroke-width: 0.2px;            }            .aerialway-struts {                fill: none;                stroke: #202020;                stroke-width: 2px;                stroke-dasharray: 0.2,10;            }            /* Power line */            .power-line {                stroke-width: 0.1px;                stroke-linecap: butt;                stroke-linejoin: round;                stroke: #cccccc;                stroke-dasharray: 1px ,1px;                fill: none;            }            /* Oneway */            .oneway {                marker-start: url(#marker-oneway-start);                marker-end: url(#marker-oneway-end);            }            .otherway {                marker-start: url(#marker-otherway-start);                marker-end: url(#marker-otherway-end);            }            /* Map decoration */            .map-grid-line {                fill: none;                stroke: #8080ff;                stroke-width: 0.1px;                stroke-opacity: 0.5;            }            .map-border-casing {                fill: none;                stroke: #8080ff;                stroke-width: 3px;                stroke-miterlimit: 4;                stroke-dasharray: none;                stroke-opacity: 1;                stroke-linecap: round;            }            .map-border-core {                fill: none;                fill-opacity: 1;                fill-rule: nonzero;                stroke: #ffffff;                stroke-width: 2px;                stroke-miterlimit: 0;                stroke-dashoffset: -0.5px;                stroke-opacity: 1;            }            .map-scale-casing {                fill: none;                stroke: #8080ff;                stroke-width: 4px;                stroke-linecap: butt;            }            .map-scale-core {                fill: none;                stroke: #ffffff;                stroke-width: 3px;                stroke-linecap: butt;            }            .map-scale-bookend {                fill: none;                stroke: #8080ff;                stroke-width: 1px;                stroke-linecap: butt;            }            .map-scale-caption {                font-family: "DejaVu Sans",sans-serif;                font-size: 10px;                fill: #8080ff;            }            .map-background {                fill: #fcfcfc;                stroke: none;            }            .map-title {                font-family: "DejaVu Sans",sans-serif;                font-size: 20px;                text-anchor: middle;                fill: black;            }            .map-title-background {                fill: white;            }            .map-marginalia-background {                fill: white;            }        </style>        <svg:pattern id="pedestrian-pattern" x="0" y="0" width="10" height="10" patternUnits="userSpaceOnUse">            <svg:path d="M0,10 L10,0" fill="none" stroke="red" width="1"/>        </svg:pattern>        <svg:marker            id="bridge-casing-start"            fill='none'            stroke-width='0.1px'            stroke='#222222'            markerWidth="1px"            markerHeight="1px"            orient="auto">            <svg:path d="M-0.25,0.75 L0.5,0 L-0.25,-0.75" />        </svg:marker>        <svg:marker            id="bridge-casing-end"            fill='none'            stroke-width='0.1px'            stroke='#222222'            markerWidth="1px"            markerHeight="1px"            orient="auto">            <svg:path d="M0.25,0.75 L-0.5,0 L0.25,-0.75" />        </svg:marker>        <svg:marker            id="tunnel-start-wide"            fill='none'            stroke-width='0.1px'            stroke='#222222'            markerWidth="1px"            markerHeight="1px"            refX="-0.15"            orient="auto">            <svg:path d="M-0.25,0.75 L-0.1,0.5 L-0.1,-0.5 L-0.25,-0.75" />        </svg:marker>        <svg:marker            id="tunnel-end-wide"            fill='none'            stroke-width='0.1px'            stroke='#222222'            markerWidth="1px"            markerHeight="1px"            refX="0.15"            orient="auto">            <svg:path d="M0.25,0.75 L0.1,0.5 L0.1,-0.5 L0.25,-0.75" />        </svg:marker>        <svg:marker            id="tunnel-start-narrow"            fill='none'            stroke-width='1px'            stroke='#222222'            markerWidth="0.1px"            markerHeight="0.1px"            refX="-1.5"            orient="auto">            <svg:path d="M-2.5,7.5 L-1,5 L-1,-5 L-2.5,-7.5" />        </svg:marker>        <svg:marker            id="tunnel-end-narrow"            fill='none'            stroke-width='1px'            stroke='#222222'            markerWidth="0.1px"            markerHeight="0.1px"            refX="1.5"            orient="auto">            <svg:path d="M2.5,7.5 L1,5 L1,-5 L2.5,-7.5" />        </svg:marker>        <svg:marker            id="marker-oneway-start"            viewBox="0 0 10 10"            refX="-20px" refY="5px"            markerUnits="userSpaceOnUse"            fill='#a2aee9'            stroke-width='1px'            stroke='#000000'            markerWidth="1px"            markerHeight="1px"            orient="auto">            <svg:path d="M 0,4 L 6,4 L 6,2 L 10,5 L 6,8 L 6,6 L 0,6 z" />        </svg:marker>        <svg:marker            id="marker-oneway-end"            viewBox="0 0 10 10"            refX="20px" refY="5px"            markerUnits="userSpaceOnUse"            fill='#a2aee9'            stroke-width='1px'            stroke='#000000'            markerWidth="1px"            markerHeight="1px"            orient="auto">            <svg:path d="M 0,4 L 6,4 L 6,2 L 10,5 L 6,8 L 6,6 L 0,6 z" />        </svg:marker>        <svg:marker            id="marker-otherway-start"            viewBox="0 0 10 10"            refX="-30px" refY="5px"            markerUnits="userSpaceOnUse"            fill='#a2aee9'            stroke-width='1px'            stroke='#000000'            markerWidth="1px"            markerHeight="1px"            orient="auto">            <svg:path d="M 10,4 L 4,4 L 4,2 L 0,5 L 4,8 L 4,6 L 10,6 z" />        </svg:marker>        <svg:marker            id="marker-otherway-end"            viewBox="0 0 10 10"            refX="30px" refY="5px"            markerUnits="userSpaceOnUse"            fill='#a2aee9'            stroke-width='1px'            stroke='#000000'            markerWidth="1px"            markerHeight="1px"            orient="auto">            <svg:path d="M 10,4 L 4,4 L 4,2 L 0,5 L 4,8 L 4,6 L 10,6 z" />        </svg:marker>        <svg:marker            id="segment-direction"            viewBox="0 0 10 10"            refX="10px" refY="5px"            markerUnits="userSpaceOnUse"            fill='none'            stroke-width='1px'            stroke='#008000'            markerWidth="1px"            markerHeight="1px"            orient="auto">            <svg:path d="M 0,2 L 10,5 L 0,8" />        </svg:marker>    </defs></rules>