All Projects → Esri → cim-spec

Esri / cim-spec

Licence: other
This repository hosts the specification for the Cartographic Information Model

Projects that are alternatives of or similar to cim-spec

dictionary-renderer-toolkit
The Dictionary Renderer Toolkit provides documentation and tools for the creation of custom dictionary styles for use with the dictionary renderer.
Stars: ✭ 18 (-60%)
Mutual labels:  services, maps, cartography, layer, publishing-sharing
Thematic Cartography
A short, friendly guide to basic principles of thematic mapping
Stars: ✭ 32 (-28.89%)
Mutual labels:  maps, cartography
Map33.js
A JavaScript library to make 3D maps with three.js.
Stars: ✭ 317 (+604.44%)
Mutual labels:  maps, cartography
Editor
An open source visual editor for the 'Mapbox Style Specification'
Stars: ✭ 1,167 (+2493.33%)
Mutual labels:  maps, cartography
s60-maps
Yet another maps for Symbian OS
Stars: ✭ 27 (-40%)
Mutual labels:  maps, cartography
rafagas
Daily geospatial links curated by Raf Roset
Stars: ✭ 17 (-62.22%)
Mutual labels:  maps, cartography
Magrit
♠ Thematic cartography ♠
Stars: ✭ 60 (+33.33%)
Mutual labels:  maps, cartography
maps4cim
maps4cim - a real world map generator for CiM 2
Stars: ✭ 21 (-53.33%)
Mutual labels:  maps, cartography
Osmic
CC0 SVG Map Icons, mirror of repo on Gitlab
Stars: ✭ 89 (+97.78%)
Mutual labels:  maps, cartography
Geodataviz Toolkit
The GeoDataViz Toolkit is a set of resources that will help you communicate your data effectively through the design of compelling visuals. In this repository we are sharing resources, assets and other useful links.
Stars: ✭ 149 (+231.11%)
Mutual labels:  maps, cartography
Osm Liberty
A free Mapbox GL basemap style for everyone
Stars: ✭ 231 (+413.33%)
Mutual labels:  maps, cartography
rspatial-map-challenge-2020
A list of maps created for #30DayMapChallenge using #rspatial
Stars: ✭ 61 (+35.56%)
Mutual labels:  maps, cartography
Khartis
Khartis - thematic mapping
Stars: ✭ 49 (+8.89%)
Mutual labels:  maps, cartography
Geoswift
The Swift Geometry Engine.
Stars: ✭ 1,267 (+2715.56%)
Mutual labels:  maps, cartography
openstreetmap-americana
A quintessentially American map style
Stars: ✭ 89 (+97.78%)
Mutual labels:  maps, cartography
Atlas
An extensible 3D GIS application for visualization, analysis and research.
Stars: ✭ 113 (+151.11%)
Mutual labels:  maps, desktop
vaguely-rude-places
The map of Vaguely Rude Place Names
Stars: ✭ 19 (-57.78%)
Mutual labels:  maps
out
Monitor services in your menu bar
Stars: ✭ 155 (+244.44%)
Mutual labels:  services
Open-Water-Rate-Specification
A machine-readable format for storing and sharing water rate structures.
Stars: ✭ 18 (-60%)
Mutual labels:  specification
ScoutAR
Augmented reality app displays nearby restaurant information in a live camera and map view.
Stars: ✭ 28 (-37.78%)
Mutual labels:  maps

Cartographic Information Model

This repository hosts the specification for the Cartographic Information Model (CIM) which is a map content specification used to persist and transfer cartographic descriptions of GIS datasets. Represented in JSON, the specification is used for maps, scenes, layouts, layers, symbols, and styles in ArcGIS applications and APIs.

Usage of the CIM primarily begins with an entry point through a primary object. These objects are:

  • Layer files: CIMLayerDocument: A JSON document containing one of more layers representing data such as features from a feature class or raster.
  • Map files: CIMMapDocument: A JSON document containing a collection of layers and display properties for 2D maps or 3D scenes. Maps and scenes in the CIM are represented by the CIMMap object. There are not separate object types and maps and scenes are instead differentiated by the mapType property. Types of scenes, global and local, are differentiated by the defaultViewingMode property.
  • Layout files: CIMLayoutDocument : A JSON document with a representation of a page (CIMLayout), its elements, and the maps and scenes on it for print of document export.
  • Report files: CIMReportDocument: A JSON document representing a report (CIMReport), its elements, and the report specific
  • Styles : A database with style items defining graphic objects like colors, colors schemes, and symbols used to draw a feature or layout graphic. These items are used in the definitions of layers, maps, scenes, and layouts but may also be stored on their own as items in styles where the JSON is written to a database field. See also An overview of symbols in the CIM.

How this specification is formatted

This CIM specification is documented via Markdown documents that contain definitions for objects and their properties. JSON lacks an inheritance mechanism and CIM implementations often deal with many abstract types using inheritance. Additionally, JSON has one numeric type, but typed languages typically differentiate various integer and floating-point types. The formatting of the Markdown reflects these realities in the following ways:

  1. Objects that can be thought of inheriting from a type list properties in a section for each inherited type. In some cases, the final type may inherit all properties from another type and have no unique properties for itself. See CIMRGBColor for an example.
  2. The Types document lists objects by their type for quick reference.
  3. Numeric types are specified as short, long, long long, float, and double corresponding to 16-bit integer, 32-bit integer, 64-bit integer, single-precision floating-point, and double-precision floating-point types respectively.
  4. Types specified as any may be any basic JSON type: string, number, boolean, or null.

Versioning

The Cartographic Information Model uses Semantic Versioning and this documentation corresponds to the current latest version: 3.0.0. The final version of the previous major release series (2.9.0) can be found at docs/v2/.

Licensing

See License

Contributing

You are invited to fork this repository to a public or private repository and to send Pull Requests suggest improvements or notify us of errors or omissions in this documentation. Creating a fork solely for this purpose does not constitute the creation and distribution of a derivative work. Please see our guidelines for contributing.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].