# Package com.saxonica.functions.map

This package implements maps, a Saxon extension to the XSLT and XQuery specification that provides a dictionary-like data structure.

See: Description

- Interface Summary
  Interface | Description
  --- | ---
  MapItem | Interface supported by different implementations of an XDM map item

- Class Summary
  Class | Description
  --- | ---
  ImmutableMap | An immutable map.
  MapCollation | Implementation of the extension function map:entry(key, value) => Map
  MapContains | Implementation of the XPath 3.0 function map:contains(Map, key) => boolean
  MapEntry | Implementation of the extension function map:entry(key, value) => Map
  MapGet | Implementation of the XPath 3.0 function map:get(Map, key) => value
  MapKeys | Implementation of the extension function map:keys(Map) => atomicValue*
  MapNew | Implementation of the extension function map:new() => Map
  MapRemove | Implementation of the XPath 3.0 function map:remove(Map, key) => value
  MapSize | Implementation of the extension function map:entry(key, value) => Map
  MapType | An instance of this class represents a specific map item type, for example function(xs:int) as xs:boolean
  RangeKey | This class implements an XPath map item as a view of an XSLT key index.
  SingletonMap | A map containing a single entry

## Package com.saxonica.functions.map Description

This package implements maps, a Saxon extension to the XSLT and XQuery specification that provides a dictionary-like data structure.

Maps are immutable, so that adding a new entry to a map creates a new map.

The entries in a map are (Key, Value) pairs. The key is always an atomic value; the value may be any XPath sequence.

There are functions (each supported by its own implementation class) to create a new map, to add an entry to a map, to get an entry from a map, and to list all the keys that are present in a map.

Michael H. Kay
Saxonica Limited
30 July 2010

Copyright (c) 2004-2013 Saxonica Limited. All rights reserved.