blob: c5fb5cab63e6b0db5a8c9e2e3f9d26f2a9d7747e [file] [log] [blame]
<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (11.0.4) on Fri Sep 20 12:10:30 CEST 2019 -->
<title>Convention (Apache SIS 1.0 API)</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2019-09-20">
<meta name="keywords" content="org.apache.sis.io.wkt.Convention class">
<meta name="keywords" content="values()">
<meta name="keywords" content="valueOf()">
<meta name="keywords" content="majorVersion()">
<meta name="keywords" content="isSimplified()">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../sis.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../jquery/jquery-ui.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
<script type="text/javascript" src="../../../../../jquery/jszip/dist/jszip.min.js"></script>
<script type="text/javascript" src="../../../../../jquery/jszip-utils/dist/jszip-utils.min.js"></script>
<!--[if IE]>
<script type="text/javascript" src="../../../../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script>
<![endif]-->
<script type="text/javascript" src="../../../../../jquery/jquery-3.3.1.js"></script>
<script type="text/javascript" src="../../../../../jquery/jquery-migrate-3.0.1.js"></script>
<script type="text/javascript" src="../../../../../jquery/jquery-ui.js"></script>
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="Convention (Apache SIS 1.0 API)";
}
}
catch(err) {
}
//-->
var data = {"i0":10,"i1":10,"i2":9,"i3":9};
var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
var pathtoroot = "../../../../../";
var useModuleDirectories = false;
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<header role="banner">
<nav role="navigation">
<div class="fixedNav">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a id="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/Convention.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<ul class="navListSearch">
<li><label for="search">SEARCH:</label>
<input type="text" id="search" value="search" disabled="disabled">
<input type="reset" id="reset" value="reset" disabled="disabled">
</li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#enum.constant.summary">Enum Constants</a>&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#enum.constant.detail">Enum Constants</a>&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a id="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
</div>
<div class="navPadding">&nbsp;</div>
<script type="text/javascript"><!--
$('.navPadding').css('padding-top', $('.fixedNav').css("height"));
//-->
</script>
</nav>
</header>
<!-- ======== START OF CLASS DATA ======== -->
<main role="main">
<div class="header">
<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">org.apache.sis.io.wkt</a></div>
<h2 title="Enum Convention" class="title">Enum Convention</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a></li>
<li>
<ul class="inheritance">
<li><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang" class="externalLink">Enum</a>&lt;<a href="Convention.html" title="enum in org.apache.sis.io.wkt">Convention</a>&gt;</li>
<li>
<ul class="inheritance">
<li>Convention</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a></code>, <code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang" class="externalLink">Comparable</a>&lt;<a href="Convention.html" title="enum in org.apache.sis.io.wkt">Convention</a>&gt;</code></dd>
</dl>
<hr>
<pre>public enum <span class="typeNameLabel">Convention</span>
extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang" class="externalLink">Enum</a>&lt;<a href="Convention.html" title="enum in org.apache.sis.io.wkt">Convention</a>&gt;</pre>
<div class="block">The convention to use for WKT formatting.
This enumeration specifies whether to use the <cite>Well Known Text</cite> format defined by ISO 19162
(also known as “WKT 2”), or whether to use the format previously defined in OGC 01-009 (referenced as “WKT 1”).
<div class="section">WKT 1 variants</div>
The WKT 2 format should be parsed and formatted consistently by all software products.
But the WKT 1 format has been interpreted differently by various implementers.
Apache SIS can adapt itself to different WKT variants, sometime automatically. But some aspects can not be guessed.
One noticeable source of confusion is the unit of measurement of <code>PRIMEM[…]</code> and <code>PARAMETER[…]</code> elements:
<ul>
<li>The unit of the Prime Meridian shall be the angular unit of the enclosing Geographic CRS
according the OGC 01-009 (<cite>Coordinate transformation services</cite>) specification.</li>
<li>An older specification — <cite>Simple Features</cite> — was unclear on this matter and has been
interpreted by many software products as fixing the unit to decimal degrees.</li>
<li>Some software products support only (<var>longitude</var>, <var>latitude</var>) axis order
and ignore completely all <code>AXIS[…]</code> elements in the WKT.</li>
</ul>
Despite the first interpretation being specified by both OGC 01-009 and ISO 19162 standards, the second
interpretation appears to be in wide use for WKT 1. Apache SIS uses the standard interpretation by default,
but the <a href="#WKT1_COMMON_UNITS"><code>WKT1_COMMON_UNITS</code></a> enumeration allows parsing and formatting using the older interpretation.
The <a href="#WKT1_IGNORE_AXES"><code>WKT1_IGNORE_AXES</code></a> enumeration mimics the most minimalist WKT 1 parsers,
but should be avoided when not imposed by compatibility reasons.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>0.4</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="WKTFormat.html#getConvention()"><code>WKTFormat​.get­Convention()</code></a>,
<a href="WKTFormat.html#setConvention(org.apache.sis.io.wkt.Convention)"><code>WKTFormat​.set­Convention(Convention)</code></a></dd>
<p><font size="-1">Defined in the <code>sis-referencing</code> module</font></p>
</dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== ENUM CONSTANT SUMMARY =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="enum.constant.summary">
<!-- -->
</a>
<h3>Enum Constant Summary</h3>
<table class="memberSummary">
<caption><span>Enum Constants</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Enum Constant</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><code><span class="memberNameLink"><a href="#INTERNAL">INTERNAL</a></span></code></th>
<td class="colLast">
<div class="block">A special convention for formatting objects as stored internally by Apache SIS.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><code><span class="memberNameLink"><a href="#WKT1">WKT1</a></span></code></th>
<td class="colLast">
<div class="block">The OGC 01-009 format, also known as “WKT 1”.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><code><span class="memberNameLink"><a href="#WKT1_COMMON_UNITS">WKT1_COMMON_UNITS</a></span></code></th>
<td class="colLast">
<div class="block">The <cite>Simple Feature</cite> format, also known as “WKT 1”.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><code><span class="memberNameLink"><a href="#WKT1_IGNORE_AXES">WKT1_IGNORE_AXES</a></span></code></th>
<td class="colLast">
<div class="block">The <cite>Simple Feature</cite> format without parsing of axis elements.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><code><span class="memberNameLink"><a href="#WKT2">WKT2</a></span></code></th>
<td class="colLast">
<div class="block">The ISO 19162 format, also known as “WKT 2”.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><code><span class="memberNameLink"><a href="#WKT2_SIMPLIFIED">WKT2_SIMPLIFIED</a></span></code></th>
<td class="colLast">
<div class="block">The ISO 19162 format with omission of some optional elements.</div>
</td>
</tr>
</table>
</li>
</ul>
</section>
<!-- ========== METHOD SUMMARY =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isSimplified()">isSimplified</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns <code>true</code> if this convention is one of the simplified variants of WKT.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#majorVersion()">majorVersion</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns the major version of the Well Known Text represented by this convention.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>static <a href="Convention.html" title="enum in org.apache.sis.io.wkt">Convention</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#valueOf(java.lang.String)">valueOf</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;name)</code></th>
<td class="colLast">
<div class="block">Returns the enum constant of this type with the specified name.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>static <a href="Convention.html" title="enum in org.apache.sis.io.wkt">Convention</a>[]</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#values()">values</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.Enum">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang" class="externalLink">Enum</a></h3>
<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true#clone()" title="class or interface in java.lang" class="externalLink">clone</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true#compareTo(E)" title="class or interface in java.lang" class="externalLink">compare­To</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang" class="externalLink">equals</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true#finalize()" title="class or interface in java.lang" class="externalLink">finalize</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true#getDeclaringClass()" title="class or interface in java.lang" class="externalLink">get­Declaring­Class</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true#hashCode()" title="class or interface in java.lang" class="externalLink">hash­Code</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true#name()" title="class or interface in java.lang" class="externalLink">name</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true#ordinal()" title="class or interface in java.lang" class="externalLink">ordinal</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true#toString()" title="class or interface in java.lang" class="externalLink">to­String</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true#valueOf(java.lang.Class,java.lang.String)" title="class or interface in java.lang" class="externalLink">value­Of</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.Object">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a></h3>
<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang" class="externalLink">get­Class</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang" class="externalLink">notify</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang" class="externalLink">notify­All</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang" class="externalLink">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang" class="externalLink">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait(long,int)" title="class or interface in java.lang" class="externalLink">wait</a></code></li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ ENUM CONSTANT DETAIL =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="enum.constant.detail">
<!-- -->
</a>
<h3>Enum Constant Detail</h3>
<a id="WKT2">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>WKT2</h4>
<pre>public static final&nbsp;<a href="Convention.html" title="enum in org.apache.sis.io.wkt">Convention</a> WKT2</pre>
<div class="block">The ISO 19162 format, also known as “WKT 2”.
This convention follows the ISO recommendations.
<p>Unless otherwise specified by <a href="WKTFormat.html#setNameAuthority(org.opengis.metadata.citation.Citation)"><code>WKTFormat​.set­Name­Authority(Citation)</code></a>, projections
and parameters formatted with this convention will use the <a href="../../metadata/iso/citation/Citations.html#EPSG">EPSG</a>
names when available.</p>
<p>This is the default convention used by <a href="FormattableObject.html#toWKT()"><code>Formattable­Object​.to­WKT()</code></a>
and for new <a href="WKTFormat.html" title="class in org.apache.sis.io.wkt"><code>WKTFormat</code></a> instances.</p></div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="http://docs.opengeospatial.org/is/12-063r5/12-063r5.html">WKT 2 specification</a></dd>
</dl>
</li>
</ul>
<a id="WKT2_SIMPLIFIED">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>WKT2_SIMPLIFIED</h4>
<pre>public static final&nbsp;<a href="Convention.html" title="enum in org.apache.sis.io.wkt">Convention</a> WKT2_SIMPLIFIED</pre>
<div class="block">The ISO 19162 format with omission of some optional elements. This convention is identical
to the <a href="#WKT2"><code>WKT2</code></a> convention except for the following aspects:
<ul>
<li>By <a href="KeywordStyle.html#DEFAULT">default</a> long keywords are used instead of short ones
(e.g. <code>"Geodetic­CRS"</code> instead of <code>"Geod­CRS"</code>) except for the <code>"Unit"</code> keyword,
because they match the class or interface names.</li>
<li><code>Prime­Meridian</code> element omitted if the meridian is Greenwich.</li>
<li><code>Axis</code> element omits the <code>Order</code> sub-element.</li>
<li><code>Unit</code> elements are less verbose:<ul>
<li><code>Ellipsoid</code> and <code>Vertical­Extent</code> elements omit the <code>Length­Unit</code> sub-element
if that unit is <a href="../../measure/Units.html#METRE"><code>Units​.METRE</code></a>.</li>
<li><code>Parameter</code> elements omit the <code>Length­Unit</code> sub-element
if that unit is the same than the unit of the <code>Projected­CRS</code> axes.</li>
<li><code>Parameter</code> and <code>Prime­Meridian</code> elements omit the <code>Angle­Unit</code> sub-element
if that unit is the same than the unit of the <code>Geodetic­CRS</code> axes.</li>
<li>Axes unit is declared only once after the axes instead than repeated for each axis
if the unit is the same for all axes.</li>
<li><code>Angle­Unit</code>, <code>Length­Unit</code>, <code>Scale­Unit</code>, <code>Parametric­Unit</code>
and <code>Time­Unit</code> are formatted as plain <code>Unit</code> elements.</li>
</ul></li>
<li><code>Id</code> is formatted only for the root element
(omit parameters and operation methods <code>Id</code>).</li>
</ul>
Those modifications are allowed by the ISO 19162 standard, so the WKT is still valid.
<p>This is the default convention used by <a href="FormattableObject.html#toString()"><code>Formattable­Object​.to­String()</code></a>.</p></div>
</li>
</ul>
<a id="WKT1">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>WKT1</h4>
<pre>public static final&nbsp;<a href="Convention.html" title="enum in org.apache.sis.io.wkt">Convention</a> WKT1</pre>
<div class="block">The OGC 01-009 format, also known as “WKT 1”.
A definition for this format is shown in Extended Backus Naur Form (EBNF)
<a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/doc-files/WKT.html">on GeoAPI</a>.
<p>Unless otherwise specified by <a href="WKTFormat.html#setNameAuthority(org.opengis.metadata.citation.Citation)"><code>WKTFormat​.set­Name­Authority(Citation)</code></a>, projections
and parameters formatted with this convention will use the <a href="../../metadata/iso/citation/Citations.html#OGC">OGC</a>
names when available.</p>
<div class="section">Differences compared to WKT 2</div>
WKT 1 and WKT 2 differ in their keywords and syntax, but also in more subtle ways regarding axis names,
parameter and code list values. For example in <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/crs/GeocentricCRS.html?is-external=true" title="class or interface in org.opengis.referencing.crs" class="externalLink"><code>Geocentric­CRS</code></a>, WKT 1 uses a legacy set of Cartesian axes
which were defined in OGC 01-009. Those axes use the <var>Other</var>, <var>Easting</var> and <var>Northing</var>
<a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/cs/AxisDirection.html?is-external=true" title="class or interface in org.opengis.referencing.cs" class="externalLink">axis directions</a> instead than the geocentric ones.
For more uniform handling of CRS objects in client code, SIS parser replaces some WKT 1 conventions by
the ISO ones when possible.
<div class="horizontal-flow">
<div>
<table class="sis">
<caption>Geocentric axis directions</caption>
<tr><th>ISO 19111</th> <th>OGC 01-009</th> <th>Description</th></tr>
<tr><td>Geocentric X</td> <td>Other</td> <td>Toward prime meridian</td></tr>
<tr><td>Geocentric Y</td> <td>Easting</td> <td>Toward 90°E longitude</td></tr>
<tr><td>Geocentric Z</td> <td>Northing</td> <td>Toward north pole</td></tr>
</table>
</div><div>
<table class="sis">
<caption>Coordinate system axis names</caption>
<tr><th>CRS type</th> <th>WKT1 names</th> <th>ISO abbreviations</th></tr>
<tr><td>Geographic</td> <td>Lon, Lat</td> <td>λ, φ</td></tr>
<tr><td>Vertical</td> <td><var>H</var></td> <td><var>H</var> or <var>h</var></td></tr>
<tr><td>Projected</td> <td><var>X</var>, <var>Y</var></td> <td><var>E</var>, <var>N</var></td></tr>
<tr><td>Geocentric</td> <td><var>X</var>, <var>Y</var>, <var>Z</var></td> <td><var>X</var>, <var>Y</var>, <var>Z</var></td></tr>
</table>
</div></div></div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/doc-files/WKT.html">Legacy WKT 1</a></dd>
</dl>
</li>
</ul>
<a id="WKT1_COMMON_UNITS">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>WKT1_COMMON_UNITS</h4>
<pre>public static final&nbsp;<a href="Convention.html" title="enum in org.apache.sis.io.wkt">Convention</a> WKT1_COMMON_UNITS</pre>
<div class="block">The <cite>Simple Feature</cite> format, also known as “WKT 1”.
<cite>Simple Feature</cite> is anterior to OGC 01-009 and defines the same format,
but was unclear about the unit of measurement for prime meridians and projection parameters.
Consequently many implementations interpreted those angular units as fixed to degrees instead
than being context-dependent.
<p>This convention is identical to <a href="#WKT1"><code>WKT1</code></a> except for the following aspects:</p>
<ul>
<li>The angular units of <code>PRIMEM</code> and <code>PARAMETER</code> elements are always degrees,
no matter the units of the enclosing <code>GEOGCS</code> element.</li>
<li>Unit names use American spelling instead than the international ones
(e.g. <cite>"meter"</cite> instead than <cite>"metre"</cite>).</li>
</ul></div>
</li>
</ul>
<a id="WKT1_IGNORE_AXES">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>WKT1_IGNORE_AXES</h4>
<pre>public static final&nbsp;<a href="Convention.html" title="enum in org.apache.sis.io.wkt">Convention</a> WKT1_IGNORE_AXES</pre>
<div class="block">The <cite>Simple Feature</cite> format without parsing of axis elements.
This convention is identical to <a href="#WKT1_COMMON_UNITS"><code>WKT1_COMMON_UNITS</code></a> except that all <code>AXIS[…]</code> elements are ignored.
Since the WKT 1 specification said that the default axis order shall be (<var>x</var>,<var>y</var>) or
(<var>longitude</var>, <var>latitude</var>), ignoring <code>AXIS[…]</code> elements is equivalent to forcing
the coordinate systems to that default order.
<p>Note that <code>AXIS[…]</code> elements still need to be well formed even when parsing a text with this convention.
Malformed axis elements will continue to cause a <a href="https://docs.oracle.com/javase/8/docs/api/java/text/ParseException.html?is-external=true" title="class or interface in java.text" class="externalLink"><code>Parse­Exception</code></a> despite their content being ignored.</p>
<p>This convention may be useful for compatibility with some other software products that do not handle axis order correctly.
But except when imposed by such compatibility reasons, this convention should be avoided as much as possible.</p></div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>0.6</dd>
</dl>
</li>
</ul>
<a id="INTERNAL">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>INTERNAL</h4>
<pre><a href="../../util/Debug.html" title="annotation in org.apache.sis.util">@Debug</a>
public static final&nbsp;<a href="Convention.html" title="enum in org.apache.sis.io.wkt">Convention</a> INTERNAL</pre>
<div class="block">A special convention for formatting objects as stored internally by Apache SIS.
The result is similar to the one produced using the <a href="#WKT2_SIMPLIFIED"><code>WKT2_SIMPLIFIED</code></a> convention,
with the following differences:
<ul>
<li>All quoted texts (not only the remarks) preserve non-ASCII characters.</li>
<li>Map projections are shown as SIS stores them internally, i.e. with the separation between
linear and non-linear steps, rather than as a single operation.</li>
<li><code>Parameter</code> elements omit the unit of measurement if that unit is equal to the default unit
(as declared in the parameter descriptor).</li>
<li><code>Compound­CRS</code> elements show nested compound CRS if any (the structure is not flattened).</li>
<li><code>Id</code> elements are formatted for child elements in addition to the root one.</li>
<li><code>Id</code> element omits the <code>URI</code> sub-element if the later is derived by Apache SIS
from the <code>Id</code> properties.</li>
<li><code>Remarks</code> element is formatted for all
<a href="../../referencing/AbstractIdentifiedObject.html" title="class in org.apache.sis.referencing">identified objects</a>,
not only CRS or coordinate operations.</li>
<li>Additional attributes not defined by ISO 19162 may be formatted:
<ul>
<li><code>Image­Datum</code> includes the <a href="../../referencing/datum/DefaultImageDatum.html#getPixelInCell()">Pixel in Cell</a> code.</li>
<li><code>Temporal­Datum</code> includes the <a href="../../referencing/datum/DefaultTemporalDatum.html#getOrigin()">Origin</a> date.</li>
</ul>
</li>
</ul>
This convention is used only for debugging purpose.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../referencing/operation/projection/NormalizedProjection.html#getParameterValues()"><code>Normalized­Projection​.get­Parameter­Values()</code></a></dd>
</dl>
</li>
</ul>
</li>
</ul>
</section>
<!-- ============ METHOD DETAIL ========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a id="values()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>values</h4>
<pre class="methodSignature">public static&nbsp;<a href="Convention.html" title="enum in org.apache.sis.io.wkt">Convention</a>[]&nbsp;values()</pre>
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared. This method may be used to iterate
over the constants as follows:
<pre>
for (Convention c : Convention.values())
&nbsp; System.out.println(c);
</pre></div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>an array containing the constants of this enum type, in the order they are declared</dd>
</dl>
</li>
</ul>
<a id="valueOf(java.lang.String)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>valueOf</h4>
<pre class="methodSignature">public static&nbsp;<a href="Convention.html" title="enum in org.apache.sis.io.wkt">Convention</a>&nbsp;valueOf&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;name)</pre>
<div class="block">Returns the enum constant of this type with the specified name.
The string must match <i>exactly</i> an identifier used to declare an
enum constant in this type. (Extraneous whitespace characters are
not permitted.)</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - the name of the enum constant to be returned.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the enum constant with the specified name</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang" class="externalLink">Illegal­Argument­Exception</a></code> - if this enum type has no constant with the specified name</dd>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/NullPointerException.html?is-external=true" title="class or interface in java.lang" class="externalLink">Null­Pointer­Exception</a></code> - if the argument is null</dd>
</dl>
</li>
</ul>
<a id="majorVersion()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>majorVersion</h4>
<pre class="methodSignature">public&nbsp;int&nbsp;majorVersion()</pre>
<div class="block">Returns the major version of the Well Known Text represented by this convention.
In current Apache SIS implementation, this method can return only 1 or 2.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>1 if this convention is one of the WKT 1 variants, or 2 otherwise.</dd>
</dl>
</li>
</ul>
<a id="isSimplified()">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>isSimplified</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;isSimplified()</pre>
<div class="block">Returns <code>true</code> if this convention is one of the simplified variants of WKT.
The simplifications are documented in the <a href="#WKT2_SIMPLIFIED"><code>WKT2_SIMPLIFIED</code></a> javadoc.
<p>This methods consider version 1 of WKT as a “simplified” convention,
since this version was indeed simpler than version 2.</p></div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>true</code> it this convention uses a simplified variant of WKT.</dd>
</dl>
</li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
</div>
</main>
<!-- ========= END OF CLASS DATA ========= -->
<footer role="contentinfo">
<nav role="navigation">
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a id="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/Convention.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#enum.constant.summary">Enum Constants</a>&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#enum.constant.detail">Enum Constants</a>&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a id="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</nav>
<p class="legalCopy"><small>Copyright &#169; 2010&#x2013;2019 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
</footer>
</body>
</html>