[[PageOutline]]
[wiki:Documentation] | [wiki:ApplicationDefinition] | [wiki:ApplicationDefinition/MapSet MapSet]
= !MapGroup =
A child of the [wiki:ApplicationDefinition/MapSet MapSet] element, a !MapGroup contains configuration information for map rendering sources that are to be included in a visible map. A !MapGroup must contain at least one '''Map''' element to be valid, and may contain one '''!InitialView''' element. For example:
{{{
430379
5446616
5446915
}}}
== Map ==
The Map tag contains the following sub-tags:
'''Type''':
The type of the map can be one of '''!MapGuide''' or '''!MapServer''' at this time. Future versions will support all the !OpenLayers Layer types for this value.
'''!SingleTile''':
This contains a string value of either '''true''' or '''false''' to indicate if the map is composed of tiles ('''false''') or a single image ('''true''').
'''Extension''':
The Extension tag contains sub-tags that are not defined by the schema. The content of the sub-tags depends partly on the '''Type''' of map specified.
=== General Extensions ===
The generally supported Extension tags are supported by all or most of the map types. These are described below.
==== Links ====
The Links tag allows you to specify metadata URLs to be associated with groups and layers. The Legend widget can use this metadata to add links into the rendered legend tree to hyperlink users to additional information about groups and layers.
The Links tag may contain the following sub tags:
* Group - may occur any number of times. This specifies a group that is to have a metadata link. It has the following sub-tags:
* Name - occurs once. This is a string value that is the name of the group. If a group of this name doesn't exist, the whole entry is ignored.
* Url - occurs once. This is a string value that specifies the URL of a page to display for the group.
* Layer - may occur any number of times. This specifies a layer that is to have a metadata link. It has the following sub-tags:
* Name - occurs once. This is a string value that is the name of the layer. If a layer of this name doesn't exist, the whole entry is ignored.
* Url - occurs once. This is a string value that specifies the URL of a page to display for the layer.
Example:
{{{
Roads
http://myserver/groupinfo/roads.html
Parcels
http://myserver/layerinfo/parcels.html
}}}
==== !MapEvents ====
The !MapEvents tag allows you to specify actions to take when layers and groups are turned on or off by a user. Valid actions are to turn on or off other layers and groups.
The !MapEvents tag may contain the following sub-tags:
* Layer - may occur any number of times. Specifies events associated with a specific layer.
* Name - the name of the layer that the events are associated with.
* !OnEnable - the events to trigger when the user turns the layer on, see below.
* !OnDisable - the events to trigger when the user turns the layer off, see below.
* Group - may occur any number of times. Specifies events associated with a specific group.
* Name - the name of the group that the events are associated with.
* !OnEnable - the events to trigger when the user turns the group on, see below.
* !OnDisable - the events to trigger when the user turns the group off, see below.
The !OnEnable and !OnDisable tags contain the following sub-tags defining the event that are triggered:
* Layer - may occur any number times. Specifies a layer that is affected as a result of an event.
* Name - a string value, the name of the layer to affect.
* Enable - a string value, '''true''' or '''false'''. If '''true''', the layer is turned on, otherwise it is turned off.
* Group - may occur any number times. Specifies a group that is affected as a result of an event.
* Name - a string value, the name of the group to affect.
* Enable - a string value, '''true''' or '''false'''. If '''true''', the group is turned on, otherwise it is turned off.
Example:
{{{
Road
Road Labels
true
Road Decorations
true
Road Labels
false
Road Decorations
false
Amusements
Road
true
Parks
true
Road
false
Parks
false
}}}
=== !MapGuide Extension ===
If you have defined a !MapGuide map type, you must provide a {{{}}} sub-tag that defines the repository path to the MapDefinition to be used to render this map.
=== !MapServer Extension ===
If you have defined a !MapServer map type, you must provide a {{{}}} sub-tag that defines the path to the MAP file to be used to render this map.
== !InitialView ==
!InitialView allows you to set a zoom extents that is different that the maximum extents of the map. This is useful for regional mapping, as it allows you to create a map with large extents to give a reasonable amout of context, but still have only your area of interest displayed on initial load.
There are two syntaxes allowed for !InitialView, center and scale style, or bounding box style. The center and scale style is given precedence over the bounding box style if both sets of required elements exist. If any of the required elements are missing for either of these styles (for instance, omitting the CenterX element for the center and scale style) that style will not be applied.
=== Center and Scale ===
This allows you to set the initial view based on a midpoint and a desired scale.
For this to be used, you must include valid CenterX, CenterY and Scale elements within the !InitialView element.
Example:
{{{
430379
5446616
5446915
}}}
=== Bounding Box ===
This allows you to set the initial view based on a desired bounding box.
For this to be used, you must include valid MinX, MinY, MaxX, and MaxY elements within the !InitialView element.
Example:
{{{
430379
5446616
430541
5446915
}}}