GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - mapnik/mapnik-reference: JSON specification of Mapnik styling and datasources

BranchesTags
Open more actions menu

Latest commit

 

History

578 Commits
578 Commits

Folders and files

NameName
Last commit message
Last commit date
2.0.0
2.0.0
 
 
2.0.1
2.0.1
 
 
2.0.2
2.0.2
 
 
2.1.0
2.1.0
 
 
2.1.1
2.1.1
 
 
2.2.0
2.2.0
 
 
2.3.0
2.3.0
 
 
3.0.0
3.0.0
 
 
3.0.20
3.0.20
 
 
3.0.22
3.0.22
 
 
3.0.3
3.0.3
 
 
3.0.6
3.0.6
 
 
4.2.0
4.2.0
 
 
scripts
scripts
 
 
site
site
 
 
test
test
 
 
.gitignore
.gitignore
 
 
.npmignore
.npmignore
 
 
.travis.yml
.travis.yml
 
 
CHANGELOG.md
CHANGELOG.md
 
 
LICENSE.md
LICENSE.md
 
 
Makefile
Makefile
 
 
README.md
README.md
 
 
contributing.md
contributing.md
 
 
generate.js
generate.js
 
 
index._
index._
 
 
index.html
index.html
 
 
index.js
index.js
 
 
package.json
package.json
 
 

Repository files navigation

mapnik-reference

mapnik-reference is a spec of what Mapnik styling and datasource properties are supported for each version.

It is useful for building parsers, tests, compilers, and syntax highlighting/checking for languages.

Default branch is gh-pages, which is displayed at http://mapnik.org/mapnik-reference

Versioning

The version of this repository indicates the schema of the reference.json file. Schema changes of any type are expected to change the implementation requirements of a parser, so they will increment the major version of this repository in semver style.

The directories in this repository directly correspond to released versions of Mapnik and the next targeted release of Mapnik.

Meaning

The structure of reference.json is:

  • version: the version of Mapnik targeted. Same as the containing directory.
  • style: properties of the Style XML element
  • layer: properties of the Layer XML element
  • symbolizers: properties that apply to all symbolizers (removed from version 2.1.0 onwards)
  • symbolizers/<symbolizer>: properties that are specific to a given symbolizer
  • colors: named colors supported by Mapnik. see include/mapnik/css_color_grammar.hpp

Property stability

The status key may be used to define the stability of a property. When the key is not specified, then the status is stable. Possible values are:

  • stable: property is here to stay and its behavior is not anticipated to change
  • unstable: property is here to stay but its behavior/meaning of property may change
  • deprecated: property should not be used and will be removed in upcoming major version of Mapnik
  • experimental: property should not be used and may change, be re-named, or disappear at any time

datasources.json separately details the properties of the possible data sources (since version 2.3.0).

Using

This is a valid npm module and therefore can easily be used with node.js.

npm install @mapnik/mapnik-reference

Install it as a dependency of your application. Then use that API to get a reference instance for a specific version of Mapnik:

var mapnik_reference = require('@mapnik/mapnik-reference');
var ref = mapnik_reference.load('4.2.0');

You can also get access to an array of all known versions:

var mapnik_reference = require('@mapnik/mapnik-reference');
mapnik_reference.versions;
[
  '2.0.0',  '2.0.1',
  '2.0.2',  '2.1.0',
  '2.1.1',  '2.2.0',
  '2.3.0',  '3.0.0',
  '3.0.3',  '3.0.6',
  '3.0.20', '3.0.22',
  '4.2.0'
]

Other implementations will want to simply copy the JSON file from the desired implementation, like 2.0.1/reference.json.

The file can then be parsed with any of the many json parsers.

Testing

Tests require python and node.js:

make test

Users

  • carto.js
  • Mapnik documentation

About

JSON specification of Mapnik styling and datasources

mapnik.org/mapnik-reference/

Resources

Readme
Unlicense

Contributing

Contributing
Activity
Custom properties

Stars

52 stars

Watchers

18 watching

Forks

46 forks
Report repository

Releases

Packages

Used by

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.