Package org.apache.sis.io.wkt
Well Known Text (WKT) parsing and formatting.
This package implements the services provided by various convenience methods:
CRS.fromWKT(String)
(SIS parsing static method)CRSFactory.createFromWKT(String)
(GeoAPI parsing method)MathTransformFactory.createFromWKT(String)
(GeoAPI parsing method)IdentifiedObject.toWKT()
(GeoAPI formatting method)
WKTFormat
class provided in this package gives more control.
For example this package allows to:
- Format projection and parameters using the names of a chosen authority.
For example the "Mercator (variant A)" projection is named
"Mercator_1SP"
by OGC 01-009 and"CT_Mercator"
by GeoTIFF. - Format the elements with different quote characters or brackets style.
For example both
ID["EPSG",4326]
andID("EPSG",4326)
are legal WKT. - Format with a different indentation or format the whole WKT on a single line.
- Apply syntactic coloring on terminal supporting ANSI escape codes (a.k.a. ECMA-48, ISO/IEC 6429 and X3.64).
- Alter the parsing in a way compatible with non-standard (but commonly used) WKT.
For example some others software products ignore the
AXIS[…]
elements at parsing time. - Report warnings that occurred during parsing or formatting.
Referencing WKT
Referencing WKT is defined using Extended Backus Naur Form (EBNF) in two versions:
- ISO 19162 defines the current format, also known as “WKT 2”. The specification is also made available online by OGC.
- The previous format — “WKT 1” — was defined in the OGC document 01-009. This definition is shown on GeoAPI.
Convention
enumeration.
Geometry WKT
The GeneralEnvelope
and GeneralDirectPosition
classes
provide their own, limited, WKT parsing and formatting services for the BOX
and POINT
elements.
A description for this WKT format can be found on Wikipedia.
Where to find WKT examples
An excellent source of well-formed WKT is the online EPSG Geodetic Parameter Registry.
The WKT of many Coordinate Reference System object can be viewed using the pattern below
(replace 3395
by the EPSG code of the desired CRS):
Example: "WGS 84 / World Mercator": http://epsg-registry.org/export.htm?wkt=urn:ogc:def:crs:EPSG::3395Readers should be aware that some popular other sources of WKT are actually invalid, since many of them do not comply with EPSG definitions (especially on axis order). The above-cited EPSG registry is the authoritative source of CRS definitions in the EPSG namespace.
- Since:
- 0.4
- See Also:
- WKT 2 specification, Legacy WKT 1
Defined in the sis-referencing
module
-
Interface Summary Interface Description Parser A parser or a factory capable to create an object from a string in the WKT format. -
Class Summary Class Description Colors The colors to use for formatting Well Known Text (WKT) objects.FormattableObject Base class for objects that can be formatted as Well Known Text (WKT).Formatter Provides support methods for formatting a Well Known Text (WKT).Symbols The set of symbols to use for Well Known Text (WKT) parsing and formatting.Transliterator Controls the replacement of characters, abbreviations and names between the objects in memory and their WKT representations.Warnings Warnings that occurred during a Well Known Text (WKT) parsing or formatting.WKTFormat Parser and formatter for Well Known Text (WKT) strings. -
Enum Summary Enum Description Convention The convention to use for WKT formatting.ElementKind Kind of an element in a Well Known Text.KeywordCase Whether WKT keywords shall be written with lower, upper or camel case styles.KeywordStyle Whether to use short or long WKT keywords. -
Exception Summary Exception Description UnformattableObjectException Thrown byFormattableObject.toWKT()
when an object can not be formatted as WKT.UnparsableObjectException Thrown when a Well Known Text (WKT) can not be parsed.