DIAGRAM MARKUP LANGUAGE FOR MAPS
version 0.9 (2006-12-01)
copyright 2002-2006
olaf schnabel
institute of cartography
eth zurich
8093 zurich, switzerland
schnabel@karto.baug.ethz.ch
PARENT: - (is the root element)
CHILDREN: style, primitive, diagram or simpleSymbol (required)
VALUES: -
ATTRIBUTES: -
PARENT: diagram or simpleSymbol
CHILDREN: fill, stroke (required), fill-opacity, stroke-opacity, stroke-width (optional)
VALUES: -
ATTRIBUTES: id
PARENT: style
CHILDREN: -
VALUES: color as hexadecimal, as name, as rgb; # + id of a predefined pattern (required)
ATTRIBUTES: -
PARENT: style
CHILDREN: -
VALUES: color as hexadecimal, as name, as rgb (required)
ATTRIBUTES: -
PARENT: style
CHILDREN: -
VALUES: between 0 (transparent) and 100 (opaque) percent (required)
ATTRIBUTES: -
PARENT: style
CHILDREN: -
VALUES: between 0 (transparent) and 100 (opaque) percent (required)
ATTRIBUTES: -
PARENT: style
CHILDREN: -
VALUES: between greater than 0 and unbounded pixel (required)
ATTRIBUTES: -
PARENT: style
CHILDREN: -
VALUES: butt, round, square (one of them required, default: butt)
ATTRIBUTES: -
PARENT: style
CHILDREN: -
VALUES: dash and gap lengths separated by commas (required)
example: 1,1 (1px dash, 1px gap)
ATTRIBUTES: -
PARENT: style
CHILDREN: -
VALUES: negative or positive decimal numbers (required, default: 0)
ATTENTION: use only in combination with stroke-dasharray!
ATTRIBUTES: -
PARENT: style
CHILDREN: -
VALUES: miter, round, bevel (one of them required, default: miter)
ATTRIBUTES: -
PARENT: style
CHILDREN: -
VALUES: decimal value between greater 1 (required, default: 4)
ATTENTION: use only in combination with stroke-linejoin!
ATTRIBUTES: -
PARENT: symbol
CHILDREN: rectangle, regularPolygon, circle, ellipse, ring, point, polyline, curve, sector, ringSector (1 of them required)
VALUES: -
ATTRIBUTES: id
PARENT: primitive
CHILDREN: width, height (required), rectRx, rectRy (optional)
VALUES: -
ATTRIBUTES: proportional (required), rotation, translationX, translationY (optional)
PARENT: rectangle
CHILDREN: -
VALUES: between greater than 0 and unbounded pixel (required)
ATTRIBUTES: scale
PARENT: rectangle
CHILDREN: -
VALUES: between greater than 0 and unbounded pixel (required)
ATTRIBUTES: scale
PARENT: rectangle
CHILDREN: -
VALUES: between 0 and unbounded pixel (optional)
ATTRIBUTES: -
PARENT: rectangle
CHILDREN: -
VALUES: between 0 and unbounded pixel (optional)
ATTRIBUTES: -
PARENT: primitive
CHILDREN: r, edgeNr (required), innerR (optional)
VALUES: -
ATTRIBUTES: proportional (required), rotation, translationX, translationY (optional)
PARENT: regularPolygon, circle, ring, sector, ringSector, point
CHILDREN: -
VALUES: between greater than 0 and unbounded pixel (required)
ATTRIBUTES: scale
PARENT: regularPolygon
CHILDREN: -
VALUES: between 3 and unbounded (required)
ATTRIBUTES: scale
PARENT: regularPolygon, ring, ringSector
CHILDREN: -
VALUES: between 0 and 100 percent of the radius (optional for regularPolygon, required for ring, recommended for ringSector)
ATTRIBUTES: -
PARENT: primitive
CHILDREN: r (required)
VALUES: -
ATTRIBUTES: proportional (required) , translationX, translationY (optional)
PARENT: primitive
CHILDREN: rx, ry (required)
VALUES: -
ATTRIBUTES: proportional (required), rotation, translationX, translationY (optional)
PARENT: ellipse
CHILDREN: -
VALUES: between greater than 0 and unbounded pixel (required)
ATTRIBUTES: scale
PARENT: ellipse
CHILDREN: -
VALUES: between greater than 0 and unbounded pixel (required)
ATTRIBUTES: scale
PARENT: primitive
CHILDREN: r, innerR (required)
VALUES: -
ATTRIBUTES: proportional (required), translationX, translationY (optional)
PARENT: primitive
CHILDREN: r, angle (required)
VALUES: -
ATTRIBUTES: proportional (required), rotation, translationX, translationY (optional)
PARENT: primitive
CHILDREN: r, angle (required), innerR (recommended) or fixWidth (optional, for circuated bars)
VALUES: -
ATTRIBUTES: proportional (required), rotation, translationX, translationY (optional)
PARENT: ringSector
CHILDREN: -
VALUES: between greater than 0 and unbounded pixel (optional)
ATTRIBUTES: -
PARENT: sector, ringSector
CHILDREN: -
VALUES: between greater than -360 and smaller than +360 degree (required)
ATTRIBUTES: scale
PARENT: primitive
CHILDREN: r (required)
VALUES: -
ATTRIBUTES: -
PARENT: polyline, curve
CHILDREN: -
VALUES: -
ATTRIBUTES: -
PARENT: primitive
CHILDREN: points (required)
VALUES: -
ATTRIBUTES: -
PARENT: primitive
CHILDREN: points (required)
VALUES: -
ATTRIBUTES: -
PARENT: symbol
CHILDREN: simpleArrangement, simpleRelation, guides, labelData (required)
VALUES: -
ATTRIBUTES: minSize (in pixel, required), areaRatio (default: area of all symbols = 10 % of map area, required), rotation, translationX, translationY (optional)
PARENT: symbol
CHILDREN: diagramArrangement, diagramRelation, guides, labelData (required)
VALUES: -
ATTRIBUTES: minSize (in pixel, required), areaRatio (default: area of all symbols = 10 % of map area, required), rotation, translationX, translationY (optional)
both attributes are required for centered, polar, linear arrangement
VALUES of minSize: positive decimals greater than 0
if minSize or areaRatio is chosen, the second attribute is required!
minSize is the minimum radius or height of a primitive
Values of areaRatio: positive decimals between greater than 0 and smaller than 100
areaRatio is the ratio between the area of all symbols and the map area in real coordinates in percent (default should be 10 %)
VALUES: decimals between greater than -360 and smaller than +360 degree
VALUES: decimals
PARENT: simpleSymbol
CHILDREN: centered, grid (one of them required)
VALUES: -
ATTRIBUTES: -
PARENT: diagram
CHILDREN: polar, linear, triangular, perpendicular (one of them required)
VALUES: -
ATTRIBUTES: -
PARENT: simpleArrangement
CHILDREN: -
VALUES: -
ATTRIBUTES: -
PARENT: simpleArrangement
CHILDREN: unitValue, unitDistance, unitsPerRow (required)
VALUES: -
ATTRIBUTES: -
PARENT: grid
CHILDREN: -
VALUES: between 1 and unbounded (required)
ATTRIBUTES: -
PARENT: grid
CHILDREN: -
VALUES: between 1 and unbounded (required)
ATTRIBUTES: -
PARENT: grid
CHILDREN: -
VALUES: between 0 and unbounded (required)
ATTRIBUTES: -
PARENT: diagramArrangement
CHILDREN: centerDistance, distance, groups, parts, totalAngle (optional)
VALUES: -
ATTRIBUTES: -
PARENT: polar
CHILDREN: -
VALUES: between greater than 0 and smaller than 360 degree (optional)
ATTRIBUTES: -
PARENT: polar
CHILDREN: -
VALUES: between 0 and unbounded pixel (optional)
ATTRIBUTES: -
PARENT: diagramArrangement
CHILDREN: groups, distance, parts (optional)
VALUES: -
ATTRIBUTES: -
PARENT: linear, polar
CHILDREN: -
VALUES: between 1 and number of data values (required)
ATTRIBUTES: distance (optional)
PARENT: linear, polar
CHILDREN: -
VALUES: between 1 and number of data values (required)
ATTRIBUTES: arrangement (stacked, row) (optional)
PARENT: linear, polar
CHILDREN: -
VALUES: unbounded (required)
ATTRIBUTES: from (startpoint, lastPrimitive) (required)
PARENT: diagramArrangement
CHILDREN: -
VALUES: -
ATTRIBUTES: -
PARENT: diagramArrangement
CHILDREN: -
VALUES: -
ATTRIBUTES: -
PARENT: simpleSymbol
CHILDREN: dataRef, primitiveRef, styleRef (1 of each required)
VALUES: -
ATTRIBUTES: -
PARENT: diagram
CHILDREN: dataRef (1 required, more optional), primitiveRef, styleRef (1 of each required)
VALUES: -
ATTRIBUTES: -
PARENT: simpleRelation or diagramRelation
CHILDREN: -
VALUES: id of defined primitive
ATTRIBUTES: -
PARENT: simpleRelation or diagramRelation
CHILDREN: -
VALUES: id of defined style
ATTRIBUTES: -
PARENT: simpleRelation or diagramRelation
CHILDREN: -
VALUES: name of the data column
ATTRIBUTES: -
PARENT: diagram or simpleSymbol
CHILDREN: guideCircle, guideRegularPolygon, guideLine, guideBgRectangle, guideBgTriangle (optional)
VALUES: -
ATTRIBUTES: -
PARENT: guides
CHILDREN: -
VALUES: -
ATTRIBUTES: r (required, r between greater than 0 and 100 percent of the maximum symbol extent)
PARENT: guides
CHILDREN: -
VALUES: -
ATTRIBUTES: edgeNr (required, between 3 and unbounded), r (required, r between greater than 0 and 100 percent of the maximum symbol extent)
PARENT: guides
CHILDREN: -
VALUES: -
ATTRIBUTES: from, to (center, left, right, top, bottom, topRight, topLeft, bottomRight, bottomLeft) (required)
PARENT: guides
CHILDREN: -
VALUES: -
ATTRIBUTES: fill (required), fill-opacity (optional, between 0 and 100 percent)
PARENT: guides
CHILDREN: -
VALUES: -
ATTRIBUTES: fill (required), fill-opacity (optional, between 0 and 100 percent)
PARENT: diagram or simpleSymbol
CHILDREN: -
VALUES: yes or no (one of them required)
ATTRIBUTES: -