Compare commits

..
1 Commits
Author SHA1 Message Date
Frank Warmerdam c2525b5c88 correct mutex creation on win32 to be in unlocked state (#63)
git-svn-id: http://svn.osgeo.org/metacrs/proj/branches/4.7@1832 4e78687f-474d-0410-85f9-8d5e500ac6b2
2010-03-28 22:13:28 +00:00
1266 changed files with 211446 additions and 369924 deletions
-30
View File
@@ -1,30 +0,0 @@
# Cirrus CI configuration
task:
name: FreeBSD
freebsd_instance:
matrix:
image: freebsd-12-0-release-amd64
# image: freebsd-11-2-release-amd64
# image: freebsd-10-4-release-amd64
env:
CIRRUS_CLONE_DEPTH: 1
MAKE_FLAGS: -j 2
cache:
folder: $HOME/.ccache
pkginstall_script:
- pkg install -y autoconf automake libtool pkgconf sqlite3 tiff wget unzip ccache gmake
download_grid_script:
- wget https://download.osgeo.org/proj/proj-datumgrid-1.8.zip
- (cd data && unzip -o ../proj-datumgrid-1.8.zip)
configure_script:
- ./autogen.sh
- CC="ccache cc" CXX="ccache c++" ./configure --disable-static
compile_script:
- gmake $(MAKE_FLAGS)
test_script:
- gmake check $(MAKE_FLAGS)
-8
View File
@@ -1,8 +0,0 @@
#
# Configure line ending normalisation for this repository.
#
* text=auto
*.ac text eol=lf
*.am text eol=lf
*.m4 text eol=lf
*.sh text eol=lf
-31
View File
@@ -1,31 +0,0 @@
---
name: Bug report
about: Create a report to help us improve
labels: bug
---
<!-- Please search existing issues to avoid creating duplicates. -->
#### Example of problem
Demonstrate the problem you have found, either by using PROJ tools like `cs2cs`, `cct` or `projinfo` **or** add a code snippet that highlights the problem using the PROJ C/C++ API.
A "Minimal, Complete and Verifiable Example" will make it much easier for maintainers to help you:
http://matthewrocklin.com/blog/work/2018/02/28/minimal-bug-reports
```c
# Your code here
```
#### Problem description
[this should explain **why** the current behavior is a problem and why the expected output is a better solution.]
#### Expected Output
#### Environment Information
- PROJ version (`proj`)
- Operation System Information
#### Installation method
- conda, apt-get, from source, etc...
@@ -1,7 +0,0 @@
---
name: Feature request
about: Suggest an idea for this project
labels: feature request
---
<!-- Describe the feature you'd like. -->
-6
View File
@@ -1,6 +0,0 @@
<!-- Feel free to remove check-list items aren't relevant to your change -->
- [ ] Closes #xxxx
- [ ] Tests added
- [ ] Added clear title that can be used to generate release notes
- [ ] Fully documented, including updating `docs/source/*.rst` for new API
-18
View File
@@ -1,18 +0,0 @@
# Number of days of inactivity before an issue becomes stale
daysUntilStale: 60
# Number of days of inactivity before a stale issue is closed
daysUntilClose: 7
# Issues with these labels will never be considered stale
exemptLabels:
- pinned
- security
- bug
# Label to use when marking an issue as stale
staleLabel: wontfix
# Comment to post when marking an issue as stale. Set to `false` to disable
markComment: >
This issue has been automatically marked as stale because it has not had
recent activity. It will be closed if no further activity occurs. Thank you
for your contributions.
# Comment to post when closing a stale issue. Set to `false` to disable
closeComment: false
-20
View File
@@ -1,20 +0,0 @@
name: Backport
on:
pull_request:
types:
- closed
- labeled
jobs:
backport:
runs-on: ubuntu-18.04
name: Backport
steps:
- name: Backport Bot
if: contains( join(github.event.pull_request.labels.*.name), 'backport')
uses: Gaurav0/backport@v1.0.24
with:
bot_username: PROJ-BOT
bot_token: c1c49a5799d0a3a3885db8a4792880cbe509c1d6
bot_token_key: b01bdebf64595ed77207019258316df1b05ff6ac
github_token: ${{ secrets.GITHUB_TOKEN }}
-134
View File
@@ -1,134 +0,0 @@
# Editor temporary/working/backup
*~
*.bak
*.swp
# Compiled source
*.dll
*.exe
*.exp
*.la
*.lib
*.lo
*.o
*.obj
*.ol
*.pdb
*.pyc
# IDEs
build.local.bat
build.local.sh
/.idea
/.vs*
/*build*
/nbproject
# Autotools
autom4te.cache
/aclocal.m4
/compile
/config.cache
/config.guess
/config.log
/config.status
/config.sub
/configure
/depcomp
/install-sh
/ltmain.sh
/missing
libtool
.deps
.dirstamp
.libs
Makefile.in
Makefile
# CMake
CMakeFiles
CMakeCache.txt
CMakeSettings.json
CTestTestfile.cmake
cmake_install.cmake
cmake/project-config*.cmake
install_manifest.txt
/googletest*
# / (base)
/*.manifest
/README
/bin
/lib
/proj.pc
/test-driver
/Testing
# data
/data/all.sql.in
/data/proj.db
/data/*.ct2
/data/*.dat
/data/*.gsb
/data/*.gtx
/data/*.lla
/data/*.pol
/data/*.zip
/data/DK
/data/FL
/data/FO
/data/GL
/data/MD
/data/NKG
/data/README*
/data/TN
/data/WI
/data/WO
/data/alaska
/data/conus
/data/hawaii
/data/null
/data/prvi
/data/stgeorge
/data/stlrnc
/data/stpaul
/data/tv_out
# docs
tmp_breathe
/docs/.doxygen_up_to_date
/docs/build
# m4
m4/libtool.m4
m4/ltoptions.m4
m4/ltsugar.m4
m4/ltversion.m4
m4/lt~obsolete.m4
# src
/src/cct
/src/cs2cs
/src/geod
/src/geodtest*
/src/gie
/src/proj
/src/proj_config.h
/src/proj_config.h.in
/src/projinfo
/src/stamp-h1
/src/test-suite.log
# test/unit
/test/unit/basic_test
/test/unit/gie_self_tests
/test/unit/include_proj_h_from_c
/test/unit/pj_phi2_test
/test/unit/pj_transform_test
/test/unit/proj_angular_io_test
/test/unit/proj_context_test
/test/unit/test_cpp_api
/test/unit/proj_errno_string_test
# jniwrap
jniwrap/out
-95
View File
@@ -1,95 +0,0 @@
# This is the config file for building proj and running its test suite
# with Travis-ci.org
language: cpp
branches:
except:
- /^(cherry-pick-)?backport-\d+-to-/
cache:
directories:
- $HOME/.ccache
matrix:
fast_finish: true
include:
- os: linux
dist: xenial
compiler: gcc
services:
- docker
env:
- BUILD_NAME=linux_gcc
- DETAILS="linux, gcc"
- os: linux
dist: xenial
compiler: gcc
services:
- docker
env:
- BUILD_NAME=linux_gcc7
- DETAILS="linux, gcc7"
- CC=gcc-7
- CXX=g++-7
- CXXFLAGS='-g -D_GLIBCXX_ASSERTIONS'
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- g++-7
- make
- autoconf
- automake
- os: linux
dist: xenial
compiler: clang
services:
- docker
env:
- BUILD_NAME=linux_clang
- DETAILS="linux, clang"
- os: osx
env:
- BUILD_NAME=osx
- DETAILS="osx"
- os: linux
dist: xenial
compiler: gcc
env:
- BUILD_NAME=mingw32
- DETAILS="mingw32"
- os: linux
compiler: gcc
dist: xenial
env:
- BUILD_NAME=csa
- DETAILS="CLang Static Analyzer"
allow_failures:
- env: BUILD_NAME=mingw32
before_install: ./travis/${BUILD_NAME}/before_install.sh
install: ./travis/${BUILD_NAME}/install.sh
script:
- echo "done"
after_success: ./travis/${BUILD_NAME}/after_success.sh
notifications:
#email:
# recipients:
# - gdal-commits@lists.osgeo.org
irc:
channels:
- "irc.freenode.org#gdal"
use_notice: true
+9 -38
View File
@@ -1,42 +1,13 @@
--------------------------------------------------------------------------------
Authors
--------------------------------------------------------------------------------
Original Author
................................................................................
Gerald Evenden (1935-2016)
Maintainer(s)
................................................................................
Kristian Evers <kreve@sdfe.dk>
Even Rouault <even.rouault@spatialys.com>
Project Steering Committee
--------------------------------------------------------------------------------
Process and membership can be found at:
https://proj.org/community/rfc/rfc-1.html
Chair
................................................................................
Kristian Evers <kreve@sdfe.dk>
Members
................................................................................
Original Author:
Gerald Evenden
Maintainer(s):
Frank Warmerdam <warmerdam@pobox.com>
Howard Butler <howard@hobu.co>
Charles Karney <charles.karney@sri.com>
Thomas Knudsen <thokn@sdfe.dk>
Even Rouault <even.rouault@spatialys.com>
Kurt Schwehr <schwehr@gmail.com>
Contributors
--------------------------------------------------------------------------------
Contributors:
Brent Fraser <bfraser@geoanalytic.com>
Chris Stuber <imap@chesapeake.net>
Craig Bruce <cbruce@cubewerx.com>
Victor Osipkov <vctos@email.com>
Andrea Antonello <andrea.antonello@hydrologis.com>
The full list of contributors can be found on GitHub
https://github.com/OSGeo/PROJ/graphs/contributors
-16
View File
@@ -1,16 +0,0 @@
To cite PROJ in publications use:
PROJ contributors (2019). PROJ coordinate transformation software
library. Open Source Geospatial Foundation. URL https://proj.org/.
A BibTeX entry for LaTeX users is
.. code-block:: latex
@Manual{,
title = {{PROJ} coordinate transformation software library},
author = {{PROJ contributors}},
organization = {Open Source Geospatial Foundation},
year = {2020},
url = {https://proj.org/},
}
-261
View File
@@ -1,261 +0,0 @@
################################################################################
#
# This file is part of CMake configuration for PROJ library (inspired from SOCI
# CMake, Copyright (C) 2009-2010 Mateusz Loskot <mateusz@loskot.net> )
#
# Copyright (C) 2011 Nicolas David <nicolas.david@ign.fr>
# Distributed under the MIT license
#
################################################################################
# General settings
################################################################################
cmake_minimum_required(VERSION 3.5 FATAL_ERROR)
# For historic reasons, the CMake PROJECT-NAME is PROJ4
project(PROJ4 LANGUAGES C CXX)
set(PROJECT_INTERN_NAME PROJ)
if(NOT CMAKE_VERSION VERSION_LESS 3.1)
cmake_policy(SET CMP0054 NEW)
endif()
# Set C++ version
# Make CMAKE_CXX_STANDARD available as cache option overridable by user
set(CMAKE_CXX_STANDARD 11
CACHE STRING "C++ standard version to use (default is 11)")
message(STATUS "Requiring C++${CMAKE_CXX_STANDARD}")
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_CXX_EXTENSIONS OFF)
message(STATUS "Requiring C++${CMAKE_CXX_STANDARD} - done")
# Set C99 version
# Make CMAKE_C_STANDARD available as cache option overridable by user
set(CMAKE_C_STANDARD 99
CACHE STRING "C standard version to use (default is 99)")
message(STATUS "Requiring C${CMAKE_C_STANDARD}")
set(CMAKE_C_STANDARD_REQUIRED ON)
set(CMAKE_C_EXTENSIONS OFF)
message(STATUS "Requiring C${CMAKE_C_STANDARD} - done")
# Set global -fvisibility=hidden
set(CMAKE_C_VISIBILITY_PRESET hidden)
set(CMAKE_CXX_VISIBILITY_PRESET hidden)
# Set warnings as variables, then store as cache options
set(PROJ_common_WARN_FLAGS # common only to GNU/Clang C/C++
-Wall
-Wextra
-Wswitch
-Wshadow
-Wunused-parameter
-Wmissing-declarations
-Wformat
-Wformat-security
)
if("${CMAKE_C_COMPILER_ID}" STREQUAL "GNU")
set(PROJ_C_WARN_FLAGS ${PROJ_common_WARN_FLAGS}
-Wmissing-prototypes
)
set(PROJ_CXX_WARN_FLAGS ${PROJ_common_WARN_FLAGS})
elseif("${CMAKE_C_COMPILER_ID}" MATCHES "Clang")
set(PROJ_C_WARN_FLAGS ${PROJ_common_WARN_FLAGS}
-Wmissing-prototypes
-Wfloat-conversion
-Wc11-extensions
)
set(PROJ_CXX_WARN_FLAGS ${PROJ_common_WARN_FLAGS}
-Wfloat-conversion
)
elseif("${CMAKE_C_COMPILER_ID}" STREQUAL "MSVC")
add_definitions(/D_CRT_SECURE_NO_WARNINGS) # Eliminate deprecation warnings
set(PROJ_C_WARN_FLAGS
/W4
/wd4706 # Suppress warning about assignment within conditional expression
/wd4996 # Suppress warning about sprintf, etc., being unsafe
)
set(PROJ_CXX_WARN_FLAGS /EHsc ${PROJ_C_WARN_FLAGS})
elseif("${CMAKE_C_COMPILER_ID}" STREQUAL "Intel")
if(MSVC)
set(PROJ_C_WARN_FLAGS /Wall)
set(PROJ_CXX_WARN_FLAGS /Wall)
else()
set(PROJ_C_WARN_FLAGS -Wall)
set(PROJ_CXX_WARN_FLAGS -Wall)
endif()
endif()
set(PROJ_C_WARN_FLAGS "${PROJ_C_WARN_FLAGS}"
CACHE STRING "C flags used to compile PROJ targets")
set(PROJ_CXX_WARN_FLAGS "${PROJ_CXX_WARN_FLAGS}"
CACHE STRING "C++ flags used to compile PROJ targets")
################################################################################
# PROJ CMake modules
################################################################################
# Path to additional CMake modules
set(CMAKE_MODULE_PATH ${PROJ4_SOURCE_DIR}/cmake ${CMAKE_MODULE_PATH})
include(ProjUtilities)
message(STATUS "")
colormsg(_HIBLUE_ "Configuring PROJ:")
################################################################################
#PROJ version information
################################################################################
include(ProjVersion)
proj_version(MAJOR 7 MINOR 0 PATCH 0)
set(PROJ_API_VERSION "18")
set(PROJ_BUILD_VERSION "18.0.3")
################################################################################
# Build features and variants
################################################################################
include(ProjConfig)
include(ProjMac)
include(policies)
################################################################################
# Check for sqlite3
################################################################################
find_program(EXE_SQLITE3 sqlite3)
if(NOT EXE_SQLITE3)
message(SEND_ERROR "sqlite3 binary not found!")
endif()
find_package(Sqlite3 REQUIRED)
if(NOT SQLITE3_FOUND)
message(SEND_ERROR "sqlite3 dependency not found!")
endif()
# Would build and run with older versons, but with horrible performance
# See https://github.com/OSGeo/PROJ/issues/1718
IF("${SQLITE3_VERSION}" VERSION_LESS "3.11")
message(SEND_ERROR "sqlite3 >= 3.11 required!")
ENDIF()
################################################################################
# Check for libtiff
################################################################################
option(DISABLE_TIFF "Disable TIFF support" OFF)
mark_as_advanced(DISABLE_TIFF)
if(DISABLE_TIFF)
message(WARNING "TIFF support has been disabled and will result in the inability to read some grids")
else()
find_package(TIFF REQUIRED)
if(TIFF_FOUND)
boost_report_value(TIFF_FOUND)
else()
message(SEND_ERROR "libtiff dependency not found!")
endif()
add_definitions(-DTIFF_ENABLED)
endif()
################################################################################
# Check for curl
################################################################################
option(ENABLE_CURL "Enable Curl support" ON)
if(ENABLE_CURL)
find_package(CURL REQUIRED)
if(CURL_FOUND)
boost_report_value(CURL_FOUND)
else()
message(SEND_ERROR "curl dependency not found!")
endif()
add_definitions(-DCURL_ENABLED)
endif()
################################################################################
# threading configuration
################################################################################
set(CMAKE_THREAD_PREFER_PTHREAD TRUE)
find_package(Threads)
include(CheckIncludeFiles)
include(CheckCSourceCompiles)
if(MSVC)
set(CMAKE_REQUIRED_FLAGS "${CMAKE_C_FLAGS} /WX /W4")
else()
set(CMAKE_REQUIRED_LIBRARIES m)
set(CMAKE_REQUIRED_FLAGS "${CMAKE_C_FLAGS} -Werror -Wall")
endif()
if(Threads_FOUND AND CMAKE_USE_PTHREADS_INIT)
set(CMAKE_REQUIRED_LIBRARIES
"${CMAKE_REQUIRED_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT}")
check_c_source_compiles("
#include <pthread.h>
int main(int argc, char* argv[]) {
(void)PTHREAD_MUTEX_RECURSIVE;
(void)argv;
return argc;
}
" HAVE_PTHREAD_MUTEX_RECURSIVE_DEFN)
if(HAVE_PTHREAD_MUTEX_RECURSIVE_DEFN)
add_definitions(-DHAVE_PTHREAD_MUTEX_RECURSIVE=1)
endif()
endif()
# Set a default build type for single-configuration cmake generators if
# no build type is set.
if(NOT CMAKE_CONFIGURATION_TYPES AND NOT CMAKE_BUILD_TYPE)
set(CMAKE_BUILD_TYPE Release)
endif()
if(MSVC OR CMAKE_CONFIGURATION_TYPES)
# For multi-config systems and for Visual Studio, the debug version of
# the library has _d appended.
set(CMAKE_DEBUG_POSTFIX _d)
endif()
option(PROJ_TESTS "Enable build of collection of PROJ tests" ON)
boost_report_value(PROJ_TESTS)
if(PROJ_TESTS)
enable_testing()
endif()
include(ProjTest)
# Put the libraries and binaries that get built into directories at the
# top of the build tree rather than in hard-to-find leaf
# directories. This simplifies manual testing and the use of the build
# tree rather than installed Boost libraries.
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/lib)
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/lib)
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/bin)
link_directories(${CMAKE_LIBRARY_OUTPUT_DIRECTORY})
################################################################################
# Installation
################################################################################
include(ProjInstallPath)
set(BINDIR "${DEFAULT_BINDIR}"
CACHE PATH "The directory to install binaries into.")
set(LIBDIR "${DEFAULT_LIBDIR}"
CACHE PATH "The directory to install libraries into.")
set(DATADIR "${DEFAULT_DATADIR}"
CACHE PATH "The directory to install data files into.")
set(DOCDIR "${DEFAULT_DOCDIR}"
CACHE PATH "The directory to install doc files into.")
set(INCLUDEDIR "${DEFAULT_INCLUDEDIR}"
CACHE PATH "The directory to install includes into.")
set(CMAKECONFIGDIR "${DEFAULT_CMAKEDIR}"
CACHE PATH "The directory to install cmake config files into.")
################################################################################
# Build configured components
################################################################################
include_directories(${PROJ4_SOURCE_DIR}/src)
message(STATUS "")
add_subdirectory(data)
add_subdirectory(include)
add_subdirectory(src)
add_subdirectory(man)
add_subdirectory(cmake)
if(PROJ_TESTS)
add_subdirectory(test)
endif()
-77
View File
@@ -1,77 +0,0 @@
# Contributor Covenant Code of Conduct
## Our Pledge
In the interest of fostering an open and welcoming environment, we as
contributors and maintainers pledge to make participation in our project and
our community a harassment-free experience for everyone, regardless of age, body
size, disability, ethnicity, sex characteristics, gender identity and expression,
level of experience, education, socio-economic status, nationality, personal
appearance, race, religion, or sexual identity and orientation.
## Our Standards
Examples of behavior that contributes to creating a positive environment
include:
* Using welcoming and inclusive language
* Being respectful of differing viewpoints and experiences
* Gracefully accepting constructive criticism
* Focusing on what is best for the community
* Showing empathy towards other community members
Examples of unacceptable behavior by participants include:
* The use of sexualized language or imagery and unwelcome sexual attention or
advances
* Trolling, insulting/derogatory comments, and personal or political attacks
* Public or private harassment
* Publishing others' private information, such as a physical or electronic
address, without explicit permission
* Other conduct which could reasonably be considered inappropriate in a
professional setting
## Our Responsibilities
Project maintainers are responsible for clarifying the standards of acceptable
behavior and are expected to take appropriate and fair corrective action in
response to any instances of unacceptable behavior.
Project maintainers have the right and responsibility to remove, edit, or
reject comments, commits, code, wiki edits, issues, and other contributions
that are not aligned to this Code of Conduct, or to ban temporarily or
permanently any contributor for other behaviors that they deem inappropriate,
threatening, offensive, or harmful.
## Scope
This Code of Conduct applies within all project spaces, and it also applies when
an individual is representing the project or its community in public spaces.
Examples of representing a project or community include using an official
project e-mail address, posting via an official social media account, or acting
as an appointed representative at an online or offline event. Representation of
a project may be further defined and clarified by project maintainers.
## Enforcement
Instances of abusive, harassing, or otherwise unacceptable behavior may be
reported by contacting the project team at [kristianevers@gmail.com](mailto:kristianevers@gmail.com). All
complaints will be reviewed and investigated and will result in a response that
is deemed necessary and appropriate to the circumstances. The project team is
obligated to maintain confidentiality with regard to the reporter of an incident.
Further details of specific enforcement policies may be posted separately.
Project maintainers who do not follow or enforce the Code of Conduct in good
faith may face temporary or permanent repercussions as determined by other
members of the project's leadership.
## Attribution
This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4,
available at https://www.contributor-covenant.org/version/1/4/code-of-conduct.html
[homepage]: https://www.contributor-covenant.org
For answers to common questions about this code of conduct, see
https://www.contributor-covenant.org/faq
-135
View File
@@ -1,135 +0,0 @@
# How to contribute to PROJ.4
PROJ.4 has a wide and varied user base. Some are highly skilled geodesists with a deep
knowledge of map projections and reference systems, some are GIS software developers
and others are GIS users. All users, regardless of the profession or skill level,
has the ability to contribute to PROJ.4. Here's a few suggestion on how:
* Help PROJ.4-users that is less experienced than yourself.
* Write a bug report
* Request a new feature
* Write documentation for your favorite map projection
* Fix a bug
* Implement a new feature
In the following sections you can find some guidelines on how to contribute.
As PROJ.4 is managed on GitHub most contributions require that you have a GitHub
account. Familiarity with [issues](https://guides.github.com/features/issues/) and
the [GitHub Flow](https://guides.github.com/introduction/flow/) is an advantage.
## Help a fellow PROJ.4 user
The main forum for support for PROJ.4 is the mailing list. You can subscribe to
the mailing list [here](http://lists.osgeo.org/mailman/listinfo/proj) and read
the archive [here](http://lists.osgeo.org/pipermail/proj/).
If you have questions about the usage of PROJ.4 the mailing list is also the place to go.
Please *do not* use the GitHub issue tracker as a support forum. Your question is much
more likely to be answered on the mailing list, as many more people follow that than
the issue tracker.
## Adding bug reports
Bug reports are handled in the [issue tracker](https://github.com/OSGeo/PROJ/issues)
on PROJ.4's home on GitHub. Writing a good bug report is not easy. But fixing a poorly
documented bug is not easy either, so please put in the effort it takes to create a
thorough bug report.
A good bug report includes at least:
* A title that quickly explains the problem
* A description of the problem and how it can be reproduced
* Version of PROJ.4 being used
* Version numbers of any other relevant software being used, e.g. operating system
* A description of what already has been done to solve the problem
The more information that is given up front, the more likely it is that a developer
will find interest in solving the problem. You will probably get follow-up questions
after submitting a bug report. Please answer them in a timely manner if you have an
interest in getting the issue solved.
Finally, please only submit bug reports that are actually related to PROJ.4. If the
issue materializes in software that uses PROJ.4 it is likely a problem with that
particular software. Make sure that it actually is a PROJ.4 problem before you submit
an issue. If you can reproduce the problem only by using tools from PROJ.4 it is
definitely a problem with PROJ.4.
## Feature requests
Got an idea for a new feature in PROJ.4? Submit a thorough description of the new
feature in the [issue tracker](https://github.com/OSGeo/PROJ/issues). Please
include any technical documents that can help the developer make the new feature a
reality. An example of this could be a publicly available academic paper that
describes a new projection. Also, including a numerical test case will make it
much easier to verify that an implementation of your requested feature actually
works as you expect.
Note that not all feature requests are accepted.
## Write documentation
PROJ.4 is in dire need of better documentation. Any contributions of documentation
are greatly appreciated. The PROJ.4 documentation is available on [proj.org](https://proj.org).
The website is generated with [Sphinx](http://www.sphinx-doc.org/en/stable/). Contributions
to the documentation should be made as [Pull Requests](https://github.com/OSGeo/PROJ/pulls)
on GitHub.
If you intend to document one of PROJ.4's supported projections please use the
[Mercator projection](https://proj.org/operations/projections/merc.html) as a template.
## Code contributions
See [Code Contributions](https://proj.org/community/code_contributions.html)
#### Legalese
Committers are the front line gatekeepers to keep the code base clear of improperly contributed code.
It is important to the PROJ.4 users, developers and the OSGeo foundation to avoid contributing any
code to the project without it being clearly licensed under the project license.
Generally speaking the key issues are that those providing code to be included in the repository
understand that the code will be released under the MIT/X license, and that the person providing
the code has the right to contribute the code. For the committer themselves understanding about
the license is hopefully clear. For other contributors, the committer should verify the understanding
unless the committer is very comfortable that the contributor understands the license (for
instance frequent contributors).
If the contribution was developed on behalf of an employer (on work time, as part of a work project,
etc) then it is important that an appropriate representative of the employer understand that the
code will be contributed under the MIT/X license. The arrangement should be cleared with an
authorized supervisor/manager, etc.
The code should be developed by the contributor, or the code should be from a source which can be
rightfully contributed such as from the public domain, or from an open source project under a
compatible license.
All unusual situations need to be discussed and/or documented.
Committer should adhere to the following guidelines, and may be personally legally liable for
improperly contributing code to the source repository:
* Make sure the contributor (and possibly employer) is aware of the contribution terms.
* Code coming from a source other than the contributor (such as adapted from another project)
should be clearly marked as to the original source, copyright holders, license terms and so forth.
This information can be in the file headers, but should also be added to the project licensing
file if not exactly matching normal project licensing (COPYING).
* Existing copyright headers and license text should never be stripped from a file. If a copyright
holder wishes to give up copyright they must do so in writing to the foundation before copyright
messages are removed. If license terms are changed it has to be by agreement (written in email is
ok) of the copyright holders.
* Code with licenses requiring credit, or disclosure to users should be added to COPYING.
* When substantial contributions are added to a file (such as substantial patches) the
author/contributor should be added to the list of copyright holders for the file.
* If there is uncertainty about whether a change is proper to contribute to the code base, please
seek more information from the project steering committee, or the foundation legal counsel.
## Additional Resources
* [General GitHub documentation](https://help.github.com/)
* [GitHub pull request documentation](https://help.github.com/articles/about-pull-requests/)
## Acknowledgements
The _code contribution_ section of this CONTRIBUTING file is inspired by
[PDAL's](https://github.com/PDAL/PDAL/blob/master/CONTRIBUTING.md) and the _legalese_ section is
modified from [GDAL committer guidelines](https://trac.osgeo.org/gdal/wiki/rfc3_commiters)
+93 -743
View File
File diff suppressed because it is too large Load Diff
-51
View File
@@ -1,51 +0,0 @@
##
# OSGeo/PROJ
FROM ubuntu:18.04 as builder
MAINTAINER Howard Butler <howard@hobu.co>
ARG PROJ_VERSION=master
ARG DESTDIR="/build"
# Setup build env
RUN apt-get update -y \
&& apt-get install -y --fix-missing --no-install-recommends \
software-properties-common build-essential ca-certificates \
git make cmake wget unzip libtool automake \
zlib1g-dev libsqlite3-dev pkg-config sqlite3
RUN git clone https://github.com/OSGeo/PROJ.git \
&& cd PROJ \
&& ./autogen.sh \
&& ./configure --prefix=/usr \
&& make \
&& make install
FROM ubuntu:18.04 as runner
RUN date
RUN apt-get update; \
DEBIAN_FRONTEND=noninteractive apt-get install -y \
libsqlite3-0 \
curl unzip
# Put this first as this is rarely changing
RUN \
mkdir -p /usr/share/proj; \
curl -LOs https://download.osgeo.org/proj/proj-datumgrid-1.8.zip && unzip -j -u -o proj-datumgrid-1.8.zip -d /usr/share/proj; \
curl -LOs https://download.osgeo.org/proj/proj-datumgrid-europe-1.2.zip && unzip -j -u -o proj-datumgrid-europe-1.2.zip -d /usr/share/proj; \
curl -LOs https://download.osgeo.org/proj/proj-datumgrid-oceania-1.0.zip && unzip -j -u -o proj-datumgrid-oceania-1.0.zip -d /usr/share/proj; \
curl -LOs https://download.osgeo.org/proj/proj-datumgrid-world-1.0.zip && unzip -j -u -o proj-datumgrid-world-1.0.zip -d /usr/share/proj; \
curl -LOs https://download.osgeo.org/proj/proj-datumgrid-north-america-1.2.zip && unzip -j -u -o proj-datumgrid-north-america-1.2.zip -d /usr/share/proj; \
rm *.zip
COPY --from=builder /build/usr/share/proj/ /usr/share/proj/
COPY --from=builder /build/usr/include/ /usr/include/
COPY --from=builder /build/usr/bin/ /usr/bin/
COPY --from=builder /build/usr/lib/ /usr/lib/
-2443
View File
File diff suppressed because it is too large Load Diff
+37 -227
View File
@@ -1,248 +1,58 @@
Preparing a PROJ Release
===============================================================================
Preparing a PROJ.4 Release
==========================
Preparing a PROJ release is a three-step process. Before the actual release is
published we want to issue one or more release candidates to ensure that the
code is in fact ready to be released. That is step one. Step two starts when a
release candidate has been selected for promotion to final release. Step three
updates version numbers in the master branch to avoid confusion between
released code and code still in development.
1) Update the version number in configure.in (in AC_INIT()).
The three phases are described below.
2) Update the version number in proj_api.h (#define PJ_VERSION).
1 Release candidate
===============================================================================
3) Update the version number, and date in src/pj_release.c.
At least one release candidate is necessary before the final release is
published. In case more than one release candidate is needed most steps below
can be skipped depending on what prompted the release candidate 1+n. Steps 1.6
and 1.7 are mandatory for all release candidates, otherwise it will in most
cases only be necessary to update the NEWS section (1.3).
4) Update the version number in the -version-info definition in
src/Makefile.am. It consists of "current:revision:age".
Release candidates should be released about a week before the final release is
scheduled. When preparing major version releases it may be wise to issue the
release candidate earlier than that.
- If the library source code has changed at all since the last update,
then increment revision (c:r:a becomes c:r+1:a).
When a release candidate has not prompted any request for changes in 48 hours,
a motion for promotion to final release should be issued on the PROJ mailing
list. The PROJ PSC guidelines describes the rules for passing a motion.
- If any interfaces have been added, removed, or changed since the last
update, increment current, and set revision to 0.
1.1 Update ABI version numbers:
-------------------------------------------------------------------------------
- If any interfaces have been added since the last public release, then
increment age.
Determine the ABI version number. It consists of "current:revision:age". Follow
the steps below to determine the next ABI version number:
- If any interfaces have been removed since the last public release, then
set age to 0.
- If the library source code has changed at all since the last update,
then increment revision (c:r:a becomes c:r+1:a).
4.5) Run "automake" and "autoconf".
- If any interfaces have been added, removed, or changed since the last
update, increment current, and set revision to 0.
5) Add a note to the ChangeLog that a new release is being issued, and what
the release number is.
- If any interfaces have been added since the last public release, then
increment age.
6) Update NEWS file with summary of release changes.
- If any interfaces have been removed since the last public release, then
set age to 0.
7) Update the proj.spec file for the new version:
- PACKAGE_VERSION
- Source0
- %setup line
- rm -rf line
Update the following files with the new ABI version number:
9) Tag the release with a command like "cvs tag -F proj_4_4_3".
- `src/Makefile.am` Update -version-info
- `CMakelists.txt`: Update PROJ_BUILD_VERSION (cur:rev:age) and
PROJ_API_VERSION (current)
10) Do a "make dist-all" in the proj root directory. After some grinding
this should result in files like proj-4.4.3.tar.gz and proj-4.4.3.zip
being created. These are full source distributions.
*Commit the changes to master.*
11) Put these in the proj ftp area on ftp.remotesensing.org. This can be
done via scp using a command like the following.
scp proj-4.4.3.{tar.gz,zip} frankw@upload.osgeo.org:/osgeo/download/proj
1.2 Update man pages
-------------------------------------------------------------------------------
12) Announce the new release on the PROJ.4 and MetaCRS mailing lists.
Man pages are (mostly) automatically generated from the Sphinx docs. The pages
in man/man3/ was manually updated in 1.1. Here we update the pages in
man/man1/. Follow these steps:
13) Issue a new release report on Freshmeat.
- Update version number and date in `man/man3/pj_init.3` and
`man/man3/geodesic.3`
- Temporarily update version in `docs/source/conf.py`
- run `script/update_man.sh`
- Revert version number in `docs/source/conf.py`
http://freshmeat.net/projects/proj.4/
The `update_man.sh` script builds the man pages and commits the update man pages
to master.
NOTES:
1.3 Write release notes
-------------------------------------------------------------------------------
Update `NEWS` with descriptions of the changes since the last release.
Hopefully issues and pull requests that go into the new release have been
properly tagged with the milestone for the current release.
End the section by thanking the authors that contributed to the release. Get a
sorted list of contributors in descending order of activity:
```
git shortlog -sn x.y.z..HEAD | tac | awk '{$1=""; print $0}'
```
where `x.y.z` is the tag of the previous release. You may need to edit the list
slightly since not all authors has properly configured their names in git.
*Commit the changes to master.*
1.4 Update `CITATION`
-------------------------------------------------------------------------------
If needed, update the year in `CITATION`.
*Commit the changes to master.*
1.5 Create maintenance branch
-------------------------------------------------------------------------------
*Skip this step if you are preparing a patch release or RC2 and later.*
Create the branch:
```
git branch x.y
```
where `x` is the major version number and `y` is the minor version number. Bug
fixes found in the release candidates should be pushed to master and
subsequently cherry-picked to the maintenance branch.
*Push branch upstream.*
1.6 Prepare and upload archives
-------------------------------------------------------------------------------
Run autoconf and configure the build:
```
./autogen.sh
mkdir build
cd build
../configure
make dist
```
Rename the archives and generate MD5 sum files:
```
mv proj-x.y.z.tar.gz proj-x.y.zRCn.tar.gz
mv proj-x.y.z.zip proj-x.y.zRCn.zip
md5 proj-x.y.zRCn.tar.gz > proj-x.y.zRCn.tar.gz.md5
md5 proj-x.y.zRCn.zip > proj-x.y.zRCn.zip.md5
```
Upload to the OSGeo download server:
```
scp proj-x.y.zRCn.* warmerdam@download.osgeo.org:/osgeo/download/proj
```
Adjust version numbers and usernames accordingly.
1.7 Announce the release candidate
-------------------------------------------------------------------------------
Announce the release candidate on the PROJ mailing list.
1.8 Promotion to final release
-------------------------------------------------------------------------------
When you are confident that the latest release candidate is ready for promotion
to final release a motion for promotion should be issued on the PROJ mailing
list. Allow for a minimum of 48 hours for voting time.
2 Final release
===============================================================================
Barring a successful promotion process we can proceed with the final release.
2.1 Prepare and upload archives
-------------------------------------------------------------------------------
See step 1.6 above. Do not rename the archives with RC postfixes.
2.2 Update website
------------------------------------------------------------------------------
- Add the release notes from `NEWS` to `docs/source/news.rst`
- Update download links in `docs/source/download.rst`
- Update `$TRAVIS_BRANCH` in `travis\after_success.sh` to new maintenance
branch.
*Commit the changes to master and cherry-pick into maintenance branch.*
When pushed upstream the website will be update to the current version.
2.3 Tag the release
-------------------------------------------------------------------------------
Tag the release with:
```
git tag -a -m "Create tag x.y.z" x.y.z
git push --tags
```
2.4 Prepare the release on GitHub
-------------------------------------------------------------------------------
When the new tag is pushed upstream GitHub picks up that a new release has been
issued. Update the new release on https://github.com/OSGeo/PROJ/releases with
the release notes from `NEWS` and add the prepared source distribution archives
to the release (otherwise GitHub will just package the entire repository - we
don't want that).
2.5 Announce the new release
-------------------------------------------------------------------------------
The release should be announced on PROJ and MetaCRS mailing lists. Additionally
the release announcement should be sent to news_item@osgeo.org which will add
the announcement to osgeo.org and other OSGeo communication channels.
Make some noise on Twitter and other relevant social media.
3 Post final release
===============================================================================
3.1 Update version numbers
-------------------------------------------------------------------------------
PROJ uses [semantic versioning](http://semver.org/). Depending on the changes
in the release will be either a major, minor or patch release. Update the
version numbers in the files.
- configure.ac: Update the version number in AC_INIT().
- src/proj.h: Update PROJ_VERSION_MAJOR, PROJ_VERSION_MINOR and
PROJ_VERSION_PATCH.
- src/proj_api.h: Update PJ_VERSION.
- src/release.cpp: Update date to the scheduled release date.
- CMakelists.txt: Update proj_version()
- doc/source/conf.py: Update version number
*Commit changes. Either to master or maintenance branch depending on the nature
of the release.*
3.2 Disable website deployment when releasing a new non-bugfix version
-------------------------------------------------------------------------------
If the previous active version was, let's say, 6.1 and the new version is, let's say, 6.2,
then checkout 6.1 branch, and in travis/after_success.sh, remove the code
that causes commits to 6.1 to cause a website refresh, that is remove the
code under `if test "$TRAVIS_SECURE_ENV_VARS" = "true" -a "$TRAVIS_BRANCH" = "6.1"; then`.
Also edit docs/source/conf.py to change the active branch for documentation
in the `github_version` variable.
o Information about preparing binary releases, and RPMs should be formalized.
o A "beta" release step should likely be incorporated.
+1 -1
View File
@@ -59,7 +59,7 @@ the `configure' script does not know about. You can give `configure'
initial values for variables by setting them in the environment. Using
a Bourne-compatible shell, you can do that on the command line like
this:
CC=c99 CFLAGS=-O2 LIBS=-lposix ./configure
CC=c89 CFLAGS=-O2 LIBS=-lposix ./configure
Or on systems that have the `env' program, you can do it like this:
env CPPFLAGS=-I/usr/local/include LDFLAGS=-s ./configure
+2 -17
View File
@@ -1,20 +1,5 @@
SUBDIRS = include src man data cmake
DIST_SUBDIRS = include src man data cmake test
SUBDIRS = src man nad jniwrap
EXTRA_DIST = CMakeLists.txt CITATION README.md
pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA = proj.pc
EXTRA_DIST = makefile.vc nmake.opt
AUTOMAKE_OPTIONS = dist-zip
ACLOCAL_AMFLAGS = -I m4
check-local:
cd test; $(MAKE) check
README: README.md
fgrep -v "[![" $< > $@
clean-local:
$(RM) README
+613
View File
@@ -0,0 +1,613 @@
# Makefile.in generated by automake 1.10 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
@SET_MAKE@
VPATH = @srcdir@
pkgdatadir = $(datadir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c
INSTALL_HEADER = $(INSTALL_DATA)
transform = $(program_transform_name)
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
subdir = .
DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \
$(srcdir)/Makefile.in $(top_srcdir)/configure AUTHORS COPYING \
ChangeLog INSTALL NEWS config.guess config.sub depcomp \
install-sh ltconfig ltmain.sh missing mkinstalldirs
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/configure.in
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
configure.lineno config.status.lineno
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/src/proj_config.h
CONFIG_CLEAN_FILES =
SOURCES =
DIST_SOURCES =
RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
html-recursive info-recursive install-data-recursive \
install-dvi-recursive install-exec-recursive \
install-html-recursive install-info-recursive \
install-pdf-recursive install-ps-recursive install-recursive \
installcheck-recursive installdirs-recursive pdf-recursive \
ps-recursive uninstall-recursive
RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
distclean-recursive maintainer-clean-recursive
ETAGS = etags
CTAGS = ctags
DIST_SUBDIRS = $(SUBDIRS)
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
distdir = $(PACKAGE)-$(VERSION)
top_distdir = $(distdir)
am__remove_distdir = \
{ test ! -d $(distdir) \
|| { find $(distdir) -type d ! -perm -200 -exec chmod u+w {} ';' \
&& rm -fr $(distdir); }; }
DIST_ARCHIVES = $(distdir).tar.gz $(distdir).zip
GZIP_ENV = --best
distuninstallcheck_listfiles = find . -type f -print
distcleancheck_listfiles = find . -type f -print
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
AR = @AR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
AWK = @AWK@
CC = @CC@
CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
CXX = @CXX@
CXXCPP = @CXXCPP@
CXXDEPMODE = @CXXDEPMODE@
CXXFLAGS = @CXXFLAGS@
CYGPATH_W = @CYGPATH_W@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
ECHO = @ECHO@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
EXEEXT = @EXEEXT@
F77 = @F77@
FFLAGS = @FFLAGS@
GREP = @GREP@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
JNI_INCLUDE = @JNI_INCLUDE@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LIBTOOL = @LIBTOOL@
LN_S = @LN_S@
LTLIBOBJS = @LTLIBOBJS@
MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
MUTEX_SETTING = @MUTEX_SETTING@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
RANLIB = @RANLIB@
SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
STRIP = @STRIP@
VERSION = @VERSION@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@
ac_ct_F77 = @ac_ct_F77@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@
build = @build@
build_alias = @build_alias@
build_cpu = @build_cpu@
build_os = @build_os@
build_vendor = @build_vendor@
builddir = @builddir@
datadir = @datadir@
datarootdir = @datarootdir@
docdir = @docdir@
dvidir = @dvidir@
exec_prefix = @exec_prefix@
host = @host@
host_alias = @host_alias@
host_cpu = @host_cpu@
host_os = @host_os@
host_vendor = @host_vendor@
htmldir = @htmldir@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
SUBDIRS = src man nad jniwrap
EXTRA_DIST = makefile.vc nmake.opt
AUTOMAKE_OPTIONS = dist-zip
all: all-recursive
.SUFFIXES:
am--refresh:
@:
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
echo ' cd $(srcdir) && $(AUTOMAKE) --gnu '; \
cd $(srcdir) && $(AUTOMAKE) --gnu \
&& exit 0; \
exit 1;; \
esac; \
done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu Makefile'; \
cd $(top_srcdir) && \
$(AUTOMAKE) --gnu Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
echo ' $(SHELL) ./config.status'; \
$(SHELL) ./config.status;; \
*) \
echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \
cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \
esac;
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
$(SHELL) ./config.status --recheck
$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
cd $(srcdir) && $(AUTOCONF)
$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
mostlyclean-libtool:
-rm -f *.lo
clean-libtool:
-rm -rf .libs _libs
distclean-libtool:
-rm -f libtool
# This directory's subdirectories are mostly independent; you can cd
# into them and run `make' without going through this Makefile.
# To change the values of `make' variables: instead of editing Makefiles,
# (1) if the variable is set in `config.status', edit `config.status'
# (which will cause the Makefiles to be regenerated when you run `make');
# (2) otherwise, pass the desired values on the `make' command line.
$(RECURSIVE_TARGETS):
@failcom='exit 1'; \
for f in x $$MAKEFLAGS; do \
case $$f in \
*=* | --[!k]*);; \
*k*) failcom='fail=yes';; \
esac; \
done; \
dot_seen=no; \
target=`echo $@ | sed s/-recursive//`; \
list='$(SUBDIRS)'; for subdir in $$list; do \
echo "Making $$target in $$subdir"; \
if test "$$subdir" = "."; then \
dot_seen=yes; \
local_target="$$target-am"; \
else \
local_target="$$target"; \
fi; \
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|| eval $$failcom; \
done; \
if test "$$dot_seen" = "no"; then \
$(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
fi; test -z "$$fail"
$(RECURSIVE_CLEAN_TARGETS):
@failcom='exit 1'; \
for f in x $$MAKEFLAGS; do \
case $$f in \
*=* | --[!k]*);; \
*k*) failcom='fail=yes';; \
esac; \
done; \
dot_seen=no; \
case "$@" in \
distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
*) list='$(SUBDIRS)' ;; \
esac; \
rev=''; for subdir in $$list; do \
if test "$$subdir" = "."; then :; else \
rev="$$subdir $$rev"; \
fi; \
done; \
rev="$$rev ."; \
target=`echo $@ | sed s/-recursive//`; \
for subdir in $$rev; do \
echo "Making $$target in $$subdir"; \
if test "$$subdir" = "."; then \
local_target="$$target-am"; \
else \
local_target="$$target"; \
fi; \
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|| eval $$failcom; \
done && test -z "$$fail"
tags-recursive:
list='$(SUBDIRS)'; for subdir in $$list; do \
test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
done
ctags-recursive:
list='$(SUBDIRS)'; for subdir in $$list; do \
test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
done
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
mkid -fID $$unique
tags: TAGS
TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
tags=; \
here=`pwd`; \
if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
include_option=--etags-include; \
empty_fix=.; \
else \
include_option=--include; \
empty_fix=; \
fi; \
list='$(SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
test ! -f $$subdir/TAGS || \
tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
fi; \
done; \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
$$tags $$unique; \
fi
ctags: CTAGS
CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
tags=; \
here=`pwd`; \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
test -z "$(CTAGS_ARGS)$$tags$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$tags $$unique
GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \
&& cd $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) $$here
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
distdir: $(DISTFILES)
$(am__remove_distdir)
test -d $(distdir) || mkdir $(distdir)
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
dist_files=`for file in $$list; do echo $$file; done | \
sed -e "s|^$$srcdirstrip/||;t" \
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
case $$dist_files in \
*/*) $(MKDIR_P) `echo "$$dist_files" | \
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
sort -u` ;; \
esac; \
for file in $$dist_files; do \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
if test -d $$d/$$file; then \
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
fi; \
cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
else \
test -f $(distdir)/$$file \
|| cp -p $$d/$$file $(distdir)/$$file \
|| exit 1; \
fi; \
done
list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
test -d "$(distdir)/$$subdir" \
|| $(MKDIR_P) "$(distdir)/$$subdir" \
|| exit 1; \
distdir=`$(am__cd) $(distdir) && pwd`; \
top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
(cd $$subdir && \
$(MAKE) $(AM_MAKEFLAGS) \
top_distdir="$$top_distdir" \
distdir="$$distdir/$$subdir" \
am__remove_distdir=: \
am__skip_length_check=: \
distdir) \
|| exit 1; \
fi; \
done
-find $(distdir) -type d ! -perm -777 -exec chmod a+rwx {} \; -o \
! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
! -type d ! -perm -400 -exec chmod a+r {} \; -o \
! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \
|| chmod -R a+r $(distdir)
dist-gzip: distdir
tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
$(am__remove_distdir)
dist-bzip2: distdir
tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2
$(am__remove_distdir)
dist-tarZ: distdir
tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
$(am__remove_distdir)
dist-shar: distdir
shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
$(am__remove_distdir)
dist-zip: distdir
-rm -f $(distdir).zip
zip -rq $(distdir).zip $(distdir)
$(am__remove_distdir)
dist dist-all: distdir
tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
-rm -f $(distdir).zip
zip -rq $(distdir).zip $(distdir)
$(am__remove_distdir)
# This target untars the dist file and tries a VPATH configuration. Then
# it guarantees that the distribution is self-contained by making another
# tarfile.
distcheck: dist
case '$(DIST_ARCHIVES)' in \
*.tar.gz*) \
GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(am__untar) ;;\
*.tar.bz2*) \
bunzip2 -c $(distdir).tar.bz2 | $(am__untar) ;;\
*.tar.Z*) \
uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
*.shar.gz*) \
GZIP=$(GZIP_ENV) gunzip -c $(distdir).shar.gz | unshar ;;\
*.zip*) \
unzip $(distdir).zip ;;\
esac
chmod -R a-w $(distdir); chmod a+w $(distdir)
mkdir $(distdir)/_build
mkdir $(distdir)/_inst
chmod a-w $(distdir)
dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
&& dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
&& cd $(distdir)/_build \
&& ../configure --srcdir=.. --prefix="$$dc_install_base" \
$(DISTCHECK_CONFIGURE_FLAGS) \
&& $(MAKE) $(AM_MAKEFLAGS) \
&& $(MAKE) $(AM_MAKEFLAGS) dvi \
&& $(MAKE) $(AM_MAKEFLAGS) check \
&& $(MAKE) $(AM_MAKEFLAGS) install \
&& $(MAKE) $(AM_MAKEFLAGS) installcheck \
&& $(MAKE) $(AM_MAKEFLAGS) uninstall \
&& $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \
distuninstallcheck \
&& chmod -R a-w "$$dc_install_base" \
&& ({ \
(cd ../.. && umask 077 && mkdir "$$dc_destdir") \
&& $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \
&& $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \
&& $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \
distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \
} || { rm -rf "$$dc_destdir"; exit 1; }) \
&& rm -rf "$$dc_destdir" \
&& $(MAKE) $(AM_MAKEFLAGS) dist \
&& rm -rf $(DIST_ARCHIVES) \
&& $(MAKE) $(AM_MAKEFLAGS) distcleancheck
$(am__remove_distdir)
@(echo "$(distdir) archives ready for distribution: "; \
list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x'
distuninstallcheck:
@cd $(distuninstallcheck_dir) \
&& test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \
|| { echo "ERROR: files left after uninstall:" ; \
if test -n "$(DESTDIR)"; then \
echo " (check DESTDIR support)"; \
fi ; \
$(distuninstallcheck_listfiles) ; \
exit 1; } >&2
distcleancheck: distclean
@if test '$(srcdir)' = . ; then \
echo "ERROR: distcleancheck can only run from a VPATH build" ; \
exit 1 ; \
fi
@test `$(distcleancheck_listfiles) | wc -l` -eq 0 \
|| { echo "ERROR: files left in build directory after distclean:" ; \
$(distcleancheck_listfiles) ; \
exit 1; } >&2
check-am: all-am
check: check-recursive
all-am: Makefile
installdirs: installdirs-recursive
installdirs-am:
install: install-recursive
install-exec: install-exec-recursive
install-data: install-data-recursive
uninstall: uninstall-recursive
install-am: all-am
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
installcheck: installcheck-recursive
install-strip:
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
`test -z '$(STRIP)' || \
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
mostlyclean-generic:
clean-generic:
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
clean: clean-recursive
clean-am: clean-generic clean-libtool mostlyclean-am
distclean: distclean-recursive
-rm -f $(am__CONFIG_DISTCLEAN_FILES)
-rm -f Makefile
distclean-am: clean-am distclean-generic distclean-libtool \
distclean-tags
dvi: dvi-recursive
dvi-am:
html: html-recursive
info: info-recursive
info-am:
install-data-am:
install-dvi: install-dvi-recursive
install-exec-am:
install-html: install-html-recursive
install-info: install-info-recursive
install-man:
install-pdf: install-pdf-recursive
install-ps: install-ps-recursive
installcheck-am:
maintainer-clean: maintainer-clean-recursive
-rm -f $(am__CONFIG_DISTCLEAN_FILES)
-rm -rf $(top_srcdir)/autom4te.cache
-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic
mostlyclean: mostlyclean-recursive
mostlyclean-am: mostlyclean-generic mostlyclean-libtool
pdf: pdf-recursive
pdf-am:
ps: ps-recursive
ps-am:
uninstall-am:
.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) install-am \
install-strip
.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
all all-am am--refresh check check-am clean clean-generic \
clean-libtool ctags ctags-recursive dist dist-all dist-bzip2 \
dist-gzip dist-shar dist-tarZ dist-zip distcheck distclean \
distclean-generic distclean-libtool distclean-tags \
distcleancheck distdir distuninstallcheck dvi dvi-am html \
html-am info info-am install install-am install-data \
install-data-am install-dvi install-dvi-am install-exec \
install-exec-am install-html install-html-am install-info \
install-info-am install-man install-pdf install-pdf-am \
install-ps install-ps-am install-strip installcheck \
installcheck-am installdirs installdirs-am maintainer-clean \
maintainer-clean-generic mostlyclean mostlyclean-generic \
mostlyclean-libtool pdf pdf-am ps ps-am tags tags-recursive \
uninstall uninstall-am
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:
+35 -1188
View File
File diff suppressed because it is too large Load Diff
+130
View File
@@ -0,0 +1,130 @@
-------------------- P R O J . 4 --------------------
This is Release 4.4 of cartographic projection software.
PLEASE read the following information as well as READMEs in the src
and nad directories.
For more information on PROJ.4 maintenance please see the web page at:
http://www.remotesensing.org/proj
or
http://proj.maptools.org/
---------------------------------------------------
Installation:
-------------
FSF's configuration procedure is used to ease installation of the
PROJ.4 system.
The default destination path prefix for installed files is /usr/local.
Results from the installation script will be placed into subdirectories
bin, include, lib, man/man1 and man/man3. If this default path prefix
is proper, then execute:
./configure
If another path prefix is required, then execute:
./configure --prefix=/my/path
In either case, the directory of the prefix path must exist and be
writable by the installer.
After executing configure, execute:
make
make install
The install target will create, if necessary, all required sub-directories.
Windows Build
-------------
PROJ.4 can be built with Microsoft Visual C/C++ using the makefile.vc
in the PROJ directory. First edit the PROJ\nmake.opt and modify
the INSTDIR value at the top to point to the directory where
the PROJ tree shall be installed. If you want to install into
C:\PROJ, it can remain unchanged.
Then use the makefile.vc to build the software:
eg.
C:\> cd proj
C:\PROJ> nmake /f makefile.vc
C:\PROJ> nmake /f makefile.vc install-all
Note that you have to have the VC++ environment variables, and path
setup properly. This may involve running the VCVARS32.BAT script out
of the Visual C++ tree.
The makefile.vc builds proj.exe, proj.dll and proj.lib.
It should also be possible to build using the Unix instructions
and Cygwin32, but this hasn't been tested recently.
---------------------------------------------------
Distribution files and format.
------------------------------
Sources are distributed in one or more files. The principle elements
of the system are in a compress tar file named `PROJ.4.x.tar.gz' where
"x" will indicate level.sub-level of the release. For U.S. users
interested in NADCON datum shifting procedures, additional files
containing conversion matricies are distributed with the name
`PROJ.4.x.y.tar' where y is an uppercase letter starting with "A."
These supplementary files will contain compressed files and thus
the tar file is not compressed.
Interim reports on Rel. 4 proj are available in PostScript form as
*.ps.gz . New and old users are strongly recommended to carefully read
these manuals. They are supplements and NOT a replacement for the full
manual OF 90-284 (which new users should also obtain).
---------------------------------------------------
Principle new aspects of system:
--------------------------------
ANSI X3.159-1989 C code. Site must have ANSI C compiler and header files.
Several method of determining radius from specified ellipsoid.
Use of initialization files through +init=file:key. Default projection
specifications also may be defined in an ASCII file.
+inv option REMOVED and -I may be used in its place. Use of invproj
alias of proj still functions as per Rel.3.
+ellps=list and +proj=list REMOVED. Use respective -le and -lp.
+units= to specify cartesian coordinate system units. To get list
use -lu.
-v added to dump final cartographic parameters employed.
Addition of computing scale factors and angular distortion added through
-S option. Valuable for designing new projection parameter details.
-V option which verbosely lists projected point characteristics.
Programmers may use projection library with calls to pj_init,
pj_fwd, pj_inv and pj_transform.
Program nad2nad for conversion of data to and from NAD27 and NAD83
datums.
Program cs2cs for converting between coordinate systems, with optional
datum translation.
-------------------------------------------------------------
Things currently left undone:
----------------------------
proj_def.dat NOT fully in place. Needs additional settings for
many of the projections. Probably will not be completed until main
manual rewritten.
-140
View File
@@ -1,140 +0,0 @@
# PROJ
[![Travis Status](https://travis-ci.com/OSGeo/PROJ.svg?branch=master)](https://travis-ci.com/OSGeo/PROJ)
[![AppVeyor Status](https://ci.appveyor.com/api/projects/status/github/OSGeo/PROJ?branch=master&svg=true)](https://ci.appveyor.com/project/OSGeo/PROJ?branch=master)
[![Coveralls Status](https://coveralls.io/repos/github/OSGeo/PROJ/badge.svg?branch=master)](https://coveralls.io/github/OSGeo/PROJ?branch=master)
[![Gitter](https://badges.gitter.im/OSGeo/proj.4.svg)](https://gitter.im/OSGeo/proj.4)
[![Mailing List](https://img.shields.io/badge/PROJ-mailing%20list-4eb899.svg)](http://lists.osgeo.org/mailman/listinfo/proj)
[![Contributor Covenant](https://img.shields.io/badge/Contributor%20Covenant-v1.4%20adopted-ff69b4.svg)](CODE_OF_CONDUCT.md)
PROJ is a generic coordinate transformation software, that transforms
coordinates from one coordinate reference system (CRS) to another.
This includes cartographic projections as well as geodetic transformations.
For more information on the PROJ project please see the web page at:
https://proj.org/
The PROJ mailing list can be found at:
https://lists.osgeo.org/mailman/listinfo/proj/
See the NEWS file for changes between versions.
The following command line utilities are included in the PROJ package:
- `proj`: for cartographic projection of geodetic coordinates
- `cs2cs`: for transformation from one CRS to another CRS.
- `geod`: for geodesic (great circle) computations.
- `cct`: for generic Coordinate Conversions and Transformations.
- `gie`: the Geospatial Integrity Investigation Environment.
- `projinfo`: for geodetic object and coordinate operation queries
> More information on the utilities can be found on the [PROJ website](https://proj.org/apps).
## Installation
### Build dependencies
PROJ requires C and C++11 compilers.
It also requires SQLite3 (headers, library and executable). The minimum
version of SQLite3 required is 3.11
### Building with CMake
cd proj
mkdir build
cd build
cmake ..
cmake --build .
On Windows, one may need to specify generator:
cmake -G "Visual Studio 15 2017" ..
If the SQLite3 dependency is installed in a custom location, specify the
paths to the include directory and the library:
cmake -DSQLITE3_INCLUDE_DIR=/opt/SQLite/include -DSQLITE3_LIBRARY=/opt/SQLite/lib/libsqlite3.so ..
Tests are run with
ctest
The test suite requires that the proj-datumgrid package is installed
in `PROJ_LIB`.
### Building on Unix/Linux
FSF's configuration procedure is used to ease installation of the
PROJ system.
The default destination path prefix for installed files is `/usr/local`.
Results from the installation script will be placed into subdirectories
`bin`, `include`, `lib`, `man/man1` and `man/man3`.
If this default path prefix is proper, then execute:
./configure
See the note below if you are building PROJ directly from the git repository.
If another path prefix is required, then execute:
./configure --prefix=/my/path
In either case, the directory of the prefix path must exist and be
writable by the installer.
After executing configure, execute:
make
make install
The install target will create, if necessary, all required sub-directories.
Tests are run with
make check
The test suite requires that the proj-datumgrid package is installed
in `PROJ_LIB`.
#### Building from the git repository
If you are building from the git repository you have to first run
./autogen.sh
which will generate a configure script that can be used as described above.
### Distribution files and format
Sources are distributed in one or more files. The principle elements
of the system are stored in a compressed tar file named `proj-x.y.z.tar.gz` where
"x" will indicate the major release number, "y" indicates the minor release
number, and "z" indicates the patch number of the release.
In addition to the PROJ software package, distributions of datum
conversion grid files and PROJ parameter files are also available.
The grid package is distributed under the name `proj-datumgrid-x.y.zip`,
where "x" is the major release version and "y" is the minor release
version numbers. Similarly regional packages are distributed. The
regional packages contain resources that are not essential to the
functionality of PROJ but still of value to users in the region
specific to the package. All grids that were in proj-datumgrids-1.6
remain in proj-datumgrids-1.7; the regional datumgrid files contain
grids for datums not previously supported (prior to PROJ 5.0.0).
The resource packages can be downloaded from the [PROJ website](https://proj.org/download.html).
More info on the contents of the various resource packages can be
found at the
[proj-datumgrid GitHub repository](https://github.com/OSGeo/proj-datumgrid).
The resource file packages should be extracted to `PROJ_LIB`
where PROJ will find them after installation. The default location of
`PROJ_LIB` on UNIX-based systems is `/usr/local/share/proj` but it may
be changed to a different directory. On Windows you have to define
`PROJ_LIB` yourself.
### Citing PROJ in publications
See [CITATION](CITATION)
Vendored
+7484
View File
File diff suppressed because it is too large Load Diff
-65
View File
@@ -1,65 +0,0 @@
platform:
- x64
- x86
branches:
except:
- /(cherry-pick-)?backport-\d+-to-/
environment:
matrix:
# VS 2015
- VS_VERSION: Visual Studio 14
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
# VS 2017
- VS_VERSION: Visual Studio 15
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
shallow_clone: true
build_script:
- echo build_script
- git clone https://github.com/microsoft/vcpkg
- cd vcpkg
- bootstrap-vcpkg.bat
- set PATH=%CD%;%PATH%
- cd ..
- vcpkg install sqlite3:"%platform%"-windows
- vcpkg install tiff:"%platform%"-windows
- vcpkg install curl:"%platform%"-windows
- set SQLITE3_BIN=%APPVEYOR_BUILD_FOLDER%\sqlite3\bin
- mkdir %SQLITE3_BIN%
- ps: |
appveyor DownloadFile https://sqlite.org/2018/sqlite-tools-win32-x86-3250100.zip
7z x sqlite-tools-win32-x86-3250100.zip
- copy "%APPVEYOR_BUILD_FOLDER%"\sqlite-tools-win32-x86-3250100\sqlite3.exe %SQLITE3_BIN%
- set PATH=%PATH%;%SQLITE3_BIN%
- if "%platform%" == "x64" SET VS_FULL=%VS_VERSION% Win64
- if "%platform%" == "x64" SET BUILD_LIBPROJ_SHARED=ON
- if "%platform%" == "x86" SET VS_FULL=%VS_VERSION%
- if "%platform%" == "x86" SET BUILD_LIBPROJ_SHARED=OFF
- echo "%VS_FULL%"
#
- cd %APPVEYOR_BUILD_FOLDER%\data
- curl -O https://download.osgeo.org/proj/proj-datumgrid-1.8.zip
- 7z e -aoa -y proj-datumgrid-1.8.zip
- set PROJ_BUILD=%APPVEYOR_BUILD_FOLDER%\build
- mkdir %PROJ_BUILD%
- cd %PROJ_BUILD%
- set PROJ_DIR=%APPVEYOR_BUILD_FOLDER%\proj_dir
- cmake -G "%VS_FULL%" .. -DCMAKE_BUILD_TYPE=Release -DBUILD_LIBPROJ_SHARED="%BUILD_LIBPROJ_SHARED%" -DCMAKE_C_FLAGS="/WX" -DCMAKE_CXX_FLAGS="/WX" -DCMAKE_TOOLCHAIN_FILE=C:/projects/proj/vcpkg/scripts/buildsystems/vcpkg.cmake -DCMAKE_INSTALL_PREFIX="%PROJ_DIR%"
- cmake --build . --config Release --target install
- copy c:\projects\proj\vcpkg\installed\"%platform%"-windows\bin\*.dll %PROJ_DIR%\bin
- dir %PROJ_DIR%\bin
test_script:
- echo test_script
- set PROJ_LIB=%PROJ_DIR%\share\proj
- cd %PROJ_BUILD%
- ctest -V -C Release
- set PATH=%PATH%;%PROJ_DIR%\bin
- proj
deploy: off
+4 -3
View File
@@ -1,4 +1,5 @@
#!/bin/sh
# $Id$
#
# Autotools boostrapping script
#
@@ -26,9 +27,9 @@ if test "$OSTYPE" = "IRIX" -o "$OSTYPE" = "IRIX64"; then
fi
echo "Running aclocal"
aclocal -I ./m4 || giveup
echo "Running autoheader"
autoheader || giveup
aclocal || giveup
#echo "Running autoheader"
#autoheader || giveup
echo "Running libtoolize"
$LIBTOOLIZE --force --copy || giveup
echo "Running automake"
-47
View File
@@ -1,47 +0,0 @@
# proj-config.cmake for the install tree. It's installed in
# ${INSTALL_CMAKE_DIR} and @PROJECT_ROOT_DIR@ is the relative
# path to the root from there. (Note that the whole install tree can
# be relocated.)
file(RELATIVE_PATH PROJECT_ROOT_DIR
${CMAKE_INSTALL_PREFIX}/${CMAKECONFIGDIR} ${CMAKE_INSTALL_PREFIX})
# Variables needed by ${PROJECT_NAME_LOWER}-config-version.cmake
if (MSVC)
# For checking the compatibility of MSVC_TOOLSET_VERSION; see
# https://docs.microsoft.com/en-us/cpp/porting/overview-of-potential-upgrade-issues-visual-cpp
# Assume major version number is obtained by dropping the last decimal
# digit.
math (EXPR MSVC_TOOLSET_MAJOR "${MSVC_TOOLSET_VERSION}/10")
else ()
set (MSVC_TOOLSET_VERSION 0)
set (MSVC_TOOLSET_MAJOR 0)
endif ()
if (CMAKE_CROSSCOMPILING)
# Ensure that all "true" (resp. "false") settings are represented by
# the same string.
set (CMAKE_CROSSCOMPILING_STR "ON")
else ()
set (CMAKE_CROSSCOMPILING_STR "OFF")
endif ()
string(TOLOWER "${PROJECT_NAME}" PROJECT_NAME_LOWER)
configure_file(project-config.cmake.in project-config.cmake @ONLY)
configure_file(project-config-version.cmake.in
project-config-version.cmake @ONLY)
install(FILES
"${CMAKE_CURRENT_BINARY_DIR}/project-config.cmake"
DESTINATION "${CMAKECONFIGDIR}"
RENAME "${PROJECT_NAME_LOWER}-config.cmake")
install(FILES
"${CMAKE_CURRENT_BINARY_DIR}/project-config-version.cmake"
DESTINATION "${CMAKECONFIGDIR}"
RENAME "${PROJECT_NAME_LOWER}-config-version.cmake")
# Make information about the cmake targets (the library and the tools)
# available.
install(EXPORT targets
FILE ${PROJECT_NAME_LOWER}-targets.cmake
DESTINATION "${CMAKECONFIGDIR}")
install(EXPORT targets
NAMESPACE ${PROJECT_NAME}::
FILE ${PROJECT_NAME_LOWER}-namespace-targets.cmake
DESTINATION "${CMAKECONFIGDIR}")
-80
View File
@@ -1,80 +0,0 @@
# Find Sqlite3
# ~~~~~~~~~~~~
# Copyright (c) 2007, Martin Dobias <wonder.sk at gmail.com>
# Redistribution and use is allowed according to the terms of the BSD license.
# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
#
# CMake module to search for Sqlite3 library
#
# If it's found it sets SQLITE3_FOUND to TRUE
# and following variables are set:
# SQLITE3_INCLUDE_DIR
# SQLITE3_LIBRARY
# SQLITE3_VERSION
# find_path and find_library normally search standard locations
# before the specified paths. To search non-standard paths first,
# FIND_* is invoked first with specified paths and NO_DEFAULT_PATH
# and then again with no specified paths to search the default
# locations. When an earlier FIND_* succeeds, subsequent FIND_*s
# searching for the same item do nothing.
# try to use framework on mac
# want clean framework path, not unix compatibility path
if(APPLE)
if(CMAKE_FIND_FRAMEWORK MATCHES "FIRST"
OR CMAKE_FRAMEWORK_PATH MATCHES "ONLY"
OR NOT CMAKE_FIND_FRAMEWORK)
set(CMAKE_FIND_FRAMEWORK_save ${CMAKE_FIND_FRAMEWORK} CACHE STRING "" FORCE)
set(CMAKE_FIND_FRAMEWORK "ONLY" CACHE STRING "" FORCE)
#find_path(SQLITE3_INCLUDE_DIR SQLite3/sqlite3.h)
find_library(SQLITE3_LIBRARY SQLite3)
if(SQLITE3_LIBRARY)
# find_path doesn't add "Headers" for a framework
set(SQLITE3_INCLUDE_DIR ${SQLITE3_LIBRARY}/Headers
CACHE PATH "Path to a file.")
endif()
set(CMAKE_FIND_FRAMEWORK ${CMAKE_FIND_FRAMEWORK_save} CACHE STRING "" FORCE)
endif()
endif()
find_path(SQLITE3_INCLUDE_DIR sqlite3.h
"$ENV{LIB_DIR}/include"
"$ENV{LIB_DIR}/include/sqlite"
"$ENV{INCLUDE}"
)
find_library(SQLITE3_LIBRARY NAMES sqlite3_i sqlite3 PATHS
"$ENV{LIB_DIR}/lib"
"$ENV{LIB}/lib"
)
if(SQLITE3_INCLUDE_DIR AND SQLITE3_LIBRARY)
set(SQLITE3_FOUND TRUE)
endif()
# Extract version information from the header file
if(SQLITE3_INCLUDE_DIR)
file(STRINGS ${SQLITE3_INCLUDE_DIR}/sqlite3.h _ver_line
REGEX "^#define SQLITE_VERSION *\"[0-9]+\\.[0-9]+\\.[0-9]+\""
LIMIT_COUNT 1)
string(REGEX MATCH "[0-9]+\\.[0-9]+\\.[0-9]+"
SQLITE3_VERSION "${_ver_line}")
unset(_ver_line)
endif()
if(SQLITE3_FOUND)
if(NOT SQLITE3_FIND_QUIETLY)
message(STATUS "Found Sqlite3: ${SQLITE3_LIBRARY}")
message(STATUS "Sqlite3 version: ${SQLITE3_VERSION}")
endif()
else()
if(SQLITE3_FIND_REQUIRED)
message(FATAL_ERROR "Could not find Sqlite3")
endif()
endif()
-14
View File
@@ -1,14 +0,0 @@
EXTRA_DIST = CMakeLists.txt \
ProjInstallPath.cmake \
ProjUtilities.cmake \
proj_config.cmake.in \
ProjConfig.cmake \
ProjMac.cmake \
ProjTest.cmake \
ProjVersion.cmake \
policies.cmake \
proj_config.cmake.in \
project-config-version.cmake.in \
project-config.cmake.in \
FindSqlite3.cmake
-50
View File
@@ -1,50 +0,0 @@
################################################################################
# ProjConfig.cmake - CMake build configuration of PROJ library
################################################################################
# Copyright (C) 2010 Mateusz Loskot <mateusz@loskot.net>
#
# Distributed under the Boost Software License, Version 1.0.
# (See accompanying file LICENSE_1_0.txt or copy at
# https://www.boost.org/LICENSE_1_0.txt)
################################################################################
include(CheckIncludeFiles)
include(CheckLibraryExists)
include(CheckFunctionExists)
# check needed include file
check_include_files(dlfcn.h HAVE_DLFCN_H)
check_include_files(inttypes.h HAVE_INTTYPES_H)
check_include_files(memory.h HAVE_MEMORY_H)
check_include_files(stdint.h HAVE_STDINT_H)
check_include_files(stdlib.h HAVE_STDLIB_H)
check_include_files(string.h HAVE_STRING_H)
check_include_files(sys/stat.h HAVE_SYS_STAT_H)
check_include_files(sys/types.h HAVE_SYS_TYPES_H)
check_include_files(unistd.h HAVE_UNISTD_H)
check_include_files("stdlib.h;stdarg.h;string.h;float.h" STDC_HEADERS)
check_function_exists(localeconv HAVE_LOCALECONV)
check_function_exists(strerror HAVE_STRERROR)
# check libm need on unix
check_library_exists(m ceil "" HAVE_LIBM)
set(PACKAGE "proj")
set(PACKAGE_BUGREPORT "https://github.com/OSGeo/PROJ/issues")
set(PACKAGE_NAME "PROJ")
set(PACKAGE_STRING "PROJ ${${PROJECT_INTERN_NAME}_VERSION}")
set(PACKAGE_TARNAME "proj")
set(PACKAGE_URL "https://proj.org")
set(PACKAGE_VERSION "${${PROJECT_INTERN_NAME}_VERSION}")
# check if a second proj_config.h exists (created by ./configure)
# as this is within CMake's C_INCLUDES / CXX_INCLUDES
set(AUTOCONF_PROJ_CONFIG_H "${CMAKE_SOURCE_DIR}/src/proj_config.h")
if(EXISTS ${AUTOCONF_PROJ_CONFIG_H})
message(WARNING
"Autoconf's ${AUTOCONF_PROJ_CONFIG_H} may interfere with this "
"CMake build. Run 'make distclean' in the source directory "
"before CMake's build.")
endif()
configure_file(cmake/proj_config.cmake.in src/proj_config.h)
-76
View File
@@ -1,76 +0,0 @@
#----------------------------------------------
# installation path settings
#----------------------------------------------
if(WIN32)
if(DEFINED ENV{OSGEO4W_ROOT})
set(OSGEO4W_ROOT_DIR $ENV{OSGEO4W_ROOT})
else()
set(OSGEO4W_ROOT_DIR c:/OSGeo4W)
endif()
set(DEFAULT_PROJ_ROOT_DIR ${OSGEO4W_ROOT_DIR})
endif()
if(UNIX)
set(DEFAULT_PROJ_ROOT_DIR "/usr/local/")
endif()
if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT)
set(CMAKE_INSTALL_PREFIX ${DEFAULT_PROJ_ROOT_DIR}
CACHE PATH "Proj install prefix" FORCE)
endif()
#TODO
# for data install testing the PROJ_LIB envVar
string(TOLOWER "${PROJECT_NAME}" PROJECT_NAME_LOWER)
if(UNIX)
include(GNUInstallDirs)
set(DEFAULT_BIN_SUBDIR ${CMAKE_INSTALL_BINDIR})
set(DEFAULT_LIB_SUBDIR ${CMAKE_INSTALL_LIBDIR})
set(DEFAULT_DATA_SUBDIR ${CMAKE_INSTALL_DATAROOTDIR}/proj)
set(DEFAULT_INCLUDE_SUBDIR ${CMAKE_INSTALL_INCLUDEDIR})
set(DEFAULT_DOC_SUBDIR ${CMAKE_INSTALL_DOCDIR})
set(DEFAULT_CMAKE_SUBDIR ${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME_LOWER})
else()
# Common locations for Unix and Mac OS X
set(DEFAULT_BIN_SUBDIR bin)
set(DEFAULT_LIB_SUBDIR lib)
set(DEFAULT_DATA_SUBDIR share/proj)
set(DEFAULT_DOC_SUBDIR doc/proj)
set(DEFAULT_INCLUDE_SUBDIR include)
set(DEFAULT_DOC_SUBDIR share/doc/proj)
set(DEFAULT_CMAKE_SUBDIR lib/cmake/${PROJECT_NAME_LOWER})
endif()
# Locations are changeable by user to customize layout of PROJ installation
# (default values are platform-specific)
set(PROJ_BIN_SUBDIR ${DEFAULT_BIN_SUBDIR} CACHE STRING
"Subdirectory where executables will be installed")
set(PROJ_LIB_SUBDIR ${DEFAULT_LIB_SUBDIR} CACHE STRING
"Subdirectory where libraries will be installed")
set(PROJ_INCLUDE_SUBDIR ${DEFAULT_INCLUDE_SUBDIR} CACHE STRING
"Subdirectory where header files will be installed")
set(PROJ_DATA_SUBDIR ${DEFAULT_DATA_SUBDIR} CACHE STRING
"Subdirectory where data will be installed")
set(PROJ_DOC_SUBDIR ${DEFAULT_DOC_SUBDIR} CACHE STRING
"Subdirectory where doc will be installed")
set(PROJ_CMAKE_SUBDIR ${DEFAULT_CMAKE_SUBDIR} CACHE STRING
"Subdirectory where cmake proj-config file will be installed")
# Mark *DIR variables as advanced and dedicated to use by power-users only.
mark_as_advanced(
PROJ_ROOT_DIR
PROJ_BIN_SUBDIR
PROJ_LIB_SUBDIR
PROJ_INCLUDE_SUBDIR
PROJ_DATA_SUBDIR
PROJ_DOC_SUBDIR
PROJ_CMAKE_SUBDIR
)
set(DEFAULT_BINDIR "${PROJ_BIN_SUBDIR}")
set(DEFAULT_LIBDIR "${PROJ_LIB_SUBDIR}")
set(DEFAULT_DATADIR "${PROJ_DATA_SUBDIR}")
set(DEFAULT_DOCDIR "${PROJ_DOC_SUBDIR}")
set(DEFAULT_INCLUDEDIR "${PROJ_INCLUDE_SUBDIR}")
set(DEFAULT_CMAKEDIR "${PROJ_CMAKE_SUBDIR}")
-29
View File
@@ -1,29 +0,0 @@
if(APPLE)
set(FRAMEWORKDIR "Library/Frameworks" CACHE PATH
"the path to install framework")
set(BUNDLEDIR "Applications/OSGEO" CACHE PATH
"the path to install bundle")
file(RELATIVE_PATH BUNDLE_FRAME_REL_PATH_AAA "/${FRAMEWORKDIR}" "/aaa")
string(LENGTH ${BUNDLE_FRAME_REL_PATH_AAA} AAA_LENGTH)
math(EXPR RELATIVE_PATH_LENGTH "${AAA_LENGTH}-4")
string(SUBSTRING ${BUNDLE_FRAME_REL_PATH_AAA}
0 ${RELATIVE_PATH_LENGTH} BUNDLE_FRAME_REL_PATH)
set(PROJ_INSTALL_NAME_DIR
"@executable_path/${BUNDLE_FRAME_REL_PATH}/${FRAMEWORKDIR}")
else()
set(FRAMEWORKDIR "")
set(BUNDLEDIR "")
set(PROJ_INSTALL_NAME_DIR "")
endif()
set(PROJ_RESOURCES "")
if(APPLE)
option(BUILD_FRAMEWORKS_AND_BUNDLE
"if set to ON, build a library framework and application bundle, \
otherwise install classical UNIX bin/lib" OFF)
set(DEFAULT_BINDIR ${BUNDLEDIR})
boost_report_value(BUNDLEDIR)
boost_report_value(PROJ_INSTALL_NAME_DIR)
boost_report_value(FRAMEWORKDIR)
endif()
-53
View File
@@ -1,53 +0,0 @@
#
# add test with sh script
#
function(proj_test_set_properties TESTNAME)
set_tests_properties( ${TESTNAME}
PROPERTIES ENVIRONMENT "PROJ_IGNORE_USER_WRITABLE_DIRECTORY=YES;PROJ_LIB=${PROJECT_BINARY_DIR}/data/for_tests")
endfunction()
function(proj_add_test_script_sh SH_NAME BIN_USE)
if(UNIX)
get_filename_component(testname ${SH_NAME} NAME_WE)
set(TEST_OK 1)
if(ARGV2)
set(TEST_OK 0)
set(GRID_FULLNAME ${PROJECT_SOURCE_DIR}/data/${ARGV2})
if(EXISTS ${GRID_FULLNAME})
set(TEST_OK 1)
endif()
endif()
if(CMAKE_VERSION VERSION_LESS 2.8.4)
set(TEST_OK 0)
message(STATUS "test with bash script need a cmake version >= 2.8.4")
endif()
if(${TEST_OK})
add_test(NAME "${testname}"
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/data
COMMAND ${PROJECT_SOURCE_DIR}/test/cli/${SH_NAME}
${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${${BIN_USE}}
)
proj_test_set_properties(${testname})
endif()
endif()
endfunction()
function(proj_add_gie_test TESTNAME TESTCASE)
set(GIE_BIN $<TARGET_FILE_NAME:gie>)
set(TESTFILE ${CMAKE_SOURCE_DIR}/test/${TESTCASE})
add_test(NAME ${TESTNAME}
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/test
COMMAND ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${GIE_BIN}
${TESTFILE}
)
proj_test_set_properties(${TESTNAME})
endfunction()
-116
View File
@@ -1,116 +0,0 @@
################################################################################
# ProjUtilities.cmake - part of CMake configuration of PROJ library
#
# Based on BoostUtilities.cmake from CMake configuration for Boost
################################################################################
# Copyright (C) 2007 Douglas Gregor <doug.gregor@gmail.com>
# Copyright (C) 2007 Troy Straszheim
# Copyright (C) 2010 Mateusz Loskot <mateusz@loskot.net>
#
# Distributed under the Boost Software License, Version 1.0.
# See accompanying file LICENSE_1_0.txt or copy at
# https://www.boost.org/LICENSE_1_0.txt
################################################################################
# Macros in this module:
#
# proj_target_output_name:
#
################################################################################
#
# A big shout out to the cmake gurus @ compiz
#
function(colormsg)
string(ASCII 27 _escape)
set(WHITE "29")
set(GRAY "30")
set(RED "31")
set(GREEN "32")
set(YELLOW "33")
set(BLUE "34")
set(MAG "35")
set(CYAN "36")
foreach(color WHITE GRAY RED GREEN YELLOW BLUE MAG CYAN)
set(HI${color} "1\;${${color}}")
set(LO${color} "2\;${${color}}")
set(_${color}_ "4\;${${color}}")
set(_HI${color}_ "1\;4\;${${color}}")
set(_LO${color}_ "2\;4\;${${color}}")
endforeach()
set(str "")
set(coloron FALSE)
foreach(arg ${ARGV})
if(NOT ${${arg}} STREQUAL "")
if(CMAKE_COLOR_MAKEFILE)
set(str "${str}${_escape}[${${arg}}m")
set(coloron TRUE)
endif()
else()
set(str "${str}${arg}")
if(coloron)
set(str "${str}${_escape}[0m")
set(coloron FALSE)
endif()
set(str "${str} ")
endif()
endforeach()
message(STATUS ${str})
endfunction()
# colormsg("Colors:"
# WHITE "white" GRAY "gray" GREEN "green"
# RED "red" YELLOW "yellow" BLUE "blue" MAG "mag" CYAN "cyan"
# _WHITE_ "white" _GRAY_ "gray" _GREEN_ "green"
# _RED_ "red" _YELLOW_ "yellow" _BLUE_ "blue" _MAG_ "mag" _CYAN_ "cyan"
# _HIWHITE_ "white" _HIGRAY_ "gray" _HIGREEN_ "green"
# _HIRED_ "red" _HIYELLOW_ "yellow" _HIBLUE_ "blue" _HIMAG_ "mag"
# _HICYAN_ "cyan" HIWHITE "white" HIGRAY "gray" HIGREEN "green"
# HIRED "red" HIYELLOW "yellow" HIBLUE "blue" HIMAG "mag" HICYAN "cyan"
# "right?")
#
# pretty-prints the value of a variable so that the
# equals signs align
#
function(boost_report_value NAME)
string(LENGTH "${NAME}" varlen)
# LOG
#message(STATUS "boost_report_value: NAME=${NAME} (${varlen})")
#message(STATUS "boost_report_value: \${NAME}=${${NAME}}")
math(EXPR padding_len 40-${varlen})
string(SUBSTRING " "
0 ${padding_len} varpadding)
colormsg("${NAME}${varpadding} = ${${NAME}}")
endfunction()
#
# Generates output name for given target depending on platform and version.
# For instance, on Windows, dynamic link libraries get ABI version suffix
# proj_X_Y.dll.
#
function(proj_target_output_name TARGET_NAME OUTPUT_NAME)
if(NOT DEFINED TARGET_NAME)
message(SEND_ERROR "Error, the variable TARGET_NAME is not defined!")
endif()
if(NOT DEFINED ${PROJECT_INTERN_NAME}_VERSION)
message(SEND_ERROR
"Error, the variable ${${PROJECT_INTERN_NAME}_VERSION} is not defined!")
endif()
# On Windows, ABI version is specified using binary file name suffix.
# On Unix, suffix is empty and SOVERSION is used instead.
if(WIN32)
string(LENGTH "${${PROJECT_INTERN_NAME}_ABI_VERSION}" abilen)
if(abilen GREATER 0)
set(SUFFIX "_${${PROJECT_INTERN_NAME}_ABI_VERSION}")
endif()
endif()
set(${OUTPUT_NAME} ${TARGET_NAME}${SUFFIX} PARENT_SCOPE)
endfunction()
-53
View File
@@ -1,53 +0,0 @@
################################################################################
# ProjVersion.cmake - part of CMake configuration of PROJ library
################################################################################
# Copyright (C) 2010 Mateusz Loskot <mateusz@loskot.net>
#
# Distributed under the Boost Software License, Version 1.0
################################################################################
# Macros in this module:
#
# proj_version - defines version information for PROJ library
################################################################################
# Defines version information for PROJ library
#
# proj_version(MAJOR major_version MINOR minor_version PATCH patch_level)
#
# MAJOR.MINOR version is used to set SOVERSION
#
include(CMakeParseArguments)
macro(proj_version)
cmake_parse_arguments(THIS_VERSION
""
"MAJOR;MINOR;PATCH"
""
${ARGN})
# Set version components
set(${PROJECT_INTERN_NAME}_VERSION_MAJOR ${THIS_VERSION_MAJOR})
set(${PROJECT_INTERN_NAME}_VERSION_MINOR ${THIS_VERSION_MINOR})
set(${PROJECT_INTERN_NAME}_VERSION_PATCH ${THIS_VERSION_PATCH})
# Set VERSION string
set(${PROJECT_INTERN_NAME}_VERSION
"${${PROJECT_INTERN_NAME}_VERSION_MAJOR}.\
${${PROJECT_INTERN_NAME}_VERSION_MINOR}.\
${${PROJECT_INTERN_NAME}_VERSION_PATCH}")
# Set ABI version string used to name binary output
# On Windows, ABI version is specified using binary file name suffix.
if(WIN32)
set(${PROJECT_INTERN_NAME}_ABI_VERSION
"${${PROJECT_INTERN_NAME}_VERSION_MAJOR}_\
${${PROJECT_INTERN_NAME}_VERSION_MINOR}")
endif()
message(STATUS "")
boost_report_value(${PROJECT_INTERN_NAME}_VERSION)
if(WIN32)
boost_report_value(${PROJECT_INTERN_NAME}_ABI_VERSION)
endif()
endmacro()
-4
View File
@@ -1,4 +0,0 @@
if(CMAKE_MAJOR_VERSION GREATER 2)
cmake_policy(SET CMP0042 NEW) # osx rpath
cmake_policy(SET CMP0011 NEW) # policy setting
endif()
-69
View File
@@ -1,69 +0,0 @@
# Version checking for @PROJECT_NAME@
set (PACKAGE_VERSION "@PROJ_VERSION@")
set (PACKAGE_VERSION_MAJOR "@PROJ_VERSION_MAJOR@")
set (PACKAGE_VERSION_MINOR "@PROJ_VERSION_MINOR@")
set (PACKAGE_VERSION_PATCH "@PROJ_VERSION_PATCH@")
# These variable definitions parallel those in @PROJECT_NAME@'s
# cmake/CMakeLists.txt.
if (MSVC)
# For checking the compatibility of MSVC_TOOLSET_VERSION; see
# https://docs.microsoft.com/en-us/cpp/porting/overview-of-potential-upgrade-issues-visual-cpp
# Assume major version number is obtained by dropping the last decimal
# digit.
math (EXPR MSVC_TOOLSET_MAJOR "${MSVC_TOOLSET_VERSION}/10")
endif ()
if (CMAKE_CROSSCOMPILING)
# Ensure that all "true" (resp. "false") settings are represented by
# the same string.
set (CMAKE_CROSSCOMPILING_STR "ON")
else ()
set (CMAKE_CROSSCOMPILING_STR "OFF")
endif ()
if (NOT PACKAGE_FIND_NAME STREQUAL "@PROJECT_NAME@")
# Check package name (in particular, because of the way cmake finds
# package config files, the capitalization could easily be "wrong").
# This is necessary to ensure that the automatically generated
# variables, e.g., <package>_FOUND, are consistently spelled.
set (REASON "package = @PROJECT_NAME@, NOT ${PACKAGE_FIND_NAME}")
set (PACKAGE_VERSION_UNSUITABLE TRUE)
elseif (NOT (APPLE OR (NOT DEFINED CMAKE_SIZEOF_VOID_P) OR
CMAKE_SIZEOF_VOID_P EQUAL @CMAKE_SIZEOF_VOID_P@))
# Reject if there's a 32-bit/64-bit mismatch (not necessary with Apple
# since a multi-architecture library is built for that platform).
set (REASON "sizeof(*void) = @CMAKE_SIZEOF_VOID_P@")
set (PACKAGE_VERSION_UNSUITABLE TRUE)
elseif (MSVC AND NOT (
# toolset version must be at least as great as @PROJECT_NAME@'s
MSVC_TOOLSET_VERSION GREATER_EQUAL @MSVC_TOOLSET_VERSION@
# and major versions must match
AND MSVC_TOOLSET_MAJOR EQUAL @MSVC_TOOLSET_MAJOR@ ))
# Reject if there's a mismatch in MSVC compiler versions
set (REASON "MSVC_TOOLSET_VERSION = @MSVC_TOOLSET_VERSION@")
set (PACKAGE_VERSION_UNSUITABLE TRUE)
elseif (NOT CMAKE_CROSSCOMPILING_STR STREQUAL "@CMAKE_CROSSCOMPILING_STR@")
# Reject if there's a mismatch in ${CMAKE_CROSSCOMPILING}
set (REASON "cross-compiling = @CMAKE_CROSSCOMPILING@")
set (PACKAGE_VERSION_UNSUITABLE TRUE)
elseif (CMAKE_CROSSCOMPILING AND
NOT (CMAKE_SYSTEM_NAME STREQUAL "@CMAKE_SYSTEM_NAME@" AND
CMAKE_SYSTEM_PROCESSOR STREQUAL "@CMAKE_SYSTEM_PROCESSOR@"))
# Reject if cross-compiling and there's a mismatch in the target system
set (REASON "target = @CMAKE_SYSTEM_NAME@-@CMAKE_SYSTEM_PROCESSOR@")
set (PACKAGE_VERSION_UNSUITABLE TRUE)
elseif (PACKAGE_FIND_VERSION)
if (PACKAGE_FIND_VERSION VERSION_EQUAL PACKAGE_VERSION)
set (PACKAGE_VERSION_EXACT TRUE)
elseif (PACKAGE_FIND_VERSION VERSION_LESS PACKAGE_VERSION
AND PACKAGE_FIND_VERSION_MAJOR EQUAL PACKAGE_VERSION_MAJOR)
set (PACKAGE_VERSION_COMPATIBLE TRUE)
endif ()
endif ()
# If unsuitable, append the reason to the package version so that it's
# visible to the user.
if (PACKAGE_VERSION_UNSUITABLE)
set (PACKAGE_VERSION "${PACKAGE_VERSION} (${REASON})")
endif ()
-32
View File
@@ -1,32 +0,0 @@
# Configure @PROJECT_NAME@
#
# Set
# @PROJECT_NAME@_FOUND = 1
# @PROJECT_NAME@_INCLUDE_DIRS = /usr/local/include
# @PROJECT_NAME@_LIBRARIES = proj
# @PROJECT_NAME@_LIBRARY_DIRS = /usr/local/lib
# @PROJECT_NAME@_BINARY_DIRS = /usr/local/bin
# @PROJECT_NAME@_VERSION = 4.9.1 (for example)
message (STATUS "Reading ${CMAKE_CURRENT_LIST_FILE}")
# @PROJECT_NAME@_VERSION is set by version file
message (STATUS
"@PROJECT_NAME@ configuration, version ${@PROJECT_NAME@_VERSION}")
# Tell the user project where to find our headers and libraries
get_filename_component (_DIR ${CMAKE_CURRENT_LIST_FILE} PATH)
get_filename_component (_ROOT "${_DIR}/@PROJECT_ROOT_DIR@" ABSOLUTE)
set (@PROJECT_NAME@_INCLUDE_DIRS "${_ROOT}/@INCLUDEDIR@")
set (@PROJECT_NAME@_LIBRARY_DIRS "${_ROOT}/@LIBDIR@")
set (@PROJECT_NAME@_BINARY_DIRS "${_ROOT}/@BINDIR@")
set (@PROJECT_NAME@_LIBRARIES @PROJECT_NAME@::proj)
# Read in the exported definition of the library
include ("${_DIR}/@PROJECT_NAME_LOWER@-targets.cmake")
include ("${_DIR}/@PROJECT_NAME_LOWER@-namespace-targets.cmake")
unset (_ROOT)
unset (_DIR)
# For backward compatibility with old releases of libgeotiff
set (@PROJECT_NAME@_INCLUDE_DIR ${@PROJECT_NAME@_INCLUDE_DIRS})
BIN
View File
Binary file not shown.
+72
View File
@@ -0,0 +1,72 @@
// COMTest1.cpp : Implementation of DLL Exports.
// Note: Proxy/Stub Information
// To build a separate proxy/stub DLL,
// run nmake -f COMTest1ps.mk in the project directory.
#include "stdafx.h"
#include "resource.h"
#include <initguid.h>
#include "COMTest1.h"
#include "COMTest1_i.c"
#include "ProjDef.h"
CComModule _Module;
BEGIN_OBJECT_MAP(ObjectMap)
OBJECT_ENTRY(CLSID_ProjDef, CProjDef)
END_OBJECT_MAP()
/////////////////////////////////////////////////////////////////////////////
// DLL Entry Point
extern "C"
BOOL WINAPI DllMain(HINSTANCE hInstance, DWORD dwReason, LPVOID /*lpReserved*/)
{
if (dwReason == DLL_PROCESS_ATTACH)
{
_Module.Init(ObjectMap, hInstance, &LIBID_PROJ4Lib);
DisableThreadLibraryCalls(hInstance);
}
else if (dwReason == DLL_PROCESS_DETACH)
_Module.Term();
return TRUE; // ok
}
/////////////////////////////////////////////////////////////////////////////
// Used to determine whether the DLL can be unloaded by OLE
STDAPI DllCanUnloadNow(void)
{
return (_Module.GetLockCount()==0) ? S_OK : S_FALSE;
}
/////////////////////////////////////////////////////////////////////////////
// Returns a class factory to create an object of the requested type
STDAPI DllGetClassObject(REFCLSID rclsid, REFIID riid, LPVOID* ppv)
{
return _Module.GetClassObject(rclsid, riid, ppv);
}
/////////////////////////////////////////////////////////////////////////////
// DllRegisterServer - Adds entries to the system registry
STDAPI DllRegisterServer(void)
{
// registers object, typelib and all interfaces in typelib
return _Module.RegisterServer(TRUE);
}
/////////////////////////////////////////////////////////////////////////////
// DllUnregisterServer - Removes entries from the system registry
STDAPI DllUnregisterServer(void)
{
return _Module.UnregisterServer(TRUE);
}
+9
View File
@@ -0,0 +1,9 @@
; COMTest1.def : Declares the module parameters.
LIBRARY "PROJ4COM.DLL"
EXPORTS
DllCanUnloadNow @1 PRIVATE
DllGetClassObject @2 PRIVATE
DllRegisterServer @3 PRIVATE
DllUnregisterServer @4 PRIVATE
+350
View File
@@ -0,0 +1,350 @@
# Microsoft Developer Studio Project File - Name="COMTest1" - Package Owner=<4>
# Microsoft Developer Studio Generated Build File, Format Version 6.00
# ** DO NOT EDIT **
# TARGTYPE "Win32 (x86) Dynamic-Link Library" 0x0102
CFG=COMTest1 - Win32 Debug
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
!MESSAGE use the Export Makefile command and run
!MESSAGE
!MESSAGE NMAKE /f "COMTest1.mak".
!MESSAGE
!MESSAGE You can specify a configuration when running NMAKE
!MESSAGE by defining the macro CFG on the command line. For example:
!MESSAGE
!MESSAGE NMAKE /f "COMTest1.mak" CFG="COMTest1 - Win32 Debug"
!MESSAGE
!MESSAGE Possible choices for configuration are:
!MESSAGE
!MESSAGE "COMTest1 - Win32 Debug" (based on "Win32 (x86) Dynamic-Link Library")
!MESSAGE "COMTest1 - Win32 Unicode Debug" (based on "Win32 (x86) Dynamic-Link Library")
!MESSAGE "COMTest1 - Win32 Release MinSize" (based on "Win32 (x86) Dynamic-Link Library")
!MESSAGE "COMTest1 - Win32 Release MinDependency" (based on "Win32 (x86) Dynamic-Link Library")
!MESSAGE "COMTest1 - Win32 Unicode Release MinSize" (based on "Win32 (x86) Dynamic-Link Library")
!MESSAGE "COMTest1 - Win32 Unicode Release MinDependency" (based on "Win32 (x86) Dynamic-Link Library")
!MESSAGE
# Begin Project
# PROP AllowPerConfigDependencies 0
# PROP Scc_ProjName ""
# PROP Scc_LocalPath ""
CPP=cl.exe
MTL=midl.exe
RSC=rc.exe
!IF "$(CFG)" == "COMTest1 - Win32 Debug"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 1
# PROP BASE Output_Dir "Debug"
# PROP BASE Intermediate_Dir "Debug"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 1
# PROP Output_Dir "Debug"
# PROP Intermediate_Dir "Debug"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /MTd /W3 /Gm /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /Yu"stdafx.h" /FD /GZ /c
# ADD CPP /nologo /MTd /W3 /Gm /ZI /Od /I "C:\warmerda\proj\src" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /Yu"stdafx.h" /FD /GZ /c
# ADD BASE RSC /l 0x409 /d "_DEBUG"
# ADD RSC /l 0x409 /d "_DEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /debug /machine:I386 /pdbtype:sept
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib C:\warmerda\proj\src\proj_i.lib /nologo /subsystem:windows /dll /debug /machine:I386 /out:"Debug/PROJ4COM.dll" /pdbtype:sept
# Begin Custom Build - Performing registration
OutDir=.\Debug
TargetPath=.\Debug\PROJ4COM.dll
InputPath=.\Debug\PROJ4COM.dll
SOURCE="$(InputPath)"
"$(OutDir)\regsvr32.trg" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
regsvr32 /s /c "$(TargetPath)"
echo regsvr32 exec. time > "$(OutDir)\regsvr32.trg"
# End Custom Build
!ELSEIF "$(CFG)" == "COMTest1 - Win32 Unicode Debug"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 1
# PROP BASE Output_Dir "DebugU"
# PROP BASE Intermediate_Dir "DebugU"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 1
# PROP Output_Dir "DebugU"
# PROP Intermediate_Dir "DebugU"
# PROP Target_Dir ""
# ADD BASE CPP /nologo /MTd /W3 /Gm /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_USRDLL" /D "_UNICODE" /Yu"stdafx.h" /FD /GZ /c
# ADD CPP /nologo /MTd /W3 /Gm /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_USRDLL" /D "_UNICODE" /Yu"stdafx.h" /FD /GZ /c
# ADD BASE RSC /l 0x409 /d "_DEBUG"
# ADD RSC /l 0x409 /d "_DEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /debug /machine:I386 /pdbtype:sept
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /debug /machine:I386 /pdbtype:sept
# Begin Custom Build - Performing registration
OutDir=.\DebugU
TargetPath=.\DebugU\COMTest1.dll
InputPath=.\DebugU\COMTest1.dll
SOURCE="$(InputPath)"
"$(OutDir)\regsvr32.trg" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
if "%OS%"=="" goto NOTNT
if not "%OS%"=="Windows_NT" goto NOTNT
regsvr32 /s /c "$(TargetPath)"
echo regsvr32 exec. time > "$(OutDir)\regsvr32.trg"
goto end
:NOTNT
echo Warning : Cannot register Unicode DLL on Windows 95
:end
# End Custom Build
!ELSEIF "$(CFG)" == "COMTest1 - Win32 Release MinSize"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
# PROP BASE Output_Dir "ReleaseMinSize"
# PROP BASE Intermediate_Dir "ReleaseMinSize"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 0
# PROP Output_Dir "ReleaseMinSize"
# PROP Intermediate_Dir "ReleaseMinSize"
# PROP Target_Dir ""
# ADD BASE CPP /nologo /MT /W3 /O1 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "_ATL_DLL" /D "_ATL_MIN_CRT" /Yu"stdafx.h" /FD /c
# ADD CPP /nologo /MT /W3 /O1 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "_ATL_DLL" /D "_ATL_MIN_CRT" /Yu"stdafx.h" /FD /c
# ADD BASE RSC /l 0x409 /d "NDEBUG"
# ADD RSC /l 0x409 /d "NDEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /machine:I386
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /machine:I386
# Begin Custom Build - Performing registration
OutDir=.\ReleaseMinSize
TargetPath=.\ReleaseMinSize\COMTest1.dll
InputPath=.\ReleaseMinSize\COMTest1.dll
SOURCE="$(InputPath)"
"$(OutDir)\regsvr32.trg" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
regsvr32 /s /c "$(TargetPath)"
echo regsvr32 exec. time > "$(OutDir)\regsvr32.trg"
# End Custom Build
!ELSEIF "$(CFG)" == "COMTest1 - Win32 Release MinDependency"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
# PROP BASE Output_Dir "ReleaseMinDependency"
# PROP BASE Intermediate_Dir "ReleaseMinDependency"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 0
# PROP Output_Dir "ReleaseMinDependency"
# PROP Intermediate_Dir "ReleaseMinDependency"
# PROP Target_Dir ""
# ADD BASE CPP /nologo /MT /W3 /O1 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "_ATL_STATIC_REGISTRY" /D "_ATL_MIN_CRT" /Yu"stdafx.h" /FD /c
# ADD CPP /nologo /MT /W3 /O1 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "_ATL_STATIC_REGISTRY" /D "_ATL_MIN_CRT" /Yu"stdafx.h" /FD /c
# ADD BASE RSC /l 0x409 /d "NDEBUG"
# ADD RSC /l 0x409 /d "NDEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /machine:I386
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /machine:I386
# Begin Custom Build - Performing registration
OutDir=.\ReleaseMinDependency
TargetPath=.\ReleaseMinDependency\COMTest1.dll
InputPath=.\ReleaseMinDependency\COMTest1.dll
SOURCE="$(InputPath)"
"$(OutDir)\regsvr32.trg" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
regsvr32 /s /c "$(TargetPath)"
echo regsvr32 exec. time > "$(OutDir)\regsvr32.trg"
# End Custom Build
!ELSEIF "$(CFG)" == "COMTest1 - Win32 Unicode Release MinSize"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
# PROP BASE Output_Dir "ReleaseUMinSize"
# PROP BASE Intermediate_Dir "ReleaseUMinSize"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 0
# PROP Output_Dir "ReleaseUMinSize"
# PROP Intermediate_Dir "ReleaseUMinSize"
# PROP Target_Dir ""
# ADD BASE CPP /nologo /MT /W3 /O1 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_USRDLL" /D "_UNICODE" /D "_ATL_DLL" /D "_ATL_MIN_CRT" /Yu"stdafx.h" /FD /c
# ADD CPP /nologo /MT /W3 /O1 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_USRDLL" /D "_UNICODE" /D "_ATL_DLL" /D "_ATL_MIN_CRT" /Yu"stdafx.h" /FD /c
# ADD BASE RSC /l 0x409 /d "NDEBUG"
# ADD RSC /l 0x409 /d "NDEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /machine:I386
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /machine:I386
# Begin Custom Build - Performing registration
OutDir=.\ReleaseUMinSize
TargetPath=.\ReleaseUMinSize\COMTest1.dll
InputPath=.\ReleaseUMinSize\COMTest1.dll
SOURCE="$(InputPath)"
"$(OutDir)\regsvr32.trg" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
if "%OS%"=="" goto NOTNT
if not "%OS%"=="Windows_NT" goto NOTNT
regsvr32 /s /c "$(TargetPath)"
echo regsvr32 exec. time > "$(OutDir)\regsvr32.trg"
goto end
:NOTNT
echo Warning : Cannot register Unicode DLL on Windows 95
:end
# End Custom Build
!ELSEIF "$(CFG)" == "COMTest1 - Win32 Unicode Release MinDependency"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
# PROP BASE Output_Dir "ReleaseUMinDependency"
# PROP BASE Intermediate_Dir "ReleaseUMinDependency"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 0
# PROP Output_Dir "ReleaseUMinDependency"
# PROP Intermediate_Dir "ReleaseUMinDependency"
# PROP Target_Dir ""
# ADD BASE CPP /nologo /MT /W3 /O1 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_USRDLL" /D "_UNICODE" /D "_ATL_STATIC_REGISTRY" /D "_ATL_MIN_CRT" /Yu"stdafx.h" /FD /c
# ADD CPP /nologo /MT /W3 /O1 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_USRDLL" /D "_UNICODE" /D "_ATL_STATIC_REGISTRY" /D "_ATL_MIN_CRT" /Yu"stdafx.h" /FD /c
# ADD BASE RSC /l 0x409 /d "NDEBUG"
# ADD RSC /l 0x409 /d "NDEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /machine:I386
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /machine:I386
# Begin Custom Build - Performing registration
OutDir=.\ReleaseUMinDependency
TargetPath=.\ReleaseUMinDependency\COMTest1.dll
InputPath=.\ReleaseUMinDependency\COMTest1.dll
SOURCE="$(InputPath)"
"$(OutDir)\regsvr32.trg" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
if "%OS%"=="" goto NOTNT
if not "%OS%"=="Windows_NT" goto NOTNT
regsvr32 /s /c "$(TargetPath)"
echo regsvr32 exec. time > "$(OutDir)\regsvr32.trg"
goto end
:NOTNT
echo Warning : Cannot register Unicode DLL on Windows 95
:end
# End Custom Build
!ENDIF
# Begin Target
# Name "COMTest1 - Win32 Debug"
# Name "COMTest1 - Win32 Unicode Debug"
# Name "COMTest1 - Win32 Release MinSize"
# Name "COMTest1 - Win32 Release MinDependency"
# Name "COMTest1 - Win32 Unicode Release MinSize"
# Name "COMTest1 - Win32 Unicode Release MinDependency"
# Begin Group "Source Files"
# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
# Begin Source File
SOURCE=.\COMTest1.cpp
# End Source File
# Begin Source File
SOURCE=.\COMTest1.def
# End Source File
# Begin Source File
SOURCE=.\COMTest1.idl
!IF "$(CFG)" == "COMTest1 - Win32 Debug"
# ADD MTL /tlb ".\PROJ4COM.tlb" /h "COMTest1.h" /iid "COMTest1_i.c" /Oicf
!ELSEIF "$(CFG)" == "COMTest1 - Win32 Unicode Debug"
# ADD MTL /tlb ".\COMTest1.tlb" /h "COMTest1.h" /iid "COMTest1_i.c" /Oicf
!ELSEIF "$(CFG)" == "COMTest1 - Win32 Release MinSize"
# ADD MTL /tlb ".\COMTest1.tlb" /h "COMTest1.h" /iid "COMTest1_i.c" /Oicf
!ELSEIF "$(CFG)" == "COMTest1 - Win32 Release MinDependency"
# ADD MTL /tlb ".\COMTest1.tlb" /h "COMTest1.h" /iid "COMTest1_i.c" /Oicf
!ELSEIF "$(CFG)" == "COMTest1 - Win32 Unicode Release MinSize"
# ADD MTL /tlb ".\COMTest1.tlb" /h "COMTest1.h" /iid "COMTest1_i.c" /Oicf
!ELSEIF "$(CFG)" == "COMTest1 - Win32 Unicode Release MinDependency"
# ADD MTL /tlb ".\COMTest1.tlb" /h "COMTest1.h" /iid "COMTest1_i.c" /Oicf
!ENDIF
# End Source File
# Begin Source File
SOURCE=.\COMTest1.rc
# End Source File
# Begin Source File
SOURCE=.\ProjDef.cpp
# End Source File
# Begin Source File
SOURCE=.\StdAfx.cpp
# ADD CPP /Yc"stdafx.h"
# End Source File
# End Group
# Begin Group "Header Files"
# PROP Default_Filter "h;hpp;hxx;hm;inl"
# Begin Source File
SOURCE=.\ProjDef.h
# End Source File
# Begin Source File
SOURCE=.\Resource.h
# End Source File
# Begin Source File
SOURCE=.\StdAfx.h
# End Source File
# End Group
# Begin Group "Resource Files"
# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
# Begin Source File
SOURCE=.\ProjDef.rgs
# End Source File
# End Group
# End Target
# End Project
+29
View File
@@ -0,0 +1,29 @@
Microsoft Developer Studio Workspace File, Format Version 6.00
# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
###############################################################################
Project: "COMTest1"=.\COMTest1.dsp - Package Owner=<4>
Package=<5>
{{{
}}}
Package=<4>
{{{
}}}
###############################################################################
Global:
Package=<5>
{{{
}}}
Package=<3>
{{{
}}}
###############################################################################
+44
View File
@@ -0,0 +1,44 @@
// COMTest1.idl : IDL source for COMTest1.dll
//
// This file will be processed by the MIDL tool to
// produce the type library (COMTest1.tlb) and marshalling code.
import "oaidl.idl";
import "ocidl.idl";
[
object,
uuid(28849AA6-E8FB-4077-8D7A-D83CDFC2DC44),
dual,
helpstring("IProjDef Interface"),
pointer_default(unique)
]
interface IProjDef : IDispatch
{
[id(1), helpstring("method Initialize")] HRESULT Initialize([in] BSTR proj_string, [out, retval] int *success );
[id(2), helpstring("method TransformPoint3D")] HRESULT TransformPoint3D([in] IUnknown *srcProj,
[in,out] double *x, [in, out] double *y, [in, out] double *z, [out, retval] int *success );
[id(3), helpstring("method GetHandle")] HRESULT GetHandle([out, retval] long *pHandle );
[id(4), helpstring("method IsLatLong")] HRESULT IsLatLong([out, retval] int *result);
[id(5), helpstring("method GetLastError")] HRESULT GetLastError([out, retval] BSTR *error );
};
[
uuid(A0ADE3D8-9A85-4BD3-AD56-BFEF42495130),
version(1.0),
helpstring("PROJ.4")
]
library PROJ4Lib
{
importlib("stdole32.tlb");
importlib("stdole2.tlb");
[
uuid(B9B8F0A3-D9F8-4537-9A03-329DC9AE144C),
helpstring("ProjDef Class")
]
coclass ProjDef
{
[default] interface IProjDef;
};
};
BIN
View File
Binary file not shown.
BIN
View File
Binary file not shown.
+89
View File
@@ -0,0 +1,89 @@
<html>
<body>
<pre>
<h1>Build Log</h1>
<h3>
--------------------Configuration: COMTest1 - Win32 Debug--------------------
</h3>
<h3>Command Lines</h3>
Creating command line "midl.exe /tlb ".\PROJ4COM.tlb" /h "COMTest1.h" /iid "COMTest1_i.c" /Oicf "C:\warmerda\proj\com\COMTest1.idl""
Creating command line "rc.exe /l 0x409 /fo"Debug/COMTest1.res" /d "_DEBUG" "C:\warmerda\proj\com\COMTest1.rc""
Creating temporary file "C:\DOCUME~1\warmerda\LOCALS~1\Temp\RSP2F4.tmp" with contents
[
/nologo /MTd /W3 /Gm /ZI /Od /I "C:\warmerda\proj\src" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /Fp"Debug/COMTest1.pch" /Yu"stdafx.h" /Fo"Debug/" /Fd"Debug/" /FD /GZ /c
"C:\warmerda\proj\com\COMTest1.cpp"
"C:\warmerda\proj\com\ProjDef.cpp"
]
Creating command line "cl.exe @C:\DOCUME~1\warmerda\LOCALS~1\Temp\RSP2F4.tmp"
Creating temporary file "C:\DOCUME~1\warmerda\LOCALS~1\Temp\RSP2F5.tmp" with contents
[
/nologo /MTd /W3 /Gm /ZI /Od /I "C:\warmerda\proj\src" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /Fp"Debug/COMTest1.pch" /Yc"stdafx.h" /Fo"Debug/" /Fd"Debug/" /FD /GZ /c
"C:\warmerda\proj\com\StdAfx.cpp"
]
Creating command line "cl.exe @C:\DOCUME~1\warmerda\LOCALS~1\Temp\RSP2F5.tmp"
Creating temporary file "C:\DOCUME~1\warmerda\LOCALS~1\Temp\RSP2F6.tmp" with contents
[
kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib C:\warmerda\proj\src\proj_i.lib /nologo /subsystem:windows /dll /incremental:yes /pdb:"Debug/PROJ4COM.pdb" /debug /machine:I386 /def:".\COMTest1.def" /out:"Debug/PROJ4COM.dll" /implib:"Debug/PROJ4COM.lib" /pdbtype:sept
.\Debug\COMTest1.obj
.\Debug\ProjDef.obj
.\Debug\StdAfx.obj
.\Debug\COMTest1.res
]
Creating command line "link.exe @C:\DOCUME~1\warmerda\LOCALS~1\Temp\RSP2F6.tmp"
Creating temporary file "C:\DOCUME~1\warmerda\LOCALS~1\Temp\RSP2F7.bat" with contents
[
@echo off
regsvr32 /s /c ".\Debug\PROJ4COM.dll"
echo regsvr32 exec. time > ".\Debug\regsvr32.trg"
]
Creating command line "C:\DOCUME~1\warmerda\LOCALS~1\Temp\RSP2F7.bat"
Creating Type Library...
Microsoft (R) MIDL Compiler Version 5.01.0164
Copyright (c) Microsoft Corp 1991-1997. All rights reserved.
Processing C:\warmerda\proj\com\COMTest1.idl
COMTest1.idl
Processing C:\PROGRAM FILES\MICROSOFT SDK\INCLUDE\oaidl.idl
oaidl.idl
Processing C:\PROGRAM FILES\MICROSOFT SDK\INCLUDE\objidl.idl
objidl.idl
Processing C:\PROGRAM FILES\MICROSOFT SDK\INCLUDE\unknwn.idl
unknwn.idl
Processing C:\PROGRAM FILES\MICROSOFT SDK\INCLUDE\wtypes.idl
wtypes.idl
Processing C:\PROGRAM FILES\MICROSOFT SDK\INCLUDE\basetsd.h
basetsd.h
Processing C:\PROGRAM FILES\MICROSOFT SDK\INCLUDE\guiddef.h
guiddef.h
Processing C:\PROGRAM FILES\MICROSOFT SDK\INCLUDE\ocidl.idl
ocidl.idl
Processing C:\PROGRAM FILES\MICROSOFT SDK\INCLUDE\oleidl.idl
oleidl.idl
Processing C:\PROGRAM FILES\MICROSOFT SDK\INCLUDE\servprov.idl
servprov.idl
Processing C:\PROGRAM FILES\MICROSOFT SDK\INCLUDE\urlmon.idl
urlmon.idl
Processing C:\PROGRAM FILES\MICROSOFT SDK\INCLUDE\msxml.idl
msxml.idl
Processing C:\PROGRAM FILES\MICROSOFT SDK\INCLUDE\oaidl.acf
oaidl.acf
Processing C:\PROGRAM FILES\MICROSOFT SDK\INCLUDE\ocidl.acf
ocidl.acf
Compiling resources...
Compiling...
StdAfx.cpp
Compiling...
COMTest1.cpp
ProjDef.cpp
Generating Code...
Linking...
Creating library Debug/PROJ4COM.lib and object Debug/PROJ4COM.exp
<h3>Output Window</h3>
Performing registration
<h3>Results</h3>
PROJ4COM.dll - 0 error(s), 0 warning(s)
</pre>
</body>
</html>
+128
View File
@@ -0,0 +1,128 @@
//Microsoft Developer Studio generated resource script.
//
#include "resource.h"
#define APSTUDIO_READONLY_SYMBOLS
/////////////////////////////////////////////////////////////////////////////
//
// Generated from the TEXTINCLUDE 2 resource.
//
#include "winres.h"
/////////////////////////////////////////////////////////////////////////////
#undef APSTUDIO_READONLY_SYMBOLS
/////////////////////////////////////////////////////////////////////////////
// English (U.S.) resources
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)
#ifdef _WIN32
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
#pragma code_page(1252)
#endif //_WIN32
#ifdef APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// TEXTINCLUDE
//
1 TEXTINCLUDE DISCARDABLE
BEGIN
"resource.h\0"
END
2 TEXTINCLUDE DISCARDABLE
BEGIN
"#include ""winres.h""\r\n"
"\0"
END
3 TEXTINCLUDE DISCARDABLE
BEGIN
"1 TYPELIB ""COMTest1.tlb""\r\n"
"\0"
END
#endif // APSTUDIO_INVOKED
#ifndef _MAC
/////////////////////////////////////////////////////////////////////////////
//
// Version
//
VS_VERSION_INFO VERSIONINFO
FILEVERSION 1,0,0,1
PRODUCTVERSION 1,0,0,1
FILEFLAGSMASK 0x3fL
#ifdef _DEBUG
FILEFLAGS 0x1L
#else
FILEFLAGS 0x0L
#endif
FILEOS 0x4L
FILETYPE 0x2L
FILESUBTYPE 0x0L
BEGIN
BLOCK "StringFileInfo"
BEGIN
BLOCK "040904b0"
BEGIN
VALUE "Comments", "\0"
VALUE "CompanyName", "\0"
VALUE "FileDescription", "PROJ.4 COM Module\0"
VALUE "FileVersion", "1, 0, 0, 1\0"
VALUE "InternalName", "PROJ4\0"
VALUE "LegalCopyright", "Copyright 2005\0"
VALUE "LegalTrademarks", "\0"
VALUE "OLESelfRegister", "\0"
VALUE "OriginalFilename", "PROJ4COM.DLL\0"
VALUE "PrivateBuild", "\0"
VALUE "ProductName", "PROJ.4 COM\0"
VALUE "ProductVersion", "1, 0, 0, 1\0"
VALUE "SpecialBuild", "\0"
END
END
BLOCK "VarFileInfo"
BEGIN
VALUE "Translation", 0x409, 1200
END
END
#endif // !_MAC
/////////////////////////////////////////////////////////////////////////////
//
// REGISTRY
//
IDR_PROJDEF REGISTRY DISCARDABLE "ProjDef.rgs"
/////////////////////////////////////////////////////////////////////////////
//
// String Table
//
STRINGTABLE DISCARDABLE
BEGIN
IDS_PROJNAME "PROJ4COM"
END
#endif // English (U.S.) resources
/////////////////////////////////////////////////////////////////////////////
#ifndef APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// Generated from the TEXTINCLUDE 3 resource.
//
1 TYPELIB "PROJ4COM.tlb"
/////////////////////////////////////////////////////////////////////////////
#endif // not APSTUDIO_INVOKED
+571
View File
@@ -0,0 +1,571 @@
/* this ALWAYS GENERATED file contains the proxy stub code */
/* File created by MIDL compiler version 5.01.0164 */
/* at Tue Oct 18 23:21:00 2005
*/
/* Compiler settings for C:\warmerda\proj\com\COMTest1.idl:
Oicf (OptLev=i2), W1, Zp8, env=Win32, ms_ext, c_ext
error checks: allocation ref bounds_check enum stub_data
*/
//@@MIDL_FILE_HEADING( )
#define USE_STUBLESS_PROXY
/* verify that the <rpcproxy.h> version is high enough to compile this file*/
#ifndef __REDQ_RPCPROXY_H_VERSION__
#define __REQUIRED_RPCPROXY_H_VERSION__ 440
#endif
#include "rpcproxy.h"
#ifndef __RPCPROXY_H_VERSION__
#error this stub requires an updated version of <rpcproxy.h>
#endif // __RPCPROXY_H_VERSION__
#include "COMTest1.h"
#define TYPE_FORMAT_STRING_SIZE 81
#define PROC_FORMAT_STRING_SIZE 171
typedef struct _MIDL_TYPE_FORMAT_STRING
{
short Pad;
unsigned char Format[ TYPE_FORMAT_STRING_SIZE ];
} MIDL_TYPE_FORMAT_STRING;
typedef struct _MIDL_PROC_FORMAT_STRING
{
short Pad;
unsigned char Format[ PROC_FORMAT_STRING_SIZE ];
} MIDL_PROC_FORMAT_STRING;
extern const MIDL_TYPE_FORMAT_STRING __MIDL_TypeFormatString;
extern const MIDL_PROC_FORMAT_STRING __MIDL_ProcFormatString;
/* Object interface: IUnknown, ver. 0.0,
GUID={0x00000000,0x0000,0x0000,{0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x46}} */
/* Object interface: IDispatch, ver. 0.0,
GUID={0x00020400,0x0000,0x0000,{0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x46}} */
/* Object interface: IProjDef, ver. 0.0,
GUID={0x28849AA6,0xE8FB,0x4077,{0x8D,0x7A,0xD8,0x3C,0xDF,0xC2,0xDC,0x44}} */
extern const MIDL_STUB_DESC Object_StubDesc;
extern const MIDL_SERVER_INFO IProjDef_ServerInfo;
#pragma code_seg(".orpc")
extern const USER_MARSHAL_ROUTINE_QUADRUPLE UserMarshalRoutines[1];
static const MIDL_STUB_DESC Object_StubDesc =
{
0,
NdrOleAllocate,
NdrOleFree,
0,
0,
0,
0,
0,
__MIDL_TypeFormatString.Format,
1, /* -error bounds_check flag */
0x20000, /* Ndr library version */
0,
0x50100a4, /* MIDL Version 5.1.164 */
0,
UserMarshalRoutines,
0, /* notify & notify_flag routine table */
1, /* Flags */
0, /* Reserved3 */
0, /* Reserved4 */
0 /* Reserved5 */
};
static const unsigned short IProjDef_FormatStringOffsetTable[] =
{
(unsigned short) -1,
(unsigned short) -1,
(unsigned short) -1,
(unsigned short) -1,
0,
34,
86,
114,
142
};
static const MIDL_SERVER_INFO IProjDef_ServerInfo =
{
&Object_StubDesc,
0,
__MIDL_ProcFormatString.Format,
&IProjDef_FormatStringOffsetTable[-3],
0,
0,
0,
0
};
static const MIDL_STUBLESS_PROXY_INFO IProjDef_ProxyInfo =
{
&Object_StubDesc,
__MIDL_ProcFormatString.Format,
&IProjDef_FormatStringOffsetTable[-3],
0,
0,
0
};
CINTERFACE_PROXY_VTABLE(12) _IProjDefProxyVtbl =
{
&IProjDef_ProxyInfo,
&IID_IProjDef,
IUnknown_QueryInterface_Proxy,
IUnknown_AddRef_Proxy,
IUnknown_Release_Proxy ,
0 /* (void *)-1 /* IDispatch::GetTypeInfoCount */ ,
0 /* (void *)-1 /* IDispatch::GetTypeInfo */ ,
0 /* (void *)-1 /* IDispatch::GetIDsOfNames */ ,
0 /* IDispatch_Invoke_Proxy */ ,
(void *)-1 /* IProjDef::Initialize */ ,
(void *)-1 /* IProjDef::TransformPoint3D */ ,
(void *)-1 /* IProjDef::GetHandle */ ,
(void *)-1 /* IProjDef::IsLatLong */ ,
(void *)-1 /* IProjDef::GetLastError */
};
static const PRPC_STUB_FUNCTION IProjDef_table[] =
{
STUB_FORWARDING_FUNCTION,
STUB_FORWARDING_FUNCTION,
STUB_FORWARDING_FUNCTION,
STUB_FORWARDING_FUNCTION,
NdrStubCall2,
NdrStubCall2,
NdrStubCall2,
NdrStubCall2,
NdrStubCall2
};
CInterfaceStubVtbl _IProjDefStubVtbl =
{
&IID_IProjDef,
&IProjDef_ServerInfo,
12,
&IProjDef_table[-3],
CStdStubBuffer_DELEGATING_METHODS
};
#pragma data_seg(".rdata")
static const USER_MARSHAL_ROUTINE_QUADRUPLE UserMarshalRoutines[1] =
{
{
BSTR_UserSize
,BSTR_UserMarshal
,BSTR_UserUnmarshal
,BSTR_UserFree
}
};
#if !defined(__RPC_WIN32__)
#error Invalid build platform for this stub.
#endif
#if !(TARGET_IS_NT40_OR_LATER)
#error You need a Windows NT 4.0 or later to run this stub because it uses these features:
#error -Oif or -Oicf, [wire_marshal] or [user_marshal] attribute, more than 32 methods in the interface.
#error However, your C/C++ compilation flags indicate you intend to run this app on earlier systems.
#error This app will die there with the RPC_X_WRONG_STUB_VERSION error.
#endif
static const MIDL_PROC_FORMAT_STRING __MIDL_ProcFormatString =
{
0,
{
/* Procedure Initialize */
0x33, /* FC_AUTO_HANDLE */
0x6c, /* Old Flags: object, Oi2 */
/* 2 */ NdrFcLong( 0x0 ), /* 0 */
/* 6 */ NdrFcShort( 0x7 ), /* 7 */
#ifndef _ALPHA_
/* 8 */ NdrFcShort( 0x10 ), /* x86, MIPS, PPC Stack size/offset = 16 */
#else
NdrFcShort( 0x20 ), /* Alpha Stack size/offset = 32 */
#endif
/* 10 */ NdrFcShort( 0x0 ), /* 0 */
/* 12 */ NdrFcShort( 0x10 ), /* 16 */
/* 14 */ 0x6, /* Oi2 Flags: clt must size, has return, */
0x3, /* 3 */
/* Parameter proj_string */
/* 16 */ NdrFcShort( 0x8b ), /* Flags: must size, must free, in, by val, */
#ifndef _ALPHA_
/* 18 */ NdrFcShort( 0x4 ), /* x86, MIPS, PPC Stack size/offset = 4 */
#else
NdrFcShort( 0x8 ), /* Alpha Stack size/offset = 8 */
#endif
/* 20 */ NdrFcShort( 0x1a ), /* Type Offset=26 */
/* Parameter success */
/* 22 */ NdrFcShort( 0x2150 ), /* Flags: out, base type, simple ref, srv alloc size=8 */
#ifndef _ALPHA_
/* 24 */ NdrFcShort( 0x8 ), /* x86, MIPS, PPC Stack size/offset = 8 */
#else
NdrFcShort( 0x10 ), /* Alpha Stack size/offset = 16 */
#endif
/* 26 */ 0x8, /* FC_LONG */
0x0, /* 0 */
/* Return value */
/* 28 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */
#ifndef _ALPHA_
/* 30 */ NdrFcShort( 0xc ), /* x86, MIPS, PPC Stack size/offset = 12 */
#else
NdrFcShort( 0x18 ), /* Alpha Stack size/offset = 24 */
#endif
/* 32 */ 0x8, /* FC_LONG */
0x0, /* 0 */
/* Procedure TransformPoint3D */
/* 34 */ 0x33, /* FC_AUTO_HANDLE */
0x6c, /* Old Flags: object, Oi2 */
/* 36 */ NdrFcLong( 0x0 ), /* 0 */
/* 40 */ NdrFcShort( 0x8 ), /* 8 */
#ifndef _ALPHA_
/* 42 */ NdrFcShort( 0x1c ), /* x86, MIPS, PPC Stack size/offset = 28 */
#else
NdrFcShort( 0x38 ), /* Alpha Stack size/offset = 56 */
#endif
/* 44 */ NdrFcShort( 0x30 ), /* 48 */
/* 46 */ NdrFcShort( 0x40 ), /* 64 */
/* 48 */ 0x6, /* Oi2 Flags: clt must size, has return, */
0x6, /* 6 */
/* Parameter srcProj */
/* 50 */ NdrFcShort( 0xb ), /* Flags: must size, must free, in, */
#ifndef _ALPHA_
/* 52 */ NdrFcShort( 0x4 ), /* x86, MIPS, PPC Stack size/offset = 4 */
#else
NdrFcShort( 0x8 ), /* Alpha Stack size/offset = 8 */
#endif
/* 54 */ NdrFcShort( 0x28 ), /* Type Offset=40 */
/* Parameter x */
/* 56 */ NdrFcShort( 0x158 ), /* Flags: in, out, base type, simple ref, */
#ifndef _ALPHA_
/* 58 */ NdrFcShort( 0x8 ), /* x86, MIPS, PPC Stack size/offset = 8 */
#else
NdrFcShort( 0x10 ), /* Alpha Stack size/offset = 16 */
#endif
/* 60 */ 0xc, /* FC_DOUBLE */
0x0, /* 0 */
/* Parameter y */
/* 62 */ NdrFcShort( 0x158 ), /* Flags: in, out, base type, simple ref, */
#ifndef _ALPHA_
/* 64 */ NdrFcShort( 0xc ), /* x86, MIPS, PPC Stack size/offset = 12 */
#else
NdrFcShort( 0x18 ), /* Alpha Stack size/offset = 24 */
#endif
/* 66 */ 0xc, /* FC_DOUBLE */
0x0, /* 0 */
/* Parameter z */
/* 68 */ NdrFcShort( 0x158 ), /* Flags: in, out, base type, simple ref, */
#ifndef _ALPHA_
/* 70 */ NdrFcShort( 0x10 ), /* x86, MIPS, PPC Stack size/offset = 16 */
#else
NdrFcShort( 0x20 ), /* Alpha Stack size/offset = 32 */
#endif
/* 72 */ 0xc, /* FC_DOUBLE */
0x0, /* 0 */
/* Parameter success */
/* 74 */ NdrFcShort( 0x2150 ), /* Flags: out, base type, simple ref, srv alloc size=8 */
#ifndef _ALPHA_
/* 76 */ NdrFcShort( 0x14 ), /* x86, MIPS, PPC Stack size/offset = 20 */
#else
NdrFcShort( 0x28 ), /* Alpha Stack size/offset = 40 */
#endif
/* 78 */ 0x8, /* FC_LONG */
0x0, /* 0 */
/* Return value */
/* 80 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */
#ifndef _ALPHA_
/* 82 */ NdrFcShort( 0x18 ), /* x86, MIPS, PPC Stack size/offset = 24 */
#else
NdrFcShort( 0x30 ), /* Alpha Stack size/offset = 48 */
#endif
/* 84 */ 0x8, /* FC_LONG */
0x0, /* 0 */
/* Procedure GetHandle */
/* 86 */ 0x33, /* FC_AUTO_HANDLE */
0x6c, /* Old Flags: object, Oi2 */
/* 88 */ NdrFcLong( 0x0 ), /* 0 */
/* 92 */ NdrFcShort( 0x9 ), /* 9 */
#ifndef _ALPHA_
/* 94 */ NdrFcShort( 0xc ), /* x86, MIPS, PPC Stack size/offset = 12 */
#else
NdrFcShort( 0x18 ), /* Alpha Stack size/offset = 24 */
#endif
/* 96 */ NdrFcShort( 0x0 ), /* 0 */
/* 98 */ NdrFcShort( 0x10 ), /* 16 */
/* 100 */ 0x4, /* Oi2 Flags: has return, */
0x2, /* 2 */
/* Parameter pHandle */
/* 102 */ NdrFcShort( 0x2150 ), /* Flags: out, base type, simple ref, srv alloc size=8 */
#ifndef _ALPHA_
/* 104 */ NdrFcShort( 0x4 ), /* x86, MIPS, PPC Stack size/offset = 4 */
#else
NdrFcShort( 0x8 ), /* Alpha Stack size/offset = 8 */
#endif
/* 106 */ 0x8, /* FC_LONG */
0x0, /* 0 */
/* Return value */
/* 108 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */
#ifndef _ALPHA_
/* 110 */ NdrFcShort( 0x8 ), /* x86, MIPS, PPC Stack size/offset = 8 */
#else
NdrFcShort( 0x10 ), /* Alpha Stack size/offset = 16 */
#endif
/* 112 */ 0x8, /* FC_LONG */
0x0, /* 0 */
/* Procedure IsLatLong */
/* 114 */ 0x33, /* FC_AUTO_HANDLE */
0x6c, /* Old Flags: object, Oi2 */
/* 116 */ NdrFcLong( 0x0 ), /* 0 */
/* 120 */ NdrFcShort( 0xa ), /* 10 */
#ifndef _ALPHA_
/* 122 */ NdrFcShort( 0xc ), /* x86, MIPS, PPC Stack size/offset = 12 */
#else
NdrFcShort( 0x18 ), /* Alpha Stack size/offset = 24 */
#endif
/* 124 */ NdrFcShort( 0x0 ), /* 0 */
/* 126 */ NdrFcShort( 0x10 ), /* 16 */
/* 128 */ 0x4, /* Oi2 Flags: has return, */
0x2, /* 2 */
/* Parameter result */
/* 130 */ NdrFcShort( 0x2150 ), /* Flags: out, base type, simple ref, srv alloc size=8 */
#ifndef _ALPHA_
/* 132 */ NdrFcShort( 0x4 ), /* x86, MIPS, PPC Stack size/offset = 4 */
#else
NdrFcShort( 0x8 ), /* Alpha Stack size/offset = 8 */
#endif
/* 134 */ 0x8, /* FC_LONG */
0x0, /* 0 */
/* Return value */
/* 136 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */
#ifndef _ALPHA_
/* 138 */ NdrFcShort( 0x8 ), /* x86, MIPS, PPC Stack size/offset = 8 */
#else
NdrFcShort( 0x10 ), /* Alpha Stack size/offset = 16 */
#endif
/* 140 */ 0x8, /* FC_LONG */
0x0, /* 0 */
/* Procedure GetLastError */
/* 142 */ 0x33, /* FC_AUTO_HANDLE */
0x6c, /* Old Flags: object, Oi2 */
/* 144 */ NdrFcLong( 0x0 ), /* 0 */
/* 148 */ NdrFcShort( 0xb ), /* 11 */
#ifndef _ALPHA_
/* 150 */ NdrFcShort( 0xc ), /* x86, MIPS, PPC Stack size/offset = 12 */
#else
NdrFcShort( 0x18 ), /* Alpha Stack size/offset = 24 */
#endif
/* 152 */ NdrFcShort( 0x0 ), /* 0 */
/* 154 */ NdrFcShort( 0x8 ), /* 8 */
/* 156 */ 0x5, /* Oi2 Flags: srv must size, has return, */
0x2, /* 2 */
/* Parameter error */
/* 158 */ NdrFcShort( 0x2113 ), /* Flags: must size, must free, out, simple ref, srv alloc size=8 */
#ifndef _ALPHA_
/* 160 */ NdrFcShort( 0x4 ), /* x86, MIPS, PPC Stack size/offset = 4 */
#else
NdrFcShort( 0x8 ), /* Alpha Stack size/offset = 8 */
#endif
/* 162 */ NdrFcShort( 0x46 ), /* Type Offset=70 */
/* Return value */
/* 164 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */
#ifndef _ALPHA_
/* 166 */ NdrFcShort( 0x8 ), /* x86, MIPS, PPC Stack size/offset = 8 */
#else
NdrFcShort( 0x10 ), /* Alpha Stack size/offset = 16 */
#endif
/* 168 */ 0x8, /* FC_LONG */
0x0, /* 0 */
0x0
}
};
static const MIDL_TYPE_FORMAT_STRING __MIDL_TypeFormatString =
{
0,
{
NdrFcShort( 0x0 ), /* 0 */
/* 2 */
0x12, 0x0, /* FC_UP */
/* 4 */ NdrFcShort( 0xc ), /* Offset= 12 (16) */
/* 6 */
0x1b, /* FC_CARRAY */
0x1, /* 1 */
/* 8 */ NdrFcShort( 0x2 ), /* 2 */
/* 10 */ 0x9, /* Corr desc: FC_ULONG */
0x0, /* */
/* 12 */ NdrFcShort( 0xfffc ), /* -4 */
/* 14 */ 0x6, /* FC_SHORT */
0x5b, /* FC_END */
/* 16 */
0x17, /* FC_CSTRUCT */
0x3, /* 3 */
/* 18 */ NdrFcShort( 0x8 ), /* 8 */
/* 20 */ NdrFcShort( 0xfffffff2 ), /* Offset= -14 (6) */
/* 22 */ 0x8, /* FC_LONG */
0x8, /* FC_LONG */
/* 24 */ 0x5c, /* FC_PAD */
0x5b, /* FC_END */
/* 26 */ 0xb4, /* FC_USER_MARSHAL */
0x83, /* 131 */
/* 28 */ NdrFcShort( 0x0 ), /* 0 */
/* 30 */ NdrFcShort( 0x4 ), /* 4 */
/* 32 */ NdrFcShort( 0x0 ), /* 0 */
/* 34 */ NdrFcShort( 0xffffffe0 ), /* Offset= -32 (2) */
/* 36 */
0x11, 0xc, /* FC_RP [alloced_on_stack] [simple_pointer] */
/* 38 */ 0x8, /* FC_LONG */
0x5c, /* FC_PAD */
/* 40 */
0x2f, /* FC_IP */
0x5a, /* FC_CONSTANT_IID */
/* 42 */ NdrFcLong( 0x0 ), /* 0 */
/* 46 */ NdrFcShort( 0x0 ), /* 0 */
/* 48 */ NdrFcShort( 0x0 ), /* 0 */
/* 50 */ 0xc0, /* 192 */
0x0, /* 0 */
/* 52 */ 0x0, /* 0 */
0x0, /* 0 */
/* 54 */ 0x0, /* 0 */
0x0, /* 0 */
/* 56 */ 0x0, /* 0 */
0x46, /* 70 */
/* 58 */
0x11, 0x8, /* FC_RP [simple_pointer] */
/* 60 */ 0xc, /* FC_DOUBLE */
0x5c, /* FC_PAD */
/* 62 */
0x11, 0x4, /* FC_RP [alloced_on_stack] */
/* 64 */ NdrFcShort( 0x6 ), /* Offset= 6 (70) */
/* 66 */
0x13, 0x0, /* FC_OP */
/* 68 */ NdrFcShort( 0xffffffcc ), /* Offset= -52 (16) */
/* 70 */ 0xb4, /* FC_USER_MARSHAL */
0x83, /* 131 */
/* 72 */ NdrFcShort( 0x0 ), /* 0 */
/* 74 */ NdrFcShort( 0x4 ), /* 4 */
/* 76 */ NdrFcShort( 0x0 ), /* 0 */
/* 78 */ NdrFcShort( 0xfffffff4 ), /* Offset= -12 (66) */
0x0
}
};
const CInterfaceProxyVtbl * _COMTest1_ProxyVtblList[] =
{
( CInterfaceProxyVtbl *) &_IProjDefProxyVtbl,
0
};
const CInterfaceStubVtbl * _COMTest1_StubVtblList[] =
{
( CInterfaceStubVtbl *) &_IProjDefStubVtbl,
0
};
PCInterfaceName const _COMTest1_InterfaceNamesList[] =
{
"IProjDef",
0
};
const IID * _COMTest1_BaseIIDList[] =
{
&IID_IDispatch,
0
};
#define _COMTest1_CHECK_IID(n) IID_GENERIC_CHECK_IID( _COMTest1, pIID, n)
int __stdcall _COMTest1_IID_Lookup( const IID * pIID, int * pIndex )
{
if(!_COMTest1_CHECK_IID(0))
{
*pIndex = 0;
return 1;
}
return 0;
}
const ExtendedProxyFileInfo COMTest1_ProxyFileInfo =
{
(PCInterfaceProxyVtblList *) & _COMTest1_ProxyVtblList,
(PCInterfaceStubVtblList *) & _COMTest1_StubVtblList,
(const PCInterfaceName * ) & _COMTest1_InterfaceNamesList,
(const IID ** ) & _COMTest1_BaseIIDList,
& _COMTest1_IID_Lookup,
1,
2,
0, /* table of [async_uuid] interfaces */
0, /* Filler1 */
0, /* Filler2 */
0 /* Filler3 */
};
+11
View File
@@ -0,0 +1,11 @@
LIBRARY "COMTest1PS"
DESCRIPTION 'Proxy/Stub DLL'
EXPORTS
DllGetClassObject @1 PRIVATE
DllCanUnloadNow @2 PRIVATE
GetProxyDllInfo @3 PRIVATE
DllRegisterServer @4 PRIVATE
DllUnregisterServer @5 PRIVATE
+16
View File
@@ -0,0 +1,16 @@
COMTest1ps.dll: dlldata.obj COMTest1_p.obj COMTest1_i.obj
link /dll /out:COMTest1ps.dll /def:COMTest1ps.def /entry:DllMain dlldata.obj COMTest1_p.obj COMTest1_i.obj \
kernel32.lib rpcndr.lib rpcns4.lib rpcrt4.lib oleaut32.lib uuid.lib \
.c.obj:
cl /c /Ox /DWIN32 /D_WIN32_WINNT=0x0400 /DREGISTER_PROXY_DLL \
$<
clean:
@del COMTest1ps.dll
@del COMTest1ps.lib
@del COMTest1ps.exp
@del dlldata.obj
@del COMTest1_p.obj
@del COMTest1_i.obj
+115
View File
@@ -0,0 +1,115 @@
// ProjDef.cpp : Implementation of CProjDef
#include "stdafx.h"
#include "COMTest1.h"
#include "ProjDef.h"
#include "proj_api.h"
/////////////////////////////////////////////////////////////////////////////
// CProjDef
STDMETHODIMP CProjDef::Initialize(BSTR proj_string, int *success)
{
USES_CONVERSION;
psProj = pj_init_plus( W2A(proj_string) );
if( psProj != NULL )
*success = 1;
else
{
SetProjError( "pj_init_plus failed." );
//SetError( (const char *) W2A(proj_string) );
*success = 0;
}
return S_OK;
}
STDMETHODIMP CProjDef::TransformPoint3D(IUnknown *srcProj, double *x, double *y, double *z, int *success)
{
void *psProjOther;
IProjDef *srcProjReal;
srcProj->QueryInterface( IID_IProjDef, (void **) &srcProjReal );
srcProjReal->GetHandle( (long *) &psProjOther );
if( psProjOther == NULL || psProj == NULL )
{
SetError( "One of projections not set." );
*success = 0;
return E_FAIL;
}
if( pj_is_latlong( psProjOther ) )
{
*x *= DEG_TO_RAD;
*y *= DEG_TO_RAD;
}
*success = pj_transform( psProjOther, psProj, 1, 0, x, y, z ) == 0;
if( ! *success )
SetProjError( "pj_transform failed." );
else if( pj_is_latlong( psProj ) )
{
*x *= RAD_TO_DEG;
*y *= RAD_TO_DEG;
}
return S_OK;
}
STDMETHODIMP CProjDef::GetHandle(long *pHandle)
{
*pHandle = (long) psProj;
return S_OK;
}
STDMETHODIMP CProjDef::IsLatLong(int *result)
{
if( psProj != NULL )
{
*result = pj_is_latlong( (projPJ) psProj );
return S_OK;
}
else
{
SetError( "Projection is null" );
return E_FAIL;
}
}
STDMETHODIMP CProjDef::GetLastError( BSTR *error )
{
*error = SysAllocString( sLastError );
return S_OK;
}
void CProjDef::SetError( const char *pszMessage )
{
USES_CONVERSION;
if( sLastError != NULL )
{
SysFreeString( sLastError );
sLastError = NULL;
}
sLastError = SysAllocString( A2BSTR( pszMessage ) );
}
void CProjDef::SetProjError( const char *pszMessage )
{
int *pj_errno = pj_get_errno_ref();
if( *pj_errno > 0 )
SetError( strerror( *pj_errno ) );
else if( *pj_errno < 0 )
SetError( pj_strerrno( *pj_errno ) );
else
SetError( pszMessage );
}
Executable
+49
View File
@@ -0,0 +1,49 @@
// ProjDef.h : Declaration of the CProjDef
#ifndef __PROJDEF_H_
#define __PROJDEF_H_
#include "resource.h" // main symbols
/////////////////////////////////////////////////////////////////////////////
// CProjDef
class ATL_NO_VTABLE CProjDef :
public CComObjectRootEx<CComMultiThreadModel>,
public CComCoClass<CProjDef, &CLSID_ProjDef>,
public IDispatchImpl<IProjDef, &IID_IProjDef, &LIBID_PROJ4Lib>
{
public:
CProjDef()
{
psProj = NULL;
sLastError = NULL;
SetError("");
}
DECLARE_REGISTRY_RESOURCEID(IDR_PROJDEF)
DECLARE_PROTECT_FINAL_CONSTRUCT()
BEGIN_COM_MAP(CProjDef)
COM_INTERFACE_ENTRY(IProjDef)
COM_INTERFACE_ENTRY(IDispatch)
END_COM_MAP()
// IProjDef
public:
STDMETHOD(GetLastError)( BSTR *error );
STDMETHOD(IsLatLong)(/*[out]*/ int *result);
STDMETHOD(GetHandle)(long *pHandle);
STDMETHOD(TransformPoint3D)(IUnknown *srcProj, double *x, double *y, double *z, int *success);
STDMETHOD(Initialize)(BSTR proj_string, int *success);
private:
void SetError( const char *pszMessage );
void SetProjError( const char *pszMessage );
BSTR sLastError;
void *psProj;
};
#endif //__PROJDEF_H_
+26
View File
@@ -0,0 +1,26 @@
HKCR
{
COMTest1.ProjDef.1 = s 'ProjDef Class'
{
CLSID = s '{B9B8F0A3-D9F8-4537-9A03-329DC9AE144C}'
}
COMTest1.ProjDef = s 'ProjDef Class'
{
CLSID = s '{B9B8F0A3-D9F8-4537-9A03-329DC9AE144C}'
CurVer = s 'PROJ4.ProjDef.1'
}
NoRemove CLSID
{
ForceRemove {B9B8F0A3-D9F8-4537-9A03-329DC9AE144C} = s 'ProjDef Class'
{
ProgID = s 'PROJ4.ProjDef.1'
VersionIndependentProgID = s 'PROJ4.ProjDef'
ForceRemove 'Programmable'
InprocServer32 = s '%MODULE%'
{
val ThreadingModel = s 'Both'
}
'TypeLib' = s '{A0ADE3D8-9A85-4BD3-AD56-BFEF42495130}'
}
}
}
Executable
+41
View File
@@ -0,0 +1,41 @@
PROJ.4 COM Interface
====================
This directory contains a Visual Studio 6 project to build
a COM object with a partial interface to PROJ.4.
Once built, you should be able to:
regsvr32 debug\proj4com.dll
Then in VB6:
o Add the type library as a resource and enable it.
o Setup code like the following:
Private Sub Command1_Click()
Dim pUTM As PROJ4Lib.IProjDef
Dim pLL As PROJ4Lib.IProjDef
Set pUTM = New PROJ4Lib.ProjDef
Set pLL = New PROJ4Lib.ProjDef
pUTM.Initialize ("+proj=utm +zone=11 +datum=WGS84")
pLL.Initialize ("+proj=latlong +datum=WGS84")
Dim X As Double, Y As Double, Z As Double
X = 25000
Y = 3000000
Z = 0
MsgBox X & " " & Y
If pLL.TransformPoint3D(pUTM, X, Y, Z) = 0 Then
MsgBox "TransformPoint3D " & pLL.GetLastError()
End If
MsgBox X & " " & Y
End Sub
Executable
+12
View File
@@ -0,0 +1,12 @@
// stdafx.cpp : source file that includes just the standard includes
// stdafx.pch will be the pre-compiled header
// stdafx.obj will contain the pre-compiled type information
#include "stdafx.h"
#ifdef _ATL_STATIC_REGISTRY
#include <statreg.h>
#include <statreg.cpp>
#endif
#include <atlimpl.cpp>
Executable
+27
View File
@@ -0,0 +1,27 @@
// stdafx.h : include file for standard system include files,
// or project specific include files that are used frequently,
// but are changed infrequently
#if !defined(AFX_STDAFX_H__760250DA_0BD5_40FD_AC2A_6DDA09FFA21E__INCLUDED_)
#define AFX_STDAFX_H__760250DA_0BD5_40FD_AC2A_6DDA09FFA21E__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#define STRICT
#ifndef _WIN32_WINNT
#define _WIN32_WINNT 0x0400
#endif
#define _ATL_APARTMENT_THREADED
#include <atlbase.h>
//You may derive a class from CComModule and use it if you want to override
//something, but do not change the name of _Module
extern CComModule _Module;
#include <atlcom.h>
//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
#endif // !defined(AFX_STDAFX_H__760250DA_0BD5_40FD_AC2A_6DDA09FFA21E__INCLUDED)
+50
View File
@@ -0,0 +1,50 @@
VERSION 5.00
Begin VB.Form Form1
Caption = "Form1"
ClientHeight = 3090
ClientLeft = 60
ClientTop = 450
ClientWidth = 4680
LinkTopic = "Form1"
ScaleHeight = 3090
ScaleWidth = 4680
StartUpPosition = 3 'Windows Default
Begin VB.CommandButton Command1
Caption = "Command1"
Height = 615
Left = 1680
TabIndex = 0
Top = 2160
Width = 975
End
End
Attribute VB_Name = "Form1"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Private Sub Command1_Click()
Dim pUTM As PROJ4Lib.IProjDef
Dim pLL As PROJ4Lib.IProjDef
Set pUTM = New PROJ4Lib.ProjDef
Set pLL = New PROJ4Lib.ProjDef
pUTM.Initialize ("+proj=utm +zone=11 +datum=WGS84")
pLL.Initialize ("+proj=latlong +datum=WGS84")
Dim X As Double, Y As Double, Z As Double
X = 25000
Y = 3000000
Z = 0
MsgBox X & " " & Y
If pLL.TransformPoint3D(pUTM, X, Y, Z) = 0 Then
MsgBox "TransformPoint3D " & pLL.GetLastError()
End If
MsgBox X & " " & Y
End Sub
Executable
+38
View File
@@ -0,0 +1,38 @@
/*********************************************************
DllData file -- generated by MIDL compiler
DO NOT ALTER THIS FILE
This file is regenerated by MIDL on every IDL file compile.
To completely reconstruct this file, delete it and rerun MIDL
on all the IDL files in this DLL, specifying this file for the
/dlldata command line option
*********************************************************/
#define PROXY_DELEGATION
#include <rpcproxy.h>
#ifdef __cplusplus
extern "C" {
#endif
EXTERN_PROXY_FILE( COMTest1 )
PROXYFILE_LIST_START
/* Start of list */
REFERENCE_PROXY_FILE( COMTest1 ),
/* End of list */
PROXYFILE_LIST_END
DLLDATA_ROUTINES( aProxyFileList, GET_DLL_CLSID )
#ifdef __cplusplus
} /*extern "C" */
#endif
/* end of generated dlldata file */
Executable
+17
View File
@@ -0,0 +1,17 @@
//{{NO_DEPENDENCIES}}
// Microsoft Developer Studio generated include file.
// Used by COMTest1.rc
//
#define IDS_PROJNAME 100
#define IDR_PROJDEF 101
// Next default values for new objects
//
#ifdef APSTUDIO_INVOKED
#ifndef APSTUDIO_READONLY_SYMBOLS
#define _APS_NEXT_RESOURCE_VALUE 201
#define _APS_NEXT_COMMAND_VALUE 32768
#define _APS_NEXT_CONTROL_VALUE 201
#define _APS_NEXT_SYMED_VALUE 102
#endif
#endif
Vendored Executable
+1516
View File
File diff suppressed because it is too large Load Diff
Vendored Executable
+1622
View File
File diff suppressed because it is too large Load Diff
Vendored Executable
+21433
View File
File diff suppressed because it is too large Load Diff
-364
View File
@@ -1,364 +0,0 @@
dnl Process this file with autoconf to produce a configure script.
AC_PREREQ(2.59)
AC_INIT([PROJ], [7.0.0],
[https://github.com/OSGeo/PROJ/issues], proj, [https://proj.org])
AC_CONFIG_MACRO_DIR([m4])
AC_LANG(C)
AC_CONFIG_AUX_DIR([.])
AM_INIT_AUTOMAKE([subdir-objects])
AM_CONFIG_HEADER(src/proj_config.h)
dnl Checks for programs.
AC_PROG_CC
AC_PROG_CC_C99
AC_PROG_CXX
AX_CXX_COMPILE_STDCXX_11([noext],[mandatory])
AC_PROG_INSTALL
AC_PROG_LN_S
AC_PROG_MAKE_SET
AM_PROG_LIBTOOL
PKG_PROG_PKG_CONFIG
dnl Enable as much warnings as possible
AX_CFLAGS_WARN_ALL(C_WFLAGS)
AX_CXXFLAGS_WARN_ALL(CXX_WFLAGS)
dnl For ICC: it needs -we10006 instead of -Werror to turn unknown options to errors
dnl Some gcc/clang versions might succeed on this test, so also include -Werror in ERROR_ON_UNKNOWN_OPTIONS
AX_CHECK_COMPILE_FLAG([-Werror -we10006],[ERROR_ON_UNKNOWN_OPTIONS="-Werror -we10006"],[ERROR_ON_UNKNOWN_OPTIONS="-Werror"])
dnl A few ICC warnings to turn off
dnl warning #188: enumerated type mixed with another type (needed on libcsf)
dnl warning #1684: conversion from pointer to same-sized integral type (potential portability problem) (needed on frmts/mrf)
dnl warning #2259: non-pointer conversion from "size_t={unsigned long}" to "int" may lose significant bits
dnl warning #2304: non-explicit constructor with single argument may cause implicit type conversion
dnl warning #3280: declaration hides member
dnl remark #11074: Inlining inhibited by limit max-size
dnl remark #11076: To get full report use -qopt-report=4 -qopt-report-phase ipo
AX_CHECK_COMPILE_FLAG([-diag-disable 188,1684,2259,2304,3280,11074,11076],[C_WFLAGS="$C_WFLAGS -diag-disable 188,1684,2259,2304,3280,11074,11076" CXX_WFLAGS="$CXX_WFLAGS -diag-disable 188,1684,2259,2304,3280,11074,11076"],,[$ERROR_ON_UNKNOWN_OPTIONS])
AX_CHECK_COMPILE_FLAG([-Wextra],[C_WFLAGS="$C_WFLAGS -Wextra" CXX_WFLAGS="$CXX_WFLAGS -Wextra"],,[$ERROR_ON_UNKNOWN_OPTIONS])
AX_CHECK_COMPILE_FLAG([-Winit-self],[C_WFLAGS="$C_WFLAGS -Winit-self" CXX_WFLAGS="$CXX_WFLAGS -Winit-self"],,[$ERROR_ON_UNKNOWN_OPTIONS])
AX_CHECK_COMPILE_FLAG([-Wunused-parameter], [C_WFLAGS="$C_WFLAGS -Wunused-parameter" CXX_WFLAGS="$CXX_WFLAGS -Wunused-parameter" NO_UNUSED_PARAMETER_FLAG="-Wno-unused-parameter"],,[$ERROR_ON_UNKNOWN_OPTIONS])
AX_CHECK_COMPILE_FLAG([-Wmissing-prototypes], [C_WFLAGS="$C_WFLAGS -Wmissing-prototypes"],,[$ERROR_ON_UNKNOWN_OPTIONS])
AX_CHECK_COMPILE_FLAG([-Wmissing-declarations], [C_WFLAGS="$C_WFLAGS -Wmissing-declarations"],,[$ERROR_ON_UNKNOWN_OPTIONS])
AX_CHECK_COMPILE_FLAG([-Wformat], [C_WFLAGS="$C_WFLAGS -Wformat" CXX_WFLAGS="$CXX_WFLAGS -Wformat"],,[$ERROR_ON_UNKNOWN_OPTIONS])
AX_CHECK_COMPILE_FLAG([-Wformat -Werror=format-security -Wno-format-nonliteral], [C_WFLAGS="$C_WFLAGS -Werror=format-security -Wno-format-nonliteral" CXX_WFLAGS="$CXX_WFLAGS -Werror=format-security -Wno-format-nonliteral"],,[$ERROR_ON_UNKNOWN_OPTIONS])
AX_CHECK_COMPILE_FLAG([-Wshorten-64-to-32], [C_WFLAGS="$C_WFLAGS -Wshorten-64-to-32" CXX_WFLAGS="$CXX_WFLAGS -Wshorten-64-to-32"],,[$ERROR_ON_UNKNOWN_OPTIONS])
AX_CHECK_COMPILE_FLAG([-Wlogical-op], [C_WFLAGS="$C_WFLAGS -Wlogical-op" CXX_WFLAGS="$CXX_WFLAGS -Wlogical-op" NO_LOGICAL_OP_FLAG="-Wno-logical-op"],,[$ERROR_ON_UNKNOWN_OPTIONS])
AX_CHECK_COMPILE_FLAG([-Wshadow], [C_WFLAGS="$C_WFLAGS -Wshadow" CXX_WFLAGS="$CXX_WFLAGS -Wshadow"],,[$ERROR_ON_UNKNOWN_OPTIONS])
dnl Error out on things that will fail with MSVC
AX_CHECK_COMPILE_FLAG([-Werror=vla], [C_WFLAGS="$C_WFLAGS -Werror=vla" CXX_WFLAGS="$CXX_WFLAGS -Werror=vla"],,[$ERROR_ON_UNKNOWN_OPTIONS])
AX_CHECK_COMPILE_FLAG([-Werror=declaration-after-statement], [C_WFLAGS="$C_WFLAGS -Wdeclaration-after-statement"],,[$ERROR_ON_UNKNOWN_OPTIONS])
dnl -Wclobbered is not reliable on most gcc versions
dnl AX_CHECK_COMPILE_FLAG([-Wno-clobbered], [C_WFLAGS="$C_WFLAGS -Wno-clobbered" CXX_WFLAGS="$CXX_WFLAGS -Wno-clobbered"],,[$ERROR_ON_UNKNOWN_OPTIONS])
dnl Warn when macros __TIME__, __DATE__ or __TIMESTAMP__ are encountered as they might prevent bit-wise-identical reproducible compilations.
AX_CHECK_COMPILE_FLAG([-Wdate-time], [C_WFLAGS="$C_WFLAGS -Wdate-time" CXX_WFLAGS="$CXX_WFLAGS -Wdate-time"],,[$ERROR_ON_UNKNOWN_OPTIONS])
dnl GCC 6 warnings
AX_CHECK_COMPILE_FLAG([-Wnull-dereference], [C_WFLAGS="$C_WFLAGS -Wnull-dereference" CXX_WFLAGS="$CXX_WFLAGS -Wnull-dereference"],,[$ERROR_ON_UNKNOWN_OPTIONS])
AX_CHECK_COMPILE_FLAG([-Wduplicated-cond], [C_WFLAGS="$C_WFLAGS -Wduplicated-cond" CXX_WFLAGS="$CXX_WFLAGS -Wduplicated-cond"],,[$ERROR_ON_UNKNOWN_OPTIONS])
dnl GCC 7 warnings
dnl Do not enable yet. Causes warning in alg/gdalthinplate.cpp due to armadillo templates
dnl AX_CHECK_COMPILE_FLAG([-Wduplicated-branches], [C_WFLAGS="$C_WFLAGS -Wduplicated-branches" CXX_WFLAGS="$CXX_WFLAGS -Wduplicated-branches"],,[$ERROR_ON_UNKNOWN_OPTIONS])
dnl GCC 8 warnings
AC_LANG_PUSH([C++])
AX_CHECK_COMPILE_FLAG([-Wextra-semi], [CXX_WFLAGS="$CXX_WFLAGS -Wextra-semi"],,[$ERROR_ON_UNKNOWN_OPTIONS])
AC_LANG_POP([C++])
AX_CHECK_COMPILE_FLAG([-Wno-sign-compare], [NO_SIGN_COMPARE="-Wno-sign-compare"],,[$ERROR_ON_UNKNOWN_OPTIONS])
dnl clang >= 3.9
AX_CHECK_COMPILE_FLAG([-Wcomma], [C_WFLAGS="$C_WFLAGS -Wcomma" CXX_WFLAGS="$CXX_WFLAGS -Wcomma"],,[$ERROR_ON_UNKNOWN_OPTIONS])
dnl clang and gcc 5
AX_CHECK_COMPILE_FLAG([-Wfloat-conversion], [C_WFLAGS="$C_WFLAGS -Wfloat-conversion" CXX_WFLAGS="$CXX_WFLAGS -Wfloat-conversion"],,[$ERROR_ON_UNKNOWN_OPTIONS])
dnl clang >= 3.2
AX_CHECK_COMPILE_FLAG([-Wdocumentation -Wno-documentation-deprecated-sync], [C_WFLAGS="$C_WFLAGS -Wdocumentation -Wno-documentation-deprecated-sync" CXX_WFLAGS="$CXX_WFLAGS -Wdocumentation -Wno-documentation-deprecated-sync"],,[$ERROR_ON_UNKNOWN_OPTIONS])
dnl C++ specific stuff
AC_LANG_PUSH([C++])
AX_CHECK_COMPILE_FLAG([-Wunused-private-field], [CXX_WFLAGS="$CXX_WFLAGS -Wunused-private-field"],,[$ERROR_ON_UNKNOWN_OPTIONS])
AX_CHECK_COMPILE_FLAG([-Wmissing-prototypes], [CXX_WFLAGS="$CXX_WFLAGS -Wmissing-prototypes"],,[$ERROR_ON_UNKNOWN_OPTIONS])
AX_CHECK_COMPILE_FLAG([-Wmissing-declarations], [CXX_WFLAGS="$CXX_WFLAGS -Wmissing-declarations"],,[$ERROR_ON_UNKNOWN_OPTIONS])
AX_CHECK_COMPILE_FLAG([-Wnon-virtual-dtor], [CXX_WFLAGS="$CXX_WFLAGS -Wnon-virtual-dtor" NO_NON_VIRTUAL_DTOR_FLAG="-Wno-non-virtual-dtor"],,[$ERROR_ON_UNKNOWN_OPTIONS])
AX_CHECK_COMPILE_FLAG([-Wold-style-cast], [WARN_OLD_STYLE_CAST="-Wold-style-cast"],,[$ERROR_ON_UNKNOWN_OPTIONS])
AX_CHECK_COMPILE_FLAG([-Weffc++], [WARN_EFFCPLUSPLUS="-Weffc++"],,[$ERROR_ON_UNKNOWN_OPTIONS])
dnl g++-4.8 complain a bit too much with -Weffc++
if test "$WARN_EFFCPLUSPLUS" != ""; then
SAVED_CXXFLAGS=$CXXFLAGS
CXXFLAGS="$CXXFLAGS $WARN_EFFCPLUSPLUS -Werror"
AC_MSG_CHECKING([if -Weffc++ should be enabled])
AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
[[
class Base {};
class A: public Base {};
]])],
[AC_MSG_RESULT([yes])],
[WARN_EFFCPLUSPLUS=""]
[AC_MSG_RESULT([no])])
CXXFLAGS="$SAVED_CXXFLAGS"
CXX_WFLAGS="$CXX_WFLAGS $WARN_EFFCPLUSPLUS"
fi
dnl Clang enables -Woverloaded-virtual if -Wall is defined, but not GCC
AX_CHECK_COMPILE_FLAG([-Woverloaded-virtual], [CXX_WFLAGS="$CXX_WFLAGS -Woverloaded-virtual"],,[$ERROR_ON_UNKNOWN_OPTIONS])
AX_CHECK_COMPILE_FLAG([-Wweak-vtables], [CXX_WFLAGS="$CXX_WFLAGS -Wweak-vtables"],,[$ERROR_ON_UNKNOWN_OPTIONS])
AX_CHECK_COMPILE_FLAG([-Wdeprecated], [CXX_WFLAGS="$CXX_WFLAGS -Wdeprecated"],,[$ERROR_ON_UNKNOWN_OPTIONS])
AX_CHECK_COMPILE_FLAG([-Wabstract-vbase-init], [CXX_WFLAGS="$CXX_WFLAGS -Wabstract-vbase-init"],,[$ERROR_ON_UNKNOWN_OPTIONS])
AX_CHECK_COMPILE_FLAG([-Winconsistent-missing-destructor-override], [CXX_WFLAGS="$CXX_WFLAGS -Winconsistent-missing-destructor-override"],,[$ERROR_ON_UNKNOWN_OPTIONS])
HAVE_GCC_WARNING_ZERO_AS_NULL_POINTER_CONSTANT=no
AX_CHECK_COMPILE_FLAG([-Wzero-as-null-pointer-constant], [CXX_WFLAGS="$CXX_WFLAGS -Wzero-as-null-pointer-constant" HAVE_GCC_WARNING_ZERO_AS_NULL_POINTER_CONSTANT=yes NO_ZERO_AS_NULL_POINTER_CONSTANT_FLAG="-Wno-zero-as-null-pointer-constant"],,[$ERROR_ON_UNKNOWN_OPTIONS])
if test "$HAVE_GCC_WARNING_ZERO_AS_NULL_POINTER_CONSTANT" = "yes"; then
AC_DEFINE_UNQUOTED(HAVE_GCC_WARNING_ZERO_AS_NULL_POINTER_CONSTANT, 1,
[Define to 1 if the compiler supports -Wzero-as-null-pointer-constant])
fi
AC_LANG_POP([C++])
dnl ---------------------------------------------------------------------------
dnl Check for --enable-lto
dnl ---------------------------------------------------------------------------
AC_MSG_CHECKING([to enable LTO (link time optimization) build])
AC_ARG_ENABLE(lto,
AS_HELP_STRING([--enable-lto],
[enable LTO(link time optimization) (disabled by default)]))
FLTO_FLAG=""
if test "x$enable_lto" = "xyes"; then
AC_LANG_PUSH([C++])
AX_CHECK_COMPILE_FLAG([-flto], [FLTO_FLAG="-flto"],,[$ERROR_ON_UNKNOWN_OPTIONS])
if test "$FLTO_FLAG" != ""; then
SAVED_CXXFLAGS=$CXXFLAGS
CXXFLAGS="$CXXFLAGS $FLTO_FLAG -Werror"
AC_MSG_CHECKING([if -flto is available at link time])
AC_LINK_IFELSE([AC_LANG_PROGRAM(
[[]])],
[AC_MSG_RESULT([yes])],
[FLTO_FLAG=""]
[AC_MSG_RESULT([no])])
CXXFLAGS="$SAVED_CXXFLAGS"
fi
AC_LANG_POP([C++])
AX_CHECK_COMPILE_FLAG([-Wodr], [CXX_WFLAGS="$CXX_WFLAGS -Wodr"],,[$ERROR_ON_UNKNOWN_OPTIONS])
else
AC_MSG_RESULT([no])
fi
AC_SUBST(FLTO_FLAG,$FLTO_FLAG)
dnl Result in better inlining, but larger file
dnl AX_CHECK_COMPILE_FLAG([-fno-semantic-interposition], [CFLAGS="$CFLAGS -fno-semantic-interposition" CXXFLAGS="$CXXFLAGS -fno-semantic-interposition"],,[$ERROR_ON_UNKNOWN_OPTIONS])
AC_SUBST(C_WFLAGS,$C_WFLAGS)
AC_SUBST(CXX_WFLAGS,$CXX_WFLAGS)
AC_SUBST(NO_ZERO_AS_NULL_POINTER_CONSTANT_FLAG,$NO_ZERO_AS_NULL_POINTER_CONSTANT_FLAG)
CFLAGS="${CFLAGS} -fvisibility=hidden"
CXXFLAGS="${CXXFLAGS} -fvisibility=hidden"
case "${host_os}" in
cygwin* | mingw32* | pw32* | beos* | darwin*)
CFLAGS="${CFLAGS} -DNOMINMAX"
CXXFLAGS="${CXXFLAGS} -DNOMINMAX"
;;
*)
;;
esac
dnl Checks for libraries.
save_CFLAGS="$CFLAGS"
CFLAGS=`echo "$CFLAGS" | sed "s/-Werror/ /"`
AC_CHECK_LIB(m,exp,,,)
CFLAGS="$save_CFLAGS"
dnl We check for headers
AC_HEADER_STDC
dnl Check flag for accurate arithmetic with Intel compiler. This is
dnl needed to stop the compiler from ignoring parentheses in expressions
dnl like (a + b) + c and from simplifying 0.0 + x to x (which is wrong if
dnl x = -0.0).
AX_CHECK_COMPILE_FLAG([-fp-model precise],
[CFLAGS="$CFLAGS -fp-model precise"],,[-Werror])
AC_SEARCH_LIBS([sqrt], [m])
AC_CHECK_FUNC(localeconv, [AC_DEFINE(HAVE_LOCALECONV,1,[Define to 1 if you have localeconv])])
AC_CHECK_FUNCS([strerror])
dnl ---------------------------------------------------------------------------
dnl Provide a mechanism to disable real mutex support (if lacking win32 or
dnl posix mutexes for instance).
dnl ---------------------------------------------------------------------------
AC_ARG_WITH([mutex],
AS_HELP_STRING([--without-mutex],
[Disable real mutex locks (lacking pthreads)]),,)
AC_MSG_CHECKING([for mutexes])
THREAD_LIB=""
if test "$with_mutex" = yes -o x"$with_mutex" = x ; then
MUTEX_SETTING=pthread
AC_CHECK_LIB(pthread,pthread_create,PTHREAD_EXISTS=YES,,,)
if test -n "$PTHREAD_EXISTS" ; then
THREAD_LIB="-lpthread"
fi
AC_CHECK_LIB(pthread,pthread_mutexattr_settype,,,)
AC_CHECK_DECL(PTHREAD_MUTEX_RECURSIVE,
AC_DEFINE(HAVE_PTHREAD_MUTEX_RECURSIVE, [], [Define if your pthreads implementation have PTHREAD_MUTEX_RECURSIVE]),
,
[#include <pthread.h>])
AC_MSG_RESULT([enabled, pthread])
else
MUTEX_SETTING=stub
AC_MSG_RESULT([disabled by user])
fi
AC_SUBST(MUTEX_SETTING,$MUTEX_SETTING)
AC_SUBST(THREAD_LIB,$THREAD_LIB)
dnl ---------------------------------------------------------------------------
dnl Check for sqlite3 library and binary
dnl ---------------------------------------------------------------------------
if test "x$SQLITE3_CFLAGS$SQLITE3_LIBS" = "x" ; then
dnl Would build and run with older versons, but with horrible performance
dnl See https://github.com/OSGeo/PROJ/issues/1718
PKG_CHECK_MODULES([SQLITE3], [sqlite3 >= 3.11])
fi
AC_SUBST(SQLITE3_CFLAGS,$SQLITE3_CFLAGS)
AC_SUBST(SQLITE3_LIBS,$SQLITE3_LIBS)
AC_CHECK_PROG(SQLITE3_CHECK,sqlite3,yes)
if test x"$SQLITE3_CHECK" != x"yes" ; then
AC_MSG_ERROR([Please install sqlite3 binary.])
fi
dnl ---------------------------------------------------------------------------
dnl Check for libtiff
dnl ---------------------------------------------------------------------------
AC_ARG_ENABLE([tiff-is-strongly-discouraged],
AS_HELP_STRING([--disable-tiff-is-strongly-discouraged],
[Disable TIFF support. Strongly discouraged !]),
[enable_tiff=no],
[enable_tiff=yes])
if test "x$enable_tiff" = "xyes" -o "x$enable_tiff" = ""; then
if test "x$TIFF_CFLAGS$TIFF_LIBS" = "x" ; then
if $PKG_CONFIG libtiff; then
PKG_CHECK_MODULES([TIFF], [libtiff])
else
PKG_CHECK_MODULES([TIFF], [libtiff-4])
fi
fi
TIFF_ENABLED_FLAGS=-DTIFF_ENABLED
fi
AC_SUBST(TIFF_CFLAGS,$TIFF_CFLAGS)
AC_SUBST(TIFF_LIBS,$TIFF_LIBS)
AC_SUBST(TIFF_ENABLED_FLAGS,$TIFF_ENABLED_FLAGS)
dnl ---------------------------------------------------------------------------
dnl Check for curl
dnl ---------------------------------------------------------------------------
FOUND_CURL=no
CURL_CFLAGS=
CURL_LIB=
AC_ARG_WITH(curl,
[ --with-curl[=ARG] Enable curl support (ARG=path to curl-config.)],,,)
dnl Clear some cache variables
unset ac_cv_path_LIBCURL
if test "`basename xx/$with_curl`" = "curl-config" ; then
LIBCURL_CONFIG="$with_curl"
elif test "$with_curl" = "no" ; then
LIBCURL_CONFIG=no
else
AC_PATH_PROG(LIBCURL_CONFIG, curl-config, not-found)
fi
if test "$LIBCURL_CONFIG" = "not-found" ; then
AC_MSG_ERROR([curl not found. If wanting to do a build without curl support (and thus without built-in networking capability), explictly disable it with --without-curl])
elif test "$LIBCURL_CONFIG" != "no" ; then
CURL_VERNUM=`$LIBCURL_CONFIG --vernum`
CURL_VER=`$LIBCURL_CONFIG --version | awk '{print $2}'`
AC_MSG_RESULT([ found libcurl version $CURL_VER])
AC_CHECK_LIB(curl,curl_global_init,FOUND_CURL=yes,FOUND_CURL=no,`$LIBCURL_CONFIG --libs`)
if test "$FOUND_CURL" = "no" ; then
AC_MSG_ERROR([curl not found. If wanting to do a build without curl support (and thus without built-in networking capability), explictly disable it with --without-curl])
fi
CURL_ENABLED_FLAGS=-DCURL_ENABLED
fi
if test "$FOUND_CURL" = "yes" ; then
CURL_CFLAGS=`$LIBCURL_CONFIG --cflags`
CURL_LIBS=`$LIBCURL_CONFIG --libs`
fi
AC_SUBST(CURL_CFLAGS,$CURL_CFLAGS)
AC_SUBST(CURL_LIBS,$CURL_LIBS)
AC_SUBST(CURL_ENABLED_FLAGS,$CURL_ENABLED_FLAGS)
dnl ---------------------------------------------------------------------------
dnl Check for external Google Test
dnl ---------------------------------------------------------------------------
AC_ARG_WITH(external-gtest,
AS_HELP_STRING([--with-external-gtest],
[Whether to use external Google Test]),,)
if test "x$with_external_gtest" = "xyes" ; then
AC_MSG_RESULT([using external GTest.])
PKG_CHECK_MODULES([GTEST], [gtest >= 1.8.0])
else
AC_MSG_RESULT([using internal GTest.])
GTEST_CFLAGS="-I\$(top_srcdir)/test/googletest/include"
GTEST_LIBS="\$(top_builddir)/test/googletest/libgtest.la"
fi
AM_CONDITIONAL(USE_EXTERNAL_GTEST, [test "x$with_external_gtest" = "xyes"])
AC_SUBST(GTEST_CFLAGS,$GTEST_CFLAGS)
AC_SUBST(GTEST_LIBS,$GTEST_LIBS)
dnl ---------------------------------------------------------------------------
dnl Generate files
dnl ---------------------------------------------------------------------------
AC_CONFIG_FILES([Makefile cmake/Makefile src/Makefile include/Makefile include/proj/Makefile include/proj/internal/Makefile
include/proj/internal/nlohmann/Makefile
test/Makefile test/cli/Makefile test/gie/Makefile test/gigs/Makefile test/unit/Makefile
man/Makefile man/man1/Makefile man/man3/Makefile data/Makefile])
if ! test "x$with_external_gtest" = "xyes" ; then
AC_CONFIG_FILES([test/googletest/Makefile test/googletest/include/Makefile
test/googletest/include/gtest/Makefile
test/googletest/include/gtest/internal/Makefile
test/googletest/include/gtest/internal/custom/Makefile
test/googletest/src/Makefile])
fi
AC_CONFIG_FILES([proj.pc])
AC_OUTPUT
+99
View File
@@ -0,0 +1,99 @@
dnl Process this file with autoconf to produce a configure script.
AC_PREREQ(2.59)
AC_INIT([PROJ.4 Projections], 4.7.0, [warmerdam@pobox.com], proj)
AC_LANG(C)
AM_INIT_AUTOMAKE
AM_MAINTAINER_MODE
AM_CONFIG_HEADER(src/proj_config.h)
dnl Checks for programs.
AC_PROG_CC
AC_PROG_INSTALL
AC_PROG_LN_S
AC_PROG_MAKE_SET
AM_PROG_LIBTOOL
dnl Checks for libraries.
AC_CHECK_LIB(m,exp,,,)
dnl We check for headers
AC_HEADER_STDC
dnl ---------------------------------------------------------------------------
dnl Check for JNI support.
dnl ---------------------------------------------------------------------------
JNI_INCLUDE=
export JNI_INCLUDE
AC_ARG_WITH(jni,
[ --with-jni=dir Include Java/JNI support, add optional include dir],,)
if test "$with_jni" = "yes" ; then
AC_DEFINE(JNI_ENABLED,1,[Enabled for Java/JNI Support])
AC_MSG_CHECKING(whether to enable Java/JNI support)
AC_MSG_RESULT([enabled])
elif test "$with_jni" != "no" -a "$with_jni" != "" ; then
AC_MSG_CHECKING(whether to enable Java/JNI support)
if test \! -r "$with_jni/jni.h" ; then
AC_MSG_ERROR(Did not find $with_jni/jni.h)
fi
AC_DEFINE(JNI_ENABLED,1,[Enabled for Java/JNI Support])
AC_MSG_RESULT([enabled])
JNI_INCLUDE="-I$with_jni"
elif test "$with_jni" = "" ; then
AC_CHECK_HEADERS(jni.h)
AC_MSG_CHECKING(whether to enable Java/JNI support)
if test "$ac_cv_header_jni_h" = "no" ; then
AC_MSG_RESULT([disabled])
else
AC_MSG_RESULT([enabled])
AC_DEFINE(JNI_ENABLED,1,[Enabled for Java/JNI Support])
fi
else
AC_MSG_CHECKING(whether to enable Java/JNI support)
AC_MSG_RESULT([disabled])
fi
AC_SUBST(JNI_INCLUDE,$JNI_INCLUDE)
dnl ---------------------------------------------------------------------------
dnl Provide a mechanism to disable real mutex support (if lacking win32 or
dnl posix mutexes for instance).
dnl ---------------------------------------------------------------------------
AC_ARG_WITH([mutex],
AS_HELP_STRING([--without-mutex],
[Disable real mutex locks (lacking pthreads)]),,)
AC_MSG_CHECKING([for mutexes])
if test "$with_mutex" = yes -o x"$with_mutex" = x ; then
MUTEX_SETTING=pthread
AC_MSG_RESULT([enabled, pthread])
else
MUTEX_SETTING=stub
AC_MSG_RESULT([disabled by user])
fi
AC_SUBST(MUTEX_SETTING,$MUTEX_SETTING)
AC_OUTPUT(Makefile src/Makefile man/Makefile man/man1/Makefile \
man/man3/Makefile nad/Makefile \
jniwrap/Makefile jniwrap/org/Makefile jniwrap/org/proj4/Makefile)
-23
View File
@@ -1,23 +0,0 @@
# This init file provides definitions for CH1903 and CH1903/LV03
# projections using the distortion grids developed by Swisstopo.
# See: https://shop.swisstopo.admin.ch/en/products/geo_software/GIS_info
#
# You'll need to download the grids separately and put in a directory
# scanned by libproj. Directories may be added to the scan list through
# the PROJ_LIB environment variable
#
# Note that an independent effort was made to derive an usable grid
# from the CH1903->CH1903+ grid initially available from the Swisstopo
# website. You can read about this other effort here:
# http://lists.maptools.org/pipermail/proj/2012-February/006093.html
# It may be of interest because the latter was by some reported as being
# more accurate than the former:
# http://lists.maptools.org/pipermail/proj/2012-February/006119.html
#
# This init file uses the official one
#
<metadata> +origin=Swisstopo +lastupdate=2012-02-27
# CH1903/LV03
<1903_LV03> +proj=somerc +lat_0=46.95240555555556 +lon_0=7.439583333333333 +k_0=1 +x_0=600000 +y_0=200000 +ellps=bessel +units=m +nadgrids=CHENYX06_etrs.gsb +no_defs
# CH1903
<1903> +proj=longlat +ellps=bessel +nadgrids=CHENYX06_etrs.gsb +no_defs <>
-111
View File
@@ -1,111 +0,0 @@
#
# files containing dictionary of useful projection
#
set(CONFIG_FILES
proj.ini
)
set(PROJ_DICTIONARY
null
world
other.extra
nad27
GL27
nad83
nad.lst
CH
ITRF2000
ITRF2008
ITRF2014
)
#
# gridshift file
#
file(GLOB GSB_FILES *.gsb)
file(GLOB GTX_FILES *.gtx)
set(GRIDSHIFT_FILES ${GSB_FILES} ${GTX_FILES})
set(ALL_SQL_IN "${CMAKE_CURRENT_BINARY_DIR}/all.sql.in")
set(PROJ_DB "${CMAKE_CURRENT_BINARY_DIR}/proj.db")
include(sql_filelist.cmake)
add_custom_command(
OUTPUT ${ALL_SQL_IN}
COMMAND ${CMAKE_COMMAND} "-DALL_SQL_IN=${ALL_SQL_IN}"
-P "${CMAKE_CURRENT_SOURCE_DIR}/generate_all_sql_in.cmake"
WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}"
DEPENDS ${SQL_FILES}
COMMENT "Generating all.sql.in"
VERBATIM
)
add_custom_target(generate_all_sql_in ALL DEPENDS ${ALL_SQL_IN})
add_custom_command(
OUTPUT ${PROJ_DB}
COMMAND ${CMAKE_COMMAND} -E remove -f ${PROJ_DB}
COMMAND ${EXE_SQLITE3} -init ${ALL_SQL_IN} ${PROJ_DB} .quit
COMMAND ${CMAKE_COMMAND} -E copy ${PROJ_DB} ${CMAKE_CURRENT_BINARY_DIR}/for_tests
# note: we didn't port yet the foreign_key_check done in Makefile.am
DEPENDS generate_all_sql_in ${ALL_SQL_IN}
COMMENT "Generating proj.db"
VERBATIM
)
add_custom_target(generate_proj_db ALL DEPENDS ${PROJ_DB})
if(NOT "${CMAKE_CURRENT_SOURCE_DIR}" STREQUAL "${CMAKE_CURRENT_BINARY_DIR}")
foreach(FILE ${CONFIG_FILES} ${PROJ_DICTIONARY} ${GRIDSHIFT_FILES})
configure_file(${FILE} ${FILE} COPYONLY)
endforeach()
endif()
# Copy select resource files in a for_tests subdirectory so that we are not
# influenced by the presence of other grids
# Note: this is done at configure/cmake time, not build time.
# So if you install new grids in the source data/ subdirectory, run cmake again
set(DATA_FOR_TESTS
null
GL27
nad27
nad83
ntv1_can.dat
MD
ntf_r93.gsb
egm96_15.gtx
ntv2_0.gsb
conus
alaska
nzgd2kgrid0005.gsb
ITRF2000
BETA2007.gsb)
file(GLOB DATA_TESTS tests/*)
execute_process(COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_CURRENT_BINARY_DIR}/for_tests)
execute_process(COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_CURRENT_BINARY_DIR}/for_tests/tests)
foreach(FILE ${DATA_FOR_TESTS} ${CONFIG_FILES})
if (EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${FILE})
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/${FILE} ${CMAKE_CURRENT_BINARY_DIR}/for_tests/${FILE} COPYONLY)
endif()
endforeach()
foreach(FILE ${DATA_TESTS})
get_filename_component(FILENAME ${FILE} NAME)
configure_file(${FILE} ${CMAKE_CURRENT_BINARY_DIR}/for_tests/tests/${FILENAME} COPYONLY)
endforeach()
#
#install
#
set(ALL_DATA_FILE
${CONFIG_FILES}
${PROJ_DICTIONARY}
${GRIDSHIFT_FILES}
${PROJ_DB}
)
install(
FILES ${ALL_DATA_FILE}
DESTINATION ${DATADIR}
)
-24
View File
@@ -1,24 +0,0 @@
# ITRF2000 params are in cm/year, PJ_helmert uses m/year
<metadata> +version=1.0.0 +origin=ftp://itrf.ensg.ign.fr/pub/itrf/ITRF.TP +lastupdate=2017-07-25
# ITRF2000 -> ITRF2005 is only defined the opposite way, so we flip the sign on all
# parameters to get the opposite transformation. Parameters from http://itrf.ign.fr/ITRF_solutions/2005/tp_05-00.php
<ITRF2005> +proj=helmert +x=-0.0001 +y=0.0008 +z=0.0058 +s=-0.0004 +dx=0.0002 +dy=-0.0001 +dz=0.0018 +ds=-0.00008 +t_epoch=2000.0 +convention=position_vector
<ITRF97> +proj=helmert +x=0.0067 +y=0.0061 +z=-0.0185 +s=0.00155 +dy=-0.0006 +dz=-0.0014 +ds=0.00001 +drz=0.00002 +t_epoch=1997.0 +convention=position_vector
<ITRF96> +proj=helmert +x=0.0067 +y=0.0061 +z=-0.0185 +s=0.00155 +dy=-0.0006 +dz=-0.0014 +ds=0.00001 +drz=0.00002 +t_epoch=1997.0 +convention=position_vector
<ITRF94> +proj=helmert +x=0.0067 +y=0.0061 +z=-0.0185 +s=0.00155 +dy=-0.0006 +dz=-0.0014 +ds=0.00001 +drz=0.00002 +t_epoch=1997.0 +convention=position_vector
<ITRF93> +proj=helmert +x=0.0127 +y=0.0065 +z=-0.0209 +s=0.00195 +rx=-0.00039 +ry=0.00080 +rz=-0.00114 +dx=-0.0029 +dy=-0.0002 +dz=-0.0006 +ds=0.00001 +drx=-0.00011 +dry=-0.00019 +drz=0.00007 +t_epoch=1988.0 +convention=position_vector
<ITRF92> +proj=helmert +x=0.0147 +y=0.0135 +z=-0.0139 +s=0.00075 +rz=-0.00018 +dy=-0.0006 +dz=-0.0014 +ds=0.00001 +drz=0.00002 +t_epoch=1988.0 +convention=position_vector
<ITRF91> +proj=helmert +x=0.0267 +y=0.0275 +z=-0.0199 +s=0.00215 +rz=-0.00018 +dy=-0.0006 +dz=-0.0014 +ds=0.00001 +drz=0.00002 +t_epoch=1988.0 +convention=position_vector
<ITRF90> +proj=helmert +x=0.0247 +y=0.0235 +z=-0.0359 +s=0.00245 +rz=-0.00018 +dy=-0.0006 +dz=-0.0014 +ds=0.00001 +drz=0.00002 +t_epoch=1988.0 +convention=position_vector
<ITRF89> +proj=helmert +x=0.0297 +y=0.0475 +z=-0.0739 +s=0.00585 +rz=-0.00018 +dy=-0.0006 +dz=-0.0014 +ds=0.00001 +drz=0.00002 +t_epoch=1988.0 +convention=position_vector
<ITRF88> +proj=helmert +x=0.0247 +y=0.0115 +z=-0.0979 +s=0.00895 +rx=0.0001 +rz=-0.00018 +dy=-0.0006 +dz=-0.0014 +ds=0.00001 +drz=0.00002 +t_epoch=1988.0 +convention=position_vector
-61
View File
@@ -1,61 +0,0 @@
# ITRF2008 params are in mm/year, PJ_helmert uses m/year
<metadata> +version=1.0.0 +origin=http://itrf.ign.fr/doc_ITRF/Transfo-ITRF2008_ITRFs.txt +lastupdate=2017-07-26
<ITRF2005> +proj=helmert +x=-0.002 +y=-0.0009 +z=-0.0047 +s=0.00094 +dx=0.0003 +t_epoch=2000.0 +convention=position_vector
<ITRF2000> +proj=helmert +x=-0.0019 +y=-0.0017 +z=-0.0105 +s=0.00134 +dx=0.0001 +dy=0.0001 +dz=-0.0018 +ds=0.00008 +t_epoch=2000.0 +convention=position_vector
<ITRF97> +proj=helmert +x=0.0048 +y=0.0026 +z=-0.0332 +s=0.00292 +rz=0.00006 +dx=0.0001 +dy=-0.0005 +dz=-0.0032 +ds=0.00009 +drz=0.00002 +t_epoch=2000.0 +convention=position_vector
<ITRF96> +proj=helmert +x=0.0048 +y=0.0026 +z=-0.0332 +s=0.00292 +rz=0.00006 +dx=0.0001 +dy=-0.0005 +dz=-0.0032 +ds=0.00009 +drz=0.00002 +t_epoch=2000.0 +convention=position_vector
<ITRF94> +proj=helmert +x=0.0048 +y=0.0026 +z=-0.0332 +s=0.00292 +rz=0.00006 +dx=0.0001 +dy=-0.0005 +dz=-0.0032 +ds=0.00009 +drz=0.00002 +t_epoch=2000.0 +convention=position_vector
<ITRF93> +proj=helmert +x=-0.024 +y=0.0024 +z=-0.00386 +s=0.00341 +rx=-0.00171 +ry=-0.00148 +rz=-0.0003 +dx=-0.0028 +dy=-0.0001 +dz=-0.0024 +ds=0.00009 +drx=-0.00011 +dry=-0.00019 +drz=0.00007 +t_epoch=2000.0 +convention=position_vector
<ITRF92> +proj=helmert +x=0.0128 +y=0.0046 +z=-0.0412 +s=0.00221 +rz=0.00006 +dx=0.0001 +dy=-0.0005 +dz=-0.0032 +ds=0.00009 +drz=0.00002 +t_epoch=2000.0 +convention=position_vector
<ITRF91> +proj=helmert +x=0.0248 +y=0.0186 +z=-0.0472 +s=0.00361 +rz=0.00006 +dx=0.0001 +dy=-0.0005 +dz=-0.0032 +ds=0.00009 +drz=0.00002 +t_epoch=2000.0 +convention=position_vector
<ITRF90> +proj=helmert +x=0.0228 +y=0.0146 +z=-0.0632 +s=0.00391 +rz=0.00006 +dx=0.0001 +dy=-0.0005 +dz=-0.0032 +ds=0.00009 +drz=0.00002 +t_epoch=2000.0 +convention=position_vector
<ITRF89> +proj=helmert +x=0.0278 +y=0.0386 +z=-0.1012 +s=0.00731 +rz=0.00006 +dx=0.0001 +dy=-0.0005 +dz=-0.0032 +ds=0.00009 +drz=0.00002 +t_epoch=2000.0 +convention=position_vector
<ITRF88> +proj=helmert +x=0.0228 +y=0.0026 +z=-0.1252 +s=0.01041 +rz=0.00006 +dx=0.0001 +dy=-0.0005 +dz=-0.0032 +ds=0.00009 +drz=0.00002 +t_epoch=2000.0 +convention=position_vector
# ITRF2008 Plate Motion Model parameters
#
# As described in
#
# Altamimi, Z., L. Métivier, and X. Collilieux (2012), ITRF2008 plate motion model,
# J. Geophys. Res., 117, B07402, doi:10.1029/2011JB008930.
<AMUR> +proj=helmert +drx=-0.000190 +dry=-0.000442 +drz=0.000915 +convention=position_vector
<ANTA> +proj=helmert +drx=-0.000252 +dry=-0.000302 +drz=0.000643 +convention=position_vector
<ARAB> +proj=helmert +drx=0.001202 +dry=-0.000054 +drz=0.001485 +convention=position_vector
<AUST> +proj=helmert +drx=0.001504 +dry=0.001172 +drz=0.001228 +convention=position_vector
<CARB> +proj=helmert +drx=0.000049 +dry=-0.001088 +drz=0.000664 +convention=position_vector
<EURA> +proj=helmert +drx=-0.000083 +dry=0.000534 +drz=0.000750 +convention=position_vector
<INDI> +proj=helmert +drx=0.001232 +dry=0.000303 +drz=0.001540 +convention=position_vector
<NAZC> +proj=helmert +drx=-0.000330 +dry=-0.001551 +drz=0.001625 +convention=position_vector
<NOAM> +proj=helmert +drx=0.000035 +dry=-0.000662 +drz=0.0001 +convention=position_vector
<NUBI> +proj=helmert +drx=0.000095 +dry=-0.000598 +drz=0.000723 +convention=position_vector
<PCFC> +proj=helmert +drx=0.000411 +dry=0.001036 +drz=-0.002166 +convention=position_vector
<SOAM> +proj=helmert +drx=-0.000243 +dry=-0.000311 +drz=-0.000154 +convention=position_vector
<SOMA> +proj=helmert +drx=-0.000080 +dry=-0.000745 +drz=0.000897 +convention=position_vector
<SUND> +proj=helmert +drx=0.000047 +dry=-0.001 +drz=0.000975 +convention=position_vector
-55
View File
@@ -1,55 +0,0 @@
# ITRF2014 params are in mm/year, PJ_helmert uses m/year
<metadata> +version=1.0.0 +origin=http://itrf.ign.fr/doc_ITRF/Transfo-ITRF2014_ITRFs.txt +lastupdate=2017-07-26
<ITRF2008> +proj=helmert +x=0.0016 +y=0.0019 +z=0.0024 +s=-0.00002 +dz=-0.0001 +ds=0.00003 +t_epoch=2010.0 +convention=position_vector
<ITRF2005> +proj=helmert +x=0.0026 +y=0.001 +z=-0.0023 +s=0.00092 +dx=0.0003 +dz=-0.0001 +ds=0.00003 +t_epoch=2010.0 +convention=position_vector
<ITRF2000> +proj=helmert +x=0.0007 +y=0.0012 +z=-0.0261 +s=0.00212 +dx=0.0001 +dy=0.0001 +dz=-0.0019 +ds=0.00011 +t_epoch=2010.0 +convention=position_vector
<ITRF97> +proj=helmert +x=0.0074 +y=-0.0005 +z=-0.0628 +d=0.0038 +rz=0.00026 +dx0.0001 +dy=-0.0005 +dz=-0.0033 +ds=0.00012 +drz=0.00002 +t_epoch=2010.0 +convention=position_vector
<ITRF96> +proj=helmert +x=0.0074 +y=-0.0005 +z=-0.0628 +s=0.0038 +rz=0.00026 +dx=0.0001 +dy=-0.0005 +dz=-0.0033 +ds=0.00012 +t_epoch=2010.0 +convention=position_vector
<ITRF94> +proj=helmert +x=0.0074 +y=-0.0005 +z=-0.0628 +s=0.0038 +rz=0.00026 +dx=0.0001 +dy=-0.0005 +dz=-0.0033 +ds=0.00012 +t_epoch=2010.0 +convention=position_vector
<ITRF93> +proj=helmert +x=-0.0504 +y=0.0033 +z=-0.0602 +s=0.00429 +rx=-0.00281 +ry=-0.00338 +rz=0.0004 +dx=-0.0028 +dy=-0.0001 +dz=-0.0025 +ds=0.00012 +drx=-0.00011 +dry=-0.00019 +drz=0.00007 +t_epoch=2010.0 +convention=position_vector
<ITRF92> +proj=helmert +x=0.0154 +y=0.0015 +z=-0.0708 +s=0.00309 +rz=0.00026 +dx=0.0001 +dy=-0.0005 +dz=-0.0033 +ds=0.00012 +drz=0.00002 +t_epoch=2010.0 +convention=position_vector
<ITRF91> +proj=helmert +x=0.0274 +y=0.0155 +z=-0.0768 +s=0.00449 +rz=0.00026 +dx=0.0001 +dy=-0.0005 +dz=-0.0033 +ds=0.00012 +drz=0.00002 +t_epoch=2010.0 +convention=position_vector
<ITRF90> +proj=helmert +x=0.0254 +y=0.0115 +z=-0.0928 +s=0.00479 +rz=0.00026 +dx=0.0001 +dy=-0.0005 +dz=-0.0033 +ds=0.00012 +drz=0.00002 +t_epoch=2010.0 +convention=position_vector
<ITRF89> +proj=helmert +x=0.0304 +y=0.0355 +z=-0.1308 +s=0.00819 +rz=0.00026 +dx=0.0001 +dy=-0.0005 +dz=-0.0033 +ds=0.00012 +drz=0.00002 +t_epoch=2010.0 +convention=position_vector
<ITRF88> +proj=helmert +x=0.0254 +y=-0.0005 +z=-0.1548 +s=0.01129 +rx=0.0001 +rz= +dx=0.00026 +dy=0.0001 +dx=-0.0005 +dz=-0.0033 +ds=0.00012 +drz=0.00002 +t_epoch=2010.0 +convention=position_vector
# ITRF2014 Plate Motion Model parameters
#
# As described in
#
# Z. Altamimi et al, 2017, ITRF2014 plate motion model,
# doi: 10.1093/gji/ggx136
<ANTA> +proj=helmert +drx=-0.000248 +dry=-0.000324 +drz=0.000675 +convention=position_vector
<ARAB> +proj=helmert +drx=0.001154 +dry=-0.000136 +drz=0.001444 +convention=position_vector
<AUST> +proj=helmert +drx=0.001510 +dry=0.001182 +drz=0.001215 +convention=position_vector
<EURA> +proj=helmert +drx=-0.000085 +dry=-0.000531 +drz=0.000770 +convention=position_vector
<INDI> +proj=helmert +drx=0.001154 +dry=-0.000005 +drz=0.001454 +convention=position_vector
<NAZC> +proj=helmert +drx=-0.000333 +dry=-0.001544 +drz=0.001623 +convention=position_vector
<NOAM> +proj=helmert +drx=0.000024 +dry=-0.000694 +drz=-0.000063 +convention=position_vector
<NUBI> +proj=helmert +drx=0.000099 +dry=-0.000614 +drz=0.000733 +convention=position_vector
<PCFC> +proj=helmert +drx=-0.000409 +dry=0.001047 +drz=-0.002169 +convention=position_vector
<SOAM> +proj=helmert +drx=-0.000270 +dry=-0.000301 +drz=-0.000140 +convention=position_vector
<SOMA> +proj=helmert +drx=-0.000121 +dry=-0.000794 +drz=0.000884 +convention=position_vector
-179
View File
@@ -1,179 +0,0 @@
DATAPATH = $(top_srcdir)/data
pkgdata_DATA = proj.ini GL27 nad.lst nad27 nad83 world other.extra \
CH null \
ITRF2000 ITRF2008 ITRF2014 proj.db \
projjson.schema.json
SQL_ORDERED_LIST = sql/begin.sql \
sql/proj_db_table_defs.sql \
sql/conversion_triggers.sql \
sql/metadata.sql \
sql/unit_of_measure.sql \
sql/area.sql \
sql/coordinate_system.sql \
sql/axis.sql \
sql/ellipsoid.sql \
sql/prime_meridian.sql \
sql/geodetic_datum.sql \
sql/vertical_datum.sql \
sql/conversion.sql \
sql/geodetic_crs.sql \
sql/projected_crs.sql \
sql/vertical_crs.sql \
sql/compound_crs.sql \
sql/helmert_transformation.sql \
sql/grid_transformation.sql \
sql/grid_transformation_custom.sql \
sql/other_transformation.sql \
sql/concatenated_operation.sql \
sql/concatenated_operation_step.sql \
sql/alias_name.sql \
sql/supersession.sql \
sql/deprecation.sql \
sql/esri.sql \
sql/ignf.sql \
sql/grid_alternatives.sql \
sql/grid_alternatives_generated.sql \
sql/customizations.sql \
sql/commit.sql
EXTRA_DIST = proj.ini GL27 nad.lst nad27 nad83 \
world other.extra \
CH \
ITRF2000 ITRF2008 ITRF2014 \
projjson.schema.json \
CMakeLists.txt \
tests/test_nodata.gtx \
tests/test_vgrid_bigendian_bigtiff.tif \
tests/test_vgrid_bigendian.tif \
tests/test_vgrid_bigtiff.tif \
tests/test_vgrid_bottomup_with_matrix.tif \
tests/test_vgrid_bottomup_with_scale.tif \
tests/test_vgrid_deflate_floatingpointpredictor.tif \
tests/test_vgrid_deflate.tif \
tests/test_vgrid_float64.tif \
tests/test_vgrid_in_second_channel.tif \
tests/test_vgrid_int16.tif \
tests/test_vgrid_int32.tif \
tests/test_vgrid_uint32.tif \
tests/test_vgrid_invalid_channel_type.tif \
tests/test_vgrid_nodata.tif \
tests/test_vgrid_pixelisarea.tif \
tests/test_vgrid_pixelispoint.tif \
tests/test_vgrid_uint16.tif \
tests/test_vgrid_uint16_with_scale_offset.tif \
tests/test_vgrid_unsupported_byte.tif \
tests/test_vgrid_with_overview.tif \
tests/test_vgrid_with_subgrid.tif \
tests/test_hgrid.tif \
tests/test_hgrid_separate.tif \
tests/test_hgrid_tiled.tif \
tests/test_hgrid_tiled_separate.tif \
tests/test_hgrid_strip.tif \
tests/test_hgrid_positive_west.tif \
tests/test_hgrid_lon_shift_first.tif \
tests/test_hgrid_radian.tif \
tests/test_hgrid_degree.tif \
tests/test_hgrid_with_overview.tif \
tests/test_hgrid_extra_ifd_with_other_info.tif \
tests/test_hgrid_with_subgrid.tif \
tests/test_hgrid_with_subgrid_no_grid_name.tif \
tests/subset_of_gr3df97a.tif \
tests/egm96_15_uncompressed_truncated.tif \
tests/test_vgrid_single_strip_truncated.tif \
tests/nkgrf03vel_realigned_extract.tif \
tests/nkgrf03vel_realigned_xy_extract.ct2 \
tests/nkgrf03vel_realigned_z_extract.gtx \
tests/test_hgrid_with_two_level_of_subgrids_no_grid_name.tif \
null \
generate_all_sql_in.cmake sql_filelist.cmake \
$(SQL_ORDERED_LIST)
install-data-local:
$(mkinstalldirs) $(DESTDIR)$(pkgdatadir)
@for gridfile in $(DATAPATH)/*.gsb $(DATAPATH)/*.gtx $(DATAPATH)/ntv1_can.dat dummy \
$(DATAPATH)/alaska $(DATAPATH)/conus $(DATAPATH)/hawaii $(DATAPATH)/null \
$(DATAPATH)/prvi $(DATAPATH)/stgeorge $(DATAPATH)/stlrnc $(DATAPATH)/stpaul \
$(DATAPATH)/FL $(DATAPATH)/MD $(DATAPATH)/TN $(DATAPATH)/WI $(DATAPATH)/WO; do \
if test "$$gridfile" != "dummy" -a -f "$$gridfile" ; then \
echo $(INSTALL_DATA) $$gridfile $(DESTDIR)$(pkgdatadir)/`basename $$gridfile`; \
$(INSTALL_DATA) $$gridfile $(DESTDIR)$(pkgdatadir)/`basename $$gridfile`; \
fi; \
done
# head -c1 not handled on Solaris
proj.db: $(DATAPATH)/sql/*.sql
@echo "Make proj.db"
$(RM) proj.db
@export SQL_EXPANDED_LIST=""; \
for x in $(SQL_ORDERED_LIST); do \
export SQL_EXPANDED_LIST="$${SQL_EXPANDED_LIST} $(DATAPATH)/$$x"; \
done; \
if test "x$(PROJ_DB_CACHE_DIR)" != "x" -a -x "$$(command -v md5sum)" -a -f "$(PROJ_DB_CACHE_DIR)/proj.db" -a -f "$(PROJ_DB_CACHE_DIR)/proj.db.sql.md5" ; then \
cat $${SQL_EXPANDED_LIST} | md5sum | diff - "$(PROJ_DB_CACHE_DIR)/proj.db.sql.md5" > /dev/null \
&& (echo "Reusing cached proj.db"; cp "$(PROJ_DB_CACHE_DIR)/proj.db" proj.db); \
fi; \
if test ! -f proj.db ; then \
cat $${SQL_EXPANDED_LIST} | sqlite3 proj.db; \
fi; \
if [ $$? -ne 0 ] ; then \
echo "Build of proj.db failed"; \
$(RM) proj.db; \
exit 1; \
fi; \
echo "" | head -c1; \
if [ $$? -eq 0 ] ; then \
echo "Running foreign_key_check"; \
if [[ $$(echo "pragma foreign_key_check;" | sqlite3 proj.db | head -c1 | wc -c) -ne 0 ]]; then \
echo "Foreign key check failed"; \
$(RM) proj.db; \
exit 1; \
else \
if test "x$(PROJ_DB_CACHE_DIR)" != "x" -a -x "$$(command -v md5sum)" ; then \
mkdir -p "$(PROJ_DB_CACHE_DIR)"; \
cat $${SQL_EXPANDED_LIST} | md5sum > "$(PROJ_DB_CACHE_DIR)/proj.db.sql.md5"; \
cp proj.db "$(PROJ_DB_CACHE_DIR)"; \
fi \
fi \
fi
# For out-of-tree builds, link all file of the source data dir to the generated data
# Also link select resource files in a for_tests subdirectory so that we are not
# influenced by the presence of other grids
check-local:
@if [ ! -f GL27 ]; then \
for x in $(DATAPATH)/*; do \
ln -sf $$x .; \
done \
fi; \
rm -rf for_tests; \
mkdir for_tests; \
for x in $(DATAPATH)/null \
$(DATAPATH)/GL27 \
$(DATAPATH)/nad27 \
$(DATAPATH)/nad83 \
$(DATAPATH)/ntv1_can.dat \
$(DATAPATH)/MD \
$(DATAPATH)/ntf_r93.gsb \
$(DATAPATH)/egm96_15.gtx \
$(DATAPATH)/ntv2_0.gsb \
$(DATAPATH)/conus \
$(DATAPATH)/alaska \
$(DATAPATH)/nzgd2kgrid0005.gsb \
$(DATAPATH)/ITRF2000 \
$(DATAPATH)/BETA2007.gsb; \
do \
if test -f "$$x" ; then \
ln -sf "../$$x" for_tests; \
else \
echo "WARNING: grid $$x missing: some tests will be skipped"; \
fi \
done; \
ln -sf ../$(DATAPATH)/tests for_tests; \
ln -sf ../$(DATAPATH)/proj.ini for_tests; \
ln -sf ../proj.db for_tests
clean-local:
$(RM) proj.db
$(RM) -rf for_tests
-33
View File
@@ -1,33 +0,0 @@
The files in this directory are support data for PROJ programs.
File Contents:
README --- This file
epsg --- Translation of EPSG GCS/PCS codes into PROJ via init= mechanism.
epsg-deprecated --- EPSG definitions that have been deprecated. They are
not part of 'epsg' anymore, but may have been delivered
with earlier versions of 'epsg'.
Thus, they might occur e.g. in WMS (Web Mapping Services)
running with old EPSG definitions.
This file is not complete at all - it contains just
definitions that were individually reported.
nad27 --- North American Datum 1927 for "init=" definition of
State Plane Coordinate Systems (SPCS).
nad83 --- North American Datum 1983 for "init=" definition of SPCS.
GL27 --- Great Lakes Survey grids, NAD27
world --- Proj specifications for several international grid systems.
nad.lst --- Reference list of SPCS States and NGS datum identifiers
IGNF --- Translation of French Mapping Agency codes into PROJ via init= mechanism.
install --- Unix shell (sh) script to install proj init files.
Read beginning for usage instructions.
Additional data files are available in https://github.com/OSGeo/proj-datumgrid/
-10
View File
@@ -1,10 +0,0 @@
function(cat IN_FILE OUT_FILE)
file(READ ${IN_FILE} CONTENTS)
file(APPEND ${OUT_FILE} "${CONTENTS}")
endfunction()
file(WRITE "${ALL_SQL_IN}" "")
include(sql_filelist.cmake)
foreach(SQL_FILE ${SQL_FILES})
cat(${SQL_FILE} "${ALL_SQL_IN}")
endforeach()
BIN
View File
Binary file not shown.
-16
View File
@@ -1,16 +0,0 @@
[general]
; Lines starting by ; are commented lines.
;
; Network capabilities disabled by default.
; Can be overriden with the PROJ_NETWORK=ON environment variable.
; network = on
; Can be overriden with the PROJ_NETWORK_ENDPOINT environment variable.
cdn_endpoint = https://cdn.proj.org
cache_enabled = on
cache_size_MB = 300
cache_ttl_sec = 86400
-982
View File
@@ -1,982 +0,0 @@
{
"$id": "https://proj.org/schemas/v0.2/projjson.schema.json",
"$schema": "http://json-schema.org/draft-07/schema#",
"description": "Schema for PROJJSON",
"$comment": "This file exists both in data/ and in schemas/vXXX/. Keep both in sync. And if changing the value of $id, change PROJJSON_CURRENT_VERSION accordingly in io.cpp",
"oneOf": [
{ "$ref": "#/definitions/crs" },
{ "$ref": "#/definitions/datum" },
{ "$ref": "#/definitions/datum_ensemble" },
{ "$ref": "#/definitions/ellipsoid" },
{ "$ref": "#/definitions/prime_meridian" },
{ "$ref": "#/definitions/single_operation" },
{ "$ref": "#/definitions/concatenated_operation" }
],
"definitions": {
"abridged_transformation": {
"type": "object",
"properties": {
"$schema" : { "type": "string" },
"type": { "type": "string", "enum": ["AbridgedTransformation"] },
"name": { "type": "string" },
"method": { "$ref": "#/definitions/method" },
"parameters": {
"type": "array",
"items": { "$ref": "#/definitions/parameter_value" }
},
"id": { "$ref": "#/definitions/id" },
"ids": { "$ref": "#/definitions/ids" }
},
"required" : [ "name", "method", "parameters" ],
"allOf": [
{ "$ref": "#/definitions/id_ids_mutually_exclusive" }
],
"additionalProperties": false
},
"axis": {
"type": "object",
"properties": {
"$schema" : { "type": "string" },
"type": { "type": "string", "enum": ["Axis"] },
"name": { "type": "string" },
"abbreviation": { "type": "string" },
"direction": { "type": "string",
"enum": [ "north",
"northNorthEast",
"northEast",
"eastNorthEast",
"east",
"eastSouthEast",
"southEast",
"southSouthEast",
"south",
"southSouthWest",
"southWest",
"westSouthWest",
"west",
"westNorthWest",
"northWest",
"northNorthWest",
"up",
"down",
"geocentricX",
"geocentricY",
"geocentricZ",
"columnPositive",
"columnNegative",
"rowPositive",
"rowNegative",
"displayRight",
"displayLeft",
"displayUp",
"displayDown",
"forward",
"aft",
"port",
"starboard",
"clockwise",
"counterClockwise",
"towards",
"awayFrom",
"future",
"past",
"unspecified" ] },
"unit": { "$ref": "#/definitions/unit" },
"id": { "$ref": "#/definitions/id" },
"ids": { "$ref": "#/definitions/ids" }
},
"required" : [ "name", "abbreviation", "direction" ],
"allOf": [
{ "$ref": "#/definitions/id_ids_mutually_exclusive" }
],
"additionalProperties": false
},
"bbox": {
"type": "object",
"properties": {
"east_longitude": { "type": "number" },
"west_longitude": { "type": "number" },
"south_latitude": { "type": "number" },
"north_latitude": { "type": "number" }
},
"required" : [ "east_longitude", "west_longitude",
"south_latitude", "north_latitude" ],
"additionalProperties": false
},
"bound_crs": {
"type": "object",
"properties": {
"$schema" : { "type": "string" },
"type": { "type": "string", "enum": ["BoundCRS"] },
"source_crs": { "$ref": "#/definitions/crs" },
"target_crs": { "$ref": "#/definitions/crs" },
"transformation": { "$ref": "#/definitions/abridged_transformation" }
},
"required" : [ "source_crs", "target_crs", "transformation" ],
"additionalProperties": false
},
"compound_crs": {
"type": "object",
"allOf": [{ "$ref": "#/definitions/object_usage" }],
"properties": {
"type": { "type": "string", "enum": ["CompoundCRS"] },
"name": { "type": "string" },
"components": {
"type": "array",
"items": { "$ref": "#/definitions/crs" }
},
"$schema" : {},
"scope": {},
"area": {},
"bbox": {},
"usages": {},
"remarks": {},
"id": {}, "ids": {}
},
"required" : [ "name", "components" ],
"additionalProperties": false
},
"concatenated_operation": {
"type": "object",
"allOf": [{ "$ref": "#/definitions/object_usage" }],
"properties": {
"type": { "type": "string", "enum": ["ConcatenatedOperation"] },
"name": { "type": "string" },
"source_crs": { "$ref": "#/definitions/crs" },
"target_crs": { "$ref": "#/definitions/crs" },
"steps": {
"type": "array",
"items": { "$ref": "#/definitions/single_operation" }
},
"$schema" : {},
"scope": {},
"area": {},
"bbox": {},
"usages": {},
"remarks": {},
"id": {}, "ids": {}
},
"required" : [ "name", "source_crs", "target_crs", "steps" ],
"additionalProperties": false
},
"conversion": {
"type": "object",
"properties": {
"$schema" : { "type": "string" },
"type": { "type": "string", "enum": ["Conversion"] },
"name": { "type": "string" },
"method": { "$ref": "#/definitions/method" },
"parameters": {
"type": "array",
"items": { "$ref": "#/definitions/parameter_value" }
},
"id": { "$ref": "#/definitions/id" },
"ids": { "$ref": "#/definitions/ids" }
},
"required" : [ "name", "method" ],
"allOf": [
{ "$ref": "#/definitions/id_ids_mutually_exclusive" }
],
"additionalProperties": false
},
"coordinate_system": {
"type": "object",
"properties": {
"$schema" : { "type": "string" },
"type": { "type": "string", "enum": ["CoordinateSystem"] },
"name": { "type": "string" },
"subtype": { "type": "string",
"enum": ["Cartesian",
"spherical",
"ellipsoidal",
"vertical",
"ordinal",
"parametric",
"TemporalDateTime",
"TemporalCount",
"TemporalMeasure"] },
"axis": {
"type": "array",
"items": { "$ref": "#/definitions/axis" }
},
"id": { "$ref": "#/definitions/id" },
"ids": { "$ref": "#/definitions/ids" }
},
"required" : [ "subtype", "axis" ],
"allOf": [
{ "$ref": "#/definitions/id_ids_mutually_exclusive" }
],
"additionalProperties": false
},
"crs": {
"oneOf": [
{ "$ref": "#/definitions/bound_crs" },
{ "$ref": "#/definitions/compound_crs" },
{ "$ref": "#/definitions/derived_engineering_crs" },
{ "$ref": "#/definitions/derived_geodetic_crs" },
{ "$ref": "#/definitions/derived_parametric_crs" },
{ "$ref": "#/definitions/derived_projected_crs" },
{ "$ref": "#/definitions/derived_temporal_crs" },
{ "$ref": "#/definitions/derived_vertical_crs" },
{ "$ref": "#/definitions/engineering_crs" },
{ "$ref": "#/definitions/geodetic_crs" },
{ "$ref": "#/definitions/parametric_crs" },
{ "$ref": "#/definitions/projected_crs" },
{ "$ref": "#/definitions/temporal_crs" },
{ "$ref": "#/definitions/vertical_crs" }
]
},
"datum": {
"oneOf": [
{ "$ref": "#/definitions/geodetic_reference_frame" },
{ "$ref": "#/definitions/vertical_reference_frame" },
{ "$ref": "#/definitions/dynamic_geodetic_reference_frame" },
{ "$ref": "#/definitions/dynamic_vertical_reference_frame" },
{ "$ref": "#/definitions/temporal_datum" },
{ "$ref": "#/definitions/parametric_datum" },
{ "$ref": "#/definitions/engineering_datum" }
]
},
"datum_ensemble": {
"type": "object",
"properties": {
"$schema" : { "type": "string" },
"type": { "type": "string", "enum": ["DatumEnsemble"] },
"name": { "type": "string" },
"members": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": { "type": "string" },
"id": { "$ref": "#/definitions/id" },
"ids": { "$ref": "#/definitions/ids" }
},
"required" : [ "name" ],
"allOf": [
{ "$ref": "#/definitions/id_ids_mutually_exclusive" }
],
"additionalProperties": false
}
},
"ellipsoid": { "$ref": "#/definitions/ellipsoid" },
"accuracy": { "type": "string" },
"id": { "$ref": "#/definitions/id" },
"ids": { "$ref": "#/definitions/ids" }
},
"required" : [ "name", "members", "accuracy" ],
"allOf": [
{ "$ref": "#/definitions/id_ids_mutually_exclusive" }
],
"additionalProperties": false
},
"derived_engineering_crs": {
"type": "object",
"allOf": [{ "$ref": "#/definitions/object_usage" }],
"properties": {
"type": { "type": "string",
"enum": ["DerivedEngineeringCRS"] },
"name": { "type": "string" },
"base_crs": { "$ref": "#/definitions/engineering_crs" },
"conversion": { "$ref": "#/definitions/conversion" },
"coordinate_system": { "$ref": "#/definitions/coordinate_system" },
"$schema" : {},
"scope": {},
"area": {},
"bbox": {},
"usages": {},
"remarks": {},
"id": {}, "ids": {}
},
"required" : [ "name", "base_crs", "conversion", "coordinate_system" ],
"additionalProperties": false
},
"derived_geodetic_crs": {
"type": "object",
"allOf": [{ "$ref": "#/definitions/object_usage" }],
"properties": {
"type": { "type": "string",
"enum": ["DerivedGeodeticCRS",
"DerivedGeographicCRS"] },
"name": { "type": "string" },
"base_crs": { "$ref": "#/definitions/geodetic_crs" },
"conversion": { "$ref": "#/definitions/conversion" },
"coordinate_system": { "$ref": "#/definitions/coordinate_system" },
"$schema" : {},
"scope": {},
"area": {},
"bbox": {},
"usages": {},
"remarks": {},
"id": {}, "ids": {}
},
"required" : [ "name", "base_crs", "conversion", "coordinate_system" ],
"additionalProperties": false
},
"derived_parametric_crs": {
"type": "object",
"allOf": [{ "$ref": "#/definitions/object_usage" }],
"properties": {
"type": { "type": "string",
"enum": ["DerivedParametricCRS"] },
"name": { "type": "string" },
"base_crs": { "$ref": "#/definitions/parametric_crs" },
"conversion": { "$ref": "#/definitions/conversion" },
"coordinate_system": { "$ref": "#/definitions/coordinate_system" },
"$schema" : {},
"scope": {},
"area": {},
"bbox": {},
"usages": {},
"remarks": {},
"id": {}, "ids": {}
},
"required" : [ "name", "base_crs", "conversion", "coordinate_system" ],
"additionalProperties": false
},
"derived_projected_crs": {
"type": "object",
"allOf": [{ "$ref": "#/definitions/object_usage" }],
"properties": {
"type": { "type": "string",
"enum": ["DerivedProjectedCRS"] },
"name": { "type": "string" },
"base_crs": { "$ref": "#/definitions/projected_crs" },
"conversion": { "$ref": "#/definitions/conversion" },
"coordinate_system": { "$ref": "#/definitions/coordinate_system" },
"$schema" : {},
"scope": {},
"area": {},
"bbox": {},
"usages": {},
"remarks": {},
"id": {}, "ids": {}
},
"required" : [ "name", "base_crs", "conversion", "coordinate_system" ],
"additionalProperties": false
},
"derived_temporal_crs": {
"type": "object",
"allOf": [{ "$ref": "#/definitions/object_usage" }],
"properties": {
"type": { "type": "string",
"enum": ["DerivedTemporalCRS"] },
"name": { "type": "string" },
"base_crs": { "$ref": "#/definitions/temporal_crs" },
"conversion": { "$ref": "#/definitions/conversion" },
"coordinate_system": { "$ref": "#/definitions/coordinate_system" },
"$schema" : {},
"scope": {},
"area": {},
"bbox": {},
"usages": {},
"remarks": {},
"id": {}, "ids": {}
},
"required" : [ "name", "base_crs", "conversion", "coordinate_system" ],
"additionalProperties": false
},
"derived_vertical_crs": {
"type": "object",
"allOf": [{ "$ref": "#/definitions/object_usage" }],
"properties": {
"type": { "type": "string",
"enum": ["DerivedVerticalCRS"] },
"name": { "type": "string" },
"base_crs": { "$ref": "#/definitions/vertical_crs" },
"conversion": { "$ref": "#/definitions/conversion" },
"coordinate_system": { "$ref": "#/definitions/coordinate_system" },
"$schema" : {},
"scope": {},
"area": {},
"bbox": {},
"usages": {},
"remarks": {},
"id": {}, "ids": {}
},
"required" : [ "name", "base_crs", "conversion", "coordinate_system" ],
"additionalProperties": false
},
"dynamic_geodetic_reference_frame": {
"type": "object",
"allOf": [{ "$ref": "#/definitions/geodetic_reference_frame" }],
"properties": {
"type": { "type": "string", "enum": ["DynamicGeodeticReferenceFrame"] },
"name": {},
"anchor": {},
"ellipsoid": {},
"prime_meridian": {},
"frame_reference_epoch": { "type": "number" },
"deformation_model": { "type": "string" },
"$schema" : {},
"scope": {},
"area": {},
"bbox": {},
"usages": {},
"remarks": {},
"id": {}, "ids": {}
},
"required" : [ "name", "ellipsoid", "frame_reference_epoch" ],
"additionalProperties": false
},
"dynamic_vertical_reference_frame": {
"type": "object",
"allOf": [{ "$ref": "#/definitions/vertical_reference_frame" }],
"properties": {
"type": { "type": "string", "enum": ["DynamicVerticalReferenceFrame"] },
"name": {},
"anchor": {},
"frame_reference_epoch": { "type": "number" },
"deformation_model": { "type": "string" },
"$schema" : {},
"scope": {},
"area": {},
"bbox": {},
"usages": {},
"remarks": {},
"id": {}, "ids": {}
},
"required" : [ "name", "frame_reference_epoch" ],
"additionalProperties": false
},
"ellipsoid": {
"type": "object",
"oneOf":[
{
"properties": {
"$schema" : { "type": "string" },
"type": { "type": "string", "enum": ["Ellipsoid"] },
"name": { "type": "string" },
"semi_major_axis": { "$ref": "#/definitions/value_in_metre_or_value_and_unit" },
"semi_minor_axis": { "$ref": "#/definitions/value_in_metre_or_value_and_unit" },
"id": { "$ref": "#/definitions/id" },
"ids": { "$ref": "#/definitions/ids" }
},
"required" : [ "name", "semi_major_axis", "semi_minor_axis" ],
"additionalProperties": false
},
{
"properties": {
"$schema" : { "type": "string" },
"type": { "type": "string", "enum": ["Ellipsoid"] },
"name": { "type": "string" },
"semi_major_axis": { "$ref": "#/definitions/value_in_metre_or_value_and_unit" },
"inverse_flattening": { "type": "number" },
"id": { "$ref": "#/definitions/id" },
"ids": { "$ref": "#/definitions/ids" }
},
"required" : [ "name", "semi_major_axis", "inverse_flattening" ],
"additionalProperties": false
},
{
"properties": {
"$schema" : { "type": "string" },
"type": { "type": "string", "enum": ["Ellipsoid"] },
"name": { "type": "string" },
"radius": { "$ref": "#/definitions/value_in_metre_or_value_and_unit" },
"id": { "$ref": "#/definitions/id" },
"ids": { "$ref": "#/definitions/ids" }
},
"required" : [ "name", "radius" ],
"additionalProperties": false
}
],
"allOf": [
{ "$ref": "#/definitions/id_ids_mutually_exclusive" }
]
},
"engineering_crs": {
"type": "object",
"allOf": [{ "$ref": "#/definitions/object_usage" }],
"properties": {
"type": { "type": "string", "enum": ["EngineeringCRS"] },
"name": { "type": "string" },
"datum": { "$ref": "#/definitions/engineering_datum" },
"coordinate_system": { "$ref": "#/definitions/coordinate_system" },
"$schema" : {},
"scope": {},
"area": {},
"bbox": {},
"usages": {},
"remarks": {},
"id": {}, "ids": {}
},
"required" : [ "name", "datum" ],
"additionalProperties": false
},
"engineering_datum": {
"type": "object",
"allOf": [{ "$ref": "#/definitions/object_usage" }],
"properties": {
"type": { "type": "string", "enum": ["EngineeringDatum"] },
"name": { "type": "string" },
"anchor": { "type": "string" },
"$schema" : {},
"scope": {},
"area": {},
"bbox": {},
"usages": {},
"remarks": {},
"id": {}, "ids": {}
},
"required" : [ "name" ],
"additionalProperties": false
},
"geodetic_crs": {
"type": "object",
"properties": {
"type": { "type": "string", "enum": ["GeodeticCRS", "GeographicCRS"] },
"name": { "type": "string" },
"datum": {
"oneOf": [
{ "$ref": "#/definitions/geodetic_reference_frame" },
{ "$ref": "#/definitions/dynamic_geodetic_reference_frame" }
]
},
"datum_ensemble": { "$ref": "#/definitions/datum_ensemble" },
"coordinate_system": { "$ref": "#/definitions/coordinate_system" },
"$schema" : {},
"scope": {},
"area": {},
"bbox": {},
"usages": {},
"remarks": {},
"id": {}, "ids": {}
},
"required" : [ "name" ],
"description": "One and only one of datum and datum_ensemble must be provided",
"allOf": [
{ "$ref": "#/definitions/object_usage" },
{ "$ref": "#/definitions/one_and_only_one_of_datum_or_datum_ensemble" }
],
"additionalProperties": false
},
"geodetic_reference_frame": {
"type": "object",
"allOf": [{ "$ref": "#/definitions/object_usage" }],
"properties": {
"type": { "type": "string", "enum": ["GeodeticReferenceFrame"] },
"name": { "type": "string" },
"anchor": { "type": "string" },
"ellipsoid": { "$ref": "#/definitions/ellipsoid" },
"prime_meridian": { "$ref": "#/definitions/prime_meridian" },
"$schema" : {},
"scope": {},
"area": {},
"bbox": {},
"usages": {},
"remarks": {},
"id": {}, "ids": {}
},
"required" : [ "name", "ellipsoid" ],
"additionalProperties": false
},
"id": {
"type": "object",
"properties": {
"authority": { "type": "string" },
"code": {
"oneOf": [ { "type": "string" }, { "type": "integer" } ]
}
},
"required" : [ "authority", "code" ],
"additionalProperties": false
},
"ids": {
"type": "array",
"items": { "$ref": "#/definitions/id" }
},
"method": {
"type": "object",
"properties": {
"$schema" : { "type": "string" },
"type": { "type": "string", "enum": ["OperationMethod"]},
"name": { "type": "string" },
"id": { "$ref": "#/definitions/id" },
"ids": { "$ref": "#/definitions/ids" }
},
"required" : [ "name" ],
"allOf": [
{ "$ref": "#/definitions/id_ids_mutually_exclusive" }
],
"additionalProperties": false
},
"id_ids_mutually_exclusive": {
"not": {
"type": "object",
"required": [ "id", "ids" ]
}
},
"one_and_only_one_of_datum_or_datum_ensemble": {
"allOf": [
{
"not": {
"type": "object",
"required": [ "datum", "datum_ensemble" ]
}
},
{
"oneOf": [
{ "type": "object", "required": ["datum"] },
{ "type": "object", "required": ["datum_ensemble"] }
]
}
]
},
"object_usage": {
"anyOf": [
{
"type": "object",
"properties": {
"$schema" : { "type": "string" },
"scope": { "type": "string" },
"area": { "type": "string" },
"bbox": { "$ref": "#/definitions/bbox" },
"remarks": { "type": "string" },
"id": { "$ref": "#/definitions/id" },
"ids": { "$ref": "#/definitions/ids" }
},
"allOf": [
{ "$ref": "#/definitions/id_ids_mutually_exclusive" }
]
},
{
"type": "object",
"properties": {
"$schema" : { "type": "string" },
"usages": { "$ref": "#/definitions/usages" },
"remarks": { "type": "string" },
"id": { "$ref": "#/definitions/id" },
"ids": { "$ref": "#/definitions/ids" }
},
"allOf": [
{ "$ref": "#/definitions/id_ids_mutually_exclusive" }
]
}
]
},
"parameter_value": {
"type": "object",
"properties": {
"$schema" : { "type": "string" },
"type": { "type": "string", "enum": ["ParameterValue"] },
"name": { "type": "string" },
"value": {
"oneOf": [
{ "type": "string" },
{ "type": "number" }
]
},
"unit": { "$ref": "#/definitions/unit" },
"id": { "$ref": "#/definitions/id" },
"ids": { "$ref": "#/definitions/ids" }
},
"required" : [ "name", "value" ],
"allOf": [
{ "$ref": "#/definitions/id_ids_mutually_exclusive" }
],
"additionalProperties": false
},
"parametric_crs": {
"type": "object",
"allOf": [{ "$ref": "#/definitions/object_usage" }],
"properties": {
"type": { "type": "string", "enum": ["ParametricCRS"] },
"name": { "type": "string" },
"datum": { "$ref": "#/definitions/parametric_datum" },
"coordinate_system": { "$ref": "#/definitions/coordinate_system" },
"$schema" : {},
"scope": {},
"area": {},
"bbox": {},
"usages": {},
"remarks": {},
"id": {}, "ids": {}
},
"required" : [ "name", "datum" ],
"additionalProperties": false
},
"parametric_datum": {
"type": "object",
"allOf": [{ "$ref": "#/definitions/object_usage" }],
"properties": {
"type": { "type": "string", "enum": ["ParametricDatum"] },
"name": { "type": "string" },
"anchor": { "type": "string" },
"$schema" : {},
"scope": {},
"area": {},
"bbox": {},
"usages": {},
"remarks": {},
"id": {}, "ids": {}
},
"required" : [ "name" ],
"additionalProperties": false
},
"prime_meridian": {
"type": "object",
"properties": {
"$schema" : { "type": "string" },
"type": { "type": "string", "enum": ["PrimeMeridian"] },
"name": { "type": "string" },
"longitude": { "$ref": "#/definitions/value_and_unit" },
"id": { "$ref": "#/definitions/id" },
"ids": { "$ref": "#/definitions/ids" }
},
"required" : [ "name" ],
"allOf": [
{ "$ref": "#/definitions/id_ids_mutually_exclusive" }
],
"additionalProperties": false
},
"single_operation": {
"oneOf": [
{ "$ref": "#/definitions/conversion" },
{ "$ref": "#/definitions/transformation" }
]
},
"projected_crs": {
"type": "object",
"allOf": [{ "$ref": "#/definitions/object_usage" }],
"properties": {
"type": { "type": "string",
"enum": ["ProjectedCRS"] },
"name": { "type": "string" },
"base_crs": { "$ref": "#/definitions/geodetic_crs" },
"conversion": { "$ref": "#/definitions/conversion" },
"coordinate_system": { "$ref": "#/definitions/coordinate_system" },
"$schema" : {},
"scope": {},
"area": {},
"bbox": {},
"usages": {},
"remarks": {},
"id": {}, "ids": {}
},
"required" : [ "name", "base_crs", "conversion", "coordinate_system" ],
"additionalProperties": false
},
"temporal_crs": {
"type": "object",
"allOf": [{ "$ref": "#/definitions/object_usage" }],
"properties": {
"type": { "type": "string", "enum": ["TemporalCRS"] },
"name": { "type": "string" },
"datum": { "$ref": "#/definitions/temporal_datum" },
"coordinate_system": { "$ref": "#/definitions/coordinate_system" },
"$schema" : {},
"scope": {},
"area": {},
"bbox": {},
"usages": {},
"remarks": {},
"id": {}, "ids": {}
},
"required" : [ "name", "datum" ],
"additionalProperties": false
},
"temporal_datum": {
"type": "object",
"allOf": [{ "$ref": "#/definitions/object_usage" }],
"properties": {
"type": { "type": "string", "enum": ["TemporalDatum"] },
"name": { "type": "string" },
"calendar": { "type": "string" },
"time_origin": { "type": "string" },
"$schema" : {},
"scope": {},
"area": {},
"bbox": {},
"usages": {},
"remarks": {},
"id": {}, "ids": {}
},
"required" : [ "name", "calendar" ],
"additionalProperties": false
},
"transformation": {
"type": "object",
"allOf": [{ "$ref": "#/definitions/object_usage" }],
"properties": {
"type": { "type": "string", "enum": ["Transformation"] },
"name": { "type": "string" },
"source_crs": { "$ref": "#/definitions/crs" },
"target_crs": { "$ref": "#/definitions/crs" },
"interpolation_crs": { "$ref": "#/definitions/crs" },
"method": { "$ref": "#/definitions/method" },
"parameters": {
"type": "array",
"items": { "$ref": "#/definitions/parameter_value" }
},
"accuracy": { "type": "string" },
"$schema" : {},
"scope": {},
"area": {},
"bbox": {},
"usages": {},
"remarks": {},
"id": {}, "ids": {}
},
"required" : [ "name", "source_crs", "target_crs", "method", "parameters" ],
"additionalProperties": false
},
"unit": {
"oneOf": [
{
"type": "string",
"enum": ["metre", "degree", "unity"]
},
{
"type": "object",
"properties": {
"type": { "type": "string",
"enum": ["LinearUnit", "AngularUnit", "ScaleUnit",
"TimeUnit", "ParametricUnit", "Unit"] },
"name": { "type": "string" },
"conversion_factor": { "type": "number" },
"id": { "$ref": "#/definitions/id" },
"ids": { "$ref": "#/definitions/ids" }
},
"required" : [ "type", "name" ],
"allOf": [
{ "$ref": "#/definitions/id_ids_mutually_exclusive" }
],
"additionalProperties": false
}
]
},
"usages": {
"type": "array",
"items": {
"type": "object",
"properties": {
"scope": { "type": "string" },
"area": { "type": "string" },
"bbox": { "$ref": "#/definitions/bbox" }
},
"additionalProperties": false
}
},
"value_and_unit": {
"type": "object",
"properties": {
"value": { "type": "number" },
"unit": { "$ref": "#/definitions/unit" }
},
"required" : [ "value", "unit" ],
"additionalProperties": false
},
"value_in_metre_or_value_and_unit": {
"oneOf": [
{ "type": "number" },
{ "$ref": "#/definitions/value_and_unit" }
]
},
"vertical_crs": {
"type": "object",
"properties": {
"type": { "type": "string", "enum": ["VerticalCRS"] },
"name": { "type": "string" },
"datum": {
"oneOf": [
{ "$ref": "#/definitions/vertical_reference_frame" },
{ "$ref": "#/definitions/dynamic_vertical_reference_frame" }
]
},
"datum_ensemble": { "$ref": "#/definitions/datum_ensemble" },
"coordinate_system": { "$ref": "#/definitions/coordinate_system" },
"geoid_model": {
"type": "object",
"properties": {
"name": { "type": "string" },
"interpolation_crs": { "$ref": "#/definitions/crs" },
"id": { "$ref": "#/definitions/id" }
},
"required" : [ "name" ],
"additionalProperties": false
},
"$schema" : {},
"scope": {},
"area": {},
"bbox": {},
"usages": {},
"remarks": {},
"id": {}, "ids": {}
},
"required" : [ "name"],
"description": "One and only one of datum and datum_ensemble must be provided",
"allOf": [
{ "$ref": "#/definitions/object_usage" },
{ "$ref": "#/definitions/one_and_only_one_of_datum_or_datum_ensemble" }
],
"additionalProperties": false
},
"vertical_reference_frame": {
"type": "object",
"allOf": [{ "$ref": "#/definitions/object_usage" }],
"properties": {
"type": { "type": "string", "enum": ["VerticalReferenceFrame"] },
"name": { "type": "string" },
"anchor": { "type": "string" },
"$schema" : {},
"scope": {},
"area": {},
"bbox": {},
"usages": {},
"remarks": {},
"id": {}, "ids": {}
},
"required" : [ "name" ],
"additionalProperties": false
}
}
}
File diff suppressed because it is too large Load Diff
-3541
View File
File diff suppressed because it is too large Load Diff
-285
View File
@@ -1,285 +0,0 @@
--- This file has been generated by scripts/build_db.py. DO NOT EDIT !
INSERT INTO "axis" VALUES('EPSG','1039','Easting','M','east','EPSG','1024',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','1040','Northing','P','north','EPSG','1024',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','1062','Easting','X','North along 130°W','EPSG','1025',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','1063','Northing','Y','North along 140°E','EPSG','1025',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','1065','Easting','E','South along 90°E','EPSG','1026',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','1066','Northing','N','South along 180°E','EPSG','1026',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','1056','Easting','E','North along 90°E','EPSG','1027',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','1058','Northing','N','North along 0°E','EPSG','1027',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','1073','Easting','E','east','EPSG','1028',1,'EPSG','9037');
INSERT INTO "axis" VALUES('EPSG','1074','Northing','N','north','EPSG','1028',2,'EPSG','9037');
INSERT INTO "axis" VALUES('EPSG','1078','Northing','N','north','EPSG','1029',1,'EPSG','9002');
INSERT INTO "axis" VALUES('EPSG','1079','Easting','E','east','EPSG','1029',2,'EPSG','9002');
INSERT INTO "axis" VALUES('EPSG','1082','Gravity-related height','H','up','EPSG','1030',1,'EPSG','9002');
INSERT INTO "axis" VALUES('EPSG','1101','Northing','Y','north','EPSG','1031',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','1102','Westing','X','west','EPSG','1031',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','1110','Plant East','x','east','EPSG','1032',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','1111','Plant North','y','north','EPSG','1032',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','1112','Gravity-related height','z','up','EPSG','1032',3,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','1428','Bin grid I','I','J-axis plus 90°','EPSG','1033',1,'EPSG','1024');
INSERT INTO "axis" VALUES('EPSG','1429','Bin grid J','J','See associated operation','EPSG','1033',2,'EPSG','1024');
INSERT INTO "axis" VALUES('EPSG','1431','Bin grid I','I','J-axis minus 90°','EPSG','1034',1,'EPSG','1024');
INSERT INTO "axis" VALUES('EPSG','1432','Bin grid J','J','See associated operation','EPSG','1034',2,'EPSG','1024');
INSERT INTO "axis" VALUES('EPSG','1466','Easting','X','South along 180°E','EPSG','1035',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','1467','Northing','Y','South along 90°W','EPSG','1035',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','1471','Easting','X','South along 57°E','EPSG','1036',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','1472','Northing','Y','South along 147°E','EPSG','1036',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','1476','Easting','X','South along 108°E','EPSG','1037',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','1477','Northing','Y','South along 162°W','EPSG','1037',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','1481','Easting','X','South along 165°W','EPSG','1038',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','1482','Northing','Y','South along 75°W','EPSG','1038',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','1486','Easting','E','east','EPSG','1039',1,'EPSG','9002');
INSERT INTO "axis" VALUES('EPSG','1487','Northing','N','north','EPSG','1039',2,'EPSG','9002');
INSERT INTO "axis" VALUES('EPSG','1024','Forward','x','Ahead','EPSG','1040',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','1025','Starboard','y','Starboard','EPSG','1040',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','1026','Platform Up','z','Upward','EPSG','1040',3,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','1030','Forward','x','Ahead','EPSG','1041',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','1031','Starboard','y','Starboard','EPSG','1041',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','1032','Platform Down','z','Downward','EPSG','1041',3,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','1036','Starboard','x','Starboard','EPSG','1042',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','1037','Forward','y','Ahead','EPSG','1042',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','1038','Platform Up','z','Upward','EPSG','1042',3,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','1516','Depth','D','down','EPSG','1043',1,'EPSG','9003');
INSERT INTO "axis" VALUES('EPSG','1525','Northing','N','North along 180°E','EPSG','1044',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','1526','Easting','E','North along 90°W','EPSG','1044',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','1044','Starboard','x','Starboard','EPSG','1045',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','1045','Forward','y','Ahead','EPSG','1045',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','1046','Platform Down','z','Downward','EPSG','1045',3,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','1042','Local northing','n','north','EPSG','1047',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','1043','Local easting','e','east','EPSG','1047',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','1049','Local northing','n','north','EPSG','1048',1,'EPSG','9002');
INSERT INTO "axis" VALUES('EPSG','1050','Local easting','e','east','EPSG','1048',2,'EPSG','9002');
INSERT INTO "axis" VALUES('EPSG','1051','Local depth','d','down','EPSG','1049',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','1053','Local depth','d','down','EPSG','1050',1,'EPSG','9002');
INSERT INTO "axis" VALUES('EPSG','1','Easting','E','east','EPSG','4400',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','2','Northing','N','north','EPSG','4400',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','3','Easting','E','east','EPSG','4401',1,'EPSG','9062');
INSERT INTO "axis" VALUES('EPSG','4','Northing','N','north','EPSG','4401',2,'EPSG','9062');
INSERT INTO "axis" VALUES('EPSG','5','Easting','E','east','EPSG','4402',1,'EPSG','9042');
INSERT INTO "axis" VALUES('EPSG','6','Northing','N','north','EPSG','4402',2,'EPSG','9042');
INSERT INTO "axis" VALUES('EPSG','7','Easting','E','east','EPSG','4403',1,'EPSG','9005');
INSERT INTO "axis" VALUES('EPSG','8','Northing','N','north','EPSG','4403',2,'EPSG','9005');
INSERT INTO "axis" VALUES('EPSG','9','Easting','E','east','EPSG','4404',1,'EPSG','9094');
INSERT INTO "axis" VALUES('EPSG','10','Northing','N','north','EPSG','4404',2,'EPSG','9094');
INSERT INTO "axis" VALUES('EPSG','11','Easting','E','east','EPSG','4405',1,'EPSG','9041');
INSERT INTO "axis" VALUES('EPSG','12','Northing','N','north','EPSG','4405',2,'EPSG','9041');
INSERT INTO "axis" VALUES('EPSG','13','Easting','X','east','EPSG','4406',1,'EPSG','9036');
INSERT INTO "axis" VALUES('EPSG','14','Northing','Y','north','EPSG','4406',2,'EPSG','9036');
INSERT INTO "axis" VALUES('EPSG','15','Easting','E','east','EPSG','4407',1,'EPSG','9039');
INSERT INTO "axis" VALUES('EPSG','16','Northing','N','north','EPSG','4407',2,'EPSG','9039');
INSERT INTO "axis" VALUES('EPSG','17','Easting','E','east','EPSG','4408',1,'EPSG','9084');
INSERT INTO "axis" VALUES('EPSG','18','Northing','N','north','EPSG','4408',2,'EPSG','9084');
INSERT INTO "axis" VALUES('EPSG','19','Easting','E','east','EPSG','4409',1,'EPSG','9040');
INSERT INTO "axis" VALUES('EPSG','20','Northing','N','north','EPSG','4409',2,'EPSG','9040');
INSERT INTO "axis" VALUES('EPSG','181','Easting','E','east','EPSG','4410',1,'EPSG','9301');
INSERT INTO "axis" VALUES('EPSG','182','Northing','N','north','EPSG','4410',2,'EPSG','9301');
INSERT INTO "axis" VALUES('EPSG','236','Easting','E','South along 90°E.','EPSG','4460',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','237','Northing','N','South along 180°E','EPSG','4460',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','205','Topocentric East','U','east','EPSG','4461',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','206','Topocentric North','V','north','EPSG','4461',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','207','Topocentric height','W','up','EPSG','4461',3,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','193','Easting','X','South along 180°W','EPSG','4462',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','194','Northing','Y','South along 90°W','EPSG','4462',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','195','Easting','X','South along 100°E','EPSG','4463',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','196','Northing','Y','South along 170°W','EPSG','4463',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','197','Easting','X','South along 90°W','EPSG','4464',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','198','Northing','Y','South along 0°E','EPSG','4464',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','199','Easting','X','South along 50°E','EPSG','4465',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','200','Northing','Y','South along 140°E','EPSG','4465',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','201','Easting','X','South along 10°W','EPSG','4466',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','202','Northing','Y','South along 80°E','EPSG','4466',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','203','Easting','X','South along 60°W','EPSG','4467',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','204','Northing','Y','South along 30°E','EPSG','4467',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','191','Easting','X','South along 45°E','EPSG','4468',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','192','Northing','Y','South along 135°E','EPSG','4468',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','187','Easting','X','South along 90°E','EPSG','4469',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','188','Northing','Y','South along 180°E','EPSG','4469',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','185','Easting','X','North along 90°E','EPSG','4470',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','186','Northing','Y','North along 0°E','EPSG','4470',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','137','Easting','E','North along 75°W','EPSG','4471',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','138','Northing','N','North along 165°W','EPSG','4471',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','156','Easting','E','North along 60°W','EPSG','4472',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','139','Northing','N','North along 150°W','EPSG','4472',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','157','Easting','E','North along 45°W','EPSG','4473',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','140','Northing','N','North along 135°W','EPSG','4473',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','158','Easting','E','North along 15°W','EPSG','4474',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','141','Northing','N','North along 105°W','EPSG','4474',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','159','Easting','E','North along 0°E','EPSG','4475',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','142','Northing','N','North along 90°W','EPSG','4475',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','160','Easting','E','North along 15°E','EPSG','4476',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','143','Northing','N','North along 75°W','EPSG','4476',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','161','Easting','E','North along 45°E','EPSG','4477',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','144','Northing','N','North along 45°W','EPSG','4477',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','162','Easting','E','North along 60°E','EPSG','4478',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','145','Northing','N','North along 30°W','EPSG','4478',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','163','Easting','E','North along 75°E','EPSG','4479',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','146','Northing','N','North along 15°W','EPSG','4479',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','164','Easting','E','North along 105°E','EPSG','4480',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','147','Northing','N','North along 15°E','EPSG','4480',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','165','Easting','E','North along 120°E','EPSG','4481',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','148','Northing','N','North along 30°E','EPSG','4481',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','166','Easting','E','North along 135°E','EPSG','4482',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','149','Northing','N','North along 45°E','EPSG','4482',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','167','Easting','E','North along 165°E','EPSG','4483',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','150','Northing','N','North along 75°E','EPSG','4483',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','168','Easting','E','North along 180°E','EPSG','4484',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','151','Northing','N','North along 90°E','EPSG','4484',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','169','Easting','E','North along 165°W','EPSG','4485',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','152','Northing','N','North along 105°E','EPSG','4485',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','170','Easting','E','North along 135°W','EPSG','4486',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','153','Northing','N','North along 135°E','EPSG','4486',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','171','Easting','E','North along 120°W','EPSG','4487',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','154','Northing','N','North along 150°E','EPSG','4487',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','172','Easting','E','North along 105°W','EPSG','4488',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','155','Northing','N','North along 165°E','EPSG','4488',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','21','Easting','E','North along 160°E','EPSG','4489',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','22','Northing','N','North along 70°E','EPSG','4489',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','23','Easting','E','North along 90°E','EPSG','4490',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','24','Northing','N','North along 0°E','EPSG','4490',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','26','Westing','W','west','EPSG','4491',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','25','Northing','N','north','EPSG','4491',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','27','First local axis','X','North along 130°W','EPSG','4492',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','28','Second local axis','Y','North along 140°E','EPSG','4492',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','30','Northing','N','South along 180°E','EPSG','4493',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','29','Easting','E','South along 90°E','EPSG','4493',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','32','Northing','N','North along 0°E','EPSG','4494',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','31','Easting','E','North along 90°E','EPSG','4494',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','33','Easting','X','east','EPSG','4495',1,'EPSG','9002');
INSERT INTO "axis" VALUES('EPSG','34','Northing','Y','north','EPSG','4495',2,'EPSG','9002');
INSERT INTO "axis" VALUES('EPSG','35','Easting','E(X)','east','EPSG','4496',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','36','Northing','N(Y)','north','EPSG','4496',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','37','Easting','X','east','EPSG','4497',1,'EPSG','9003');
INSERT INTO "axis" VALUES('EPSG','38','Northing','Y','north','EPSG','4497',2,'EPSG','9003');
INSERT INTO "axis" VALUES('EPSG','39','Easting','Y','east','EPSG','4498',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','40','Northing','X','north','EPSG','4498',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','41','Easting','X','east','EPSG','4499',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','42','Northing','Y','north','EPSG','4499',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','44','Northing','N','north','EPSG','4500',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','43','Easting','E','east','EPSG','4500',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','45','Northing','N','north','EPSG','4501',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','46','Westing','E','west','EPSG','4501',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','189','Northing','N','north','EPSG','4502',1,'EPSG','9005');
INSERT INTO "axis" VALUES('EPSG','190','Easting','E','east','EPSG','4502',2,'EPSG','9005');
INSERT INTO "axis" VALUES('EPSG','48','Northing','X','north','EPSG','4530',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','47','Easting','Y','east','EPSG','4530',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','50','Northing','x','north','EPSG','4531',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','49','Easting','y','east','EPSG','4531',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','52','Northing','Y','north','EPSG','4532',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','51','Easting','X','east','EPSG','4532',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','180','Northing','X','north','EPSG','4533',1,'EPSG','9098');
INSERT INTO "axis" VALUES('EPSG','179','Easting','Y','east','EPSG','4533',2,'EPSG','9098');
INSERT INTO "axis" VALUES('EPSG','183','Northing','none','north','EPSG','4534',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','184','Easting','none','east','EPSG','4534',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','53','Geodetic latitude','Lat','north','EPSG','6401',1,'EPSG','9108');
INSERT INTO "axis" VALUES('EPSG','54','Geodetic longitude','Long','east','EPSG','6401',2,'EPSG','9108');
INSERT INTO "axis" VALUES('EPSG','55','Ellipsoidal height','h','up','EPSG','6401',3,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','56','Geodetic latitude','Lat','north','EPSG','6402',1,'EPSG','9108');
INSERT INTO "axis" VALUES('EPSG','57','Geodetic longitude','Long','east','EPSG','6402',2,'EPSG','9108');
INSERT INTO "axis" VALUES('EPSG','58','Geodetic latitude','Lat','north','EPSG','6403',1,'EPSG','9105');
INSERT INTO "axis" VALUES('EPSG','59','Geodetic longitude','Lon','east','EPSG','6403',2,'EPSG','9105');
INSERT INTO "axis" VALUES('EPSG','60','Spherical latitude','Lat','north','EPSG','6404',1,'EPSG','9122');
INSERT INTO "axis" VALUES('EPSG','61','Spherical longitude','Long','east','EPSG','6404',2,'EPSG','9122');
INSERT INTO "axis" VALUES('EPSG','62','Geocentric radius','R','up','EPSG','6404',3,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','63','Geodetic latitude','Lat','north','EPSG','6405',1,'EPSG','9102');
INSERT INTO "axis" VALUES('EPSG','64','Geodetic longitude','Long','east','EPSG','6405',2,'EPSG','9102');
INSERT INTO "axis" VALUES('EPSG','65','Geodetic latitude','Lat','north','EPSG','6406',1,'EPSG','9116');
INSERT INTO "axis" VALUES('EPSG','66','Geodetic longitude','Long','east','EPSG','6406',2,'EPSG','9116');
INSERT INTO "axis" VALUES('EPSG','67','Geodetic latitude','Lat','north','EPSG','6407',1,'EPSG','9117');
INSERT INTO "axis" VALUES('EPSG','68','Geodetic longitude','Long','east','EPSG','6407',2,'EPSG','9117');
INSERT INTO "axis" VALUES('EPSG','69','Geodetic latitude','Lat','north','EPSG','6408',1,'EPSG','9115');
INSERT INTO "axis" VALUES('EPSG','70','Geodetic longitude','Long','east','EPSG','6408',2,'EPSG','9115');
INSERT INTO "axis" VALUES('EPSG','71','Geodetic latitude','Lat','north','EPSG','6409',1,'EPSG','9118');
INSERT INTO "axis" VALUES('EPSG','72','Geodetic longitude','Long','east','EPSG','6409',2,'EPSG','9118');
INSERT INTO "axis" VALUES('EPSG','73','Geodetic latitude','Lat','north','EPSG','6410',1,'EPSG','9119');
INSERT INTO "axis" VALUES('EPSG','74','Geodetic longitude','Long','east','EPSG','6410',2,'EPSG','9119');
INSERT INTO "axis" VALUES('EPSG','75','Geodetic latitude','Lat','north','EPSG','6411',1,'EPSG','9107');
INSERT INTO "axis" VALUES('EPSG','76','Geodetic longitude','Long','east','EPSG','6411',2,'EPSG','9107');
INSERT INTO "axis" VALUES('EPSG','77','Geodetic latitude','Lat','north','EPSG','6412',1,'EPSG','9120');
INSERT INTO "axis" VALUES('EPSG','78','Geodetic longitude','Long','east','EPSG','6412',2,'EPSG','9120');
INSERT INTO "axis" VALUES('EPSG','79','Geodetic latitude','Lat','north','EPSG','6413',1,'EPSG','9102');
INSERT INTO "axis" VALUES('EPSG','80','Geodetic longitude','Long','east','EPSG','6413',2,'EPSG','9102');
INSERT INTO "axis" VALUES('EPSG','81','Ellipsoidal height','h','up','EPSG','6413',3,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','82','Geodetic latitude','Lat','north','EPSG','6414',1,'EPSG','9116');
INSERT INTO "axis" VALUES('EPSG','83','Geodetic longitude','Long','east','EPSG','6414',2,'EPSG','9116');
INSERT INTO "axis" VALUES('EPSG','84','Ellipsoidal height','h','up','EPSG','6414',3,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','85','Geodetic latitude','Lat','north','EPSG','6415',1,'EPSG','9117');
INSERT INTO "axis" VALUES('EPSG','86','Geodetic longitude','Long','east','EPSG','6415',2,'EPSG','9117');
INSERT INTO "axis" VALUES('EPSG','87','Ellipsoidal height','h','up','EPSG','6415',3,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','88','Geodetic latitude','Lat','north','EPSG','6416',1,'EPSG','9115');
INSERT INTO "axis" VALUES('EPSG','89','Geodetic longitude','Long','east','EPSG','6416',2,'EPSG','9115');
INSERT INTO "axis" VALUES('EPSG','90','Ellipsoidal height','h','up','EPSG','6416',3,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','91','Geodetic latitude','Lat','north','EPSG','6417',1,'EPSG','9118');
INSERT INTO "axis" VALUES('EPSG','92','Geodetic longitude','Long','east','EPSG','6417',2,'EPSG','9118');
INSERT INTO "axis" VALUES('EPSG','93','Ellipsoidal height','h','up','EPSG','6417',3,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','94','Geodetic latitude','Lat','north','EPSG','6418',1,'EPSG','9119');
INSERT INTO "axis" VALUES('EPSG','95','Geodetic longitude','Long','east','EPSG','6418',2,'EPSG','9119');
INSERT INTO "axis" VALUES('EPSG','96','Ellipsoidal height','h','up','EPSG','6418',3,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','97','Geodetic latitude','Lat','north','EPSG','6419',1,'EPSG','9107');
INSERT INTO "axis" VALUES('EPSG','98','Geodetic longitude','Long','east','EPSG','6419',2,'EPSG','9107');
INSERT INTO "axis" VALUES('EPSG','99','Ellipsoidal height','h','up','EPSG','6419',3,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','100','Geodetic latitude','Lat','north','EPSG','6420',1,'EPSG','9120');
INSERT INTO "axis" VALUES('EPSG','101','Geodetic longitude','Long','east','EPSG','6420',2,'EPSG','9120');
INSERT INTO "axis" VALUES('EPSG','102','Ellipsoidal height','h','up','EPSG','6420',3,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','103','Geodetic latitude','Lat','north','EPSG','6421',1,'EPSG','9105');
INSERT INTO "axis" VALUES('EPSG','104','Geodetic longitude','Lon','east','EPSG','6421',2,'EPSG','9105');
INSERT INTO "axis" VALUES('EPSG','105','Ellipsoidal height','h','up','EPSG','6421',3,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','106','Geodetic latitude','Lat','north','EPSG','6422',1,'EPSG','9122');
INSERT INTO "axis" VALUES('EPSG','107','Geodetic longitude','Lon','east','EPSG','6422',2,'EPSG','9122');
INSERT INTO "axis" VALUES('EPSG','108','Geodetic latitude','Lat','north','EPSG','6423',1,'EPSG','9122');
INSERT INTO "axis" VALUES('EPSG','109','Geodetic longitude','Lon','east','EPSG','6423',2,'EPSG','9122');
INSERT INTO "axis" VALUES('EPSG','110','Ellipsoidal height','h','up','EPSG','6423',3,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','220','Geodetic longitude','Lon','east','EPSG','6424',1,'EPSG','9122');
INSERT INTO "axis" VALUES('EPSG','221','Geodetic latitude','Lat','north','EPSG','6424',2,'EPSG','9122');
INSERT INTO "axis" VALUES('EPSG','215','Geodetic longitude','Lon','east','EPSG','6425',1,'EPSG','9105');
INSERT INTO "axis" VALUES('EPSG','216','Geodetic latitude','Lat','north','EPSG','6425',2,'EPSG','9105');
INSERT INTO "axis" VALUES('EPSG','222','Geodetic longitude','Lon','east','EPSG','6426',1,'EPSG','9122');
INSERT INTO "axis" VALUES('EPSG','223','Geodetic latitude','Lat','north','EPSG','6426',2,'EPSG','9122');
INSERT INTO "axis" VALUES('EPSG','224','Ellipsoidal height','h','up','EPSG','6426',3,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','217','Geodetic longitude','Lon','east','EPSG','6427',1,'EPSG','9105');
INSERT INTO "axis" VALUES('EPSG','218','Geodetic latitude','Lat','north','EPSG','6427',2,'EPSG','9105');
INSERT INTO "axis" VALUES('EPSG','219','Ellipsoidal height','h','up','EPSG','6427',3,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','225','Geodetic latitude','Lat','north','EPSG','6428',1,'EPSG','9101');
INSERT INTO "axis" VALUES('EPSG','226','Geodetic longitude','Lon','east','EPSG','6428',2,'EPSG','9101');
INSERT INTO "axis" VALUES('EPSG','227','Geodetic longitude','Lon','east','EPSG','6429',1,'EPSG','9101');
INSERT INTO "axis" VALUES('EPSG','228','Geodetic latitude','Lat','north','EPSG','6429',2,'EPSG','9101');
INSERT INTO "axis" VALUES('EPSG','230','Geodetic latitude','Lat','north','EPSG','6430',1,'EPSG','9101');
INSERT INTO "axis" VALUES('EPSG','231','Geodetic longitude','Lon','east','EPSG','6430',2,'EPSG','9101');
INSERT INTO "axis" VALUES('EPSG','232','Ellipsoidal height','h','up','EPSG','6430',3,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','233','Geodetic longitude','Lon','east','EPSG','6431',1,'EPSG','9101');
INSERT INTO "axis" VALUES('EPSG','234','Geodetic latitude','Lat','north','EPSG','6431',2,'EPSG','9101');
INSERT INTO "axis" VALUES('EPSG','235','Ellipsoidal height','h','up','EPSG','6431',3,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','214','Depth','D','down','EPSG','6495',1,'EPSG','9002');
INSERT INTO "axis" VALUES('EPSG','111','Gravity-related height','H','up','EPSG','6496',1,'EPSG','9095');
INSERT INTO "axis" VALUES('EPSG','112','Gravity-related height','H','up','EPSG','6497',1,'EPSG','9003');
INSERT INTO "axis" VALUES('EPSG','113','Depth','D','down','EPSG','6498',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','114','Gravity-related height','H','up','EPSG','6499',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','115','Geocentric X','X','geocentricX','EPSG','6500',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','116','Geocentric Y','Y','geocentricY','EPSG','6500',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','117','Geocentric Z','Z','geocentricZ','EPSG','6500',3,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','119','Southing','X','south','EPSG','6501',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','118','Westing','Y','west','EPSG','6501',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','120','Westing','Y','west','EPSG','6502',1,'EPSG','9031');
INSERT INTO "axis" VALUES('EPSG','121','Southing','X','south','EPSG','6502',2,'EPSG','9031');
INSERT INTO "axis" VALUES('EPSG','122','Westing','Y','west','EPSG','6503',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','123','Southing','X','south','EPSG','6503',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','125','Plant North','n','northwest','EPSG','6504',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','124','Plant East','e','northeast','EPSG','6504',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','126','First local axis','n','northwest','EPSG','6505',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','127','Second local axis','e','northeast','EPSG','6505',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','128','First local axis','I','east-south-east','EPSG','6506',1,'EPSG','9205');
INSERT INTO "axis" VALUES('EPSG','129','Second local axis','J','north-north-east','EPSG','6506',2,'EPSG','9204');
INSERT INTO "axis" VALUES('EPSG','130','First local axis','X','north','EPSG','6507',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','131','Second local axis','Y','west','EPSG','6507',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','133','Bin grid J','J','north north east','EPSG','6508',1,'EPSG','9209');
INSERT INTO "axis" VALUES('EPSG','132','Bin grid I','I','east south east','EPSG','6508',2,'EPSG','9208');
INSERT INTO "axis" VALUES('EPSG','135','Southing','P','south','EPSG','6509',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','134','Westing','M','west','EPSG','6509',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','173','Plant East','x','northeast','EPSG','6510',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','174','Plant North','y','northwest','EPSG','6510',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','177','Inline','I','Along receiver lines','EPSG','6511',1,'EPSG','9208');
INSERT INTO "axis" VALUES('EPSG','178','Crossline','J','Across receiver lines','EPSG','6511',2,'EPSG','9209');
INSERT INTO "axis" VALUES('EPSG','211','Plant East','x','east','EPSG','6512',1,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','212','Plant North','y','north','EPSG','6512',2,'EPSG','9001');
INSERT INTO "axis" VALUES('EPSG','213','Local height','z','up','EPSG','6512',3,'EPSG','9001');
-1
View File
@@ -1 +0,0 @@
BEGIN;
-140
View File
@@ -1,140 +0,0 @@
COMMIT;
CREATE INDEX geodetic_crs_datum_idx ON geodetic_crs(datum_auth_name, datum_code);
CREATE INDEX geodetic_datum_ellipsoid_idx ON geodetic_datum(ellipsoid_auth_name, ellipsoid_code);
CREATE INDEX supersession_idx ON supersession(superseded_table_name, superseded_auth_name, superseded_code);
CREATE INDEX deprecation_idx ON deprecation(table_name, deprecated_auth_name, deprecated_code);
CREATE INDEX helmert_transformation_idx ON helmert_transformation_table(source_crs_auth_name, source_crs_code, target_crs_auth_name, target_crs_code);
CREATE INDEX grid_transformation_idx ON grid_transformation(source_crs_auth_name, source_crs_code, target_crs_auth_name, target_crs_code);
CREATE INDEX other_transformation_idx ON other_transformation(source_crs_auth_name, source_crs_code, target_crs_auth_name, target_crs_code);
CREATE INDEX concatenated_operation_idx ON concatenated_operation(source_crs_auth_name, source_crs_code, target_crs_auth_name, target_crs_code);
-- Do an explicit foreign_key_check as foreign key checking is a no-op within
-- a transaction. Unfortunately we can't ask for this to be an error, so this
-- is just for verbose output. In Makefile, we check this separately
PRAGMA foreign_key_check;
-- Final consistency checks
CREATE TABLE dummy(foo);
CREATE TRIGGER final_checks
BEFORE INSERT ON dummy
FOR EACH ROW BEGIN
-- check that view definitions have no error
SELECT RAISE(ABORT, 'corrupt definition of coordinate_operation_view')
WHERE (SELECT 1 FROM coordinate_operation_view LIMIT 1) = 0;
SELECT RAISE(ABORT, 'corrupt definition of crs_view')
WHERE (SELECT 1 FROM crs_view LIMIT 1) = 0;
SELECT RAISE(ABORT, 'corrupt definition of object_view')
WHERE (SELECT 1 FROM object_view LIMIT 1) = 0;
SELECT RAISE(ABORT, 'corrupt definition of authority_list')
WHERE (SELECT 1 FROM authority_list LIMIT 1) = 0;
-- test to check that our custom grid transformation overrides are really needed
SELECT RAISE(ABORT, 'PROJ grid_transformation defined whereas EPSG has one')
WHERE EXISTS (SELECT 1 FROM grid_transformation g1, grid_transformation g2 WHERE
lower(g1.grid_name) = lower(g2.grid_name) AND
g1.auth_name = 'PROJ' AND g2.auth_name = 'EPSG');
SELECT RAISE(ABORT, 'Arg! there is now a EPSG:102100 object. Hack in createFromUserInput() will no longer work')
WHERE EXISTS(SELECT 1 FROM crs_view WHERE auth_name = 'EPSG' AND code = '102100');
-- check coordinate_operation_view "foreign keys"
SELECT RAISE(ABORT, 'One coordinate_operation has a broken source_crs link')
WHERE EXISTS (SELECT * FROM coordinate_operation_view cov WHERE
cov.source_crs_auth_name || cov.source_crs_code NOT IN
(SELECT auth_name || code FROM crs_view));
SELECT RAISE(ABORT, 'One coordinate_operation has a broken target_crs link')
WHERE EXISTS (SELECT * FROM coordinate_operation_view cov WHERE
cov.target_crs_auth_name || cov.target_crs_code NOT IN
(SELECT auth_name || code FROM crs_view));
-- check that grids with NTv2 method are properly registered
SELECT RAISE(ABORT, 'One grid_transformation with NTv2 has not its source_crs in geodetic_crs table with type = ''geographic 2D''')
WHERE EXISTS (SELECT * FROM grid_transformation g WHERE
g.method_name = 'NTv2' AND
g.source_crs_auth_name || g.source_crs_code NOT IN
(SELECT auth_name || code FROM geodetic_crs
WHERE type = 'geographic 2D'));
SELECT RAISE(ABORT, 'One grid_transformation with NTv2 has not its target_crs in geodetic_crs table with type = ''geographic 2D''')
WHERE EXISTS (SELECT * FROM grid_transformation g WHERE
g.method_name = 'NTv2' AND
g.target_crs_auth_name || g.target_crs_code NOT IN
(SELECT auth_name || code FROM geodetic_crs
WHERE type = 'geographic 2D'));
-- check that grids with HEIGHT_TO_GEOGRAPHIC3D method are properly registered
SELECT RAISE(ABORT, 'One grid_transformation with HEIGHT_TO_GEOGRAPHIC3D has not its source_crs in vertical_crs table')
WHERE EXISTS (SELECT * FROM grid_transformation g WHERE
g.method_code = 'HEIGHT_TO_GEOGRAPHIC3D' AND
g.source_crs_auth_name || g.source_crs_code NOT IN
(SELECT auth_name || code FROM vertical_crs));
SELECT RAISE(ABORT, 'One grid_transformation with HEIGHT_TO_GEOGRAPHIC3D has not its target_crs in geodetic_crs table with type = ''geographic 3D''')
WHERE EXISTS (SELECT * FROM grid_transformation g WHERE
g.method_code = 'HEIGHT_TO_GEOGRAPHIC3D' AND
g.target_crs_auth_name || g.target_crs_code NOT IN
(SELECT auth_name || code FROM geodetic_crs
WHERE type = 'geographic 3D'));
-- check that grids with Geographic3D to GravityRelatedHeight method are properly registered
SELECT RAISE(ABORT, 'One grid_transformation with Geographic3D to GravityRelatedHeight has not its target_crs in vertical_crs table')
WHERE EXISTS (SELECT * FROM grid_transformation g WHERE
g.deprecated = 0 AND
g.method_name LIKE 'Geographic3D to GravityRelatedHeight%' AND
g.target_crs_auth_name || g.target_crs_code NOT IN
(SELECT auth_name || code FROM vertical_crs));
SELECT RAISE(ABORT, 'One grid_transformation with Geographic3D to GravityRelatedHeight has not its source_crs in geodetic_crs table with type = ''geographic 3D''')
WHERE EXISTS (SELECT * FROM grid_transformation g WHERE
g.deprecated = 0 AND
g.method_name LIKE 'Geographic3D to GravityRelatedHeight%' AND
NOT (g.auth_name = 'EPSG' AND g.code IN (7648, 7649, 7650)) AND -- those are wrongly registered as they use a geocentric CRS. Reported to EPSG
g.source_crs_auth_name || g.source_crs_code NOT IN
(SELECT auth_name || code FROM geodetic_crs
WHERE type = 'geographic 3D'));
-- check that transformations intersect the area of use of their source/target CRS
-- EPSG, ESRI and IGNF have cases where this does not hold.
SELECT RAISE(ABORT, 'The area of use of at least one coordinate_operation does not intersect the one of its source CRS')
WHERE EXISTS (SELECT * FROM coordinate_operation_view v, crs_view c, area va, area ca WHERE
v.deprecated = 0 AND
v.auth_name NOT IN ('EPSG', 'ESRI', 'IGNF') AND
v.source_crs_auth_name = c.auth_name AND
v.source_crs_code = c.code AND
v.area_of_use_auth_name = va.auth_name AND
v.area_of_use_code = va.code AND
c.area_of_use_auth_name = ca.auth_name AND
c.area_of_use_code = ca.code AND
NOT (ca.south_lat < va.north_lat AND va.south_lat < ca.north_lat));
SELECT RAISE(ABORT, 'The area of use of at least one coordinate_operation does not intersect the one of its target CRS')
WHERE EXISTS (SELECT * FROM coordinate_operation_view v, crs_view c, area va, area ca WHERE
v.deprecated = 0 AND
v.auth_name NOT IN ('EPSG', 'ESRI', 'IGNF') AND
v.target_crs_auth_name = c.auth_name AND
v.target_crs_code = c.code AND
v.area_of_use_auth_name = va.auth_name AND
v.area_of_use_code = va.code AND
c.area_of_use_auth_name = ca.auth_name AND
c.area_of_use_code = ca.code AND
NOT (ca.south_lat < va.north_lat AND va.south_lat < ca.north_lat));
-- check geoid_model table
SELECT RAISE(ABORT, 'missing GEOID99 in geoid_model')
WHERE NOT EXISTS(SELECT 1 FROM geoid_model WHERE name = 'GEOID99');
SELECT RAISE(ABORT, 'missing GEOID03 in geoid_model')
WHERE NOT EXISTS(SELECT 1 FROM geoid_model WHERE name = 'GEOID03');
SELECT RAISE(ABORT, 'missing GEOID06 in geoid_model')
WHERE NOT EXISTS(SELECT 1 FROM geoid_model WHERE name = 'GEOID06');
SELECT RAISE(ABORT, 'missing GEOID09 in geoid_model')
WHERE NOT EXISTS(SELECT 1 FROM geoid_model WHERE name = 'GEOID09');
SELECT RAISE(ABORT, 'missing GEOID12A in geoid_model')
WHERE NOT EXISTS(SELECT 1 FROM geoid_model WHERE name = 'GEOID12A');
SELECT RAISE(ABORT, 'missing GEOID12B in geoid_model')
WHERE NOT EXISTS(SELECT 1 FROM geoid_model WHERE name = 'GEOID12B');
SELECT RAISE(ABORT, 'missing GEOID18 in geoid_model')
WHERE NOT EXISTS(SELECT 1 FROM geoid_model WHERE name = 'GEOID18');
END;
INSERT INTO dummy DEFAULT VALUES;
DROP TRIGGER final_checks;
DROP TABLE dummy;
VACUUM;
-279
View File
@@ -1,279 +0,0 @@
--- This file has been generated by scripts/build_db.py. DO NOT EDIT !
INSERT INTO "compound_crs" VALUES('EPSG','3901','KKJ / Finland Uniform Coordinate System + N60 height',NULL,NULL,'EPSG','2393','EPSG','5717','EPSG','3333',0);
INSERT INTO "compound_crs" VALUES('EPSG','3902','ETRS89 / TM35FIN(N,E) + N60 height',NULL,NULL,'EPSG','5048','EPSG','5717','EPSG','3333',0);
INSERT INTO "compound_crs" VALUES('EPSG','3903','ETRS89 / TM35FIN(N,E) + N2000 height',NULL,NULL,'EPSG','5048','EPSG','3900','EPSG','3333',0);
INSERT INTO "compound_crs" VALUES('EPSG','4097','ETRS89 / DKTM1 + DVR90 height',NULL,NULL,'EPSG','4093','EPSG','5799','EPSG','3631',0);
INSERT INTO "compound_crs" VALUES('EPSG','4098','ETRS89 / DKTM2 + DVR90 height',NULL,NULL,'EPSG','4094','EPSG','5799','EPSG','3632',0);
INSERT INTO "compound_crs" VALUES('EPSG','4099','ETRS89 / DKTM3 + DVR90 height',NULL,NULL,'EPSG','4095','EPSG','5799','EPSG','2532',0);
INSERT INTO "compound_crs" VALUES('EPSG','4100','ETRS89 / DKTM4 + DVR90 height',NULL,NULL,'EPSG','4096','EPSG','5799','EPSG','2533',0);
INSERT INTO "compound_crs" VALUES('EPSG','5318','ETRS89 / Faroe TM + FVR09 height',NULL,NULL,'EPSG','5316','EPSG','5317','EPSG','3248',0);
INSERT INTO "compound_crs" VALUES('EPSG','5498','NAD83 + NAVD88 height',NULL,NULL,'EPSG','4269','EPSG','5703','EPSG','3664',0);
INSERT INTO "compound_crs" VALUES('EPSG','5499','NAD83(HARN) + NAVD88 height',NULL,NULL,'EPSG','4152','EPSG','5703','EPSG','1323',0);
INSERT INTO "compound_crs" VALUES('EPSG','5500','NAD83(NSRS2007) + NAVD88 height',NULL,NULL,'EPSG','4759','EPSG','5703','EPSG','1323',0);
INSERT INTO "compound_crs" VALUES('EPSG','5554','ETRS89 / UTM zone 31N + DHHN92 height',NULL,NULL,'EPSG','25831','EPSG','5783','EPSG','3901',0);
INSERT INTO "compound_crs" VALUES('EPSG','5555','ETRS89 / UTM zone 32N + DHHN92 height',NULL,NULL,'EPSG','25832','EPSG','5783','EPSG','3904',0);
INSERT INTO "compound_crs" VALUES('EPSG','5556','ETRS89 / UTM zone 33N + DHHN92 height',NULL,NULL,'EPSG','25833','EPSG','5783','EPSG','3879',0);
INSERT INTO "compound_crs" VALUES('EPSG','5598','FEH2010 / Fehmarnbelt TM + FCSVR10 height',NULL,NULL,'EPSG','5596','EPSG','5597','EPSG','3890',0);
INSERT INTO "compound_crs" VALUES('EPSG','5628','SWEREF99 + RH2000 height',NULL,NULL,'EPSG','4619','EPSG','5613','EPSG','3313',0);
INSERT INTO "compound_crs" VALUES('EPSG','5698','RGF93 / Lambert-93 + NGF-IGN69 height',NULL,NULL,'EPSG','2154','EPSG','5720','EPSG','1326',0);
INSERT INTO "compound_crs" VALUES('EPSG','5699','RGF93 / Lambert-93 + NGF-IGN78 height',NULL,NULL,'EPSG','2154','EPSG','5721','EPSG','1327',0);
INSERT INTO "compound_crs" VALUES('EPSG','5707','NTF (Paris) / Lambert zone I + NGF-IGN69 height',NULL,NULL,'EPSG','27571','EPSG','5720','EPSG','1731',0);
INSERT INTO "compound_crs" VALUES('EPSG','5708','NTF (Paris) / Lambert zone IV + NGF-IGN78 height',NULL,NULL,'EPSG','27574','EPSG','5721','EPSG','1327',0);
INSERT INTO "compound_crs" VALUES('EPSG','5832','DB_REF / 3-degree Gauss-Kruger zone 2 (E-N) + DHHN92 height',NULL,NULL,'EPSG','5682','EPSG','5783','EPSG','1624',0);
INSERT INTO "compound_crs" VALUES('EPSG','5833','DB_REF / 3-degree Gauss-Kruger zone 3 (E-N) + DHHN92 height',NULL,NULL,'EPSG','5683','EPSG','5783','EPSG','3993',0);
INSERT INTO "compound_crs" VALUES('EPSG','5834','DB_REF / 3-degree Gauss-Kruger zone 4 (E-N) + DHHN92 height',NULL,NULL,'EPSG','5684','EPSG','5783','EPSG','3996',0);
INSERT INTO "compound_crs" VALUES('EPSG','5835','DB_REF / 3-degree Gauss-Kruger zone 5 (E-N) + DHHN92 height',NULL,NULL,'EPSG','5685','EPSG','5783','EPSG','3998',0);
INSERT INTO "compound_crs" VALUES('EPSG','5845','SWEREF99 TM + RH2000 height',NULL,NULL,'EPSG','3006','EPSG','5613','EPSG','3313',0);
INSERT INTO "compound_crs" VALUES('EPSG','5846','SWEREF99 12 00 + RH2000 height',NULL,NULL,'EPSG','3007','EPSG','5613','EPSG','2833',0);
INSERT INTO "compound_crs" VALUES('EPSG','5847','SWEREF99 13 30 + RH2000 height',NULL,NULL,'EPSG','3008','EPSG','5613','EPSG','2834',0);
INSERT INTO "compound_crs" VALUES('EPSG','5848','SWEREF99 15 00 + RH2000 height',NULL,NULL,'EPSG','3009','EPSG','5613','EPSG','2835',0);
INSERT INTO "compound_crs" VALUES('EPSG','5849','SWEREF99 16 30 + RH2000 height',NULL,NULL,'EPSG','3010','EPSG','5613','EPSG','2836',0);
INSERT INTO "compound_crs" VALUES('EPSG','5850','SWEREF99 18 00 + RH2000 height',NULL,NULL,'EPSG','3011','EPSG','5613','EPSG','2837',0);
INSERT INTO "compound_crs" VALUES('EPSG','5851','SWEREF99 14 15 + RH2000 height',NULL,NULL,'EPSG','3012','EPSG','5613','EPSG','2838',0);
INSERT INTO "compound_crs" VALUES('EPSG','5852','SWEREF99 15 45 + RH2000 height',NULL,NULL,'EPSG','3013','EPSG','5613','EPSG','2839',0);
INSERT INTO "compound_crs" VALUES('EPSG','5853','SWEREF99 17 15 + RH2000 height',NULL,NULL,'EPSG','3014','EPSG','5613','EPSG','2840',0);
INSERT INTO "compound_crs" VALUES('EPSG','5854','SWEREF99 18 45 + RH2000 height',NULL,NULL,'EPSG','3015','EPSG','5613','EPSG','2841',0);
INSERT INTO "compound_crs" VALUES('EPSG','5855','SWEREF99 20 15 + RH2000 height',NULL,NULL,'EPSG','3016','EPSG','5613','EPSG','2842',0);
INSERT INTO "compound_crs" VALUES('EPSG','5856','SWEREF99 21 45 + RH2000 height',NULL,NULL,'EPSG','3017','EPSG','5613','EPSG','2843',0);
INSERT INTO "compound_crs" VALUES('EPSG','5857','SWEREF99 23 15 + RH2000 height',NULL,NULL,'EPSG','3018','EPSG','5613','EPSG','2844',0);
INSERT INTO "compound_crs" VALUES('EPSG','5942','ETRS89 + NN2000 height',NULL,NULL,'EPSG','4258','EPSG','5941','EPSG','1352',0);
INSERT INTO "compound_crs" VALUES('EPSG','5945','ETRS89 / NTM zone 5 + NN2000 height',NULL,NULL,'EPSG','5105','EPSG','5941','EPSG','3636',0);
INSERT INTO "compound_crs" VALUES('EPSG','5946','ETRS89 / NTM zone 6 + NN2000 height',NULL,NULL,'EPSG','5106','EPSG','5941','EPSG','3639',0);
INSERT INTO "compound_crs" VALUES('EPSG','5947','ETRS89 / NTM zone 7 + NN2000 height',NULL,NULL,'EPSG','5107','EPSG','5941','EPSG','3647',0);
INSERT INTO "compound_crs" VALUES('EPSG','5948','ETRS89 / NTM zone 8 + NN2000 height',NULL,NULL,'EPSG','5108','EPSG','5941','EPSG','3648',0);
INSERT INTO "compound_crs" VALUES('EPSG','5949','ETRS89 / NTM zone 9 + NN2000 height',NULL,NULL,'EPSG','5109','EPSG','5941','EPSG','3649',0);
INSERT INTO "compound_crs" VALUES('EPSG','5950','ETRS89 / NTM zone 10 + NN2000 height',NULL,NULL,'EPSG','5110','EPSG','5941','EPSG','3650',0);
INSERT INTO "compound_crs" VALUES('EPSG','5951','ETRS89 / NTM zone 11 + NN2000 height',NULL,NULL,'EPSG','5111','EPSG','5941','EPSG','3651',0);
INSERT INTO "compound_crs" VALUES('EPSG','5952','ETRS89 / NTM zone 12 + NN2000 height',NULL,NULL,'EPSG','5112','EPSG','5941','EPSG','3653',0);
INSERT INTO "compound_crs" VALUES('EPSG','5953','ETRS89 / NTM zone 13 + NN2000 height',NULL,NULL,'EPSG','5113','EPSG','5941','EPSG','3654',0);
INSERT INTO "compound_crs" VALUES('EPSG','5954','ETRS89 / NTM zone 14 + NN2000 height',NULL,NULL,'EPSG','5114','EPSG','5941','EPSG','3655',0);
INSERT INTO "compound_crs" VALUES('EPSG','5955','ETRS89 / NTM zone 15 + NN2000 height',NULL,NULL,'EPSG','5115','EPSG','5941','EPSG','3656',0);
INSERT INTO "compound_crs" VALUES('EPSG','5956','ETRS89 / NTM zone 16 + NN2000 height',NULL,NULL,'EPSG','5116','EPSG','5941','EPSG','3657',0);
INSERT INTO "compound_crs" VALUES('EPSG','5957','ETRS89 / NTM zone 17 + NN2000 height',NULL,NULL,'EPSG','5117','EPSG','5941','EPSG','3658',0);
INSERT INTO "compound_crs" VALUES('EPSG','5958','ETRS89 / NTM zone 18 + NN2000 height',NULL,NULL,'EPSG','5118','EPSG','5941','EPSG','3660',0);
INSERT INTO "compound_crs" VALUES('EPSG','5959','ETRS89 / NTM zone 19 + NN2000 height',NULL,NULL,'EPSG','5119','EPSG','5941','EPSG','3661',0);
INSERT INTO "compound_crs" VALUES('EPSG','5960','ETRS89 / NTM zone 20 + NN2000 height',NULL,NULL,'EPSG','5120','EPSG','5941','EPSG','3662',0);
INSERT INTO "compound_crs" VALUES('EPSG','5961','ETRS89 / NTM zone 21 + NN2000 height',NULL,NULL,'EPSG','5121','EPSG','5941','EPSG','3663',0);
INSERT INTO "compound_crs" VALUES('EPSG','5962','ETRS89 / NTM zone 22 + NN2000 height',NULL,NULL,'EPSG','5122','EPSG','5941','EPSG','3665',0);
INSERT INTO "compound_crs" VALUES('EPSG','5963','ETRS89 / NTM zone 23 + NN2000 height',NULL,NULL,'EPSG','5123','EPSG','5941','EPSG','3667',0);
INSERT INTO "compound_crs" VALUES('EPSG','5964','ETRS89 / NTM zone 24 + NN2000 height',NULL,NULL,'EPSG','5124','EPSG','5941','EPSG','3668',0);
INSERT INTO "compound_crs" VALUES('EPSG','5965','ETRS89 / NTM zone 25 + NN2000 height',NULL,NULL,'EPSG','5125','EPSG','5941','EPSG','3669',0);
INSERT INTO "compound_crs" VALUES('EPSG','5966','ETRS89 / NTM zone 26 + NN2000 height',NULL,NULL,'EPSG','5126','EPSG','5941','EPSG','3671',0);
INSERT INTO "compound_crs" VALUES('EPSG','5967','ETRS89 / NTM zone 27 + NN2000 height',NULL,NULL,'EPSG','5127','EPSG','5941','EPSG','3672',0);
INSERT INTO "compound_crs" VALUES('EPSG','5968','ETRS89 / NTM zone 28 + NN2000 height',NULL,NULL,'EPSG','5128','EPSG','5941','EPSG','3673',0);
INSERT INTO "compound_crs" VALUES('EPSG','5969','ETRS89 / NTM zone 29 + NN2000 height',NULL,NULL,'EPSG','5129','EPSG','5941','EPSG','3674',0);
INSERT INTO "compound_crs" VALUES('EPSG','5970','ETRS89 / NTM zone 30 + NN2000 height',NULL,NULL,'EPSG','5130','EPSG','5941','EPSG','3676',0);
INSERT INTO "compound_crs" VALUES('EPSG','5971','ETRS89 / UTM zone 31 + NN2000 height',NULL,NULL,'EPSG','25831','EPSG','5941','EPSG','3636',0);
INSERT INTO "compound_crs" VALUES('EPSG','5972','ETRS89 / UTM zone 32 + NN2000 height',NULL,NULL,'EPSG','25832','EPSG','5941','EPSG','4066',0);
INSERT INTO "compound_crs" VALUES('EPSG','5973','ETRS89 / UTM zone 33 + NN2000 height',NULL,NULL,'EPSG','25833','EPSG','5941','EPSG','4067',0);
INSERT INTO "compound_crs" VALUES('EPSG','5974','ETRS89 / UTM zone 34 + NN2000 height',NULL,NULL,'EPSG','25834','EPSG','5941','EPSG','4068',0);
INSERT INTO "compound_crs" VALUES('EPSG','5975','ETRS89 / UTM zone 35 + NN2000 height',NULL,NULL,'EPSG','25835','EPSG','5941','EPSG','4069',0);
INSERT INTO "compound_crs" VALUES('EPSG','5976','ETRS89 / UTM zone 36 + NN2000 height',NULL,NULL,'EPSG','25836','EPSG','5941','EPSG','3676',0);
INSERT INTO "compound_crs" VALUES('EPSG','6144','ETRS89 + NN54 height',NULL,NULL,'EPSG','4258','EPSG','5776','EPSG','1352',0);
INSERT INTO "compound_crs" VALUES('EPSG','6145','ETRS89 / NTM zone 5 + NN54 height',NULL,NULL,'EPSG','5105','EPSG','5776','EPSG','3636',0);
INSERT INTO "compound_crs" VALUES('EPSG','6146','ETRS89 / NTM zone 6 + NN54 height',NULL,NULL,'EPSG','5106','EPSG','5776','EPSG','3639',0);
INSERT INTO "compound_crs" VALUES('EPSG','6147','ETRS89 / NTM zone 7 + NN54 height',NULL,NULL,'EPSG','5107','EPSG','5776','EPSG','3647',0);
INSERT INTO "compound_crs" VALUES('EPSG','6148','ETRS89 / NTM zone 8 + NN54 height',NULL,NULL,'EPSG','5108','EPSG','5776','EPSG','3648',0);
INSERT INTO "compound_crs" VALUES('EPSG','6149','ETRS89 / NTM zone 9 + NN54 height',NULL,NULL,'EPSG','5109','EPSG','5776','EPSG','3649',0);
INSERT INTO "compound_crs" VALUES('EPSG','6150','ETRS89 / NTM zone 10 + NN54 height',NULL,NULL,'EPSG','5110','EPSG','5776','EPSG','3650',0);
INSERT INTO "compound_crs" VALUES('EPSG','6151','ETRS89 / NTM zone 11 + NN54 height',NULL,NULL,'EPSG','5111','EPSG','5776','EPSG','3651',0);
INSERT INTO "compound_crs" VALUES('EPSG','6152','ETRS89 / NTM zone 12 + NN54 height',NULL,NULL,'EPSG','5112','EPSG','5776','EPSG','3653',0);
INSERT INTO "compound_crs" VALUES('EPSG','6153','ETRS89 / NTM zone 13 + NN54 height',NULL,NULL,'EPSG','5113','EPSG','5776','EPSG','3654',0);
INSERT INTO "compound_crs" VALUES('EPSG','6154','ETRS89 / NTM zone 14 + NN54 height',NULL,NULL,'EPSG','5114','EPSG','5776','EPSG','3655',0);
INSERT INTO "compound_crs" VALUES('EPSG','6155','ETRS89 / NTM zone 15 + NN54 height',NULL,NULL,'EPSG','5115','EPSG','5776','EPSG','3656',0);
INSERT INTO "compound_crs" VALUES('EPSG','6156','ETRS89 / NTM zone 16 + NN54 height',NULL,NULL,'EPSG','5116','EPSG','5776','EPSG','3657',0);
INSERT INTO "compound_crs" VALUES('EPSG','6157','ETRS89 / NTM zone 17 + NN54 height',NULL,NULL,'EPSG','5117','EPSG','5776','EPSG','3658',0);
INSERT INTO "compound_crs" VALUES('EPSG','6158','ETRS89 / NTM zone 18 + NN54 height',NULL,NULL,'EPSG','5118','EPSG','5776','EPSG','3660',0);
INSERT INTO "compound_crs" VALUES('EPSG','6159','ETRS89 / NTM zone 19 + NN54 height',NULL,NULL,'EPSG','5119','EPSG','5776','EPSG','3661',0);
INSERT INTO "compound_crs" VALUES('EPSG','6160','ETRS89 / NTM zone 20 + NN54 height',NULL,NULL,'EPSG','5120','EPSG','5776','EPSG','3662',0);
INSERT INTO "compound_crs" VALUES('EPSG','6161','ETRS89 / NTM zone 21 + NN54 height',NULL,NULL,'EPSG','5121','EPSG','5776','EPSG','3663',0);
INSERT INTO "compound_crs" VALUES('EPSG','6162','ETRS89 / NTM zone 22 + NN54 height',NULL,NULL,'EPSG','5122','EPSG','5776','EPSG','3665',0);
INSERT INTO "compound_crs" VALUES('EPSG','6163','ETRS89 / NTM zone 23 + NN54 height',NULL,NULL,'EPSG','5123','EPSG','5776','EPSG','3667',0);
INSERT INTO "compound_crs" VALUES('EPSG','6164','ETRS89 / NTM zone 24 + NN54 height',NULL,NULL,'EPSG','5124','EPSG','5776','EPSG','3668',0);
INSERT INTO "compound_crs" VALUES('EPSG','6165','ETRS89 / NTM zone 25 + NN54 height',NULL,NULL,'EPSG','5125','EPSG','5776','EPSG','3669',0);
INSERT INTO "compound_crs" VALUES('EPSG','6166','ETRS89 / NTM zone 26 + NN54 height',NULL,NULL,'EPSG','5126','EPSG','5776','EPSG','3671',0);
INSERT INTO "compound_crs" VALUES('EPSG','6167','ETRS89 / NTM zone 27 + NN54 height',NULL,NULL,'EPSG','5127','EPSG','5776','EPSG','3672',0);
INSERT INTO "compound_crs" VALUES('EPSG','6168','ETRS89 / NTM zone 28 + NN54 height',NULL,NULL,'EPSG','5128','EPSG','5776','EPSG','3673',0);
INSERT INTO "compound_crs" VALUES('EPSG','6169','ETRS89 / NTM zone 29 + NN54 height',NULL,NULL,'EPSG','5129','EPSG','5776','EPSG','3674',0);
INSERT INTO "compound_crs" VALUES('EPSG','6170','ETRS89 / NTM zone 30 + NN54 height',NULL,NULL,'EPSG','5130','EPSG','5776','EPSG','3676',0);
INSERT INTO "compound_crs" VALUES('EPSG','6171','ETRS89 / UTM zone 31 + NN54 height',NULL,NULL,'EPSG','25831','EPSG','5776','EPSG','3636',0);
INSERT INTO "compound_crs" VALUES('EPSG','6172','ETRS89 / UTM zone 32 + NN54 height',NULL,NULL,'EPSG','25832','EPSG','5776','EPSG','4066',0);
INSERT INTO "compound_crs" VALUES('EPSG','6173','ETRS89 / UTM zone 33 + NN54 height',NULL,NULL,'EPSG','25833','EPSG','5776','EPSG','4067',0);
INSERT INTO "compound_crs" VALUES('EPSG','6174','ETRS89 / UTM zone 34 + NN54 height',NULL,NULL,'EPSG','25834','EPSG','5776','EPSG','4068',0);
INSERT INTO "compound_crs" VALUES('EPSG','6175','ETRS89 / UTM zone 35 + NN54 height',NULL,NULL,'EPSG','25835','EPSG','5776','EPSG','4069',0);
INSERT INTO "compound_crs" VALUES('EPSG','6176','ETRS89 / UTM zone 36 + NN54 height',NULL,NULL,'EPSG','25836','EPSG','5776','EPSG','3676',0);
INSERT INTO "compound_crs" VALUES('EPSG','6190','Belge 1972 / Belgian Lambert 72 + Ostend height',NULL,NULL,'EPSG','31370','EPSG','5710','EPSG','1347',0);
INSERT INTO "compound_crs" VALUES('EPSG','6349','NAD83(2011) + NAVD88 height',NULL,NULL,'EPSG','6318','EPSG','5703','EPSG','3664',0);
INSERT INTO "compound_crs" VALUES('EPSG','6649','NAD83(CSRS) + CGVD2013 height',NULL,NULL,'EPSG','4617','EPSG','6647','EPSG','1061',0);
INSERT INTO "compound_crs" VALUES('EPSG','6650','NAD83(CSRS) / UTM zone 7N + CGVD2013 height',NULL,NULL,'EPSG','3154','EPSG','6647','EPSG','3409',0);
INSERT INTO "compound_crs" VALUES('EPSG','6651','NAD83(CSRS) / UTM zone 8N + CGVD2013 height',NULL,NULL,'EPSG','3155','EPSG','6647','EPSG','3410',0);
INSERT INTO "compound_crs" VALUES('EPSG','6652','NAD83(CSRS) / UTM zone 9N + CGVD2013 height',NULL,NULL,'EPSG','3156','EPSG','6647','EPSG','3411',0);
INSERT INTO "compound_crs" VALUES('EPSG','6653','NAD83(CSRS) / UTM zone 10N + CGVD2013 height',NULL,NULL,'EPSG','3157','EPSG','6647','EPSG','3412',0);
INSERT INTO "compound_crs" VALUES('EPSG','6654','NAD83(CSRS) / UTM zone 11N + CGVD2013 height',NULL,NULL,'EPSG','2955','EPSG','6647','EPSG','3528',0);
INSERT INTO "compound_crs" VALUES('EPSG','6655','NAD83(CSRS) / UTM zone 12N + CGVD2013 height',NULL,NULL,'EPSG','2956','EPSG','6647','EPSG','3527',0);
INSERT INTO "compound_crs" VALUES('EPSG','6656','NAD83(CSRS) / UTM zone 13N + CGVD2013 height',NULL,NULL,'EPSG','2957','EPSG','6647','EPSG','3526',0);
INSERT INTO "compound_crs" VALUES('EPSG','6657','NAD83(CSRS) / UTM zone 14N + CGVD2013 height',NULL,NULL,'EPSG','3158','EPSG','6647','EPSG','3413',0);
INSERT INTO "compound_crs" VALUES('EPSG','6658','NAD83(CSRS) / UTM zone 15N + CGVD2013 height',NULL,NULL,'EPSG','3159','EPSG','6647','EPSG','3414',0);
INSERT INTO "compound_crs" VALUES('EPSG','6659','NAD83(CSRS) / UTM zone 16N + CGVD2013 height',NULL,NULL,'EPSG','3160','EPSG','6647','EPSG','3415',0);
INSERT INTO "compound_crs" VALUES('EPSG','6660','NAD83(CSRS) / UTM zone 17N + CGVD2013 height',NULL,NULL,'EPSG','2958','EPSG','6647','EPSG','3416',0);
INSERT INTO "compound_crs" VALUES('EPSG','6661','NAD83(CSRS) / UTM zone 18N + CGVD2013 height',NULL,NULL,'EPSG','2959','EPSG','6647','EPSG','3417',0);
INSERT INTO "compound_crs" VALUES('EPSG','6662','NAD83(CSRS) / UTM zone 19N + CGVD2013 height',NULL,NULL,'EPSG','2960','EPSG','6647','EPSG','3524',0);
INSERT INTO "compound_crs" VALUES('EPSG','6663','NAD83(CSRS) / UTM zone 20N + CGVD2013 height',NULL,NULL,'EPSG','2961','EPSG','6647','EPSG','3525',0);
INSERT INTO "compound_crs" VALUES('EPSG','6664','NAD83(CSRS) / UTM zone 21N + CGVD2013 height',NULL,NULL,'EPSG','2962','EPSG','6647','EPSG','2151',0);
INSERT INTO "compound_crs" VALUES('EPSG','6665','NAD83(CSRS) / UTM zone 22N + CGVD2013 height',NULL,NULL,'EPSG','3761','EPSG','6647','EPSG','2152',0);
INSERT INTO "compound_crs" VALUES('EPSG','6696','JGD2000 + JGD2000 (vertical) height',NULL,NULL,'EPSG','4612','EPSG','6694','EPSG','3263',0);
INSERT INTO "compound_crs" VALUES('EPSG','6697','JGD2011 + JGD2011 (vertical) height',NULL,NULL,'EPSG','6668','EPSG','6695','EPSG','3263',0);
INSERT INTO "compound_crs" VALUES('EPSG','6700','Tokyo + JSLD72 height',NULL,NULL,'EPSG','4301','EPSG','6693','EPSG','4168',0);
INSERT INTO "compound_crs" VALUES('EPSG','6871','WGS 84 / Pseudo-Mercator + EGM2008 geoid height',NULL,NULL,'EPSG','3857','EPSG','3855','EPSG','1262',1);
INSERT INTO "compound_crs" VALUES('EPSG','6893','WGS 84 / World Mercator + EGM2008 height',NULL,NULL,'EPSG','3395','EPSG','3855','EPSG','1262',0);
INSERT INTO "compound_crs" VALUES('EPSG','6917','SVY21 + SHD height',NULL,NULL,'EPSG','4757','EPSG','6916','EPSG','1210',0);
INSERT INTO "compound_crs" VALUES('EPSG','6927','SVY21 / Singapore TM + SHD height',NULL,NULL,'EPSG','3414','EPSG','6916','EPSG','1210',0);
INSERT INTO "compound_crs" VALUES('EPSG','7400','NTF (Paris) + NGF IGN69 height',NULL,NULL,'EPSG','4807','EPSG','5720','EPSG','1326',0);
INSERT INTO "compound_crs" VALUES('EPSG','7401','NTF (Paris) / France II + NGF Lallemand',NULL,NULL,'EPSG','27582','EPSG','5719','EPSG','1326',1);
INSERT INTO "compound_crs" VALUES('EPSG','7402','NTF (Paris) / France II + NGF IGN69',NULL,NULL,'EPSG','27582','EPSG','5720','EPSG','1326',1);
INSERT INTO "compound_crs" VALUES('EPSG','7403','NTF (Paris) / France III + NGF IGN69',NULL,NULL,'EPSG','27583','EPSG','5720','EPSG','1733',1);
INSERT INTO "compound_crs" VALUES('EPSG','7404','RT90 + RH70 height',NULL,NULL,'EPSG','4124','EPSG','5718','EPSG','3313',0);
INSERT INTO "compound_crs" VALUES('EPSG','7405','OSGB 1936 / British National Grid + ODN height',NULL,NULL,'EPSG','27700','EPSG','5701','EPSG','2792',0);
INSERT INTO "compound_crs" VALUES('EPSG','7406','NAD27 + NGVD29 height (ftUS)',NULL,NULL,'EPSG','4267','EPSG','5702','EPSG','1323',0);
INSERT INTO "compound_crs" VALUES('EPSG','7407','NAD27 / Texas North + NGVD29 height (ftUS)',NULL,NULL,'EPSG','32037','EPSG','5702','EPSG','2253',0);
INSERT INTO "compound_crs" VALUES('EPSG','7408','RD/NAP',NULL,NULL,'EPSG','4289','EPSG','5709','EPSG','1275',1);
INSERT INTO "compound_crs" VALUES('EPSG','7409','ETRS89 + EVRF2000 height',NULL,NULL,'EPSG','4258','EPSG','5730','EPSG','1299',0);
INSERT INTO "compound_crs" VALUES('EPSG','7410','PSHD93',NULL,NULL,'EPSG','4134','EPSG','5724','EPSG','3288',0);
INSERT INTO "compound_crs" VALUES('EPSG','7411','NTF (Paris) / Lambert zone II + NGF Lallemand height',NULL,NULL,'EPSG','27572','EPSG','5719','EPSG','1326',0);
INSERT INTO "compound_crs" VALUES('EPSG','7412','NTF (Paris) / Lambert zone II + NGF IGN69',NULL,NULL,'EPSG','27572','EPSG','5719','EPSG','1326',1);
INSERT INTO "compound_crs" VALUES('EPSG','7413','NTF (Paris) / Lambert zone III + NGF IGN69',NULL,NULL,'EPSG','27573','EPSG','5719','EPSG','1733',1);
INSERT INTO "compound_crs" VALUES('EPSG','7414','Tokyo + JSLD69 height',NULL,NULL,'EPSG','4301','EPSG','5723','EPSG','4166',0);
INSERT INTO "compound_crs" VALUES('EPSG','7415','Amersfoort / RD New + NAP height',NULL,NULL,'EPSG','28992','EPSG','5709','EPSG','1275',0);
INSERT INTO "compound_crs" VALUES('EPSG','7416','ETRS89 / UTM zone 32N + DVR90 height',NULL,NULL,'EPSG','25832','EPSG','5799','EPSG','3471',0);
INSERT INTO "compound_crs" VALUES('EPSG','7417','ETRS89 / UTM zone 33N + DVR90 height',NULL,NULL,'EPSG','25833','EPSG','5799','EPSG','3472',0);
INSERT INTO "compound_crs" VALUES('EPSG','7418','ETRS89 / Kp2000 Jutland + DVR90 height',NULL,NULL,'EPSG','2196','EPSG','5799','EPSG','2531',0);
INSERT INTO "compound_crs" VALUES('EPSG','7419','ETRS89 / Kp2000 Zealand + DVR90 height',NULL,NULL,'EPSG','2197','EPSG','5799','EPSG','2532',0);
INSERT INTO "compound_crs" VALUES('EPSG','7420','ETRS89 / Kp2000 Bornholm + DVR90 height',NULL,NULL,'EPSG','2198','EPSG','5799','EPSG','2533',0);
INSERT INTO "compound_crs" VALUES('EPSG','7421','NTF (Paris) / Lambert zone II + NGF-IGN69 height',NULL,NULL,'EPSG','27572','EPSG','5720','EPSG','1326',0);
INSERT INTO "compound_crs" VALUES('EPSG','7422','NTF (Paris) / Lambert zone III + NGF-IGN69 height',NULL,NULL,'EPSG','27573','EPSG','5720','EPSG','1733',0);
INSERT INTO "compound_crs" VALUES('EPSG','7423','ETRS89 + EVRF2007 height',NULL,NULL,'EPSG','4258','EPSG','5621','EPSG','3594',0);
INSERT INTO "compound_crs" VALUES('EPSG','7954','Astro DOS 71 / UTM zone 30S + Jamestown 1971 height',NULL,NULL,'EPSG','7878','EPSG','7888','EPSG','3183',0);
INSERT INTO "compound_crs" VALUES('EPSG','7955','St. Helena Tritan / UTM zone 30S + Tritan 2011 height',NULL,NULL,'EPSG','7883','EPSG','7889','EPSG','3183',0);
INSERT INTO "compound_crs" VALUES('EPSG','7956','SHMG2015 + SHVD2015 height',NULL,NULL,'EPSG','7887','EPSG','7890','EPSG','3183',0);
INSERT INTO "compound_crs" VALUES('EPSG','8349','GR96 + GVR2000 height',NULL,NULL,'EPSG','4747','EPSG','8266','EPSG','4461',0);
INSERT INTO "compound_crs" VALUES('EPSG','8350','GR96 + GVR2016 height',NULL,NULL,'EPSG','4747','EPSG','8267','EPSG','4454',0);
INSERT INTO "compound_crs" VALUES('EPSG','8360','ETRS89 + Baltic 1957 height',NULL,NULL,'EPSG','4258','EPSG','8357','EPSG','1306',0);
INSERT INTO "compound_crs" VALUES('EPSG','8370','ETRS89 / Belgian Lambert 2008 + Ostend height',NULL,NULL,'EPSG','3812','EPSG','5710','EPSG','1347',0);
INSERT INTO "compound_crs" VALUES('EPSG','8700','NAD83 / Arizona East (ft) + NAVD88 height (ft)',NULL,NULL,'EPSG','2222','EPSG','8228','EPSG','2167',0);
INSERT INTO "compound_crs" VALUES('EPSG','8701','NAD83 / Arizona Central (ft) + NAVD88 height (ft)',NULL,NULL,'EPSG','2223','EPSG','8228','EPSG','2166',0);
INSERT INTO "compound_crs" VALUES('EPSG','8702','NAD83 / Arizona West (ft) + NAVD88 height (ft)',NULL,NULL,'EPSG','2224','EPSG','8228','EPSG','2168',0);
INSERT INTO "compound_crs" VALUES('EPSG','8703','NAD83 / Michigan North (ft) + NAVD88 height (ft)',NULL,NULL,'EPSG','2251','EPSG','8228','EPSG','1723',0);
INSERT INTO "compound_crs" VALUES('EPSG','8704','NAD83 / Michigan Central (ft) + NAVD88 height (ft)',NULL,NULL,'EPSG','2252','EPSG','8228','EPSG','1724',0);
INSERT INTO "compound_crs" VALUES('EPSG','8705','NAD83 / Michigan South (ft) + NAVD88 height (ft)',NULL,NULL,'EPSG','2253','EPSG','8228','EPSG','1725',0);
INSERT INTO "compound_crs" VALUES('EPSG','8706','NAD83 / Montana (ft) + NAVD88 height (ft)',NULL,NULL,'EPSG','2256','EPSG','8228','EPSG','1395',0);
INSERT INTO "compound_crs" VALUES('EPSG','8707','NAD83 / North Dakota North (ft) + NAVD88 height (ft)',NULL,NULL,'EPSG','2265','EPSG','8228','EPSG','2237',0);
INSERT INTO "compound_crs" VALUES('EPSG','8708','NAD83 / North Dakota South (ft) + NAVD88 height (ft)',NULL,NULL,'EPSG','2266','EPSG','8228','EPSG','2238',0);
INSERT INTO "compound_crs" VALUES('EPSG','8709','NAD83 / Oregon North (ft) + NAVD88 height (ft)',NULL,NULL,'EPSG','2269','EPSG','8228','EPSG','2243',0);
INSERT INTO "compound_crs" VALUES('EPSG','8710','NAD83 / Oregon South (ft) + NAVD88 height (ft)',NULL,NULL,'EPSG','2270','EPSG','8228','EPSG','2244',0);
INSERT INTO "compound_crs" VALUES('EPSG','8711','NAD83 / South Carolina (ft) + NAVD88 height (ft)',NULL,NULL,'EPSG','2273','EPSG','8228','EPSG','1409',0);
INSERT INTO "compound_crs" VALUES('EPSG','8712','NAD83 / Arkansas North (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','3433','EPSG','6360','EPSG','2169',0);
INSERT INTO "compound_crs" VALUES('EPSG','8713','NAD83 / Arkansas South (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','3434','EPSG','6360','EPSG','2170',0);
INSERT INTO "compound_crs" VALUES('EPSG','8714','NAD83 / California zone 1 (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','2225','EPSG','6360','EPSG','2175',0);
INSERT INTO "compound_crs" VALUES('EPSG','8715','NAD83 / California zone 2 (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','2226','EPSG','6360','EPSG','2176',0);
INSERT INTO "compound_crs" VALUES('EPSG','8716','NAD83 / California zone 3 (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','2227','EPSG','6360','EPSG','2177',0);
INSERT INTO "compound_crs" VALUES('EPSG','8717','NAD83 / California zone 4 (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','2228','EPSG','6360','EPSG','2178',0);
INSERT INTO "compound_crs" VALUES('EPSG','8718','NAD83 / California zone 5 (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','2229','EPSG','6360','EPSG','2182',0);
INSERT INTO "compound_crs" VALUES('EPSG','8719','NAD83 / California zone 6 (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','2230','EPSG','6360','EPSG','2180',0);
INSERT INTO "compound_crs" VALUES('EPSG','8720','NAD83 / Colorado North (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','2231','EPSG','6360','EPSG','2184',0);
INSERT INTO "compound_crs" VALUES('EPSG','8721','NAD83 / Colorado Central (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','2232','EPSG','6360','EPSG','2183',0);
INSERT INTO "compound_crs" VALUES('EPSG','8722','NAD83 / Colorado South (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','2233','EPSG','6360','EPSG','2185',0);
INSERT INTO "compound_crs" VALUES('EPSG','8723','NAD83 / Connecticut (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','2234','EPSG','6360','EPSG','1377',0);
INSERT INTO "compound_crs" VALUES('EPSG','8724','NAD83 / Delaware (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','2235','EPSG','6360','EPSG','1378',0);
INSERT INTO "compound_crs" VALUES('EPSG','8725','NAD83 / Florida North (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','2238','EPSG','6360','EPSG','2187',0);
INSERT INTO "compound_crs" VALUES('EPSG','8726','NAD83 / Florida East (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','2236','EPSG','6360','EPSG','2186',0);
INSERT INTO "compound_crs" VALUES('EPSG','8727','NAD83 / Florida West (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','2237','EPSG','6360','EPSG','2188',0);
INSERT INTO "compound_crs" VALUES('EPSG','8728','NAD83 / Georgia East (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','2239','EPSG','6360','EPSG','2189',0);
INSERT INTO "compound_crs" VALUES('EPSG','8729','NAD83 / Georgia West (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','2240','EPSG','6360','EPSG','2190',0);
INSERT INTO "compound_crs" VALUES('EPSG','8730','NAD83 / Idaho East (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','2241','EPSG','6360','EPSG','2192',0);
INSERT INTO "compound_crs" VALUES('EPSG','8731','NAD83 / Idaho Central (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','2242','EPSG','6360','EPSG','2191',0);
INSERT INTO "compound_crs" VALUES('EPSG','8732','NAD83 / Idaho West (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','2243','EPSG','6360','EPSG','2193',0);
INSERT INTO "compound_crs" VALUES('EPSG','8733','NAD83 / Illinois East (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','3435','EPSG','6360','EPSG','2194',0);
INSERT INTO "compound_crs" VALUES('EPSG','8734','NAD83 / Illinois West (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','3436','EPSG','6360','EPSG','2195',0);
INSERT INTO "compound_crs" VALUES('EPSG','8735','NAD83 / Indiana East (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','2965','EPSG','6360','EPSG','2196',0);
INSERT INTO "compound_crs" VALUES('EPSG','8736','NAD83 / Indiana West (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','2966','EPSG','6360','EPSG','2197',0);
INSERT INTO "compound_crs" VALUES('EPSG','8737','NAD83 / Iowa North (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','3417','EPSG','6360','EPSG','2198',0);
INSERT INTO "compound_crs" VALUES('EPSG','8738','NAD83 / Iowa South (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','3418','EPSG','6360','EPSG','2199',0);
INSERT INTO "compound_crs" VALUES('EPSG','8739','NAD83 / Kansas North (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','3419','EPSG','6360','EPSG','2200',0);
INSERT INTO "compound_crs" VALUES('EPSG','8740','NAD83 / Kansas South (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','3420','EPSG','6360','EPSG','2201',0);
INSERT INTO "compound_crs" VALUES('EPSG','8741','NAD83 / Kentucky North (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','2246','EPSG','6360','EPSG','2202',0);
INSERT INTO "compound_crs" VALUES('EPSG','8742','NAD83 / Kentucky South (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','2247','EPSG','6360','EPSG','2203',0);
INSERT INTO "compound_crs" VALUES('EPSG','8743','NAD83 / Louisiana North (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','3451','EPSG','6360','EPSG','2204',0);
INSERT INTO "compound_crs" VALUES('EPSG','8744','NAD83 / Louisiana South (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','3452','EPSG','6360','EPSG','2529',0);
INSERT INTO "compound_crs" VALUES('EPSG','8745','NAD83 / Maine East (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','26847','EPSG','6360','EPSG','2206',0);
INSERT INTO "compound_crs" VALUES('EPSG','8746','NAD83 / Maine West (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','26848','EPSG','6360','EPSG','2207',0);
INSERT INTO "compound_crs" VALUES('EPSG','8747','NAD83 / Maryland (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','2248','EPSG','6360','EPSG','1389',0);
INSERT INTO "compound_crs" VALUES('EPSG','8748','NAD83 / Massachusetts Mainland (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','2249','EPSG','6360','EPSG','2209',0);
INSERT INTO "compound_crs" VALUES('EPSG','8749','NAD83 / Massachusetts Island (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','2250','EPSG','6360','EPSG','2208',0);
INSERT INTO "compound_crs" VALUES('EPSG','8750','NAD83 / Minnesota North (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','26849','EPSG','6360','EPSG','2214',0);
INSERT INTO "compound_crs" VALUES('EPSG','8751','NAD83 / Minnesota Central (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','26850','EPSG','6360','EPSG','2213',0);
INSERT INTO "compound_crs" VALUES('EPSG','8752','NAD83 / Minnesota South (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','26851','EPSG','6360','EPSG','2215',0);
INSERT INTO "compound_crs" VALUES('EPSG','8753','NAD83 / Mississippi East (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','2254','EPSG','6360','EPSG','2216',0);
INSERT INTO "compound_crs" VALUES('EPSG','8754','NAD83 / Mississippi West (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','2255','EPSG','6360','EPSG','2217',0);
INSERT INTO "compound_crs" VALUES('EPSG','8755','NAD83 / Nebraska (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','26852','EPSG','6360','EPSG','1396',0);
INSERT INTO "compound_crs" VALUES('EPSG','8756','NAD83 / Nevada East (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','3421','EPSG','6360','EPSG','2224',0);
INSERT INTO "compound_crs" VALUES('EPSG','8757','NAD83 / Nevada Central (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','3422','EPSG','6360','EPSG','2223',0);
INSERT INTO "compound_crs" VALUES('EPSG','8758','NAD83 / Nevada West (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','3423','EPSG','6360','EPSG','2225',0);
INSERT INTO "compound_crs" VALUES('EPSG','8759','NAD83 / New Hampshire (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','3437','EPSG','6360','EPSG','1398',0);
INSERT INTO "compound_crs" VALUES('EPSG','8760','NAD83 / New Jersey (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','3424','EPSG','6360','EPSG','1399',0);
INSERT INTO "compound_crs" VALUES('EPSG','8761','NAD83 / New Mexico East (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','2257','EPSG','6360','EPSG','2228',0);
INSERT INTO "compound_crs" VALUES('EPSG','8762','NAD83 / New Mexico Central (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','2258','EPSG','6360','EPSG','2231',0);
INSERT INTO "compound_crs" VALUES('EPSG','8763','NAD83 / New Mexico West (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','2259','EPSG','6360','EPSG','2232',0);
INSERT INTO "compound_crs" VALUES('EPSG','8764','NAD83 / New York East (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','2260','EPSG','6360','EPSG','2234',0);
INSERT INTO "compound_crs" VALUES('EPSG','8765','NAD83 / New York Central (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','2261','EPSG','6360','EPSG','2233',0);
INSERT INTO "compound_crs" VALUES('EPSG','8766','NAD83 / New York West (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','2262','EPSG','6360','EPSG','2236',0);
INSERT INTO "compound_crs" VALUES('EPSG','8767','NAD83 / New York Long Island (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','2263','EPSG','6360','EPSG','2235',0);
INSERT INTO "compound_crs" VALUES('EPSG','8768','NAD83 / North Carolina (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','2264','EPSG','6360','EPSG','1402',0);
INSERT INTO "compound_crs" VALUES('EPSG','8769','NAD83 / Ohio North (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','3734','EPSG','6360','EPSG','2239',0);
INSERT INTO "compound_crs" VALUES('EPSG','8770','NAD83 / Ohio South (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','3735','EPSG','6360','EPSG','2240',0);
INSERT INTO "compound_crs" VALUES('EPSG','8771','NAD83 / Oklahoma North (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','2267','EPSG','6360','EPSG','2241',0);
INSERT INTO "compound_crs" VALUES('EPSG','8772','NAD83 / Oklahoma South (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','2268','EPSG','6360','EPSG','2242',0);
INSERT INTO "compound_crs" VALUES('EPSG','8773','NAD83 / Pennsylvania North (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','2271','EPSG','6360','EPSG','2245',0);
INSERT INTO "compound_crs" VALUES('EPSG','8774','NAD83 / Pennsylvania South (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','2272','EPSG','6360','EPSG','2246',0);
INSERT INTO "compound_crs" VALUES('EPSG','8775','NAD83 / Rhode Island (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','3438','EPSG','6360','EPSG','1408',0);
INSERT INTO "compound_crs" VALUES('EPSG','8776','NAD83 / South Dakota North (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','4457','EPSG','6360','EPSG','2249',0);
INSERT INTO "compound_crs" VALUES('EPSG','8777','NAD83 / South Dakota South (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','3455','EPSG','6360','EPSG','2250',0);
INSERT INTO "compound_crs" VALUES('EPSG','8778','NAD83 / Tennessee (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','2274','EPSG','6360','EPSG','1411',0);
INSERT INTO "compound_crs" VALUES('EPSG','8779','NAD83 / Texas North (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','2275','EPSG','6360','EPSG','2253',0);
INSERT INTO "compound_crs" VALUES('EPSG','8780','NAD83 / Texas North Central (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','2276','EPSG','6360','EPSG','2254',0);
INSERT INTO "compound_crs" VALUES('EPSG','8781','NAD83 / Texas Central (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','2277','EPSG','6360','EPSG','2252',0);
INSERT INTO "compound_crs" VALUES('EPSG','8782','NAD83 / Texas South Central (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','2278','EPSG','6360','EPSG','2527',0);
INSERT INTO "compound_crs" VALUES('EPSG','8783','NAD83 / Texas South (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','2279','EPSG','6360','EPSG','2528',0);
INSERT INTO "compound_crs" VALUES('EPSG','8784','NAD83 / Utah North (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','3560','EPSG','6360','EPSG','2258',0);
INSERT INTO "compound_crs" VALUES('EPSG','8785','NAD83 / Utah Central (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','3566','EPSG','6360','EPSG','2257',0);
INSERT INTO "compound_crs" VALUES('EPSG','8786','NAD83 / Utah South (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','3567','EPSG','6360','EPSG','2259',0);
INSERT INTO "compound_crs" VALUES('EPSG','8787','NAD83 / Vermont (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','5646','EPSG','6360','EPSG','1414',0);
INSERT INTO "compound_crs" VALUES('EPSG','8788','NAD83 / Virginia North (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','2283','EPSG','6360','EPSG','2260',0);
INSERT INTO "compound_crs" VALUES('EPSG','8789','NAD83 / Virginia South (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','2284','EPSG','6360','EPSG','2261',0);
INSERT INTO "compound_crs" VALUES('EPSG','8790','NAD83 / Washington North (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','2285','EPSG','6360','EPSG','2273',0);
INSERT INTO "compound_crs" VALUES('EPSG','8791','NAD83 / Washington South (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','2286','EPSG','6360','EPSG','2274',0);
INSERT INTO "compound_crs" VALUES('EPSG','8792','NAD83 / West Virginia North (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','26853','EPSG','6360','EPSG','2264',0);
INSERT INTO "compound_crs" VALUES('EPSG','8793','NAD83 / West Virginia South (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','26854','EPSG','6360','EPSG','2265',0);
INSERT INTO "compound_crs" VALUES('EPSG','8794','NAD83 / Wisconsin North (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','2287','EPSG','6360','EPSG','2267',0);
INSERT INTO "compound_crs" VALUES('EPSG','8795','NAD83 / Wisconsin Central (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','2288','EPSG','6360','EPSG','2266',0);
INSERT INTO "compound_crs" VALUES('EPSG','8796','NAD83 / Wisconsin South (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','2289','EPSG','6360','EPSG','2268',0);
INSERT INTO "compound_crs" VALUES('EPSG','8797','NAD83 / Wyoming East (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','3736','EPSG','6360','EPSG','2269',0);
INSERT INTO "compound_crs" VALUES('EPSG','8798','NAD83 / Wyoming East Central (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','3737','EPSG','6360','EPSG','2270',0);
INSERT INTO "compound_crs" VALUES('EPSG','8799','NAD83 / Wyoming West Central (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','3738','EPSG','6360','EPSG','2272',0);
INSERT INTO "compound_crs" VALUES('EPSG','8800','NAD83 / Wyoming West (ftUS) + NAVD88 height (ftUS)',NULL,NULL,'EPSG','3739','EPSG','6360','EPSG','2271',0);
INSERT INTO "compound_crs" VALUES('EPSG','8801','NAD83 / Alabama East + NAVD88 height',NULL,NULL,'EPSG','26929','EPSG','5703','EPSG','2154',0);
INSERT INTO "compound_crs" VALUES('EPSG','8802','NAD83 / Alabama West + NAVD88 height',NULL,NULL,'EPSG','26930','EPSG','5703','EPSG','2155',0);
INSERT INTO "compound_crs" VALUES('EPSG','8803','NAD83 / Alaska zone 1 + NAVD88 height',NULL,NULL,'EPSG','26931','EPSG','5703','EPSG','2156',0);
INSERT INTO "compound_crs" VALUES('EPSG','8804','NAD83 / Alaska zone 2 + NAVD88 height',NULL,NULL,'EPSG','26932','EPSG','5703','EPSG','2158',0);
INSERT INTO "compound_crs" VALUES('EPSG','8805','NAD83 / Alaska zone 3 + NAVD88 height',NULL,NULL,'EPSG','26933','EPSG','5703','EPSG','2159',0);
INSERT INTO "compound_crs" VALUES('EPSG','8806','NAD83 / Alaska zone 4 + NAVD88 height',NULL,NULL,'EPSG','26934','EPSG','5703','EPSG','2160',0);
INSERT INTO "compound_crs" VALUES('EPSG','8807','NAD83 / Alaska zone 5 + NAVD88 height',NULL,NULL,'EPSG','26935','EPSG','5703','EPSG','2161',0);
INSERT INTO "compound_crs" VALUES('EPSG','8808','NAD83 / Alaska zone 6 + NAVD88 height',NULL,NULL,'EPSG','26936','EPSG','5703','EPSG','2162',0);
INSERT INTO "compound_crs" VALUES('EPSG','8809','NAD83 / Alaska zone 7 + NAVD88 height',NULL,NULL,'EPSG','26937','EPSG','5703','EPSG','2163',0);
INSERT INTO "compound_crs" VALUES('EPSG','8810','NAD83 / Alaska zone 8 + NAVD88 height',NULL,NULL,'EPSG','26938','EPSG','5703','EPSG','2164',0);
INSERT INTO "compound_crs" VALUES('EPSG','8811','NAD83 / Alaska zone 9 + NAVD88 height',NULL,NULL,'EPSG','26939','EPSG','5703','EPSG','2165',0);
INSERT INTO "compound_crs" VALUES('EPSG','8812','NAD83 / Alaska zone 10 + NAVD88 height',NULL,NULL,'EPSG','26940','EPSG','5703','EPSG','2157',0);
INSERT INTO "compound_crs" VALUES('EPSG','8813','NAD83 / Missouri East + NAVD88 height',NULL,NULL,'EPSG','26996','EPSG','5703','EPSG','2219',0);
INSERT INTO "compound_crs" VALUES('EPSG','8814','NAD83 / Missouri Central + NAVD88 height',NULL,NULL,'EPSG','26997','EPSG','5703','EPSG','2218',0);
INSERT INTO "compound_crs" VALUES('EPSG','8815','NAD83 / Missouri West + NAVD88 height',NULL,NULL,'EPSG','26998','EPSG','5703','EPSG','2220',0);
INSERT INTO "compound_crs" VALUES('EPSG','8912','CR-SIRGAS / CRTM05 + DACR52 height',NULL,NULL,'EPSG','8908','EPSG','8911','EPSG','3232',0);
-212
View File
@@ -1,212 +0,0 @@
--- This file has been generated by scripts/build_db.py. DO NOT EDIT !
INSERT INTO "concatenated_operation" VALUES('EPSG','3896','MGI (Ferro) to WGS 84 (2)','','2m accuracy','EPSG','4805','EPSG','4326','EPSG','1037',NULL,'BEV-Aut',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','3966','MGI (Ferro) to WGS 84 (1)','Accuracy estimate is not available.','For military purposes only.','EPSG','4805','EPSG','4326','EPSG','2370',NULL,'DMA-balk',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','4435','Puerto Rico to NAD83(HARN) (1)','May be taken as approximate transformation Puerto Rico to WGS 84 - see code 8583.','Accuracy 0.1m at 67% confidence level.','EPSG','4139','EPSG','4152','EPSG','3634',NULL,'NGS-PRVI',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','4837','Amersfoort to ED50 (1)','Adopted by NAM in 2006, replacing polynomial tfms 1046, 6304, 1050 and 6306.','Oil and gas exploration and production.','EPSG','4289','EPSG','4230','EPSG','1275',NULL,'NAM-Nld 2006',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','5190','Tokyo 1892 to Korea 2000 (1)','','Accuracy 10m.','EPSG','5132','EPSG','4737','EPSG','3266',NULL,'OGP-Kor',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','5192','Tokyo 1892 to WGS 84 (1)','','Accuracy 10m.','EPSG','5132','EPSG','4326','EPSG','3266',NULL,'OGP-Kor',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','5230','S-JTSK (Ferro) to WGS 84 (2)','','For applications to an accuracy of 1 metre.','EPSG','4818','EPSG','4326','EPSG','1211',NULL,'OGP-Svk',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','5240','S-JTSK/05 (Ferro) to WGS 84 (1)','Replaces S-JTSK (Ferro) to WGS 84 (1) (CRS code 8642) in Czech Republic.','For applications to an accuracy of 1 metre.','EPSG','5229','EPSG','4326','EPSG','1079',NULL,'OGP-Cze',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','5242','S-JTSK (Ferro) to WGS 84 (3)','Replaces S-JTSK (Ferro) to WGS 84 (1) (tfm code 8642).','Parameter values from S-JTSK/05 to ETRS89 (1) (code 5226). For applications to an accuracy of 1m.','EPSG','4818','EPSG','4326','EPSG','1079',NULL,'OGP-Cze R05',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','5838','Lisbon (Lisbon) to WGS 84 (2)','','For applications to an accuracy of 2 metres.','EPSG','4803','EPSG','4326','EPSG','1294',NULL,'OGP-Prt 2009',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','6714','Tokyo to JGD2011 (1)','See Tokyo to JGD2011 (2) (code 6740) for areas other than northern Honshu.','Surveying, mapping and civil engineering.','EPSG','4301','EPSG','6668','EPSG','4170',NULL,'OGP-Jpn N Honshu',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','6739','NAD27 to NAD83(HARN) (22)','May be taken as approximate transformation NAD27 to WGS 84 - see code 8622.','Accuracy at 67% confidence level is 0.2m.','EPSG','4267','EPSG','4152','EPSG','1410',NULL,'NGS-Usa SD',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','6874','Tananarive (Paris) to WGS 84 (2)','Used by OMV.','For applications with an accuracy of 3m.','EPSG','4810','EPSG','4326','EPSG','3273',NULL,'OGP-Mdg',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','7811','NTF (Paris) to RGF93 (2)','Second step is an emulation using NTv2 method of geocentric Interpolation method described in tfm code 7810. Note that the grid file parameters are of opposite sign.','Approximation to better than 1m of transformation of coordinates referenced to NTF (Paris) to RGF93.','EPSG','4807','EPSG','4171','EPSG','3694',NULL,'IOGP-Fra NTv2',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','7965','Poolbeg height (ft(Br36)) to Malin Head height (1)','','Change of height to a different vertical reference surface for topographic mapping. Accuracy 0.1m.','EPSG','5754','EPSG','5731','EPSG','1305',NULL,'1',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','7967','Poolbeg height (ft(Br36)) to Belfast height (1)','','Change of height to a different vertical reference surface for topographic mapping and engineering survey. Accuracy 0.1m.','EPSG','5754','EPSG','5732','EPSG','1305',NULL,'1',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','7973','NGVD29 height (ftUS) to NAVD88 height (1)','','Change of height to a different vertical reference surface and unit. Accuracy 2cm.','EPSG','5702','EPSG','5703','EPSG','2950',NULL,'IOGP - US Conus W',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','7974','NGVD29 height (ftUS) to NAVD88 height (2)','','Change of height to a different vertical reference surface and unit, accuracy 2cm.','EPSG','5702','EPSG','5703','EPSG','2949',NULL,'IOGP - US Conus C',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','7975','NGVD29 height (ftUS) to NAVD88 height (3)','','Change of height to a different vertical reference surface and unit, accuracy 2cm.','EPSG','5702','EPSG','5703','EPSG','2948',NULL,'IOGP - US Conus E',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','7983','HKPD height to HKCD depth (1)','','Hydrographic charting.','EPSG','5738','EPSG','5739','EPSG','3335',NULL,'IOGP-HK',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','7986','KOC CD height to KOC WD depth (1)','','Vertical offset including change of axis positive direction.','EPSG','5790','EPSG','5789','EPSG','3267',NULL,'IOGP-Kwt',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','7987','KOC CD height to KOC WD depth (ft) (1)','','Vertical offset including change of axis positive direction and change of axis unit.','EPSG','5790','EPSG','5614','EPSG','3267',NULL,'IOGP-Kwt',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8047','ED50 to WGS 84 (15)','Replaced by codes 8569 and 1612 in 1997 and 2001.¶The concatenation of transformations 1147 and 1146 gives the following position vector tfm: dX=-84.491 dY=-100.559 dZ=-114.209 metres rX= -2.4006 rY=-0.5367 rZ=-2.3742 microradians dS=+0.2947 ppm.','Oil exploration before 2001.','EPSG','4230','EPSG','4326','EPSG','2332',NULL,'NMA-Nor N65 1991',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8094','NTF (Paris) to WGS 84 (1)','','Not known.','EPSG','4807','EPSG','4326','EPSG','3694',NULL,'EPSG-Fra',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8174','Bogota 1975 (Bogota) to WGS 84 (1)','','For military purposes. Accuracy 6m, 5m and 6m in X, Y and Z axes.','EPSG','4802','EPSG','4326','EPSG','3229',NULL,'DMA-Col',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8175','Monte Mario (Rome) to WGS 84 (1)','','For military purposes. Accuracy 25m in each axis.','EPSG','4806','EPSG','4326','EPSG','2339',NULL,'EPSG-Ita',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8176','Tananarive (Paris) to WGS 84 (1)','','For military purposes. Accuracy not available.','EPSG','4810','EPSG','4326','EPSG','3273',NULL,'EPSG-Mdg',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8178','Batavia (Jakarta) to WGS 84 (1)','','For military purposes. Accuracy 3m in each axis.','EPSG','4813','EPSG','4326','EPSG','1355',NULL,'EPSG-Idn Sumatra',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8183','HD72 to WGS 84 (1)','Approximation at the +/- 1m level assuming that ETRF89 is equivalent to WGS 84.','Approximation at the +/- 1m level assuming that ETRS89 is equivalent to WGS 84.','EPSG','4237','EPSG','4326','EPSG','1119',NULL,'EPSG-Hun',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8186','NTF (Paris) to ED50 (1)','','Not known.','EPSG','4807','EPSG','4230','EPSG','3694',NULL,'EPSG-Fra',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8188','NTF (Paris) to WGS 72 (1)','','Not known.','EPSG','4807','EPSG','4322','EPSG','3694',NULL,'EPSG-Fra',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8190','AGD66 to WGS 84 (2)','Approximation at the +/- 1m level assuming that GDA94 is equivalent to WGS 84. 0.1m accuracy.','Approximation at the +/- 1m level assuming that GDA94 is equivalent to WGS 84.','EPSG','4202','EPSG','4326','EPSG','2575',NULL,'EPSG-Aus 5m',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8192','AGD84 to WGS 84 (3)','Approximation assuming that GDA94 is equivalent to WGS 84.','5m accuracy. Approximation assuming that GDA94 is equivalent to WGS 84.','EPSG','4203','EPSG','4326','EPSG','2575',NULL,'EPSG-Aus 5m',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8194','AGD84 to WGS 84 (4)','Approximation at the +/- 1m level assuming that GDA94 is equivalent to WGS 84.','Approximation at the +/- 1m level assuming that GDA94 is equivalent to WGS 84.','EPSG','4203','EPSG','4326','EPSG','2575',NULL,'EPSG-Aus 1m',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8195','RT90 to WGS 84 (1)','Approximation at the +/- 1m level assuming that ETRF89 is equivalent to WGS 84.','Approximation at the +/- 1m level assuming that ETRS89 is equivalent to WGS 84.','EPSG','4124','EPSG','4326','EPSG','1225',NULL,'EPSG-Swe',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8199','Pulkovo 1942 to WGS 84 (2)','Approximation at the +/- 1m level assuming that LKS94(ETRS89) is equivalent to WGS 84.','Approximation at the +/- 1m level assuming that LKS94(ETRS89) is equivalent to WGS 84.','EPSG','4284','EPSG','4326','EPSG','1145',NULL,'EPSG-Ltu',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8211','Voirol 1875 (Paris) to WGS 84 (1)','','Oil exploration.','EPSG','4811','EPSG','4326','EPSG','1365',NULL,'EPSG-Dza N',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8215','Tete to WGS 84 (1)','Approximation at the +/- 1m level assuming that Moznet is equivalent to WGS 84.','Approximation at the +/- 1m level assuming that Moznet is equivalent to WGS 84.','EPSG','4127','EPSG','4326','EPSG','1167',NULL,'EPSG-Moz',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8217','Tete to WGS 84 (2)','Approximation at the +/- 1m level assuming that Moznet is equivalent to WGS 84.','Approximation at the +/- 1m level assuming that Moznet is equivalent to WGS 84.','EPSG','4127','EPSG','4326','EPSG','2350',NULL,'EPSG-Moz A',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8219','Tete to WGS 84 (3)','Approximation at the +/- 1m level assuming that Moznet is equivalent to WGS 84.','Approximation at the +/- 1m level assuming that Moznet is equivalent to WGS 84.','EPSG','4127','EPSG','4326','EPSG','2351',NULL,'EPSG-Moz B',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8221','Tete to WGS 84 (4)','Approximation at the +/- 1m level assuming that Moznet is equivalent to WGS 84.','Approximation at the +/- 1m level assuming that Moznet is equivalent to WGS 84.','EPSG','4127','EPSG','4326','EPSG','2352',NULL,'EPSG-Moz C',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8223','Tete to WGS 84 (5)','Approximation at the +/- 1m level assuming that Moznet is equivalent to WGS 84.','Approximation at the +/- 1m level assuming that Moznet is equivalent to WGS 84.','EPSG','4127','EPSG','4326','EPSG','2353',NULL,'EPSG-Moz D',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8234','DHDN to WGS 84 (1)','Approximation at the +/- 1m level assuming that ETRF89 is equivalent to WGS 84.','Approximation at the +/- 1m level assuming that ETRS89 is equivalent to WGS 84.','EPSG','4314','EPSG','4326','EPSG','2326',NULL,'EPSG-Deu W',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8236','Pulkovo 1942 to WGS 84 (11)','Approximation at the +/- 1m level assuming that ETRF89 is equivalent to WGS 84.','Approximation at the +/- 1m level assuming that ETRF89 is equivalent to WGS 84.','EPSG','4284','EPSG','4326','EPSG','1343',NULL,'EPSG-Deu E',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8243','NAD27 to WGS 84 (25)','Approximation at the +/- 1m level assuming that NAD83 is equivalent to WGS 84. Superseded by NAD27 to WGS 84 (27) (code 8404) in Quebec and NAD27 to WGS 84 (26) (code 8245) elsewhere in Canada.','Approximation at the +/- 1m level assuming that NAD83 is equivalent to WGS 84.','EPSG','4267','EPSG','4326','EPSG','1061',NULL,'EPSG-Can old',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8245','NAD27 to WGS 84 (26)','Approximation at the +/- 1m level assuming that NAD83 is equivalent to WGS 84.','Approximation at the +/- 1m level assuming that NAD83 is equivalent to WGS 84.','EPSG','4267','EPSG','4326','EPSG','1061',NULL,'EPSG-Can',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8263','MGI (Ferro) to WGS 84 (1)','Accuracy estimate is not available.','For military purposes only.','EPSG','4805','EPSG','4326','EPSG','2370',NULL,'DMA-balk',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8363','ETRS89 + Baltic 1957 height to ETRS89 + EVRF2007 height (1)','Compound transformation using two separate quasigeoid models (DVRM05 and DMQSK2014E).','Recommended method for transforming coordinates between Baltic 1957 height and EVRF2007 height and vice-versa in Slovakia.','EPSG','8360','EPSG','7423','EPSG','1211',NULL,'UGKK-Svk',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8386','Old Hawaiian to WGS 84 (1)','Approximation at the +/- 1m level assuming that NAD83 is equivalent to WGS 84.','Approximation at the +/- 1m level assuming that NAD83 is equivalent to WGS 84.','EPSG','4135','EPSG','4326','EPSG','1334',NULL,'EPSG-Usa Hi',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8388','St. Lawrence Island to WGS 84 (1)','Approximation at the +/- 1m level assuming that NAD83 is equivalent to WGS 84.','Approximation at the +/- 1m level assuming that NAD83 is equivalent to WGS 84.','EPSG','4136','EPSG','4326','EPSG','1332',NULL,'EPSG-Usa AK StL',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8390','St. Paul Island to WGS 84 (1)','Approximation at the +/- 1m level assuming that NAD83 is equivalent to WGS 84.','Approximation at the +/- 1m level assuming that NAD83 is equivalent to WGS 84.','EPSG','4137','EPSG','4326','EPSG','1333',NULL,'EPSG-Usa AK StP',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8392','St. George Island to WGS 84 (1)','Approximation at the +/- 1m level assuming that NAD83 is equivalent to WGS 84.','Approximation at the +/- 1m level assuming that NAD83 is equivalent to WGS 84.','EPSG','4138','EPSG','4326','EPSG','1331',NULL,'EPSG-Usa AK StG',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8394','NAD27(CGQ77) to WGS 84 (1)','Approximation at the +/- 1m level assuming that NAD83 is equivalent to WGS 84. Superseded by NAD27(CGQ77) to WGS 84 (2) (code 8564).','Approximation at the +/- 1m level assuming that NAD83 is equivalent to WGS 84.','EPSG','4609','EPSG','4326','EPSG','1368',NULL,'EPSG-Can Qc NT1',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8396','AGD66 to WGS 84 (3)','Approximation at the +/- 1m level assuming that GDA94 is equivalent to WGS 84. Superseded by AGD66 to WGS 84 (11) (code 8581).','Approximation at the +/- 1m level assuming that GDA94 is equivalent to WGS 84.','EPSG','4202','EPSG','4326','EPSG','2283',NULL,'EPSG-Aus ACT 1m',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8398','AGD66 to WGS 84 (4)','Approximation at the +/- 1m level assuming that GDA94 is equivalent to WGS 84. Superseded by AGD66 to WGS 84 (9) (code 8576).','Approximation at the +/- 1m level assuming that GDA94 is equivalent to WGS 84.','EPSG','4202','EPSG','4326','EPSG','1282',NULL,'EPSG-Aus Tas 1m',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8400','AGD66 to WGS 84 (5)','Approximation at the +/- 1m level assuming that GDA94 is equivalent to WGS 84.','Approximation at the +/- 1m level assuming that GDA94 is equivalent to WGS 84.','EPSG','4202','EPSG','4326','EPSG','2286',NULL,'EPSG-Aus NSW Vic 1m',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8402','Puerto Rico to WGS 84 (1)','Approximation at the +/- 1m level assuming that NAD83 is equivalent to WGS 84.','Approximation at the +/- 1m level assuming that NAD83 is equivalent to WGS 84.','EPSG','4139','EPSG','4326','EPSG','1335',NULL,'EPSG-PRVI',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8404','NAD27 to WGS 84 (27)','Approximation at the +/- 1m level assuming that NAD83 is equivalent to WGS 84. Superseded by NAD27 to WGS 84 (31) (code 8565).','Approximation at the +/- 1m level assuming that NAD83 is equivalent to WGS 84.','EPSG','4267','EPSG','4326','EPSG','1368',NULL,'EPSG-Can QC',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8406','NAD27(76) to WGS 84 (1)','Approximation at the +/- 1m level assuming that NAD83 is equivalent to WGS 84.','Approximation at the +/- 1m level assuming that NAD83 is equivalent to WGS 84.','EPSG','4608','EPSG','4326','EPSG','1367',NULL,'EPSG-Can On',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8408','AGD66 to WGS 84 (6)','Approximation at the +/- 1m level assuming that GDA94 is equivalent to WGS 84. Superseded by AGD66 to WGS 84 (11) (code 8578).','Approximation at the +/- 1m level assuming that GDA94 is equivalent to WGS 84.','EPSG','4202','EPSG','4326','EPSG','2285',NULL,'EPSG-Aus Vic 0.1m',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8418','ATS77 to WGS 84 (1)','Approximation at the +/- 1m level assuming that NAD83(CSRS98) is equivalent to WGS 84.','Approximation at the +/- 1m level assuming that NAD83(CSRS98) is equivalent to WGS 84.','EPSG','4122','EPSG','4326','EPSG','1447',NULL,'EPSG-Can NB',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8419','ATS77 to WGS 84 (2)','Approximation at the +/- 1m level assuming that NAD83(CSRS98) is equivalent to WGS 84.','Approximation at the +/- 1m level assuming that NAD83(CSRS98) is equivalent to WGS 84.','EPSG','4122','EPSG','4326','EPSG','1533',NULL,'EPSG-Can PEI',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8420','NAD27 to WGS 84 (32)','','Approximation at the +/- 1m level assuming that NAD83(CSRS98) is equivalent to WGS 84.','EPSG','4267','EPSG','4326','EPSG','2375',NULL,'SK PMC-Can SK',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8421','NAD83 to WGS 84 (7)','','Approximation at the +/- 1m level assuming that NAD83(CSRS98) is equivalent to WGS 84.','EPSG','4269','EPSG','4326','EPSG','2375',NULL,'SK PMC-Can SK',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8422','NAD83 to WGS 84 (8)','The gridded difference file AB_CSRS.DAC in STEP 1 will need to be renamed to AB_CSRS.gsb to run in some software suites. Formats identical, but AB file is provincial fit only.','Approximation at the +/- 1m level assuming that NAD83(CSRS98) is equivalent to WGS 84.','EPSG','4269','EPSG','4326','EPSG','2376',NULL,'Alb Env-Can AB',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8442','ETRS89 to S-JTSK (5)','Recommended method of a transformation from ETRS89 to S-JTSK in Slovakia. For reverse transformation see S-JTSK to ETRS89 (6) (code 8443). Both together replace S-JTSK to ETRS89 (4) (code 4827).','GIS, geodetic survey.','EPSG','4258','EPSG','4156','EPSG','1211',NULL,'UGKK-Sk JTSK03',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8443','S-JTSK to ETRS89 (6)','Recommended method of a transformation from S-JTSK to ETRS89 in Slovakia. For reverse transformation see ETRS89 to S-JTSK (5) (code 8442). Both together replace S-JTSK to ETRS89 (4) (code 4827).','GIS, geodetic survey.','EPSG','4156','EPSG','4258','EPSG','1211',NULL,'UGKK-Sk JTSK03',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8453','AGD66 to WGS 84 (7)','Approximation at the +/- 1m level assuming that GDA94 is equivalent to WGS 84.','Approximation at the +/- 1m level assuming that GDA94 is equivalent to WGS 84.','EPSG','4202','EPSG','4326','EPSG','1282',NULL,'EPSG-Aus Tas 0.1m',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8454','AGD66 to WGS 84 (8)','Approximation at the +/- 1m level assuming that GDA94 is equivalent to WGS 84.','Approximation at the +/- 1m level assuming that GDA94 is equivalent to WGS 84.','EPSG','4202','EPSG','4326','EPSG','2284',NULL,'EPSG-Aus NT 0.1m',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8457','CH1903+ to WGS 84 (1)','Approximation at the +/- 1m level assuming that CHTRF95 is equivalent to WGS 84.','Approximation at the +/- 1m level assuming that CHTRF95 is equivalent to WGS 84.','EPSG','4150','EPSG','4326','EPSG','1286',NULL,'EPSG-CH',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8460','NAD27 to NAD83(HARN) (1)','May be taken as approximate transformation NAD27 to WGS 84 - see code 8590.','Accuracy at 67% confidence level is 0.2m onshore, 5m nearshore and undetermined farther offshore.','EPSG','4267','EPSG','4152','EPSG','1372',NULL,'NGS-Usa AL',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8461','NAD27 to NAD83(HARN) (2)','May be taken as approximate transformation NAD27 to WGS 84 - see code 8591.','Accuracy at 67% confidence level is 0.2m.','EPSG','4267','EPSG','4152','EPSG','1373',NULL,'NGS-Usa AZ',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8462','NAD27 to NAD83(HARN) (3)','May be taken as approximate transformation NAD27 to WGS 84 - see code 8593.','Accuracy at 67% confidence level is 0.2m onshore, 5m nearshore and undetermined farther offshore.','EPSG','4267','EPSG','4152','EPSG','2297',NULL,'NGS-Usa CA n',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8463','NAD27 to NAD83(HARN) (4)','May be taken as approximate transformation NAD27 to WGS 84 - see code 8594.','Accuracy at 67% confidence level is 0.2m onshore, 5m nearshore and undetermined farther offshore.','EPSG','4267','EPSG','4152','EPSG','2298',NULL,'NGS-Usa CA s',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8464','NAD27 to NAD83(HARN) (5)','May be taken as approximate transformation NAD27 to WGS 84 - see code 8595.','Accuracy at 67% confidence level is 0.2m.','EPSG','4267','EPSG','4152','EPSG','1376',NULL,'NGS-Usa CO',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8465','NAD27 to NAD83(HARN) (6)','May be taken as approximate transformation NAD27 to WGS 84 - see code 8597.','Accuracy at 67% confidence level is 0.2m.','EPSG','4267','EPSG','4152','EPSG','1380',NULL,'NGS-Usa GA',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8466','NAD27 to NAD83(HARN) (7)','May be taken as approximate transformation NAD27 to WGS 84 - see code 8596.','Accuracy at 67% confidence level is 0.2m onshore, 5m nearshore and undetermined farther offshore.','EPSG','4267','EPSG','4152','EPSG','1379',NULL,'NGS-Usa FL',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8467','NAD27 to NAD83(HARN) (8)','May be taken as approximate transformation NAD27 to WGS 84 - see code 8611.','Accuracy at 67% confidence level is 0.2m.','EPSG','4267','EPSG','4152','EPSG','2382',NULL,'NGS-Usa ID MT e',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8468','NAD27 to NAD83(HARN) (9)','May be taken as approximate transformation NAD27 to WGS 84 - see code 8612.','Accuracy at 67% confidence level is 0.2m.','EPSG','4267','EPSG','4152','EPSG','2383',NULL,'NGS-Usa ID MT w',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8469','NAD27 to NAD83(HARN) (10)','May be taken as approximate transformation NAD27 to WGS 84 - see code 8602.','Accuracy at 67% confidence level is 0.2m.','EPSG','4267','EPSG','4152','EPSG','1386',NULL,'NGS-Usa KY',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8470','NAD27 to NAD83(HARN) (11)','May be taken as approximate transformation NAD27 to WGS 84 - see code 8603.','Accuracy at 67% confidence level is 0.2m onshore, 5m nearshore and undetermined farther offshore.','EPSG','4267','EPSG','4152','EPSG','1387',NULL,'NGS-Usa LA',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8471','NAD27 to NAD83(HARN) (12)','May be taken as approximate transformation NAD27 to WGS 84 - see code 8605.','Accuracy at 67% confidence level is 0.2m.','EPSG','4267','EPSG','4152','EPSG','2377',NULL,'NGS-Usa DE MD',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8472','NAD27 to NAD83(HARN) (13)','May be taken as approximate transformation NAD27 to WGS 84 - see code 8604.','Accuracy at 67% confidence level is 0.2m onshore, 5m nearshore and undetermined farther offshore.','EPSG','4267','EPSG','4152','EPSG','1388',NULL,'NGS-Usa ME',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8473','NAD27 to NAD83(HARN) (14)','May be taken as approximate transformation NAD27 to WGS 84 - see code 8607.','Accuracy at 67% confidence level is 0.2m.','EPSG','4267','EPSG','4152','EPSG','1391',NULL,'NGS-Usa MI',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8474','NAD27 to NAD83(HARN) (15)','May be taken as approximate transformation NAD27 to WGS 84 - see code 8609.','Accuracy at 67% confidence level is 0.2m onshore, 5m nearshore and undetermined farther offshore.','EPSG','4267','EPSG','4152','EPSG','1393',NULL,'NGS-Usa MS',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8475','NAD27 to NAD83(HARN) (16)','May be taken as approximate transformation NAD27 to WGS 84 - see code 8613.','Accuracy at 67% confidence level is 0.2m.','EPSG','4267','EPSG','4152','EPSG','1396',NULL,'NGS-Usa NE',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8476','NAD27 to NAD83(HARN) (17)','May be taken as approximate transformation NAD27 to WGS 84 - see code 8606.','Accuracy at 67% confidence level is 0.2m onshore, 5m nearshore and undetermined farther offshore.','EPSG','4267','EPSG','4152','EPSG','2378',NULL,'NGS-Usa NewEng',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8477','NAD27 to NAD83(HARN) (18)','May be taken as approximate transformation NAD27 to WGS 84 - see code 8616.','Accuracy at 67% confidence level is 0.2m.','EPSG','4267','EPSG','4152','EPSG','1400',NULL,'NGS-Usa NM',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8478','NAD27 to NAD83(HARN) (19)','May be taken as approximate transformation NAD27 to WGS 84 - see code 8617.','Accuracy at 67% confidence level is 0.2m onshore, 5m nearshore and undetermined farther offshore.','EPSG','4267','EPSG','4152','EPSG','1401',NULL,'NGS-Usa NY',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8479','NAD27 to NAD83(HARN) (20)','May be taken as approximate transformation NAD27 to WGS 84 - see code 8618.','Accuracy at 67% confidence level is 0.2m.','EPSG','4267','EPSG','4152','EPSG','1403',NULL,'NGS-Usa ND',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8480','NAD27 to NAD83(HARN) (21)','May be taken as approximate transformation NAD27 to WGS 84 - see code 8620.','Accuracy at 67% confidence level is 0.2m.','EPSG','4267','EPSG','4152','EPSG','1405',NULL,'NGS-Usa OK',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8481','Puerto Rico to NAD83(HARN) (1)','May be taken as approximate transformation Puerto Rico to WGS 84 - see code 8583.','Accuracy 0.1m at 67% confidence level.','EPSG','4139','EPSG','4152','EPSG','1335',NULL,'NGS-PRVI',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8482','NAD27 to NAD83(HARN) (22)','May be taken as approximate transformation NAD27 to WGS 84 - see code 8622.','Accuracy at 67% confidence level is 0.2m.','EPSG','4267','EPSG','4152','EPSG','1410',NULL,'NGS-Usa SD',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8483','NAD27 to NAD83(HARN) (23)','May be taken as approximate transformation NAD27 to WGS 84 - see code 8623.','Accuracy at 67% confidence level is 0.2m.','EPSG','4267','EPSG','4152','EPSG','1411',NULL,'NGS-Usa TN',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8484','NAD27 to NAD83(HARN) (24)','May be taken as approximate transformation NAD27 to WGS 84 - see code 8624.','Accuracy at 67% confidence level is 0.2m onshore, 5m nearshore and undetermined farther offshore.','EPSG','4267','EPSG','4152','EPSG','2379',NULL,'NGS-Usa TX e',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8485','NAD27 to NAD83(HARN) (25)','May be taken as approximate transformation NAD27 to WGS 84 - see code 8625.','Accuracy at 67% confidence level is 0.2m.','EPSG','4267','EPSG','4152','EPSG','2380',NULL,'NGS-Usa TX w',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8486','NAD27 to NAD83(HARN) (26)','May be taken as approximate transformation NAD27 to WGS 84 - see code 8627.','Accuracy at 67% confidence level is 0.2m.','EPSG','4267','EPSG','4152','EPSG','1415',NULL,'NGS-Usa VA',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8487','NAD27 to NAD83(HARN) (27)','May be taken as approximate transformation NAD27 to WGS 84 - see code 8621.','Accuracy at 67% confidence level is 0.2m onshore, 5m nearshore and undetermined farther offshore.','EPSG','4267','EPSG','4152','EPSG','2381',NULL,'NGS-Usa OR WA',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8488','NAD27 to NAD83(HARN) (28)','May be taken as approximate transformation NAD27 to WGS 84 - see code 8629.','Accuracy at 67% confidence level is 0.2m.','EPSG','4267','EPSG','4152','EPSG','1418',NULL,'NGS-Usa WI',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8489','NAD27 to NAD83(HARN) (29)','May be taken as approximate transformation NAD27 to WGS 84 - see code 8630.','Accuracy at 67% confidence level is 0.2m.','EPSG','4267','EPSG','4152','EPSG','1419',NULL,'NGS-Usa WY',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8496','NAD27 to WGS 84 (28)','','Geodetic survey.','EPSG','4267','EPSG','4326','EPSG','2374',NULL,'NGS-Usa conus',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8497','NAD27 to WGS 84 (29)','','Geodetic survey.','EPSG','4267','EPSG','4326','EPSG','2373',NULL,'NGS-Usa AK',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8508','Old Hawaiian to NAD83(HARN) (1)','Uses NADCON method which expects longitudes positive west; EPSG GeogCRSs Old Hawaiian (code 4135), NAD83 (code 4269) and NAD83(HARN) have longitudes positive east. May be taken as approximate transformation Old Hawaiin to WGS 84 - see code 8582.','Assumes NAD83 is coincident with NAD83(HARN). Accuracy about 1m.','EPSG','4135','EPSG','4152','EPSG','1334',NULL,'NGS-Usa HI',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8509','NAD27 to NAD83(HARN) (30)','May be taken as approximate transformation NAD27 to WGS 84 - see code 8599.','Accuracy at 67% confidence level is 0.2m.','EPSG','4267','EPSG','4152','EPSG','1383',NULL,'NGS-Usa IN',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8510','NAD27 to NAD83(HARN) (31)','May be taken as approximate transformation NAD27 to WGS 84 - see code 8601.','Accuracy at 67% confidence level is 0.2m.','EPSG','4267','EPSG','4152','EPSG','1385',NULL,'NGS-Usa KS',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8511','NAD27 to NAD83(HARN) (32)','May be taken as approximate transformation NAD27 to WGS 84 - see code 8614.','Accuracy at 67% confidence level is 0.2m.','EPSG','4267','EPSG','4152','EPSG','1397',NULL,'NGS-Usa NV',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8512','NAD27 to NAD83(HARN) (33)','May be taken as approximate transformation NAD27 to WGS 84 - see code 8619.','Accuracy at 67% confidence level is 0.2m.','EPSG','4267','EPSG','4152','EPSG','1404',NULL,'NGS-Usa OH',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8513','NAD27 to NAD83(HARN) (34)','May be taken as approximate transformation NAD27 to WGS 84 - see code 8626.','Accuracy at 67% confidence level is 0.2m.','EPSG','4267','EPSG','4152','EPSG','1413',NULL,'NGS-Usa UT',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8514','NAD27 to NAD83(HARN) (35)','May be taken as approximate transformation NAD27 to WGS 84 - see code 8628.','Accuracy at 67% confidence level is 0.2m.','EPSG','4267','EPSG','4152','EPSG','1417',NULL,'NGS-Usa WV',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8517','Chos Malal 1914 to WGS 84 (1)','May be implemented using a single step geocentric translations of dx=+5.5m dY=+176.7m dZ=+141.4m.','Oil exploration','EPSG','4160','EPSG','4326','EPSG','2325',NULL,'TOT-Arg Neu',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8530','South Yemen to WGS 84 (1)','May be implemented as a single transformation using geocentric translations transformation method with parameter values dX=-76m dY=-138m dZ=+67m.','Approximation at the +/- 1m level assuming that NGN96 is equivalent to WGS 84.','EPSG','4164','EPSG','4326','EPSG','1340',NULL,'IGN-Yem South',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8532','Indian 1960 to WGS 84 (1)','May be implemented as a single transformation using position vector 7-parameter geocentric transformation method with parameter values dX=+199m dY=+931m dZ=+318.9m rX=rY=0 sec rZ=+0.814 sec dS=-0.38 ppm.','Oil exploration.','EPSG','4131','EPSG','4326','EPSG','1495',NULL,'PV-Vnm',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8537','Egypt 1907 to WGS 84 (2)','Used by Shell. May be implemented as a single transformation using position vector 7-parameter geocentric transformation method with parameter values dX=-121.8m dY=+98.1m dZ=-10.7m rX=rY=0 sec rZ=+0.554 sec dS=+0.2263 ppm.','Oil exploration.','EPSG','4229','EPSG','4326','EPSG','1086',NULL,'MCE-Egy',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8553','NAD27 to NAD83(HARN) (36)','May be taken as approximate transformation NAD27 to WGS 84 - see code 8598.','Accuracy at 67% confidence level is 0.2m.','EPSG','4267','EPSG','4152','EPSG','1382',NULL,'NGS-Usa IL',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8554','NAD27 to NAD83(HARN) (37)','May be taken as approximate transformation NAD27 to WGS 84 - see code 8615.','Accuracy at 67% confidence level is 0.2m.','EPSG','4267','EPSG','4152','EPSG','1399',NULL,'NGS-Usa NJ',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8560','AGD84 to WGS 84 (5)','Approximation at the +/- 1m level assuming that GDA94 is equivalent to WGS 84. Superseded by AGD84 to WGS 84 (6) (code 8579).','Approximation at the +/- 1m level assuming that GDA94 is equivalent to WGS 84.','EPSG','4203','EPSG','4326','EPSG','1280',NULL,'EPSG-Aus WA',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8562','Nord Sahara 1959 to WGS 84 (3)','Derived at IGN monument CFP19 using Transit. Can be implemented as a single 7-param Position Vector transformation with parameter values of dX=-156.5m dY=-87.2m dZ=+287.8m; rX=rY=0 rZ=+0.814sec; dS=-0.38ppm.','Oil exploration.','EPSG','4307','EPSG','4326','EPSG','2393',NULL,'CGG-Alg HM',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8563','NZGD49 to WGS 84 (3)','Assumes WGS 84 is coincident with NZGD2000. Accuracy about 1m.','Assumes WGS 84 is coincident with NZGD2000. Accuracy about 1m.','EPSG','4272','EPSG','4326','EPSG','1175',NULL,'OSG-Nzl 1m',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8564','NAD27(CGQ77) to WGS 84 (2)','','Approximation at the +/- 1m level assuming that NAD83(CSRS98) is equivalent to WGS 84.','EPSG','4609','EPSG','4326','EPSG','1368',NULL,'EPSG-Can Qc NT2',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8565','NAD27 to WGS 84 (31)','','Approximation at the +/- 1m level assuming that NAD83(CSRS98) is equivalent to WGS 84.','EPSG','4267','EPSG','4326','EPSG','1368',NULL,'EPSG-Can Que',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8566','NAD83 to WGS 84 (6)','','Approximation at the +/- 1m level assuming that NAD83(CSRS98) is equivalent to WGS 84.','EPSG','4269','EPSG','4326','EPSG','1368',NULL,'EPSG-Can Qc',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8568','Deir ez Zor to WGS 84 (1)','Can be implemented as a position vector tfm with param. values dX=-174.6 dY=-3.1 dZ=238.1m; rX=rY=0 rZ=0.814"; dS=-0.38 ppm.','Oil exploration','EPSG','4227','EPSG','4326','EPSG','2329',NULL,'EPSG-Syr',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8569','ED50 to WGS 84 (21)','Included in Statens Kartverk programme wsktrans between 1997 (v3.1) and 2001 (v4.0). Replaced by ED50 to WGS 84 (23) (code 1612) in April 2001.','Oil exploration before 1997/2001.','EPSG','4230','EPSG','4326','EPSG','2332',NULL,'EPSG-Nor N65 1997',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8571','Accra to WGS 84 (2)','Can be implemented as a position vector tfm dX=-171.16 dY=17.29 dZ=325.21m, rX=rY=0 rZ=0.814", dS=-0.38 ppm. See tfm code 15495. Found in use within oil industry erroneously concatenated as dX=-171.16 dY=17.29 dZ=327.81m, rX=rY0 rZ=0.554", dS=0.2263 ppm.','Oil industry.','EPSG','4168','EPSG','4326','EPSG','1505',NULL,'EPSG-Gha',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8572','Amersfoort to WGS 84 (2)','Parameter values for step 1 from Amersfoort to ETRS89 (2) (code 1751). Step 2 assumes that ETRS89 is equivalent to WGS 84 within the accuracy of the transformation. Supersedes Amersfoort to WGS 84 (1) (code 1112).','Approximation at the +/- 1m level assuming that ETRS89 is equivalent to WGS 84.','EPSG','4289','EPSG','4326','EPSG','1275',NULL,'EPSG-Nld',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8573','RGF93 to WGS 84 (1)','','Approximation at the +/- 1m level assuming that ETRS89 is equivalent to WGS 84.','EPSG','4171','EPSG','4326','EPSG','1096',NULL,'EPSG-Fra',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8574','American Samoa 1962 to WGS 84 (2)','Transformation actually to NAD83(HARN), but for many purposes NAD83(HARNS) can be considered to be coincident with WGS 84.','Transformation actually to NAD83(HARN), but for many purposes NAD83(HARN) can be considered to be coincident with WGS 84.','EPSG','4169','EPSG','4326','EPSG','2288',NULL,'EPSG-Asm',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8575','American Samoa 1962 to WGS 84 (3)','Transformation actually to NAD83(HARN), but for many purposes NAD83(HARNS) can be considered to be coincident with WGS 84.','Transformation actually to NAD83(HARN), but for many purposes NAD83(HARN) can be considered to be coincident with WGS 84.','EPSG','4169','EPSG','4326','EPSG','2289',NULL,'EPSG-Asm',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8576','AGD66 to WGS 84 (9)','Approximation at the +/- 1m level assuming that GDA94 is equivalent to WGS 84. Supersedes AGD66 to WGS 84 (4) (code 8398).','Approximation at the +/- 1m level assuming that GDA94 is equivalent to WGS 84.','EPSG','4202','EPSG','4326','EPSG','1282',NULL,'EPSG-Aus Tas 1m',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8577','AGD66 to WGS 84 (10)','Approximation at the +/- 1m level assuming that GDA94 is equivalent to WGS 84.','Approximation at the +/- 1m level assuming that GDA94 is equivalent to WGS 84.','EPSG','4202','EPSG','4326','EPSG','2284',NULL,'EPSG-Aus NT',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8578','AGD66 to WGS 84 (11)','Approximation at the +/- 1m level assuming that GDA94 is equivalent to WGS 84. Supersedes AGD66 to WGS 84 (3) (code 8396) and AGD66 to WGS 84 (6) (code 8408).','Approximation at the +/- 1m level assuming that GDA94 is equivalent to WGS 84.','EPSG','4202','EPSG','4326','EPSG','2287',NULL,'EPSG-Aus',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8579','AGD84 to WGS 84 (6)','Approximation at the +/- 1m level assuming that GDA94 is equivalent to WGS 84. Supersedes AGD84 to WGS 84 (5) (code 8560).','Approximation at the +/- 1m level assuming that GDA94 is equivalent to WGS 84.','EPSG','4203','EPSG','4326','EPSG','1280',NULL,'EPSG-Aus WA',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8580','IRENET95 to WGS 84 (1)','Approximation at the +/- 1m level assuming that ETRS89 is equivalent to WGS 84.','Approximation at the +/- 1m level assuming that ETRS89 is equivalent to WGS 84.','EPSG','4173','EPSG','4326','EPSG','1305',NULL,'OSI-Ire',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8581','PSD93 to WGS 84 (2)','Replaced by PSD93 to WGS 84 (1) (code 1439) in 1997. Can be implemented as a position vector tfm with parameter values dX= -182.046 dY= -225.604 dZ=+173.384m rX= -0.616 rY= -1.655 rZ=+8.378" dS=16.8673ppm.','Oil exploration.','EPSG','4134','EPSG','4326','EPSG','3288',NULL,'PDO-Omn 93',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8582','Old Hawaiian to WGS 84 (2)','Transformation steps are from Old Hawaiian to NAD83(HARN) (1) (code 8508) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','4135','EPSG','4326','EPSG','1334',NULL,'EPSG-Usa Hi',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8583','Puerto Rico to WGS 84 (2)','Transformation steps are from Puerto Rico to NAD83(HARN) (1) (code 4435) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','4139','EPSG','4326','EPSG','3634',NULL,'EPSG-PRVI',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8584','NAD27 to NAD83(CSRS98) (3)','Can be taken as an approximate transformation NAD27 to WGS 84 - see code 8585.','Accuracy 1-2 metres.','EPSG','4267','EPSG','4140','EPSG','2376',NULL,'EPSG-Can AB',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8585','NAD27 to WGS 84 (36)','Steps based on concatenated transformation NAD27 to NAD83(CSRS) (3) (code 8635) assuming that NAD83(CSRS) is equivalent to WGS 84.','Approximation at the +/- 1m level.','EPSG','4267','EPSG','4326','EPSG','2376',NULL,'EPSG-Can AB',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8586','NAD27 to NAD83(HARN) (38)','May be taken as approximate transformation NAD27 to WGS 84 - see code 8592.','Accuracy at 67% confidence level is 0.2m.','EPSG','4267','EPSG','4152','EPSG','1374',NULL,'NGS-Usa AR',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8587','NAD27 to NAD83(HARN) (39)','May be taken as approximate transformation NAD27 to WGS 84 - see code 8600.','Accuracy at 67% confidence level is 0.2m.','EPSG','4267','EPSG','4152','EPSG','1384',NULL,'NGS-Usa IA',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8588','NAD27 to NAD83(HARN) (40)','May be taken as approximate transformation NAD27 to WGS 84 - see code 8608.','Accuracy at 67% confidence level is 0.2m.','EPSG','4267','EPSG','4152','EPSG','1392',NULL,'NGS-Usa MN',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8589','NAD27 to NAD83(HARN) (41)','May be taken as approximate transformation NAD27 to WGS 84 - see code 8610.','Accuracy at 67% confidence level is 0.2m.','EPSG','4267','EPSG','4152','EPSG','1394',NULL,'NGS-Usa MO',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8590','NAD27 to WGS 84 (37)','Transformation steps are from NAD27 to NAD83(HARN) (1) (code 8460) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','4267','EPSG','4326','EPSG','1372',NULL,'EPSG-Usa AL',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8591','NAD27 to WGS 84 (38)','Transformation steps are from NAD27 to NAD83(HARN) (2) (code 8461) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','4267','EPSG','4326','EPSG','1373',NULL,'EPSG-Usa AZ',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8592','NAD27 to WGS 84 (39)','Transformation steps are from NAD27 to NAD83(HARN) (38) (code 8586) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','4267','EPSG','4326','EPSG','1374',NULL,'EPSG-Usa AR',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8593','NAD27 to WGS 84 (40)','Transformation steps are from NAD27 to NAD83(HARN) (3) (code 8462) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','4267','EPSG','4326','EPSG','2297',NULL,'EPSG-Usa CA n',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8594','NAD27 to WGS 84 (41)','Transformation steps are from NAD27 to NAD83(HARN) (4) (code 8463) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','4267','EPSG','4326','EPSG','2298',NULL,'EPSG-Usa CA s',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8595','NAD27 to WGS 84 (42)','Transformation steps are from NAD27 to NAD83(HARN) (5) (code 8464) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','4267','EPSG','4326','EPSG','1376',NULL,'EPSG-Usa CO',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8596','NAD27 to WGS 84 (43)','Transformation steps are from NAD27 to NAD83(HARN) (7) (code 8466) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','4267','EPSG','4326','EPSG','1379',NULL,'EPSG-Usa FL',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8597','NAD27 to WGS 84 (44)','Transformation steps are from NAD27 to NAD83(HARN) (6) (code 8465) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','4267','EPSG','4326','EPSG','1380',NULL,'EPSG-Usa GA',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8598','NAD27 to WGS 84 (45)','Transformation steps are from NAD27 to NAD83(HARN) (36) (code 8553) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','4267','EPSG','4326','EPSG','1382',NULL,'EPSG-Usa IL',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8599','NAD27 to WGS 84 (46)','Transformation steps are from NAD27 to NAD83(HARN) (30) (code 8509) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','4267','EPSG','4326','EPSG','1383',NULL,'EPSG-Usa IN',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8600','NAD27 to WGS 84 (47)','Transformation steps are from NAD27 to NAD83(HARN) (39) (code 8587) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','4267','EPSG','4326','EPSG','1384',NULL,'EPSG-Usa IA',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8601','NAD27 to WGS 84 (48)','Transformation steps are from NAD27 to NAD83(HARN) (31) (code 8510) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','4267','EPSG','4326','EPSG','1385',NULL,'EPSG-Usa KS',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8602','NAD27 to WGS 84 (49)','Transformation steps are from NAD27 to NAD83(HARN) (10) (code 8469) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','4267','EPSG','4326','EPSG','1386',NULL,'EPSG-Usa KY',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8603','NAD27 to WGS 84 (50)','Transformation steps are from NAD27 to NAD83(HARN) (11) (code 8470) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','4267','EPSG','4326','EPSG','1387',NULL,'EPSG-Usa LA',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8604','NAD27 to WGS 84 (51)','Transformation steps are from NAD27 to NAD83(HARN) (13) (code 8472) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','4267','EPSG','4326','EPSG','1388',NULL,'EPSG-Usa ME',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8605','NAD27 to WGS 84 (52)','Transformation steps are from NAD27 to NAD83(HARN) (12) (code 8471) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','4267','EPSG','4326','EPSG','2377',NULL,'EPSG-Usa DE MD',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8606','NAD27 to WGS 84 (53)','Transformation steps are from NAD27 to NAD83(HARN) (17) (code 8476) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','4267','EPSG','4326','EPSG','2378',NULL,'EPSG-Usa NewEng',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8607','NAD27 to WGS 84 (54)','Transformation steps are from NAD27 to NAD83(HARN) (14) (code 8473) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','4267','EPSG','4326','EPSG','1391',NULL,'EPSG-Usa MI',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8608','NAD27 to WGS 84 (55)','Transformation steps are from NAD27 to NAD83(HARN) (40) (code 8588) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','4267','EPSG','4326','EPSG','1392',NULL,'EPSG-Usa MN',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8609','NAD27 to WGS 84 (56)','Transformation steps are from NAD27 to NAD83(HARN) (15) (code 8474) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','4267','EPSG','4326','EPSG','1393',NULL,'EPSG-Usa MS',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8610','NAD27 to WGS 84 (57)','Transformation steps are from NAD27 to NAD83(HARN) (41) (code 8589) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','4267','EPSG','4326','EPSG','1394',NULL,'EPSG-Usa MO',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8611','NAD27 to WGS 84 (58)','Transformation steps are from NAD27 to NAD83(HARN) (8) (code 8467) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','4267','EPSG','4326','EPSG','2382',NULL,'EPSG-Usa ID MT e',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8612','NAD27 to WGS 84 (59)','Transformation steps are from NAD27 to NAD83(HARN) (9) (code 8468) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','4267','EPSG','4326','EPSG','2383',NULL,'EPSG-Usa ID MT w',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8613','NAD27 to WGS 84 (60)','Transformation steps are from NAD27 to NAD83(HARN) (16) (code 8475) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','4267','EPSG','4326','EPSG','1396',NULL,'EPSG-Usa NE',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8614','NAD27 to WGS 84 (61)','Transformation steps are from NAD27 to NAD83(HARN) (32) (code 8511) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','4267','EPSG','4326','EPSG','1397',NULL,'EPSG-Usa NV',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8615','NAD27 to WGS 84 (62)','Transformation steps are from NAD27 to NAD83(HARN) (37) (code 8554) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','4267','EPSG','4326','EPSG','1399',NULL,'EPSG-Usa NJ',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8616','NAD27 to WGS 84 (63)','Transformation steps are from NAD27 to NAD83(HARN) (18) (code 8477) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','4267','EPSG','4326','EPSG','1400',NULL,'EPSG-Usa NM',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8617','NAD27 to WGS 84 (64)','Transformation steps are from NAD27 to NAD83(HARN) (19) (code 8478) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','4267','EPSG','4326','EPSG','1401',NULL,'EPSG-Usa NY',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8618','NAD27 to WGS 84 (65)','Transformation steps are from NAD27 to NAD83(HARN) (20) (code 8479) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','4267','EPSG','4326','EPSG','1403',NULL,'EPSG-Usa ND',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8619','NAD27 to WGS 84 (66)','Transformation steps are from NAD27 to NAD83(HARN) (33) (code 8512) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','4267','EPSG','4326','EPSG','1404',NULL,'EPSG-Usa OH',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8620','NAD27 to WGS 84 (67)','Transformation steps are from NAD27 to NAD83(HARN) (21) (code 8480) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','4267','EPSG','4326','EPSG','1405',NULL,'EPSG-Usa OK',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8621','NAD27 to WGS 84 (68)','Transformation steps are from NAD27 to NAD83(HARN) (27) (code 8487) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','4267','EPSG','4326','EPSG','2381',NULL,'EPSG-Usa OR WA',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8622','NAD27 to WGS 84 (69)','Transformation steps are from NAD27 to NAD83(HARN) (22) (code 6739) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','4267','EPSG','4326','EPSG','1410',NULL,'EPSG-Usa SD',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8623','NAD27 to WGS 84 (70)','Transformation steps are from NAD27 to NAD83(HARN) (23) (code 8483) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','4267','EPSG','4326','EPSG','1411',NULL,'EPSG-Usa TN',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8624','NAD27 to WGS 84 (71)','Transformation steps are from NAD27 to NAD83(HARN) (24) (code 8484) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','4267','EPSG','4326','EPSG','2379',NULL,'EPSG-Usa TX e',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8625','NAD27 to WGS 84 (72)','Transformation steps are from NAD27 to NAD83(HARN) (25) (code 8485) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','4267','EPSG','4326','EPSG','2380',NULL,'EPSG-Usa TX w',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8626','NAD27 to WGS 84 (73)','Transformation steps are from NAD27 to NAD83(HARN) (34) (code 8513) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','4267','EPSG','4326','EPSG','1413',NULL,'EPSG-Usa UT',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8627','NAD27 to WGS 84 (74)','Transformation steps are from NAD27 to NAD83(HARN) (26) (code 8486) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','4267','EPSG','4326','EPSG','1415',NULL,'EPSG-Usa VA',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8628','NAD27 to WGS 84 (75)','Transformation steps are from NAD27 to NAD83(HARN) (35) (code 8514) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','4267','EPSG','4326','EPSG','1417',NULL,'EPSG-Usa WV',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8629','NAD27 to WGS 84 (76)','Transformation steps are from NAD27 to NAD83(HARN) (28) (code 8488) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','4267','EPSG','4326','EPSG','1418',NULL,'EPSG-Usa WI',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8630','NAD27 to WGS 84 (77)','Transformation steps are from NAD27 to NAD83(HARN) (29) (code 8489) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','4267','EPSG','4326','EPSG','1419',NULL,'EPSG-Usa WY',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8631','Garoua to WGS 84 (1)','','Oil industry.','EPSG','4197','EPSG','4326','EPSG','2590',NULL,'EPSG-Cmr',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8632','Kousseri to WGS 84 (1)','','Oil industry.','EPSG','4198','EPSG','4326','EPSG','2591',NULL,'EPSG-Cmr',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8633','Yoff to WGS 84 (1)','Derived via WGS72. Can be used as a single positon vector transformation with parameter vaues of dX = -37 m, dY = +157 m, dZ = +89.5 m, rX = rY = 0 sec, rZ = 0.554 sec, dS = 0.219 ppm','Military purposes.','EPSG','4310','EPSG','4326','EPSG','1207',NULL,'EPSG-SEN',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8634','Beduaram to WGS 84 (1)','Derived via WGS72BE. Can be used as a single positon vector transformation with parameter vaues of dX = -101 m, dY = -111 m, dZ = +188.9 m, rX = rY = 0 sec, rZ = 0.814 sec, dS = -0.38 ppm','Oil exploration.','EPSG','4213','EPSG','4326','EPSG','2771',NULL,'ELF-Ner SE',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8635','NAD27 to NAD83(CSRS) (3)','Can be taken as an approximate transformation NAD27 to WGS 84 - see code 8585.','Accuracy 1-2 metres.','EPSG','4267','EPSG','4617','EPSG','2376',NULL,'EPSG-Can AB',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8636','Carthage (Paris) to WGS 84 (1)','','For military purposes.','EPSG','4816','EPSG','4326','EPSG','1618',NULL,'EPSG-Tun',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8637','Lisbon (Lisbon) to WGS 84 (1)','','For applications to an accuracy of 2 metres.','EPSG','4803','EPSG','4326','EPSG','1294',NULL,'EPSG-Prt',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8638','Makassar (Jakarta) to WGS 84 (1)','','Oil exploration.','EPSG','4804','EPSG','4326','EPSG','1316',NULL,'EPSG - Idn Sul SW',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8639','NGO 1948 (Oslo) to WGS 84 (1)','','For military purposes.','EPSG','4817','EPSG','4326','EPSG','1352',NULL,'EPSG-Nor',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8640','Nord Sahara 1959 (Paris) to WGS 84 (1)','','For military purposes.','EPSG','4819','EPSG','4326','EPSG','1026',NULL,'EPSG-Dza',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8641','Segara (Jakarta) to WGS 84 (1)','','Accuracy estimate not available.','EPSG','4820','EPSG','4326','EPSG','1360',NULL,'EPSG-Idn Kal SW',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8642','S-JTSK (Ferro) to WGS 84 (1)','Replaced by S-JTSK (Ferro) to WGS 84 (3) (code 5242) in 2009.','For applications to an accuracy of 1 metre.','EPSG','4818','EPSG','4326','EPSG','1079',NULL,'EPSG-Cze',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8643','Greek to WGS 84 (1)','','5m accuracy','EPSG','4120','EPSG','4326','EPSG','3254',NULL,'EPSG-Grc',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8644','Greek (Athens) to WGS 84 (1)','','5m accuracy.','EPSG','4815','EPSG','4326','EPSG','3254',NULL,'EPSG-Grc',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8645','MGI (Ferro) to WGS 84 (2)','','2m accuracy','EPSG','4805','EPSG','4326','EPSG','1037',NULL,'BEV-Aut',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8646','Manoca 1962 to WGS 84 (1)','Derived via WGS72BE. Can be used as a single positon vector transformation with parameter vaues of dX = -56.7 m, dY = -171.8 m, dZ = -40.6 m, rX = rY = 0 sec, rZ = 0.814 sec, dS = -0.38 ppm','Oil exploration','EPSG','4193','EPSG','4326','EPSG','2555',NULL,'OGP-Cmr',1);
INSERT INTO "concatenated_operation" VALUES('EPSG','8647','NAD27 to WGS 84 (78)','','Oil industry operations.','EPSG','4267','EPSG','4326','EPSG','2831',NULL,'EPSG-Can E Off',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8648','Lisbon 1890 (Lisbon) to WGS 84 (1)','','Low accuracy applications.','EPSG','4904','EPSG','4326','EPSG','1294',NULL,'EPSG-Prt 5m',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8649','Lisbon 1890 (Lisbon) to WGS 84 (2)','','Medium accuracy applications.','EPSG','4904','EPSG','4326','EPSG','1294',NULL,'EPSG-Prt 1m',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8650','Palestine 1923 to WGS 84 (2)','Can be implemented as a geocentric translation tfm with param. values dX = -229m, dY = -67m, dZ= +277m.','Accuracy: 1m to north and 10m to south of east-west line through Beersheba (31°15''N).','EPSG','4281','EPSG','4326','EPSG','2603',NULL,'SoI-Isr',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8651','Vientiane 1982 to WGS 84 (1)','Can be implemented as a geocentric translation tfm with param. values dX = 42.358m, dY = -124.688m, dZ= -37.366m.','Accuracy: 5m.','EPSG','4676','EPSG','4326','EPSG','1138',NULL,'EPSG-Lao',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8652','Lao 1993 to WGS 84 (1)','Can be implemented as a geocentric translation tfm with param. values dX = 43.933m, dY = -129.593m, dZ= -39.331m.','Accuracy: 5m.','EPSG','4677','EPSG','4326','EPSG','1138',NULL,'EPSG-Lao',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8655','Manoca 1962 to WGS 84 (2)','Derived via WGS 72BE. Can be implemented as a single positon vector transformation with parameter vaues of dX = -56.7 m, dY = -171.8 m, dZ = -38.7 m, rX = rY = 0 sec, rZ = 0.814 sec, dS = -0.38 ppm.','Oil exploration','EPSG','4193','EPSG','4326','EPSG','2555',NULL,'OGP-Cmr',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8656','Mhast (offshore) to WGS 84 (1)','Derived via WGS 72BE. Can be implemented as a single positon vector transformation with parameter vaues of dX = -255.0 m, dY = -29.0 m, dZ = -103.1 m, rX = rY = 0 sec, rZ = 0.814 sec, dS = -0.38 ppm.','Oil industry exploration and production between 1979 and 1987.','EPSG','4705','EPSG','4326','EPSG','3180',NULL,'OGP-Ago Cab',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8657','Egypt Gulf of Suez S-650 TL to WGS 84 (1)','Can be implemented as a single positon vector transformation with parameter vaues of dX = -123.0 m, dY = 98.0 m, dZ = 3.9 m, rX = rY = 0 sec, rZ = 0.814 sec, dS = -0.38 ppm. Replaced by Egypt Gulf of Suez S-650 TL to WGS 84 (2) (tfm code 15846).','Oil industry exploration and production between 1980 and 1984.','EPSG','4706','EPSG','4326','EPSG','2341',NULL,'OGP-Egy GoS',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','8659','Kertau (RSO) to WGS 84 (1)','Step 1 is necessary to rescale the grid units before using step 2.','For transformation of MRT68 RSO coordinates.','EPSG','4751','EPSG','4326','EPSG','1309',NULL,'OGP-Mys',0);
INSERT INTO "concatenated_operation" VALUES('EPSG','9103','NAD27 to ITRF2014 (1)','For use with legacy data - see CT code 9104 for alternative for new areas. Note that steps 1 and 2 are documented in the geog2D domain, steps 3 and 4 in the geocentric domain. Steps 3 and 4 may be implemented in one operation using CT code 8970.','Oil and gas exploration and production.','EPSG','4267','EPSG','7789','EPSG','3357',NULL,'IOGP-Usa GoM legacy',0);
-427
View File
@@ -1,427 +0,0 @@
--- This file has been generated by scripts/build_db.py. DO NOT EDIT !
INSERT INTO "concatenated_operation_step" VALUES('EPSG','3896',1,'EPSG','3895');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','3896',2,'EPSG','1618');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','3966',1,'EPSG','3913');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','3966',2,'EPSG','3962');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','4435',1,'EPSG','1461');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','4435',2,'EPSG','1495');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','4837',1,'EPSG','1672');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','4837',2,'EPSG','1311');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','5190',1,'EPSG','5134');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','5190',2,'EPSG','5189');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','5192',1,'EPSG','5134');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','5192',2,'EPSG','5191');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','5230',1,'EPSG','1884');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','5230',2,'EPSG','4836');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','5240',1,'EPSG','5238');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','5240',2,'EPSG','5227');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','5242',1,'EPSG','1884');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','5242',2,'EPSG','5239');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','5838',1,'EPSG','1756');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','5838',2,'EPSG','1988');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','6714',1,'EPSG','6712');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','6714',2,'EPSG','6713');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','6739',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','6739',2,'EPSG','1496');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','6874',1,'EPSG','1265');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','6874',2,'EPSG','6873');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','7811',1,'EPSG','1763');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','7811',2,'EPSG','15958');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','7965',1,'EPSG','7963');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','7965',2,'EPSG','7964');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','7967',1,'EPSG','7963');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','7967',2,'EPSG','7966');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','7973',1,'EPSG','7972');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','7973',2,'EPSG','7969');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','7974',1,'EPSG','7972');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','7974',2,'EPSG','7970');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','7975',1,'EPSG','7972');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','7975',2,'EPSG','7971');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','7983',1,'EPSG','7982');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','7983',2,'EPSG','7977');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','7986',1,'EPSG','7980');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','7986',2,'EPSG','7984');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','7987',1,'EPSG','7980');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','7987',2,'EPSG','7984');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','7987',3,'EPSG','7985');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8047',1,'EPSG','1147');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8047',2,'EPSG','1146');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8094',1,'EPSG','1763');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8094',2,'EPSG','1193');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8174',1,'EPSG','1755');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8174',2,'EPSG','1125');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8175',1,'EPSG','1262');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8175',2,'EPSG','1169');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8176',1,'EPSG','1265');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8176',2,'EPSG','1227');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8178',1,'EPSG','1759');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8178',2,'EPSG','1123');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8183',1,'EPSG','1273');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8183',2,'EPSG','1149');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8186',1,'EPSG','1763');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8186',2,'EPSG','1276');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8188',1,'EPSG','1763');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8188',2,'EPSG','1277');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8190',1,'EPSG','1278');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8190',2,'EPSG','1150');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8192',1,'EPSG','1279');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8192',2,'EPSG','1150');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8194',1,'EPSG','1280');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8194',2,'EPSG','1150');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8195',1,'EPSG','1437');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8195',2,'EPSG','1149');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8199',1,'EPSG','1274');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8199',2,'EPSG','1283');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8211',1,'EPSG','1266');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8211',2,'EPSG','1294');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8215',1,'EPSG','1297');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8215',2,'EPSG','1302');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8217',1,'EPSG','1298');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8217',2,'EPSG','1302');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8219',1,'EPSG','1299');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8219',2,'EPSG','1302');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8221',1,'EPSG','1300');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8221',2,'EPSG','1302');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8223',1,'EPSG','1301');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8223',2,'EPSG','1302');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8234',1,'EPSG','1309');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8234',2,'EPSG','1149');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8236',1,'EPSG','1310');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8236',2,'EPSG','1149');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8243',1,'EPSG','1312');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8243',2,'EPSG','1188');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8245',1,'EPSG','1313');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8245',2,'EPSG','1188');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8263',1,'EPSG','1757');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8263',2,'EPSG','1306');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8363',1,'EPSG','8361');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8363',2,'EPSG','8362');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8386',1,'EPSG','1454');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8386',2,'EPSG','1188');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8388',1,'EPSG','1455');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8388',2,'EPSG','1188');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8390',1,'EPSG','1456');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8390',2,'EPSG','1188');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8392',1,'EPSG','1457');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8392',2,'EPSG','1188');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8394',1,'EPSG','1451');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8394',2,'EPSG','1188');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8396',1,'EPSG','1458');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8396',2,'EPSG','1150');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8398',1,'EPSG','1459');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8398',2,'EPSG','1150');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8400',1,'EPSG','1460');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8400',2,'EPSG','1150');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8402',1,'EPSG','1461');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8402',2,'EPSG','1188');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8404',1,'EPSG','1462');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8404',2,'EPSG','1188');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8406',1,'EPSG','1463');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8406',2,'EPSG','1188');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8408',1,'EPSG','1464');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8408',2,'EPSG','1150');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8418',1,'EPSG','1472');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8418',2,'EPSG','1473');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8419',1,'EPSG','1599');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8419',2,'EPSG','1473');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8420',1,'EPSG','1600');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8420',2,'EPSG','1473');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8421',1,'EPSG','1601');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8421',2,'EPSG','1473');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8422',1,'EPSG','1602');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8422',2,'EPSG','1473');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8442',1,'EPSG','8365');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8442',2,'EPSG','8364');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8443',1,'EPSG','8364');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8443',2,'EPSG','8367');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8453',1,'EPSG','1506');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8453',2,'EPSG','1150');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8454',1,'EPSG','1507');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8454',2,'EPSG','1150');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8457',1,'EPSG','1509');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8457',2,'EPSG','1511');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8460',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8460',2,'EPSG','1474');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8461',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8461',2,'EPSG','1475');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8462',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8462',2,'EPSG','1476');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8463',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8463',2,'EPSG','1477');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8464',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8464',2,'EPSG','1478');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8465',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8465',2,'EPSG','1479');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8466',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8466',2,'EPSG','1480');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8467',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8467',2,'EPSG','1481');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8468',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8468',2,'EPSG','1482');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8469',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8469',2,'EPSG','1483');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8470',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8470',2,'EPSG','1484');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8471',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8471',2,'EPSG','1485');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8472',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8472',2,'EPSG','1486');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8473',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8473',2,'EPSG','1487');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8474',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8474',2,'EPSG','1488');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8475',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8475',2,'EPSG','1489');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8476',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8476',2,'EPSG','1490');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8477',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8477',2,'EPSG','1491');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8478',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8478',2,'EPSG','1492');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8479',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8479',2,'EPSG','1493');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8480',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8480',2,'EPSG','1494');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8481',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8481',2,'EPSG','1495');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8482',1,'EPSG','1747');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8482',2,'EPSG','1496');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8483',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8483',2,'EPSG','1497');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8484',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8484',2,'EPSG','1498');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8485',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8485',2,'EPSG','1499');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8486',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8486',2,'EPSG','1500');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8487',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8487',2,'EPSG','1501');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8488',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8488',2,'EPSG','1502');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8489',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8489',2,'EPSG','1503');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8496',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8496',2,'EPSG','1515');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8497',1,'EPSG','1243');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8497',2,'EPSG','1515');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8508',1,'EPSG','1454');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8508',2,'EPSG','1520');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8509',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8509',2,'EPSG','1521');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8510',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8510',2,'EPSG','1522');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8511',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8511',2,'EPSG','1523');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8512',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8512',2,'EPSG','1524');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8513',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8513',2,'EPSG','1525');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8514',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8514',2,'EPSG','1526');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8517',1,'EPSG','1528');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8517',2,'EPSG','1527');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8530',1,'EPSG','1539');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8530',2,'EPSG','1540');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8532',1,'EPSG','1541');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8532',2,'EPSG','1240');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8537',1,'EPSG','1545');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8537',2,'EPSG','1237');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8553',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8553',2,'EPSG','1553');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8554',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8554',2,'EPSG','1554');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8560',1,'EPSG','1559');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8560',2,'EPSG','1150');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8562',1,'EPSG','1560');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8562',2,'EPSG','1240');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8563',1,'EPSG','1568');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8563',2,'EPSG','1565');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8564',1,'EPSG','1576');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8564',2,'EPSG','1473');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8565',1,'EPSG','1574');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8565',2,'EPSG','1188');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8566',1,'EPSG','1572');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8566',2,'EPSG','1188');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8568',1,'EPSG','1584');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8568',2,'EPSG','1240');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8569',1,'EPSG','1588');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8569',2,'EPSG','1149');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8571',1,'EPSG','1570');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8571',2,'EPSG','1240');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8572',1,'EPSG','1571');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8572',2,'EPSG','1149');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8573',1,'EPSG','1591');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8573',2,'EPSG','1149');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8574',1,'EPSG','1578');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8574',2,'EPSG','1580');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8575',1,'EPSG','1579');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8575',2,'EPSG','1580');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8576',1,'EPSG','1594');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8576',2,'EPSG','1150');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8577',1,'EPSG','1595');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8577',2,'EPSG','1150');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8578',1,'EPSG','1596');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8578',2,'EPSG','1150');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8579',1,'EPSG','1593');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8579',2,'EPSG','1150');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8580',1,'EPSG','1611');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8580',2,'EPSG','1149');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8581',1,'EPSG','1616');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8581',2,'EPSG','1237');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8582',1,'EPSG','1454');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8582',2,'EPSG','1741');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8583',1,'EPSG','1461');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8583',2,'EPSG','1731');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8584',1,'EPSG','1313');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8584',2,'EPSG','1752');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8585',1,'EPSG','1313');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8585',2,'EPSG','1702');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8586',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8586',2,'EPSG','1704');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8587',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8587',2,'EPSG','1705');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8588',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8588',2,'EPSG','1706');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8589',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8589',2,'EPSG','1707');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8590',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8590',2,'EPSG','1717');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8591',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8591',2,'EPSG','1728');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8592',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8592',2,'EPSG','1708');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8593',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8593',2,'EPSG','1739');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8594',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8594',2,'EPSG','1750');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8595',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8595',2,'EPSG','1712');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8596',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8596',2,'EPSG','1714');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8597',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8597',2,'EPSG','1713');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8598',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8598',2,'EPSG','1748');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8599',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8599',2,'EPSG','1742');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8600',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8600',2,'EPSG','1709');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8601',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8601',2,'EPSG','1743');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8602',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8602',2,'EPSG','1718');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8603',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8603',2,'EPSG','1719');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8604',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8604',2,'EPSG','1721');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8605',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8605',2,'EPSG','1720');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8606',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8606',2,'EPSG','1725');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8607',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8607',2,'EPSG','1722');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8608',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8608',2,'EPSG','1710');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8609',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8609',2,'EPSG','1723');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8610',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8610',2,'EPSG','1711');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8611',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8611',2,'EPSG','1715');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8612',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8612',2,'EPSG','1716');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8613',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8613',2,'EPSG','1724');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8614',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8614',2,'EPSG','1744');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8615',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8615',2,'EPSG','1749');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8616',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8616',2,'EPSG','1726');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8617',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8617',2,'EPSG','1727');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8618',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8618',2,'EPSG','1729');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8619',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8619',2,'EPSG','1745');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8620',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8620',2,'EPSG','1730');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8621',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8621',2,'EPSG','1737');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8622',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8622',2,'EPSG','1732');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8623',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8623',2,'EPSG','1733');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8624',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8624',2,'EPSG','1734');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8625',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8625',2,'EPSG','1735');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8626',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8626',2,'EPSG','1746');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8627',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8627',2,'EPSG','1736');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8628',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8628',2,'EPSG','1747');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8629',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8629',2,'EPSG','1738');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8630',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8630',2,'EPSG','1740');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8631',1,'EPSG','1805');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8631',2,'EPSG','1240');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8632',1,'EPSG','1806');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8632',2,'EPSG','1240');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8633',1,'EPSG','1828');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8633',2,'EPSG','1238');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8634',1,'EPSG','1839');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8634',2,'EPSG','1240');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8635',1,'EPSG','1313');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8635',2,'EPSG','1849');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8636',1,'EPSG','1881');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8636',2,'EPSG','1130');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8637',1,'EPSG','1756');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8637',2,'EPSG','1944');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8638',1,'EPSG','1260');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8638',2,'EPSG','1837');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8639',1,'EPSG','1762');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8639',2,'EPSG','1654');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8640',1,'EPSG','1882');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8640',2,'EPSG','1253');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8641',1,'EPSG','1883');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8641',2,'EPSG','1897');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8642',1,'EPSG','1884');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8642',2,'EPSG','1623');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8643',1,'EPSG','1891');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8643',2,'EPSG','1272');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8644',1,'EPSG','1761');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8644',2,'EPSG','1891');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8644',3,'EPSG','1272');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8645',1,'EPSG','1757');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8645',2,'EPSG','1618');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8646',1,'EPSG','1902');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8646',2,'EPSG','1240');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8647',1,'EPSG','1313');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8647',2,'EPSG','1950');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8647',3,'EPSG','1946');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8648',1,'EPSG','1991');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8648',2,'EPSG','1986');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8649',1,'EPSG','1991');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8649',2,'EPSG','1990');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8650',1,'EPSG','1071');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8650',2,'EPSG','1073');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8651',1,'EPSG','1063');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8651',2,'EPSG','1065');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8652',1,'EPSG','1064');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8652',2,'EPSG','1065');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8655',1,'EPSG','1902');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8655',2,'EPSG','1240');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8656',1,'EPSG','15790');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8656',2,'EPSG','1240');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8657',1,'EPSG','15792');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8657',2,'EPSG','1240');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8659',1,'EPSG','15896');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','8659',2,'EPSG','1158');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','9103',1,'EPSG','1241');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','9103',2,'EPSG','8971');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','9103',3,'EPSG','7807');
INSERT INTO "concatenated_operation_step" VALUES('EPSG','9103',4,'EPSG','7790');
File diff suppressed because it is too large Load Diff
-165
View File
@@ -1,165 +0,0 @@
--- This file has been generated by scripts/build_db.py. DO NOT EDIT !
CREATE TRIGGER conversion_method_check_insert_trigger
INSTEAD OF INSERT ON conversion
BEGIN
SELECT RAISE(ABORT, 'insert on conversion violates constraint: bad parameters for Lambert Conic Conformal (2SP)')
WHERE NEW.deprecated != 1 AND NEW.method_auth_name = 'EPSG' AND NEW.method_code = '9802' AND (NEW.method_name != 'Lambert Conic Conformal (2SP)' OR NEW.param1_auth_name != 'EPSG' OR NEW.param1_code != '8821' OR NEW.param1_name != 'Latitude of false origin' OR NEW.param1_value IS NULL OR NEW.param1_uom_auth_name IS NULL OR NEW.param1_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param1_uom_auth_name AND code = NEW.param1_uom_code) != 'angle' OR NEW.param2_auth_name != 'EPSG' OR NEW.param2_code != '8822' OR NEW.param2_name != 'Longitude of false origin' OR NEW.param2_value IS NULL OR NEW.param2_uom_auth_name IS NULL OR NEW.param2_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param2_uom_auth_name AND code = NEW.param2_uom_code) != 'angle' OR NEW.param3_auth_name != 'EPSG' OR NEW.param3_code != '8823' OR NEW.param3_name != 'Latitude of 1st standard parallel' OR NEW.param3_value IS NULL OR NEW.param3_uom_auth_name IS NULL OR NEW.param3_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param3_uom_auth_name AND code = NEW.param3_uom_code) != 'angle' OR NEW.param4_auth_name != 'EPSG' OR NEW.param4_code != '8824' OR NEW.param4_name != 'Latitude of 2nd standard parallel' OR NEW.param4_value IS NULL OR NEW.param4_uom_auth_name IS NULL OR NEW.param4_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param4_uom_auth_name AND code = NEW.param4_uom_code) != 'angle' OR NEW.param5_auth_name != 'EPSG' OR NEW.param5_code != '8826' OR NEW.param5_name != 'Easting at false origin' OR NEW.param5_value IS NULL OR NEW.param5_uom_auth_name IS NULL OR NEW.param5_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param5_uom_auth_name AND code = NEW.param5_uom_code) != 'length' OR NEW.param6_auth_name != 'EPSG' OR NEW.param6_code != '8827' OR NEW.param6_name != 'Northing at false origin' OR NEW.param6_value IS NULL OR NEW.param6_uom_auth_name IS NULL OR NEW.param6_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param6_uom_auth_name AND code = NEW.param6_uom_code) != 'length' OR NEW.param7_auth_name IS NOT NULL OR NEW.param7_code IS NOT NULL OR NEW.param7_name IS NOT NULL OR NEW.param7_value IS NOT NULL OR NEW.param7_uom_auth_name IS NOT NULL OR NEW.param7_uom_code IS NOT NULL);
SELECT RAISE(ABORT, 'insert on conversion violates constraint: bad parameters for Transverse Mercator')
WHERE NEW.deprecated != 1 AND NEW.method_auth_name = 'EPSG' AND NEW.method_code = '9807' AND (NEW.method_name != 'Transverse Mercator' OR NEW.param1_auth_name != 'EPSG' OR NEW.param1_code != '8801' OR NEW.param1_name != 'Latitude of natural origin' OR NEW.param1_value IS NULL OR NEW.param1_uom_auth_name IS NULL OR NEW.param1_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param1_uom_auth_name AND code = NEW.param1_uom_code) != 'angle' OR NEW.param2_auth_name != 'EPSG' OR NEW.param2_code != '8802' OR NEW.param2_name != 'Longitude of natural origin' OR NEW.param2_value IS NULL OR NEW.param2_uom_auth_name IS NULL OR NEW.param2_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param2_uom_auth_name AND code = NEW.param2_uom_code) != 'angle' OR NEW.param3_auth_name != 'EPSG' OR NEW.param3_code != '8805' OR NEW.param3_name != 'Scale factor at natural origin' OR NEW.param3_value IS NULL OR NEW.param3_uom_auth_name IS NULL OR NEW.param3_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param3_uom_auth_name AND code = NEW.param3_uom_code) != 'scale' OR NEW.param4_auth_name != 'EPSG' OR NEW.param4_code != '8806' OR NEW.param4_name != 'False easting' OR NEW.param4_value IS NULL OR NEW.param4_uom_auth_name IS NULL OR NEW.param4_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param4_uom_auth_name AND code = NEW.param4_uom_code) != 'length' OR NEW.param5_auth_name != 'EPSG' OR NEW.param5_code != '8807' OR NEW.param5_name != 'False northing' OR NEW.param5_value IS NULL OR NEW.param5_uom_auth_name IS NULL OR NEW.param5_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param5_uom_auth_name AND code = NEW.param5_uom_code) != 'length' OR NEW.param6_auth_name IS NOT NULL OR NEW.param6_code IS NOT NULL OR NEW.param6_name IS NOT NULL OR NEW.param6_value IS NOT NULL OR NEW.param6_uom_auth_name IS NOT NULL OR NEW.param6_uom_code IS NOT NULL OR NEW.param7_auth_name IS NOT NULL OR NEW.param7_code IS NOT NULL OR NEW.param7_name IS NOT NULL OR NEW.param7_value IS NOT NULL OR NEW.param7_uom_auth_name IS NOT NULL OR NEW.param7_uom_code IS NOT NULL);
SELECT RAISE(ABORT, 'insert on conversion violates constraint: bad parameters for Mercator (variant A)')
WHERE NEW.deprecated != 1 AND NEW.method_auth_name = 'EPSG' AND NEW.method_code = '9804' AND (NEW.method_name != 'Mercator (variant A)' OR NEW.param1_auth_name != 'EPSG' OR NEW.param1_code != '8801' OR NEW.param1_name != 'Latitude of natural origin' OR NEW.param1_value IS NULL OR NEW.param1_uom_auth_name IS NULL OR NEW.param1_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param1_uom_auth_name AND code = NEW.param1_uom_code) != 'angle' OR NEW.param2_auth_name != 'EPSG' OR NEW.param2_code != '8802' OR NEW.param2_name != 'Longitude of natural origin' OR NEW.param2_value IS NULL OR NEW.param2_uom_auth_name IS NULL OR NEW.param2_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param2_uom_auth_name AND code = NEW.param2_uom_code) != 'angle' OR NEW.param3_auth_name != 'EPSG' OR NEW.param3_code != '8805' OR NEW.param3_name != 'Scale factor at natural origin' OR NEW.param3_value IS NULL OR NEW.param3_uom_auth_name IS NULL OR NEW.param3_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param3_uom_auth_name AND code = NEW.param3_uom_code) != 'scale' OR NEW.param4_auth_name != 'EPSG' OR NEW.param4_code != '8806' OR NEW.param4_name != 'False easting' OR NEW.param4_value IS NULL OR NEW.param4_uom_auth_name IS NULL OR NEW.param4_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param4_uom_auth_name AND code = NEW.param4_uom_code) != 'length' OR NEW.param5_auth_name != 'EPSG' OR NEW.param5_code != '8807' OR NEW.param5_name != 'False northing' OR NEW.param5_value IS NULL OR NEW.param5_uom_auth_name IS NULL OR NEW.param5_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param5_uom_auth_name AND code = NEW.param5_uom_code) != 'length' OR NEW.param6_auth_name IS NOT NULL OR NEW.param6_code IS NOT NULL OR NEW.param6_name IS NOT NULL OR NEW.param6_value IS NOT NULL OR NEW.param6_uom_auth_name IS NOT NULL OR NEW.param6_uom_code IS NOT NULL OR NEW.param7_auth_name IS NOT NULL OR NEW.param7_code IS NOT NULL OR NEW.param7_name IS NOT NULL OR NEW.param7_value IS NOT NULL OR NEW.param7_uom_auth_name IS NOT NULL OR NEW.param7_uom_code IS NOT NULL);
SELECT RAISE(ABORT, 'insert on conversion violates constraint: bad parameters for Popular Visualisation Pseudo Mercator')
WHERE NEW.deprecated != 1 AND NEW.method_auth_name = 'EPSG' AND NEW.method_code = '1024' AND (NEW.method_name != 'Popular Visualisation Pseudo Mercator' OR NEW.param1_auth_name != 'EPSG' OR NEW.param1_code != '8801' OR NEW.param1_name != 'Latitude of natural origin' OR NEW.param1_value IS NULL OR NEW.param1_uom_auth_name IS NULL OR NEW.param1_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param1_uom_auth_name AND code = NEW.param1_uom_code) != 'angle' OR NEW.param2_auth_name != 'EPSG' OR NEW.param2_code != '8802' OR NEW.param2_name != 'Longitude of natural origin' OR NEW.param2_value IS NULL OR NEW.param2_uom_auth_name IS NULL OR NEW.param2_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param2_uom_auth_name AND code = NEW.param2_uom_code) != 'angle' OR NEW.param3_auth_name != 'EPSG' OR NEW.param3_code != '8806' OR NEW.param3_name != 'False easting' OR NEW.param3_value IS NULL OR NEW.param3_uom_auth_name IS NULL OR NEW.param3_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param3_uom_auth_name AND code = NEW.param3_uom_code) != 'length' OR NEW.param4_auth_name != 'EPSG' OR NEW.param4_code != '8807' OR NEW.param4_name != 'False northing' OR NEW.param4_value IS NULL OR NEW.param4_uom_auth_name IS NULL OR NEW.param4_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param4_uom_auth_name AND code = NEW.param4_uom_code) != 'length' OR NEW.param5_auth_name IS NOT NULL OR NEW.param5_code IS NOT NULL OR NEW.param5_name IS NOT NULL OR NEW.param5_value IS NOT NULL OR NEW.param5_uom_auth_name IS NOT NULL OR NEW.param5_uom_code IS NOT NULL OR NEW.param6_auth_name IS NOT NULL OR NEW.param6_code IS NOT NULL OR NEW.param6_name IS NOT NULL OR NEW.param6_value IS NOT NULL OR NEW.param6_uom_auth_name IS NOT NULL OR NEW.param6_uom_code IS NOT NULL OR NEW.param7_auth_name IS NOT NULL OR NEW.param7_code IS NOT NULL OR NEW.param7_name IS NOT NULL OR NEW.param7_value IS NOT NULL OR NEW.param7_uom_auth_name IS NOT NULL OR NEW.param7_uom_code IS NOT NULL);
SELECT RAISE(ABORT, 'insert on conversion violates constraint: bad parameters for Lambert Azimuthal Equal Area (Spherical)')
WHERE NEW.deprecated != 1 AND NEW.method_auth_name = 'EPSG' AND NEW.method_code = '1027' AND (NEW.method_name != 'Lambert Azimuthal Equal Area (Spherical)' OR NEW.param1_auth_name != 'EPSG' OR NEW.param1_code != '8801' OR NEW.param1_name != 'Latitude of natural origin' OR NEW.param1_value IS NULL OR NEW.param1_uom_auth_name IS NULL OR NEW.param1_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param1_uom_auth_name AND code = NEW.param1_uom_code) != 'angle' OR NEW.param2_auth_name != 'EPSG' OR NEW.param2_code != '8802' OR NEW.param2_name != 'Longitude of natural origin' OR NEW.param2_value IS NULL OR NEW.param2_uom_auth_name IS NULL OR NEW.param2_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param2_uom_auth_name AND code = NEW.param2_uom_code) != 'angle' OR NEW.param3_auth_name != 'EPSG' OR NEW.param3_code != '8806' OR NEW.param3_name != 'False easting' OR NEW.param3_value IS NULL OR NEW.param3_uom_auth_name IS NULL OR NEW.param3_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param3_uom_auth_name AND code = NEW.param3_uom_code) != 'length' OR NEW.param4_auth_name != 'EPSG' OR NEW.param4_code != '8807' OR NEW.param4_name != 'False northing' OR NEW.param4_value IS NULL OR NEW.param4_uom_auth_name IS NULL OR NEW.param4_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param4_uom_auth_name AND code = NEW.param4_uom_code) != 'length' OR NEW.param5_auth_name IS NOT NULL OR NEW.param5_code IS NOT NULL OR NEW.param5_name IS NOT NULL OR NEW.param5_value IS NOT NULL OR NEW.param5_uom_auth_name IS NOT NULL OR NEW.param5_uom_code IS NOT NULL OR NEW.param6_auth_name IS NOT NULL OR NEW.param6_code IS NOT NULL OR NEW.param6_name IS NOT NULL OR NEW.param6_value IS NOT NULL OR NEW.param6_uom_auth_name IS NOT NULL OR NEW.param6_uom_code IS NOT NULL OR NEW.param7_auth_name IS NOT NULL OR NEW.param7_code IS NOT NULL OR NEW.param7_name IS NOT NULL OR NEW.param7_value IS NOT NULL OR NEW.param7_uom_auth_name IS NOT NULL OR NEW.param7_uom_code IS NOT NULL);
SELECT RAISE(ABORT, 'insert on conversion violates constraint: bad parameters for Equidistant Cylindrical')
WHERE NEW.deprecated != 1 AND NEW.method_auth_name = 'EPSG' AND NEW.method_code = '1028' AND (NEW.method_name != 'Equidistant Cylindrical' OR NEW.param1_auth_name != 'EPSG' OR NEW.param1_code != '8823' OR NEW.param1_name != 'Latitude of 1st standard parallel' OR NEW.param1_value IS NULL OR NEW.param1_uom_auth_name IS NULL OR NEW.param1_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param1_uom_auth_name AND code = NEW.param1_uom_code) != 'angle' OR NEW.param2_auth_name != 'EPSG' OR NEW.param2_code != '8802' OR NEW.param2_name != 'Longitude of natural origin' OR NEW.param2_value IS NULL OR NEW.param2_uom_auth_name IS NULL OR NEW.param2_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param2_uom_auth_name AND code = NEW.param2_uom_code) != 'angle' OR NEW.param3_auth_name != 'EPSG' OR NEW.param3_code != '8806' OR NEW.param3_name != 'False easting' OR NEW.param3_value IS NULL OR NEW.param3_uom_auth_name IS NULL OR NEW.param3_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param3_uom_auth_name AND code = NEW.param3_uom_code) != 'length' OR NEW.param4_auth_name != 'EPSG' OR NEW.param4_code != '8807' OR NEW.param4_name != 'False northing' OR NEW.param4_value IS NULL OR NEW.param4_uom_auth_name IS NULL OR NEW.param4_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param4_uom_auth_name AND code = NEW.param4_uom_code) != 'length' OR NEW.param5_auth_name IS NOT NULL OR NEW.param5_code IS NOT NULL OR NEW.param5_name IS NOT NULL OR NEW.param5_value IS NOT NULL OR NEW.param5_uom_auth_name IS NOT NULL OR NEW.param5_uom_code IS NOT NULL OR NEW.param6_auth_name IS NOT NULL OR NEW.param6_code IS NOT NULL OR NEW.param6_name IS NOT NULL OR NEW.param6_value IS NOT NULL OR NEW.param6_uom_auth_name IS NOT NULL OR NEW.param6_uom_code IS NOT NULL OR NEW.param7_auth_name IS NOT NULL OR NEW.param7_code IS NOT NULL OR NEW.param7_name IS NOT NULL OR NEW.param7_value IS NOT NULL OR NEW.param7_uom_auth_name IS NOT NULL OR NEW.param7_uom_code IS NOT NULL);
SELECT RAISE(ABORT, 'insert on conversion violates constraint: bad parameters for Equidistant Cylindrical (Spherical)')
WHERE NEW.deprecated != 1 AND NEW.method_auth_name = 'EPSG' AND NEW.method_code = '1029' AND (NEW.method_name != 'Equidistant Cylindrical (Spherical)' OR NEW.param1_auth_name != 'EPSG' OR NEW.param1_code != '8823' OR NEW.param1_name != 'Latitude of 1st standard parallel' OR NEW.param1_value IS NULL OR NEW.param1_uom_auth_name IS NULL OR NEW.param1_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param1_uom_auth_name AND code = NEW.param1_uom_code) != 'angle' OR NEW.param2_auth_name != 'EPSG' OR NEW.param2_code != '8802' OR NEW.param2_name != 'Longitude of natural origin' OR NEW.param2_value IS NULL OR NEW.param2_uom_auth_name IS NULL OR NEW.param2_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param2_uom_auth_name AND code = NEW.param2_uom_code) != 'angle' OR NEW.param3_auth_name != 'EPSG' OR NEW.param3_code != '8806' OR NEW.param3_name != 'False easting' OR NEW.param3_value IS NULL OR NEW.param3_uom_auth_name IS NULL OR NEW.param3_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param3_uom_auth_name AND code = NEW.param3_uom_code) != 'length' OR NEW.param4_auth_name != 'EPSG' OR NEW.param4_code != '8807' OR NEW.param4_name != 'False northing' OR NEW.param4_value IS NULL OR NEW.param4_uom_auth_name IS NULL OR NEW.param4_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param4_uom_auth_name AND code = NEW.param4_uom_code) != 'length' OR NEW.param5_auth_name IS NOT NULL OR NEW.param5_code IS NOT NULL OR NEW.param5_name IS NOT NULL OR NEW.param5_value IS NOT NULL OR NEW.param5_uom_auth_name IS NOT NULL OR NEW.param5_uom_code IS NOT NULL OR NEW.param6_auth_name IS NOT NULL OR NEW.param6_code IS NOT NULL OR NEW.param6_name IS NOT NULL OR NEW.param6_value IS NOT NULL OR NEW.param6_uom_auth_name IS NOT NULL OR NEW.param6_uom_code IS NOT NULL OR NEW.param7_auth_name IS NOT NULL OR NEW.param7_code IS NOT NULL OR NEW.param7_name IS NOT NULL OR NEW.param7_value IS NOT NULL OR NEW.param7_uom_auth_name IS NOT NULL OR NEW.param7_uom_code IS NOT NULL);
SELECT RAISE(ABORT, 'insert on conversion violates constraint: bad parameters for Cassini-Soldner')
WHERE NEW.deprecated != 1 AND NEW.method_auth_name = 'EPSG' AND NEW.method_code = '9806' AND (NEW.method_name != 'Cassini-Soldner' OR NEW.param1_auth_name != 'EPSG' OR NEW.param1_code != '8801' OR NEW.param1_name != 'Latitude of natural origin' OR NEW.param1_value IS NULL OR NEW.param1_uom_auth_name IS NULL OR NEW.param1_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param1_uom_auth_name AND code = NEW.param1_uom_code) != 'angle' OR NEW.param2_auth_name != 'EPSG' OR NEW.param2_code != '8802' OR NEW.param2_name != 'Longitude of natural origin' OR NEW.param2_value IS NULL OR NEW.param2_uom_auth_name IS NULL OR NEW.param2_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param2_uom_auth_name AND code = NEW.param2_uom_code) != 'angle' OR NEW.param3_auth_name != 'EPSG' OR NEW.param3_code != '8806' OR NEW.param3_name != 'False easting' OR NEW.param3_value IS NULL OR NEW.param3_uom_auth_name IS NULL OR NEW.param3_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param3_uom_auth_name AND code = NEW.param3_uom_code) != 'length' OR NEW.param4_auth_name != 'EPSG' OR NEW.param4_code != '8807' OR NEW.param4_name != 'False northing' OR NEW.param4_value IS NULL OR NEW.param4_uom_auth_name IS NULL OR NEW.param4_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param4_uom_auth_name AND code = NEW.param4_uom_code) != 'length' OR NEW.param5_auth_name IS NOT NULL OR NEW.param5_code IS NOT NULL OR NEW.param5_name IS NOT NULL OR NEW.param5_value IS NOT NULL OR NEW.param5_uom_auth_name IS NOT NULL OR NEW.param5_uom_code IS NOT NULL OR NEW.param6_auth_name IS NOT NULL OR NEW.param6_code IS NOT NULL OR NEW.param6_name IS NOT NULL OR NEW.param6_value IS NOT NULL OR NEW.param6_uom_auth_name IS NOT NULL OR NEW.param6_uom_code IS NOT NULL OR NEW.param7_auth_name IS NOT NULL OR NEW.param7_code IS NOT NULL OR NEW.param7_name IS NOT NULL OR NEW.param7_value IS NOT NULL OR NEW.param7_uom_auth_name IS NOT NULL OR NEW.param7_uom_code IS NOT NULL);
SELECT RAISE(ABORT, 'insert on conversion violates constraint: bad parameters for Bonne (South Orientated)')
WHERE NEW.deprecated != 1 AND NEW.method_auth_name = 'EPSG' AND NEW.method_code = '9828' AND (NEW.method_name != 'Bonne (South Orientated)' OR NEW.param1_auth_name != 'EPSG' OR NEW.param1_code != '8801' OR NEW.param1_name != 'Latitude of natural origin' OR NEW.param1_value IS NULL OR NEW.param1_uom_auth_name IS NULL OR NEW.param1_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param1_uom_auth_name AND code = NEW.param1_uom_code) != 'angle' OR NEW.param2_auth_name != 'EPSG' OR NEW.param2_code != '8802' OR NEW.param2_name != 'Longitude of natural origin' OR NEW.param2_value IS NULL OR NEW.param2_uom_auth_name IS NULL OR NEW.param2_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param2_uom_auth_name AND code = NEW.param2_uom_code) != 'angle' OR NEW.param3_auth_name != 'EPSG' OR NEW.param3_code != '8806' OR NEW.param3_name != 'False easting' OR NEW.param3_value IS NULL OR NEW.param3_uom_auth_name IS NULL OR NEW.param3_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param3_uom_auth_name AND code = NEW.param3_uom_code) != 'length' OR NEW.param4_auth_name != 'EPSG' OR NEW.param4_code != '8807' OR NEW.param4_name != 'False northing' OR NEW.param4_value IS NULL OR NEW.param4_uom_auth_name IS NULL OR NEW.param4_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param4_uom_auth_name AND code = NEW.param4_uom_code) != 'length' OR NEW.param5_auth_name IS NOT NULL OR NEW.param5_code IS NOT NULL OR NEW.param5_name IS NOT NULL OR NEW.param5_value IS NOT NULL OR NEW.param5_uom_auth_name IS NOT NULL OR NEW.param5_uom_code IS NOT NULL OR NEW.param6_auth_name IS NOT NULL OR NEW.param6_code IS NOT NULL OR NEW.param6_name IS NOT NULL OR NEW.param6_value IS NOT NULL OR NEW.param6_uom_auth_name IS NOT NULL OR NEW.param6_uom_code IS NOT NULL OR NEW.param7_auth_name IS NOT NULL OR NEW.param7_code IS NOT NULL OR NEW.param7_name IS NOT NULL OR NEW.param7_value IS NOT NULL OR NEW.param7_uom_auth_name IS NOT NULL OR NEW.param7_uom_code IS NOT NULL);
SELECT RAISE(ABORT, 'insert on conversion violates constraint: bad parameters for Albers Equal Area')
WHERE NEW.deprecated != 1 AND NEW.method_auth_name = 'EPSG' AND NEW.method_code = '9822' AND (NEW.method_name != 'Albers Equal Area' OR NEW.param1_auth_name != 'EPSG' OR NEW.param1_code != '8821' OR NEW.param1_name != 'Latitude of false origin' OR NEW.param1_value IS NULL OR NEW.param1_uom_auth_name IS NULL OR NEW.param1_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param1_uom_auth_name AND code = NEW.param1_uom_code) != 'angle' OR NEW.param2_auth_name != 'EPSG' OR NEW.param2_code != '8822' OR NEW.param2_name != 'Longitude of false origin' OR NEW.param2_value IS NULL OR NEW.param2_uom_auth_name IS NULL OR NEW.param2_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param2_uom_auth_name AND code = NEW.param2_uom_code) != 'angle' OR NEW.param3_auth_name != 'EPSG' OR NEW.param3_code != '8823' OR NEW.param3_name != 'Latitude of 1st standard parallel' OR NEW.param3_value IS NULL OR NEW.param3_uom_auth_name IS NULL OR NEW.param3_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param3_uom_auth_name AND code = NEW.param3_uom_code) != 'angle' OR NEW.param4_auth_name != 'EPSG' OR NEW.param4_code != '8824' OR NEW.param4_name != 'Latitude of 2nd standard parallel' OR NEW.param4_value IS NULL OR NEW.param4_uom_auth_name IS NULL OR NEW.param4_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param4_uom_auth_name AND code = NEW.param4_uom_code) != 'angle' OR NEW.param5_auth_name != 'EPSG' OR NEW.param5_code != '8826' OR NEW.param5_name != 'Easting at false origin' OR NEW.param5_value IS NULL OR NEW.param5_uom_auth_name IS NULL OR NEW.param5_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param5_uom_auth_name AND code = NEW.param5_uom_code) != 'length' OR NEW.param6_auth_name != 'EPSG' OR NEW.param6_code != '8827' OR NEW.param6_name != 'Northing at false origin' OR NEW.param6_value IS NULL OR NEW.param6_uom_auth_name IS NULL OR NEW.param6_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param6_uom_auth_name AND code = NEW.param6_uom_code) != 'length' OR NEW.param7_auth_name IS NOT NULL OR NEW.param7_code IS NOT NULL OR NEW.param7_name IS NOT NULL OR NEW.param7_value IS NOT NULL OR NEW.param7_uom_auth_name IS NOT NULL OR NEW.param7_uom_code IS NOT NULL);
SELECT RAISE(ABORT, 'insert on conversion violates constraint: bad parameters for Krovak (North Orientated)')
WHERE NEW.deprecated != 1 AND NEW.method_auth_name = 'EPSG' AND NEW.method_code = '1041' AND (NEW.method_name != 'Krovak (North Orientated)' OR NEW.param1_auth_name != 'EPSG' OR NEW.param1_code != '8811' OR NEW.param1_name != 'Latitude of projection centre' OR NEW.param1_value IS NULL OR NEW.param1_uom_auth_name IS NULL OR NEW.param1_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param1_uom_auth_name AND code = NEW.param1_uom_code) != 'angle' OR NEW.param2_auth_name != 'EPSG' OR NEW.param2_code != '8833' OR NEW.param2_name != 'Longitude of origin' OR NEW.param2_value IS NULL OR NEW.param2_uom_auth_name IS NULL OR NEW.param2_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param2_uom_auth_name AND code = NEW.param2_uom_code) != 'angle' OR NEW.param3_auth_name != 'EPSG' OR NEW.param3_code != '1036' OR NEW.param3_name != 'Co-latitude of cone axis' OR NEW.param3_value IS NULL OR NEW.param3_uom_auth_name IS NULL OR NEW.param3_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param3_uom_auth_name AND code = NEW.param3_uom_code) != 'angle' OR NEW.param4_auth_name != 'EPSG' OR NEW.param4_code != '8818' OR NEW.param4_name != 'Latitude of pseudo standard parallel' OR NEW.param4_value IS NULL OR NEW.param4_uom_auth_name IS NULL OR NEW.param4_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param4_uom_auth_name AND code = NEW.param4_uom_code) != 'angle' OR NEW.param5_auth_name != 'EPSG' OR NEW.param5_code != '8819' OR NEW.param5_name != 'Scale factor on pseudo standard parallel' OR NEW.param5_value IS NULL OR NEW.param5_uom_auth_name IS NULL OR NEW.param5_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param5_uom_auth_name AND code = NEW.param5_uom_code) != 'scale' OR NEW.param6_auth_name != 'EPSG' OR NEW.param6_code != '8806' OR NEW.param6_name != 'False easting' OR NEW.param6_value IS NULL OR NEW.param6_uom_auth_name IS NULL OR NEW.param6_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param6_uom_auth_name AND code = NEW.param6_uom_code) != 'length' OR NEW.param7_auth_name != 'EPSG' OR NEW.param7_code != '8807' OR NEW.param7_name != 'False northing' OR NEW.param7_value IS NULL OR NEW.param7_uom_auth_name IS NULL OR NEW.param7_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param7_uom_auth_name AND code = NEW.param7_uom_code) != 'length');
SELECT RAISE(ABORT, 'insert on conversion violates constraint: bad parameters for Krovak Modified')
WHERE NEW.deprecated != 1 AND NEW.method_auth_name = 'EPSG' AND NEW.method_code = '1042' AND (NEW.method_name != 'Krovak Modified' OR NEW.param1_auth_name != 'EPSG' OR NEW.param1_code != '8811' OR NEW.param1_name != 'Latitude of projection centre' OR NEW.param1_value IS NULL OR NEW.param1_uom_auth_name IS NULL OR NEW.param1_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param1_uom_auth_name AND code = NEW.param1_uom_code) != 'angle' OR NEW.param2_auth_name != 'EPSG' OR NEW.param2_code != '8833' OR NEW.param2_name != 'Longitude of origin' OR NEW.param2_value IS NULL OR NEW.param2_uom_auth_name IS NULL OR NEW.param2_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param2_uom_auth_name AND code = NEW.param2_uom_code) != 'angle' OR NEW.param3_auth_name != 'EPSG' OR NEW.param3_code != '1036' OR NEW.param3_name != 'Co-latitude of cone axis' OR NEW.param3_value IS NULL OR NEW.param3_uom_auth_name IS NULL OR NEW.param3_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param3_uom_auth_name AND code = NEW.param3_uom_code) != 'angle' OR NEW.param4_auth_name != 'EPSG' OR NEW.param4_code != '8818' OR NEW.param4_name != 'Latitude of pseudo standard parallel' OR NEW.param4_value IS NULL OR NEW.param4_uom_auth_name IS NULL OR NEW.param4_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param4_uom_auth_name AND code = NEW.param4_uom_code) != 'angle' OR NEW.param5_auth_name != 'EPSG' OR NEW.param5_code != '8819' OR NEW.param5_name != 'Scale factor on pseudo standard parallel' OR NEW.param5_value IS NULL OR NEW.param5_uom_auth_name IS NULL OR NEW.param5_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param5_uom_auth_name AND code = NEW.param5_uom_code) != 'scale' OR NEW.param6_auth_name != 'EPSG' OR NEW.param6_code != '8806' OR NEW.param6_name != 'False easting' OR NEW.param6_value IS NULL OR NEW.param6_uom_auth_name IS NULL OR NEW.param6_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param6_uom_auth_name AND code = NEW.param6_uom_code) != 'length' OR NEW.param7_auth_name != 'EPSG' OR NEW.param7_code != '8807' OR NEW.param7_name != 'False northing' OR NEW.param7_value IS NULL OR NEW.param7_uom_auth_name IS NULL OR NEW.param7_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param7_uom_auth_name AND code = NEW.param7_uom_code) != 'length');
SELECT RAISE(ABORT, 'insert on conversion violates constraint: bad parameters for Krovak Modified (North Orientated)')
WHERE NEW.deprecated != 1 AND NEW.method_auth_name = 'EPSG' AND NEW.method_code = '1043' AND (NEW.method_name != 'Krovak Modified (North Orientated)' OR NEW.param1_auth_name != 'EPSG' OR NEW.param1_code != '8811' OR NEW.param1_name != 'Latitude of projection centre' OR NEW.param1_value IS NULL OR NEW.param1_uom_auth_name IS NULL OR NEW.param1_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param1_uom_auth_name AND code = NEW.param1_uom_code) != 'angle' OR NEW.param2_auth_name != 'EPSG' OR NEW.param2_code != '8833' OR NEW.param2_name != 'Longitude of origin' OR NEW.param2_value IS NULL OR NEW.param2_uom_auth_name IS NULL OR NEW.param2_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param2_uom_auth_name AND code = NEW.param2_uom_code) != 'angle' OR NEW.param3_auth_name != 'EPSG' OR NEW.param3_code != '1036' OR NEW.param3_name != 'Co-latitude of cone axis' OR NEW.param3_value IS NULL OR NEW.param3_uom_auth_name IS NULL OR NEW.param3_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param3_uom_auth_name AND code = NEW.param3_uom_code) != 'angle' OR NEW.param4_auth_name != 'EPSG' OR NEW.param4_code != '8818' OR NEW.param4_name != 'Latitude of pseudo standard parallel' OR NEW.param4_value IS NULL OR NEW.param4_uom_auth_name IS NULL OR NEW.param4_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param4_uom_auth_name AND code = NEW.param4_uom_code) != 'angle' OR NEW.param5_auth_name != 'EPSG' OR NEW.param5_code != '8819' OR NEW.param5_name != 'Scale factor on pseudo standard parallel' OR NEW.param5_value IS NULL OR NEW.param5_uom_auth_name IS NULL OR NEW.param5_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param5_uom_auth_name AND code = NEW.param5_uom_code) != 'scale' OR NEW.param6_auth_name != 'EPSG' OR NEW.param6_code != '8806' OR NEW.param6_name != 'False easting' OR NEW.param6_value IS NULL OR NEW.param6_uom_auth_name IS NULL OR NEW.param6_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param6_uom_auth_name AND code = NEW.param6_uom_code) != 'length' OR NEW.param7_auth_name != 'EPSG' OR NEW.param7_code != '8807' OR NEW.param7_name != 'False northing' OR NEW.param7_value IS NULL OR NEW.param7_uom_auth_name IS NULL OR NEW.param7_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param7_uom_auth_name AND code = NEW.param7_uom_code) != 'length');
SELECT RAISE(ABORT, 'insert on conversion violates constraint: bad parameters for Lambert Conic Conformal (1SP)')
WHERE NEW.deprecated != 1 AND NEW.method_auth_name = 'EPSG' AND NEW.method_code = '9801' AND (NEW.method_name != 'Lambert Conic Conformal (1SP)' OR NEW.param1_auth_name != 'EPSG' OR NEW.param1_code != '8801' OR NEW.param1_name != 'Latitude of natural origin' OR NEW.param1_value IS NULL OR NEW.param1_uom_auth_name IS NULL OR NEW.param1_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param1_uom_auth_name AND code = NEW.param1_uom_code) != 'angle' OR NEW.param2_auth_name != 'EPSG' OR NEW.param2_code != '8802' OR NEW.param2_name != 'Longitude of natural origin' OR NEW.param2_value IS NULL OR NEW.param2_uom_auth_name IS NULL OR NEW.param2_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param2_uom_auth_name AND code = NEW.param2_uom_code) != 'angle' OR NEW.param3_auth_name != 'EPSG' OR NEW.param3_code != '8805' OR NEW.param3_name != 'Scale factor at natural origin' OR NEW.param3_value IS NULL OR NEW.param3_uom_auth_name IS NULL OR NEW.param3_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param3_uom_auth_name AND code = NEW.param3_uom_code) != 'scale' OR NEW.param4_auth_name != 'EPSG' OR NEW.param4_code != '8806' OR NEW.param4_name != 'False easting' OR NEW.param4_value IS NULL OR NEW.param4_uom_auth_name IS NULL OR NEW.param4_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param4_uom_auth_name AND code = NEW.param4_uom_code) != 'length' OR NEW.param5_auth_name != 'EPSG' OR NEW.param5_code != '8807' OR NEW.param5_name != 'False northing' OR NEW.param5_value IS NULL OR NEW.param5_uom_auth_name IS NULL OR NEW.param5_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param5_uom_auth_name AND code = NEW.param5_uom_code) != 'length' OR NEW.param6_auth_name IS NOT NULL OR NEW.param6_code IS NOT NULL OR NEW.param6_name IS NOT NULL OR NEW.param6_value IS NOT NULL OR NEW.param6_uom_auth_name IS NOT NULL OR NEW.param6_uom_code IS NOT NULL OR NEW.param7_auth_name IS NOT NULL OR NEW.param7_code IS NOT NULL OR NEW.param7_name IS NOT NULL OR NEW.param7_value IS NOT NULL OR NEW.param7_uom_auth_name IS NOT NULL OR NEW.param7_uom_code IS NOT NULL);
SELECT RAISE(ABORT, 'insert on conversion violates constraint: bad parameters for American Polyconic')
WHERE NEW.deprecated != 1 AND NEW.method_auth_name = 'EPSG' AND NEW.method_code = '9818' AND (NEW.method_name != 'American Polyconic' OR NEW.param1_auth_name != 'EPSG' OR NEW.param1_code != '8801' OR NEW.param1_name != 'Latitude of natural origin' OR NEW.param1_value IS NULL OR NEW.param1_uom_auth_name IS NULL OR NEW.param1_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param1_uom_auth_name AND code = NEW.param1_uom_code) != 'angle' OR NEW.param2_auth_name != 'EPSG' OR NEW.param2_code != '8802' OR NEW.param2_name != 'Longitude of natural origin' OR NEW.param2_value IS NULL OR NEW.param2_uom_auth_name IS NULL OR NEW.param2_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param2_uom_auth_name AND code = NEW.param2_uom_code) != 'angle' OR NEW.param3_auth_name != 'EPSG' OR NEW.param3_code != '8806' OR NEW.param3_name != 'False easting' OR NEW.param3_value IS NULL OR NEW.param3_uom_auth_name IS NULL OR NEW.param3_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param3_uom_auth_name AND code = NEW.param3_uom_code) != 'length' OR NEW.param4_auth_name != 'EPSG' OR NEW.param4_code != '8807' OR NEW.param4_name != 'False northing' OR NEW.param4_value IS NULL OR NEW.param4_uom_auth_name IS NULL OR NEW.param4_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param4_uom_auth_name AND code = NEW.param4_uom_code) != 'length' OR NEW.param5_auth_name IS NOT NULL OR NEW.param5_code IS NOT NULL OR NEW.param5_name IS NOT NULL OR NEW.param5_value IS NOT NULL OR NEW.param5_uom_auth_name IS NOT NULL OR NEW.param5_uom_code IS NOT NULL OR NEW.param6_auth_name IS NOT NULL OR NEW.param6_code IS NOT NULL OR NEW.param6_name IS NOT NULL OR NEW.param6_value IS NOT NULL OR NEW.param6_uom_auth_name IS NOT NULL OR NEW.param6_uom_code IS NOT NULL OR NEW.param7_auth_name IS NOT NULL OR NEW.param7_code IS NOT NULL OR NEW.param7_name IS NOT NULL OR NEW.param7_value IS NOT NULL OR NEW.param7_uom_auth_name IS NOT NULL OR NEW.param7_uom_code IS NOT NULL);
SELECT RAISE(ABORT, 'insert on conversion violates constraint: bad parameters for Polar Stereographic (variant A)')
WHERE NEW.deprecated != 1 AND NEW.method_auth_name = 'EPSG' AND NEW.method_code = '9810' AND (NEW.method_name != 'Polar Stereographic (variant A)' OR NEW.param1_auth_name != 'EPSG' OR NEW.param1_code != '8801' OR NEW.param1_name != 'Latitude of natural origin' OR NEW.param1_value IS NULL OR NEW.param1_uom_auth_name IS NULL OR NEW.param1_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param1_uom_auth_name AND code = NEW.param1_uom_code) != 'angle' OR NEW.param2_auth_name != 'EPSG' OR NEW.param2_code != '8802' OR NEW.param2_name != 'Longitude of natural origin' OR NEW.param2_value IS NULL OR NEW.param2_uom_auth_name IS NULL OR NEW.param2_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param2_uom_auth_name AND code = NEW.param2_uom_code) != 'angle' OR NEW.param3_auth_name != 'EPSG' OR NEW.param3_code != '8805' OR NEW.param3_name != 'Scale factor at natural origin' OR NEW.param3_value IS NULL OR NEW.param3_uom_auth_name IS NULL OR NEW.param3_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param3_uom_auth_name AND code = NEW.param3_uom_code) != 'scale' OR NEW.param4_auth_name != 'EPSG' OR NEW.param4_code != '8806' OR NEW.param4_name != 'False easting' OR NEW.param4_value IS NULL OR NEW.param4_uom_auth_name IS NULL OR NEW.param4_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param4_uom_auth_name AND code = NEW.param4_uom_code) != 'length' OR NEW.param5_auth_name != 'EPSG' OR NEW.param5_code != '8807' OR NEW.param5_name != 'False northing' OR NEW.param5_value IS NULL OR NEW.param5_uom_auth_name IS NULL OR NEW.param5_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param5_uom_auth_name AND code = NEW.param5_uom_code) != 'length' OR NEW.param6_auth_name IS NOT NULL OR NEW.param6_code IS NOT NULL OR NEW.param6_name IS NOT NULL OR NEW.param6_value IS NOT NULL OR NEW.param6_uom_auth_name IS NOT NULL OR NEW.param6_uom_code IS NOT NULL OR NEW.param7_auth_name IS NOT NULL OR NEW.param7_code IS NOT NULL OR NEW.param7_name IS NOT NULL OR NEW.param7_value IS NOT NULL OR NEW.param7_uom_auth_name IS NOT NULL OR NEW.param7_uom_code IS NOT NULL);
SELECT RAISE(ABORT, 'insert on conversion violates constraint: bad parameters for Krovak')
WHERE NEW.deprecated != 1 AND NEW.method_auth_name = 'EPSG' AND NEW.method_code = '9819' AND (NEW.method_name != 'Krovak' OR NEW.param1_auth_name != 'EPSG' OR NEW.param1_code != '8811' OR NEW.param1_name != 'Latitude of projection centre' OR NEW.param1_value IS NULL OR NEW.param1_uom_auth_name IS NULL OR NEW.param1_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param1_uom_auth_name AND code = NEW.param1_uom_code) != 'angle' OR NEW.param2_auth_name != 'EPSG' OR NEW.param2_code != '8833' OR NEW.param2_name != 'Longitude of origin' OR NEW.param2_value IS NULL OR NEW.param2_uom_auth_name IS NULL OR NEW.param2_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param2_uom_auth_name AND code = NEW.param2_uom_code) != 'angle' OR NEW.param3_auth_name != 'EPSG' OR NEW.param3_code != '1036' OR NEW.param3_name != 'Co-latitude of cone axis' OR NEW.param3_value IS NULL OR NEW.param3_uom_auth_name IS NULL OR NEW.param3_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param3_uom_auth_name AND code = NEW.param3_uom_code) != 'angle' OR NEW.param4_auth_name != 'EPSG' OR NEW.param4_code != '8818' OR NEW.param4_name != 'Latitude of pseudo standard parallel' OR NEW.param4_value IS NULL OR NEW.param4_uom_auth_name IS NULL OR NEW.param4_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param4_uom_auth_name AND code = NEW.param4_uom_code) != 'angle' OR NEW.param5_auth_name != 'EPSG' OR NEW.param5_code != '8819' OR NEW.param5_name != 'Scale factor on pseudo standard parallel' OR NEW.param5_value IS NULL OR NEW.param5_uom_auth_name IS NULL OR NEW.param5_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param5_uom_auth_name AND code = NEW.param5_uom_code) != 'scale' OR NEW.param6_auth_name != 'EPSG' OR NEW.param6_code != '8806' OR NEW.param6_name != 'False easting' OR NEW.param6_value IS NULL OR NEW.param6_uom_auth_name IS NULL OR NEW.param6_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param6_uom_auth_name AND code = NEW.param6_uom_code) != 'length' OR NEW.param7_auth_name != 'EPSG' OR NEW.param7_code != '8807' OR NEW.param7_name != 'False northing' OR NEW.param7_value IS NULL OR NEW.param7_uom_auth_name IS NULL OR NEW.param7_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param7_uom_auth_name AND code = NEW.param7_uom_code) != 'length');
SELECT RAISE(ABORT, 'insert on conversion violates constraint: bad parameters for Oblique Stereographic')
WHERE NEW.deprecated != 1 AND NEW.method_auth_name = 'EPSG' AND NEW.method_code = '9809' AND (NEW.method_name != 'Oblique Stereographic' OR NEW.param1_auth_name != 'EPSG' OR NEW.param1_code != '8801' OR NEW.param1_name != 'Latitude of natural origin' OR NEW.param1_value IS NULL OR NEW.param1_uom_auth_name IS NULL OR NEW.param1_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param1_uom_auth_name AND code = NEW.param1_uom_code) != 'angle' OR NEW.param2_auth_name != 'EPSG' OR NEW.param2_code != '8802' OR NEW.param2_name != 'Longitude of natural origin' OR NEW.param2_value IS NULL OR NEW.param2_uom_auth_name IS NULL OR NEW.param2_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param2_uom_auth_name AND code = NEW.param2_uom_code) != 'angle' OR NEW.param3_auth_name != 'EPSG' OR NEW.param3_code != '8805' OR NEW.param3_name != 'Scale factor at natural origin' OR NEW.param3_value IS NULL OR NEW.param3_uom_auth_name IS NULL OR NEW.param3_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param3_uom_auth_name AND code = NEW.param3_uom_code) != 'scale' OR NEW.param4_auth_name != 'EPSG' OR NEW.param4_code != '8806' OR NEW.param4_name != 'False easting' OR NEW.param4_value IS NULL OR NEW.param4_uom_auth_name IS NULL OR NEW.param4_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param4_uom_auth_name AND code = NEW.param4_uom_code) != 'length' OR NEW.param5_auth_name != 'EPSG' OR NEW.param5_code != '8807' OR NEW.param5_name != 'False northing' OR NEW.param5_value IS NULL OR NEW.param5_uom_auth_name IS NULL OR NEW.param5_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param5_uom_auth_name AND code = NEW.param5_uom_code) != 'length' OR NEW.param6_auth_name IS NOT NULL OR NEW.param6_code IS NOT NULL OR NEW.param6_name IS NOT NULL OR NEW.param6_value IS NOT NULL OR NEW.param6_uom_auth_name IS NOT NULL OR NEW.param6_uom_code IS NOT NULL OR NEW.param7_auth_name IS NOT NULL OR NEW.param7_code IS NOT NULL OR NEW.param7_name IS NOT NULL OR NEW.param7_value IS NOT NULL OR NEW.param7_uom_auth_name IS NOT NULL OR NEW.param7_uom_code IS NOT NULL);
SELECT RAISE(ABORT, 'insert on conversion violates constraint: bad parameters for Mercator (variant B)')
WHERE NEW.deprecated != 1 AND NEW.method_auth_name = 'EPSG' AND NEW.method_code = '9805' AND (NEW.method_name != 'Mercator (variant B)' OR NEW.param1_auth_name != 'EPSG' OR NEW.param1_code != '8823' OR NEW.param1_name != 'Latitude of 1st standard parallel' OR NEW.param1_value IS NULL OR NEW.param1_uom_auth_name IS NULL OR NEW.param1_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param1_uom_auth_name AND code = NEW.param1_uom_code) != 'angle' OR NEW.param2_auth_name != 'EPSG' OR NEW.param2_code != '8802' OR NEW.param2_name != 'Longitude of natural origin' OR NEW.param2_value IS NULL OR NEW.param2_uom_auth_name IS NULL OR NEW.param2_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param2_uom_auth_name AND code = NEW.param2_uom_code) != 'angle' OR NEW.param3_auth_name != 'EPSG' OR NEW.param3_code != '8806' OR NEW.param3_name != 'False easting' OR NEW.param3_value IS NULL OR NEW.param3_uom_auth_name IS NULL OR NEW.param3_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param3_uom_auth_name AND code = NEW.param3_uom_code) != 'length' OR NEW.param4_auth_name != 'EPSG' OR NEW.param4_code != '8807' OR NEW.param4_name != 'False northing' OR NEW.param4_value IS NULL OR NEW.param4_uom_auth_name IS NULL OR NEW.param4_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param4_uom_auth_name AND code = NEW.param4_uom_code) != 'length' OR NEW.param5_auth_name IS NOT NULL OR NEW.param5_code IS NOT NULL OR NEW.param5_name IS NOT NULL OR NEW.param5_value IS NOT NULL OR NEW.param5_uom_auth_name IS NOT NULL OR NEW.param5_uom_code IS NOT NULL OR NEW.param6_auth_name IS NOT NULL OR NEW.param6_code IS NOT NULL OR NEW.param6_name IS NOT NULL OR NEW.param6_value IS NOT NULL OR NEW.param6_uom_auth_name IS NOT NULL OR NEW.param6_uom_code IS NOT NULL OR NEW.param7_auth_name IS NOT NULL OR NEW.param7_code IS NOT NULL OR NEW.param7_name IS NOT NULL OR NEW.param7_value IS NOT NULL OR NEW.param7_uom_auth_name IS NOT NULL OR NEW.param7_uom_code IS NOT NULL);
SELECT RAISE(ABORT, 'insert on conversion violates constraint: bad parameters for Polar Stereographic (variant B)')
WHERE NEW.deprecated != 1 AND NEW.method_auth_name = 'EPSG' AND NEW.method_code = '9829' AND (NEW.method_name != 'Polar Stereographic (variant B)' OR NEW.param1_auth_name != 'EPSG' OR NEW.param1_code != '8832' OR NEW.param1_name != 'Latitude of standard parallel' OR NEW.param1_value IS NULL OR NEW.param1_uom_auth_name IS NULL OR NEW.param1_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param1_uom_auth_name AND code = NEW.param1_uom_code) != 'angle' OR NEW.param2_auth_name != 'EPSG' OR NEW.param2_code != '8833' OR NEW.param2_name != 'Longitude of origin' OR NEW.param2_value IS NULL OR NEW.param2_uom_auth_name IS NULL OR NEW.param2_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param2_uom_auth_name AND code = NEW.param2_uom_code) != 'angle' OR NEW.param3_auth_name != 'EPSG' OR NEW.param3_code != '8806' OR NEW.param3_name != 'False easting' OR NEW.param3_value IS NULL OR NEW.param3_uom_auth_name IS NULL OR NEW.param3_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param3_uom_auth_name AND code = NEW.param3_uom_code) != 'length' OR NEW.param4_auth_name != 'EPSG' OR NEW.param4_code != '8807' OR NEW.param4_name != 'False northing' OR NEW.param4_value IS NULL OR NEW.param4_uom_auth_name IS NULL OR NEW.param4_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param4_uom_auth_name AND code = NEW.param4_uom_code) != 'length' OR NEW.param5_auth_name IS NOT NULL OR NEW.param5_code IS NOT NULL OR NEW.param5_name IS NOT NULL OR NEW.param5_value IS NOT NULL OR NEW.param5_uom_auth_name IS NOT NULL OR NEW.param5_uom_code IS NOT NULL OR NEW.param6_auth_name IS NOT NULL OR NEW.param6_code IS NOT NULL OR NEW.param6_name IS NOT NULL OR NEW.param6_value IS NOT NULL OR NEW.param6_uom_auth_name IS NOT NULL OR NEW.param6_uom_code IS NOT NULL OR NEW.param7_auth_name IS NOT NULL OR NEW.param7_code IS NOT NULL OR NEW.param7_name IS NOT NULL OR NEW.param7_value IS NOT NULL OR NEW.param7_uom_auth_name IS NOT NULL OR NEW.param7_uom_code IS NOT NULL);
SELECT RAISE(ABORT, 'insert on conversion violates constraint: bad parameters for Lambert Conic Conformal (2SP Michigan)')
WHERE NEW.deprecated != 1 AND NEW.method_auth_name = 'EPSG' AND NEW.method_code = '1051' AND (NEW.method_name != 'Lambert Conic Conformal (2SP Michigan)' OR NEW.param1_auth_name != 'EPSG' OR NEW.param1_code != '8821' OR NEW.param1_name != 'Latitude of false origin' OR NEW.param1_value IS NULL OR NEW.param1_uom_auth_name IS NULL OR NEW.param1_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param1_uom_auth_name AND code = NEW.param1_uom_code) != 'angle' OR NEW.param2_auth_name != 'EPSG' OR NEW.param2_code != '8822' OR NEW.param2_name != 'Longitude of false origin' OR NEW.param2_value IS NULL OR NEW.param2_uom_auth_name IS NULL OR NEW.param2_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param2_uom_auth_name AND code = NEW.param2_uom_code) != 'angle' OR NEW.param3_auth_name != 'EPSG' OR NEW.param3_code != '8823' OR NEW.param3_name != 'Latitude of 1st standard parallel' OR NEW.param3_value IS NULL OR NEW.param3_uom_auth_name IS NULL OR NEW.param3_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param3_uom_auth_name AND code = NEW.param3_uom_code) != 'angle' OR NEW.param4_auth_name != 'EPSG' OR NEW.param4_code != '8824' OR NEW.param4_name != 'Latitude of 2nd standard parallel' OR NEW.param4_value IS NULL OR NEW.param4_uom_auth_name IS NULL OR NEW.param4_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param4_uom_auth_name AND code = NEW.param4_uom_code) != 'angle' OR NEW.param5_auth_name != 'EPSG' OR NEW.param5_code != '8826' OR NEW.param5_name != 'Easting at false origin' OR NEW.param5_value IS NULL OR NEW.param5_uom_auth_name IS NULL OR NEW.param5_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param5_uom_auth_name AND code = NEW.param5_uom_code) != 'length' OR NEW.param6_auth_name != 'EPSG' OR NEW.param6_code != '8827' OR NEW.param6_name != 'Northing at false origin' OR NEW.param6_value IS NULL OR NEW.param6_uom_auth_name IS NULL OR NEW.param6_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param6_uom_auth_name AND code = NEW.param6_uom_code) != 'length' OR NEW.param7_auth_name != 'EPSG' OR NEW.param7_code != '1038' OR NEW.param7_name != 'Ellipsoid scaling factor' OR NEW.param7_value IS NULL OR NEW.param7_uom_auth_name IS NULL OR NEW.param7_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param7_uom_auth_name AND code = NEW.param7_uom_code) != 'scale');
SELECT RAISE(ABORT, 'insert on conversion violates constraint: bad parameters for Colombia Urban')
WHERE NEW.deprecated != 1 AND NEW.method_auth_name = 'EPSG' AND NEW.method_code = '1052' AND (NEW.method_name != 'Colombia Urban' OR NEW.param1_auth_name != 'EPSG' OR NEW.param1_code != '8801' OR NEW.param1_name != 'Latitude of natural origin' OR NEW.param1_value IS NULL OR NEW.param1_uom_auth_name IS NULL OR NEW.param1_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param1_uom_auth_name AND code = NEW.param1_uom_code) != 'angle' OR NEW.param2_auth_name != 'EPSG' OR NEW.param2_code != '8802' OR NEW.param2_name != 'Longitude of natural origin' OR NEW.param2_value IS NULL OR NEW.param2_uom_auth_name IS NULL OR NEW.param2_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param2_uom_auth_name AND code = NEW.param2_uom_code) != 'angle' OR NEW.param3_auth_name != 'EPSG' OR NEW.param3_code != '8806' OR NEW.param3_name != 'False easting' OR NEW.param3_value IS NULL OR NEW.param3_uom_auth_name IS NULL OR NEW.param3_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param3_uom_auth_name AND code = NEW.param3_uom_code) != 'length' OR NEW.param4_auth_name != 'EPSG' OR NEW.param4_code != '8807' OR NEW.param4_name != 'False northing' OR NEW.param4_value IS NULL OR NEW.param4_uom_auth_name IS NULL OR NEW.param4_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param4_uom_auth_name AND code = NEW.param4_uom_code) != 'length' OR NEW.param5_auth_name != 'EPSG' OR NEW.param5_code != '1039' OR NEW.param5_name != 'Projection plane origin height' OR NEW.param5_value IS NULL OR NEW.param5_uom_auth_name IS NULL OR NEW.param5_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param5_uom_auth_name AND code = NEW.param5_uom_code) != 'length' OR NEW.param6_auth_name IS NOT NULL OR NEW.param6_code IS NOT NULL OR NEW.param6_name IS NOT NULL OR NEW.param6_value IS NOT NULL OR NEW.param6_uom_auth_name IS NOT NULL OR NEW.param6_uom_code IS NOT NULL OR NEW.param7_auth_name IS NOT NULL OR NEW.param7_code IS NOT NULL OR NEW.param7_name IS NOT NULL OR NEW.param7_value IS NOT NULL OR NEW.param7_uom_auth_name IS NOT NULL OR NEW.param7_uom_code IS NOT NULL);
SELECT RAISE(ABORT, 'insert on conversion violates constraint: bad parameters for Hotine Oblique Mercator (variant A)')
WHERE NEW.deprecated != 1 AND NEW.method_auth_name = 'EPSG' AND NEW.method_code = '9812' AND (NEW.method_name != 'Hotine Oblique Mercator (variant A)' OR NEW.param1_auth_name != 'EPSG' OR NEW.param1_code != '8811' OR NEW.param1_name != 'Latitude of projection centre' OR NEW.param1_value IS NULL OR NEW.param1_uom_auth_name IS NULL OR NEW.param1_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param1_uom_auth_name AND code = NEW.param1_uom_code) != 'angle' OR NEW.param2_auth_name != 'EPSG' OR NEW.param2_code != '8812' OR NEW.param2_name != 'Longitude of projection centre' OR NEW.param2_value IS NULL OR NEW.param2_uom_auth_name IS NULL OR NEW.param2_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param2_uom_auth_name AND code = NEW.param2_uom_code) != 'angle' OR NEW.param3_auth_name != 'EPSG' OR NEW.param3_code != '8813' OR NEW.param3_name != 'Azimuth of initial line' OR NEW.param3_value IS NULL OR NEW.param3_uom_auth_name IS NULL OR NEW.param3_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param3_uom_auth_name AND code = NEW.param3_uom_code) != 'angle' OR NEW.param4_auth_name != 'EPSG' OR NEW.param4_code != '8814' OR NEW.param4_name != 'Angle from Rectified to Skew Grid' OR NEW.param4_value IS NULL OR NEW.param4_uom_auth_name IS NULL OR NEW.param4_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param4_uom_auth_name AND code = NEW.param4_uom_code) != 'angle' OR NEW.param5_auth_name != 'EPSG' OR NEW.param5_code != '8815' OR NEW.param5_name != 'Scale factor on initial line' OR NEW.param5_value IS NULL OR NEW.param5_uom_auth_name IS NULL OR NEW.param5_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param5_uom_auth_name AND code = NEW.param5_uom_code) != 'scale' OR NEW.param6_auth_name != 'EPSG' OR NEW.param6_code != '8806' OR NEW.param6_name != 'False easting' OR NEW.param6_value IS NULL OR NEW.param6_uom_auth_name IS NULL OR NEW.param6_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param6_uom_auth_name AND code = NEW.param6_uom_code) != 'length' OR NEW.param7_auth_name != 'EPSG' OR NEW.param7_code != '8807' OR NEW.param7_name != 'False northing' OR NEW.param7_value IS NULL OR NEW.param7_uom_auth_name IS NULL OR NEW.param7_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param7_uom_auth_name AND code = NEW.param7_uom_code) != 'length');
SELECT RAISE(ABORT, 'insert on conversion violates constraint: bad parameters for Lambert Cylindrical Equal Area')
WHERE NEW.deprecated != 1 AND NEW.method_auth_name = 'EPSG' AND NEW.method_code = '9835' AND (NEW.method_name != 'Lambert Cylindrical Equal Area' OR NEW.param1_auth_name != 'EPSG' OR NEW.param1_code != '8823' OR NEW.param1_name != 'Latitude of 1st standard parallel' OR NEW.param1_value IS NULL OR NEW.param1_uom_auth_name IS NULL OR NEW.param1_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param1_uom_auth_name AND code = NEW.param1_uom_code) != 'angle' OR NEW.param2_auth_name != 'EPSG' OR NEW.param2_code != '8802' OR NEW.param2_name != 'Longitude of natural origin' OR NEW.param2_value IS NULL OR NEW.param2_uom_auth_name IS NULL OR NEW.param2_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param2_uom_auth_name AND code = NEW.param2_uom_code) != 'angle' OR NEW.param3_auth_name != 'EPSG' OR NEW.param3_code != '8806' OR NEW.param3_name != 'False easting' OR NEW.param3_value IS NULL OR NEW.param3_uom_auth_name IS NULL OR NEW.param3_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param3_uom_auth_name AND code = NEW.param3_uom_code) != 'length' OR NEW.param4_auth_name != 'EPSG' OR NEW.param4_code != '8807' OR NEW.param4_name != 'False northing' OR NEW.param4_value IS NULL OR NEW.param4_uom_auth_name IS NULL OR NEW.param4_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param4_uom_auth_name AND code = NEW.param4_uom_code) != 'length' OR NEW.param5_auth_name IS NOT NULL OR NEW.param5_code IS NOT NULL OR NEW.param5_name IS NOT NULL OR NEW.param5_value IS NOT NULL OR NEW.param5_uom_auth_name IS NOT NULL OR NEW.param5_uom_code IS NOT NULL OR NEW.param6_auth_name IS NOT NULL OR NEW.param6_code IS NOT NULL OR NEW.param6_name IS NOT NULL OR NEW.param6_value IS NOT NULL OR NEW.param6_uom_auth_name IS NOT NULL OR NEW.param6_uom_code IS NOT NULL OR NEW.param7_auth_name IS NOT NULL OR NEW.param7_code IS NOT NULL OR NEW.param7_name IS NOT NULL OR NEW.param7_value IS NOT NULL OR NEW.param7_uom_auth_name IS NOT NULL OR NEW.param7_uom_code IS NOT NULL);
SELECT RAISE(ABORT, 'insert on conversion violates constraint: bad parameters for Lambert Azimuthal Equal Area')
WHERE NEW.deprecated != 1 AND NEW.method_auth_name = 'EPSG' AND NEW.method_code = '9820' AND (NEW.method_name != 'Lambert Azimuthal Equal Area' OR NEW.param1_auth_name != 'EPSG' OR NEW.param1_code != '8801' OR NEW.param1_name != 'Latitude of natural origin' OR NEW.param1_value IS NULL OR NEW.param1_uom_auth_name IS NULL OR NEW.param1_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param1_uom_auth_name AND code = NEW.param1_uom_code) != 'angle' OR NEW.param2_auth_name != 'EPSG' OR NEW.param2_code != '8802' OR NEW.param2_name != 'Longitude of natural origin' OR NEW.param2_value IS NULL OR NEW.param2_uom_auth_name IS NULL OR NEW.param2_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param2_uom_auth_name AND code = NEW.param2_uom_code) != 'angle' OR NEW.param3_auth_name != 'EPSG' OR NEW.param3_code != '8806' OR NEW.param3_name != 'False easting' OR NEW.param3_value IS NULL OR NEW.param3_uom_auth_name IS NULL OR NEW.param3_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param3_uom_auth_name AND code = NEW.param3_uom_code) != 'length' OR NEW.param4_auth_name != 'EPSG' OR NEW.param4_code != '8807' OR NEW.param4_name != 'False northing' OR NEW.param4_value IS NULL OR NEW.param4_uom_auth_name IS NULL OR NEW.param4_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param4_uom_auth_name AND code = NEW.param4_uom_code) != 'length' OR NEW.param5_auth_name IS NOT NULL OR NEW.param5_code IS NOT NULL OR NEW.param5_name IS NOT NULL OR NEW.param5_value IS NOT NULL OR NEW.param5_uom_auth_name IS NOT NULL OR NEW.param5_uom_code IS NOT NULL OR NEW.param6_auth_name IS NOT NULL OR NEW.param6_code IS NOT NULL OR NEW.param6_name IS NOT NULL OR NEW.param6_value IS NOT NULL OR NEW.param6_uom_auth_name IS NOT NULL OR NEW.param6_uom_code IS NOT NULL OR NEW.param7_auth_name IS NOT NULL OR NEW.param7_code IS NOT NULL OR NEW.param7_name IS NOT NULL OR NEW.param7_value IS NOT NULL OR NEW.param7_uom_auth_name IS NOT NULL OR NEW.param7_uom_code IS NOT NULL);
SELECT RAISE(ABORT, 'insert on conversion violates constraint: bad parameters for Height Depth Reversal')
WHERE NEW.deprecated != 1 AND NEW.method_auth_name = 'EPSG' AND NEW.method_code = '1068' AND (NEW.method_name != 'Height Depth Reversal' OR NEW.param1_auth_name IS NOT NULL OR NEW.param1_code IS NOT NULL OR NEW.param1_name IS NOT NULL OR NEW.param1_value IS NOT NULL OR NEW.param1_uom_auth_name IS NOT NULL OR NEW.param1_uom_code IS NOT NULL OR NEW.param2_auth_name IS NOT NULL OR NEW.param2_code IS NOT NULL OR NEW.param2_name IS NOT NULL OR NEW.param2_value IS NOT NULL OR NEW.param2_uom_auth_name IS NOT NULL OR NEW.param2_uom_code IS NOT NULL OR NEW.param3_auth_name IS NOT NULL OR NEW.param3_code IS NOT NULL OR NEW.param3_name IS NOT NULL OR NEW.param3_value IS NOT NULL OR NEW.param3_uom_auth_name IS NOT NULL OR NEW.param3_uom_code IS NOT NULL OR NEW.param4_auth_name IS NOT NULL OR NEW.param4_code IS NOT NULL OR NEW.param4_name IS NOT NULL OR NEW.param4_value IS NOT NULL OR NEW.param4_uom_auth_name IS NOT NULL OR NEW.param4_uom_code IS NOT NULL OR NEW.param5_auth_name IS NOT NULL OR NEW.param5_code IS NOT NULL OR NEW.param5_name IS NOT NULL OR NEW.param5_value IS NOT NULL OR NEW.param5_uom_auth_name IS NOT NULL OR NEW.param5_uom_code IS NOT NULL OR NEW.param6_auth_name IS NOT NULL OR NEW.param6_code IS NOT NULL OR NEW.param6_name IS NOT NULL OR NEW.param6_value IS NOT NULL OR NEW.param6_uom_auth_name IS NOT NULL OR NEW.param6_uom_code IS NOT NULL OR NEW.param7_auth_name IS NOT NULL OR NEW.param7_code IS NOT NULL OR NEW.param7_name IS NOT NULL OR NEW.param7_value IS NOT NULL OR NEW.param7_uom_auth_name IS NOT NULL OR NEW.param7_uom_code IS NOT NULL);
SELECT RAISE(ABORT, 'insert on conversion violates constraint: bad parameters for Change of Vertical Unit')
WHERE NEW.deprecated != 1 AND NEW.method_auth_name = 'EPSG' AND NEW.method_code = '1069' AND (NEW.method_name != 'Change of Vertical Unit' OR NEW.param1_auth_name != 'EPSG' OR NEW.param1_code != '1051' OR NEW.param1_name != 'Unit conversion scalar' OR (NOT((NEW.param1_value IS NULL AND NEW.param1_uom_auth_name IS NULL AND NEW.param1_uom_code IS NULL) OR (NEW.param1_value IS NOT NULL AND (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param1_uom_auth_name AND code = NEW.param1_uom_code) = 'scale'))) OR NEW.param2_auth_name IS NOT NULL OR NEW.param2_code IS NOT NULL OR NEW.param2_name IS NOT NULL OR NEW.param2_value IS NOT NULL OR NEW.param2_uom_auth_name IS NOT NULL OR NEW.param2_uom_code IS NOT NULL OR NEW.param3_auth_name IS NOT NULL OR NEW.param3_code IS NOT NULL OR NEW.param3_name IS NOT NULL OR NEW.param3_value IS NOT NULL OR NEW.param3_uom_auth_name IS NOT NULL OR NEW.param3_uom_code IS NOT NULL OR NEW.param4_auth_name IS NOT NULL OR NEW.param4_code IS NOT NULL OR NEW.param4_name IS NOT NULL OR NEW.param4_value IS NOT NULL OR NEW.param4_uom_auth_name IS NOT NULL OR NEW.param4_uom_code IS NOT NULL OR NEW.param5_auth_name IS NOT NULL OR NEW.param5_code IS NOT NULL OR NEW.param5_name IS NOT NULL OR NEW.param5_value IS NOT NULL OR NEW.param5_uom_auth_name IS NOT NULL OR NEW.param5_uom_code IS NOT NULL OR NEW.param6_auth_name IS NOT NULL OR NEW.param6_code IS NOT NULL OR NEW.param6_name IS NOT NULL OR NEW.param6_value IS NOT NULL OR NEW.param6_uom_auth_name IS NOT NULL OR NEW.param6_uom_code IS NOT NULL OR NEW.param7_auth_name IS NOT NULL OR NEW.param7_code IS NOT NULL OR NEW.param7_name IS NOT NULL OR NEW.param7_value IS NOT NULL OR NEW.param7_uom_auth_name IS NOT NULL OR NEW.param7_uom_code IS NOT NULL);
SELECT RAISE(ABORT, 'insert on conversion violates constraint: bad parameters for Hotine Oblique Mercator (variant B)')
WHERE NEW.deprecated != 1 AND NEW.method_auth_name = 'EPSG' AND NEW.method_code = '9815' AND (NEW.method_name != 'Hotine Oblique Mercator (variant B)' OR NEW.param1_auth_name != 'EPSG' OR NEW.param1_code != '8811' OR NEW.param1_name != 'Latitude of projection centre' OR NEW.param1_value IS NULL OR NEW.param1_uom_auth_name IS NULL OR NEW.param1_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param1_uom_auth_name AND code = NEW.param1_uom_code) != 'angle' OR NEW.param2_auth_name != 'EPSG' OR NEW.param2_code != '8812' OR NEW.param2_name != 'Longitude of projection centre' OR NEW.param2_value IS NULL OR NEW.param2_uom_auth_name IS NULL OR NEW.param2_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param2_uom_auth_name AND code = NEW.param2_uom_code) != 'angle' OR NEW.param3_auth_name != 'EPSG' OR NEW.param3_code != '8813' OR NEW.param3_name != 'Azimuth of initial line' OR NEW.param3_value IS NULL OR NEW.param3_uom_auth_name IS NULL OR NEW.param3_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param3_uom_auth_name AND code = NEW.param3_uom_code) != 'angle' OR NEW.param4_auth_name != 'EPSG' OR NEW.param4_code != '8814' OR NEW.param4_name != 'Angle from Rectified to Skew Grid' OR NEW.param4_value IS NULL OR NEW.param4_uom_auth_name IS NULL OR NEW.param4_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param4_uom_auth_name AND code = NEW.param4_uom_code) != 'angle' OR NEW.param5_auth_name != 'EPSG' OR NEW.param5_code != '8815' OR NEW.param5_name != 'Scale factor on initial line' OR NEW.param5_value IS NULL OR NEW.param5_uom_auth_name IS NULL OR NEW.param5_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param5_uom_auth_name AND code = NEW.param5_uom_code) != 'scale' OR NEW.param6_auth_name != 'EPSG' OR NEW.param6_code != '8816' OR NEW.param6_name != 'Easting at projection centre' OR NEW.param6_value IS NULL OR NEW.param6_uom_auth_name IS NULL OR NEW.param6_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param6_uom_auth_name AND code = NEW.param6_uom_code) != 'length' OR NEW.param7_auth_name != 'EPSG' OR NEW.param7_code != '8817' OR NEW.param7_name != 'Northing at projection centre' OR NEW.param7_value IS NULL OR NEW.param7_uom_auth_name IS NULL OR NEW.param7_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param7_uom_auth_name AND code = NEW.param7_uom_code) != 'length');
SELECT RAISE(ABORT, 'insert on conversion violates constraint: bad parameters for Laborde Oblique Mercator')
WHERE NEW.deprecated != 1 AND NEW.method_auth_name = 'EPSG' AND NEW.method_code = '9813' AND (NEW.method_name != 'Laborde Oblique Mercator' OR NEW.param1_auth_name != 'EPSG' OR NEW.param1_code != '8811' OR NEW.param1_name != 'Latitude of projection centre' OR NEW.param1_value IS NULL OR NEW.param1_uom_auth_name IS NULL OR NEW.param1_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param1_uom_auth_name AND code = NEW.param1_uom_code) != 'angle' OR NEW.param2_auth_name != 'EPSG' OR NEW.param2_code != '8812' OR NEW.param2_name != 'Longitude of projection centre' OR NEW.param2_value IS NULL OR NEW.param2_uom_auth_name IS NULL OR NEW.param2_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param2_uom_auth_name AND code = NEW.param2_uom_code) != 'angle' OR NEW.param3_auth_name != 'EPSG' OR NEW.param3_code != '8813' OR NEW.param3_name != 'Azimuth of initial line' OR NEW.param3_value IS NULL OR NEW.param3_uom_auth_name IS NULL OR NEW.param3_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param3_uom_auth_name AND code = NEW.param3_uom_code) != 'angle' OR NEW.param4_auth_name != 'EPSG' OR NEW.param4_code != '8815' OR NEW.param4_name != 'Scale factor on initial line' OR NEW.param4_value IS NULL OR NEW.param4_uom_auth_name IS NULL OR NEW.param4_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param4_uom_auth_name AND code = NEW.param4_uom_code) != 'scale' OR NEW.param5_auth_name != 'EPSG' OR NEW.param5_code != '8806' OR NEW.param5_name != 'False easting' OR NEW.param5_value IS NULL OR NEW.param5_uom_auth_name IS NULL OR NEW.param5_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param5_uom_auth_name AND code = NEW.param5_uom_code) != 'length' OR NEW.param6_auth_name != 'EPSG' OR NEW.param6_code != '8807' OR NEW.param6_name != 'False northing' OR NEW.param6_value IS NULL OR NEW.param6_uom_auth_name IS NULL OR NEW.param6_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param6_uom_auth_name AND code = NEW.param6_uom_code) != 'length' OR NEW.param7_auth_name IS NOT NULL OR NEW.param7_code IS NOT NULL OR NEW.param7_name IS NOT NULL OR NEW.param7_value IS NOT NULL OR NEW.param7_uom_auth_name IS NOT NULL OR NEW.param7_uom_code IS NOT NULL);
SELECT RAISE(ABORT, 'insert on conversion violates constraint: bad parameters for Equal Earth')
WHERE NEW.deprecated != 1 AND NEW.method_auth_name = 'EPSG' AND NEW.method_code = '1078' AND (NEW.method_name != 'Equal Earth' OR NEW.param1_auth_name != 'EPSG' OR NEW.param1_code != '8802' OR NEW.param1_name != 'Longitude of natural origin' OR NEW.param1_value IS NULL OR NEW.param1_uom_auth_name IS NULL OR NEW.param1_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param1_uom_auth_name AND code = NEW.param1_uom_code) != 'angle' OR NEW.param2_auth_name != 'EPSG' OR NEW.param2_code != '8806' OR NEW.param2_name != 'False easting' OR NEW.param2_value IS NULL OR NEW.param2_uom_auth_name IS NULL OR NEW.param2_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param2_uom_auth_name AND code = NEW.param2_uom_code) != 'length' OR NEW.param3_auth_name != 'EPSG' OR NEW.param3_code != '8807' OR NEW.param3_name != 'False northing' OR NEW.param3_value IS NULL OR NEW.param3_uom_auth_name IS NULL OR NEW.param3_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param3_uom_auth_name AND code = NEW.param3_uom_code) != 'length' OR NEW.param4_auth_name IS NOT NULL OR NEW.param4_code IS NOT NULL OR NEW.param4_name IS NOT NULL OR NEW.param4_value IS NOT NULL OR NEW.param4_uom_auth_name IS NOT NULL OR NEW.param4_uom_code IS NOT NULL OR NEW.param5_auth_name IS NOT NULL OR NEW.param5_code IS NOT NULL OR NEW.param5_name IS NOT NULL OR NEW.param5_value IS NOT NULL OR NEW.param5_uom_auth_name IS NOT NULL OR NEW.param5_uom_code IS NOT NULL OR NEW.param6_auth_name IS NOT NULL OR NEW.param6_code IS NOT NULL OR NEW.param6_name IS NOT NULL OR NEW.param6_value IS NOT NULL OR NEW.param6_uom_auth_name IS NOT NULL OR NEW.param6_uom_code IS NOT NULL OR NEW.param7_auth_name IS NOT NULL OR NEW.param7_code IS NOT NULL OR NEW.param7_name IS NOT NULL OR NEW.param7_value IS NOT NULL OR NEW.param7_uom_auth_name IS NOT NULL OR NEW.param7_uom_code IS NOT NULL);
SELECT RAISE(ABORT, 'insert on conversion violates constraint: bad parameters for Modified Azimuthal Equidistant')
WHERE NEW.deprecated != 1 AND NEW.method_auth_name = 'EPSG' AND NEW.method_code = '9832' AND (NEW.method_name != 'Modified Azimuthal Equidistant' OR NEW.param1_auth_name != 'EPSG' OR NEW.param1_code != '8801' OR NEW.param1_name != 'Latitude of natural origin' OR NEW.param1_value IS NULL OR NEW.param1_uom_auth_name IS NULL OR NEW.param1_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param1_uom_auth_name AND code = NEW.param1_uom_code) != 'angle' OR NEW.param2_auth_name != 'EPSG' OR NEW.param2_code != '8802' OR NEW.param2_name != 'Longitude of natural origin' OR NEW.param2_value IS NULL OR NEW.param2_uom_auth_name IS NULL OR NEW.param2_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param2_uom_auth_name AND code = NEW.param2_uom_code) != 'angle' OR NEW.param3_auth_name != 'EPSG' OR NEW.param3_code != '8806' OR NEW.param3_name != 'False easting' OR NEW.param3_value IS NULL OR NEW.param3_uom_auth_name IS NULL OR NEW.param3_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param3_uom_auth_name AND code = NEW.param3_uom_code) != 'length' OR NEW.param4_auth_name != 'EPSG' OR NEW.param4_code != '8807' OR NEW.param4_name != 'False northing' OR NEW.param4_value IS NULL OR NEW.param4_uom_auth_name IS NULL OR NEW.param4_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param4_uom_auth_name AND code = NEW.param4_uom_code) != 'length' OR NEW.param5_auth_name IS NOT NULL OR NEW.param5_code IS NOT NULL OR NEW.param5_name IS NOT NULL OR NEW.param5_value IS NOT NULL OR NEW.param5_uom_auth_name IS NOT NULL OR NEW.param5_uom_code IS NOT NULL OR NEW.param6_auth_name IS NOT NULL OR NEW.param6_code IS NOT NULL OR NEW.param6_name IS NOT NULL OR NEW.param6_value IS NOT NULL OR NEW.param6_uom_auth_name IS NOT NULL OR NEW.param6_uom_code IS NOT NULL OR NEW.param7_auth_name IS NOT NULL OR NEW.param7_code IS NOT NULL OR NEW.param7_name IS NOT NULL OR NEW.param7_value IS NOT NULL OR NEW.param7_uom_auth_name IS NOT NULL OR NEW.param7_uom_code IS NOT NULL);
SELECT RAISE(ABORT, 'insert on conversion violates constraint: bad parameters for Guam Projection')
WHERE NEW.deprecated != 1 AND NEW.method_auth_name = 'EPSG' AND NEW.method_code = '9831' AND (NEW.method_name != 'Guam Projection' OR NEW.param1_auth_name != 'EPSG' OR NEW.param1_code != '8801' OR NEW.param1_name != 'Latitude of natural origin' OR NEW.param1_value IS NULL OR NEW.param1_uom_auth_name IS NULL OR NEW.param1_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param1_uom_auth_name AND code = NEW.param1_uom_code) != 'angle' OR NEW.param2_auth_name != 'EPSG' OR NEW.param2_code != '8802' OR NEW.param2_name != 'Longitude of natural origin' OR NEW.param2_value IS NULL OR NEW.param2_uom_auth_name IS NULL OR NEW.param2_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param2_uom_auth_name AND code = NEW.param2_uom_code) != 'angle' OR NEW.param3_auth_name != 'EPSG' OR NEW.param3_code != '8806' OR NEW.param3_name != 'False easting' OR NEW.param3_value IS NULL OR NEW.param3_uom_auth_name IS NULL OR NEW.param3_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param3_uom_auth_name AND code = NEW.param3_uom_code) != 'length' OR NEW.param4_auth_name != 'EPSG' OR NEW.param4_code != '8807' OR NEW.param4_name != 'False northing' OR NEW.param4_value IS NULL OR NEW.param4_uom_auth_name IS NULL OR NEW.param4_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param4_uom_auth_name AND code = NEW.param4_uom_code) != 'length' OR NEW.param5_auth_name IS NOT NULL OR NEW.param5_code IS NOT NULL OR NEW.param5_name IS NOT NULL OR NEW.param5_value IS NOT NULL OR NEW.param5_uom_auth_name IS NOT NULL OR NEW.param5_uom_code IS NOT NULL OR NEW.param6_auth_name IS NOT NULL OR NEW.param6_code IS NOT NULL OR NEW.param6_name IS NOT NULL OR NEW.param6_value IS NOT NULL OR NEW.param6_uom_auth_name IS NOT NULL OR NEW.param6_uom_code IS NOT NULL OR NEW.param7_auth_name IS NOT NULL OR NEW.param7_code IS NOT NULL OR NEW.param7_name IS NOT NULL OR NEW.param7_value IS NOT NULL OR NEW.param7_uom_auth_name IS NOT NULL OR NEW.param7_uom_code IS NOT NULL);
SELECT RAISE(ABORT, 'insert on conversion violates constraint: bad parameters for Axis Order Reversal (2D)')
WHERE NEW.deprecated != 1 AND NEW.method_auth_name = 'EPSG' AND NEW.method_code = '9843' AND (NEW.method_name != 'Axis Order Reversal (2D)' OR NEW.param1_auth_name IS NOT NULL OR NEW.param1_code IS NOT NULL OR NEW.param1_name IS NOT NULL OR NEW.param1_value IS NOT NULL OR NEW.param1_uom_auth_name IS NOT NULL OR NEW.param1_uom_code IS NOT NULL OR NEW.param2_auth_name IS NOT NULL OR NEW.param2_code IS NOT NULL OR NEW.param2_name IS NOT NULL OR NEW.param2_value IS NOT NULL OR NEW.param2_uom_auth_name IS NOT NULL OR NEW.param2_uom_code IS NOT NULL OR NEW.param3_auth_name IS NOT NULL OR NEW.param3_code IS NOT NULL OR NEW.param3_name IS NOT NULL OR NEW.param3_value IS NOT NULL OR NEW.param3_uom_auth_name IS NOT NULL OR NEW.param3_uom_code IS NOT NULL OR NEW.param4_auth_name IS NOT NULL OR NEW.param4_code IS NOT NULL OR NEW.param4_name IS NOT NULL OR NEW.param4_value IS NOT NULL OR NEW.param4_uom_auth_name IS NOT NULL OR NEW.param4_uom_code IS NOT NULL OR NEW.param5_auth_name IS NOT NULL OR NEW.param5_code IS NOT NULL OR NEW.param5_name IS NOT NULL OR NEW.param5_value IS NOT NULL OR NEW.param5_uom_auth_name IS NOT NULL OR NEW.param5_uom_code IS NOT NULL OR NEW.param6_auth_name IS NOT NULL OR NEW.param6_code IS NOT NULL OR NEW.param6_name IS NOT NULL OR NEW.param6_value IS NOT NULL OR NEW.param6_uom_auth_name IS NOT NULL OR NEW.param6_uom_code IS NOT NULL OR NEW.param7_auth_name IS NOT NULL OR NEW.param7_code IS NOT NULL OR NEW.param7_name IS NOT NULL OR NEW.param7_value IS NOT NULL OR NEW.param7_uom_auth_name IS NOT NULL OR NEW.param7_uom_code IS NOT NULL);
SELECT RAISE(ABORT, 'insert on conversion violates constraint: bad parameters for Axis Order Reversal (Geographic3D horizontal)')
WHERE NEW.deprecated != 1 AND NEW.method_auth_name = 'EPSG' AND NEW.method_code = '9844' AND (NEW.method_name != 'Axis Order Reversal (Geographic3D horizontal)' OR NEW.param1_auth_name IS NOT NULL OR NEW.param1_code IS NOT NULL OR NEW.param1_name IS NOT NULL OR NEW.param1_value IS NOT NULL OR NEW.param1_uom_auth_name IS NOT NULL OR NEW.param1_uom_code IS NOT NULL OR NEW.param2_auth_name IS NOT NULL OR NEW.param2_code IS NOT NULL OR NEW.param2_name IS NOT NULL OR NEW.param2_value IS NOT NULL OR NEW.param2_uom_auth_name IS NOT NULL OR NEW.param2_uom_code IS NOT NULL OR NEW.param3_auth_name IS NOT NULL OR NEW.param3_code IS NOT NULL OR NEW.param3_name IS NOT NULL OR NEW.param3_value IS NOT NULL OR NEW.param3_uom_auth_name IS NOT NULL OR NEW.param3_uom_code IS NOT NULL OR NEW.param4_auth_name IS NOT NULL OR NEW.param4_code IS NOT NULL OR NEW.param4_name IS NOT NULL OR NEW.param4_value IS NOT NULL OR NEW.param4_uom_auth_name IS NOT NULL OR NEW.param4_uom_code IS NOT NULL OR NEW.param5_auth_name IS NOT NULL OR NEW.param5_code IS NOT NULL OR NEW.param5_name IS NOT NULL OR NEW.param5_value IS NOT NULL OR NEW.param5_uom_auth_name IS NOT NULL OR NEW.param5_uom_code IS NOT NULL OR NEW.param6_auth_name IS NOT NULL OR NEW.param6_code IS NOT NULL OR NEW.param6_name IS NOT NULL OR NEW.param6_value IS NOT NULL OR NEW.param6_uom_auth_name IS NOT NULL OR NEW.param6_uom_code IS NOT NULL OR NEW.param7_auth_name IS NOT NULL OR NEW.param7_code IS NOT NULL OR NEW.param7_name IS NOT NULL OR NEW.param7_value IS NOT NULL OR NEW.param7_uom_auth_name IS NOT NULL OR NEW.param7_uom_code IS NOT NULL);
SELECT RAISE(ABORT, 'insert on conversion violates constraint: bad parameters for Geographic/geocentric conversions')
WHERE NEW.deprecated != 1 AND NEW.method_auth_name = 'EPSG' AND NEW.method_code = '9602' AND (NEW.method_name != 'Geographic/geocentric conversions' OR NEW.param1_auth_name IS NOT NULL OR NEW.param1_code IS NOT NULL OR NEW.param1_name IS NOT NULL OR NEW.param1_value IS NOT NULL OR NEW.param1_uom_auth_name IS NOT NULL OR NEW.param1_uom_code IS NOT NULL OR NEW.param2_auth_name IS NOT NULL OR NEW.param2_code IS NOT NULL OR NEW.param2_name IS NOT NULL OR NEW.param2_value IS NOT NULL OR NEW.param2_uom_auth_name IS NOT NULL OR NEW.param2_uom_code IS NOT NULL OR NEW.param3_auth_name IS NOT NULL OR NEW.param3_code IS NOT NULL OR NEW.param3_name IS NOT NULL OR NEW.param3_value IS NOT NULL OR NEW.param3_uom_auth_name IS NOT NULL OR NEW.param3_uom_code IS NOT NULL OR NEW.param4_auth_name IS NOT NULL OR NEW.param4_code IS NOT NULL OR NEW.param4_name IS NOT NULL OR NEW.param4_value IS NOT NULL OR NEW.param4_uom_auth_name IS NOT NULL OR NEW.param4_uom_code IS NOT NULL OR NEW.param5_auth_name IS NOT NULL OR NEW.param5_code IS NOT NULL OR NEW.param5_name IS NOT NULL OR NEW.param5_value IS NOT NULL OR NEW.param5_uom_auth_name IS NOT NULL OR NEW.param5_uom_code IS NOT NULL OR NEW.param6_auth_name IS NOT NULL OR NEW.param6_code IS NOT NULL OR NEW.param6_name IS NOT NULL OR NEW.param6_value IS NOT NULL OR NEW.param6_uom_auth_name IS NOT NULL OR NEW.param6_uom_code IS NOT NULL OR NEW.param7_auth_name IS NOT NULL OR NEW.param7_code IS NOT NULL OR NEW.param7_name IS NOT NULL OR NEW.param7_value IS NOT NULL OR NEW.param7_uom_auth_name IS NOT NULL OR NEW.param7_uom_code IS NOT NULL);
SELECT RAISE(ABORT, 'insert on conversion violates constraint: bad parameters for Geographic3D to 2D conversion')
WHERE NEW.deprecated != 1 AND NEW.method_auth_name = 'EPSG' AND NEW.method_code = '9659' AND (NEW.method_name != 'Geographic3D to 2D conversion' OR NEW.param1_auth_name IS NOT NULL OR NEW.param1_code IS NOT NULL OR NEW.param1_name IS NOT NULL OR NEW.param1_value IS NOT NULL OR NEW.param1_uom_auth_name IS NOT NULL OR NEW.param1_uom_code IS NOT NULL OR NEW.param2_auth_name IS NOT NULL OR NEW.param2_code IS NOT NULL OR NEW.param2_name IS NOT NULL OR NEW.param2_value IS NOT NULL OR NEW.param2_uom_auth_name IS NOT NULL OR NEW.param2_uom_code IS NOT NULL OR NEW.param3_auth_name IS NOT NULL OR NEW.param3_code IS NOT NULL OR NEW.param3_name IS NOT NULL OR NEW.param3_value IS NOT NULL OR NEW.param3_uom_auth_name IS NOT NULL OR NEW.param3_uom_code IS NOT NULL OR NEW.param4_auth_name IS NOT NULL OR NEW.param4_code IS NOT NULL OR NEW.param4_name IS NOT NULL OR NEW.param4_value IS NOT NULL OR NEW.param4_uom_auth_name IS NOT NULL OR NEW.param4_uom_code IS NOT NULL OR NEW.param5_auth_name IS NOT NULL OR NEW.param5_code IS NOT NULL OR NEW.param5_name IS NOT NULL OR NEW.param5_value IS NOT NULL OR NEW.param5_uom_auth_name IS NOT NULL OR NEW.param5_uom_code IS NOT NULL OR NEW.param6_auth_name IS NOT NULL OR NEW.param6_code IS NOT NULL OR NEW.param6_name IS NOT NULL OR NEW.param6_value IS NOT NULL OR NEW.param6_uom_auth_name IS NOT NULL OR NEW.param6_uom_code IS NOT NULL OR NEW.param7_auth_name IS NOT NULL OR NEW.param7_code IS NOT NULL OR NEW.param7_name IS NOT NULL OR NEW.param7_value IS NOT NULL OR NEW.param7_uom_auth_name IS NOT NULL OR NEW.param7_uom_code IS NOT NULL);
SELECT RAISE(ABORT, 'insert on conversion violates constraint: bad parameters for Geographic/topocentric conversions')
WHERE NEW.deprecated != 1 AND NEW.method_auth_name = 'EPSG' AND NEW.method_code = '9837' AND (NEW.method_name != 'Geographic/topocentric conversions' OR NEW.param1_auth_name != 'EPSG' OR NEW.param1_code != '8834' OR NEW.param1_name != 'Latitude of topocentric origin' OR NEW.param1_value IS NULL OR NEW.param1_uom_auth_name IS NULL OR NEW.param1_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param1_uom_auth_name AND code = NEW.param1_uom_code) != 'angle' OR NEW.param2_auth_name != 'EPSG' OR NEW.param2_code != '8835' OR NEW.param2_name != 'Longitude of topocentric origin' OR NEW.param2_value IS NULL OR NEW.param2_uom_auth_name IS NULL OR NEW.param2_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param2_uom_auth_name AND code = NEW.param2_uom_code) != 'angle' OR NEW.param3_auth_name != 'EPSG' OR NEW.param3_code != '8836' OR NEW.param3_name != 'Ellipsoidal height of topocentric origin' OR NEW.param3_value IS NULL OR NEW.param3_uom_auth_name IS NULL OR NEW.param3_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param3_uom_auth_name AND code = NEW.param3_uom_code) != 'length' OR NEW.param4_auth_name IS NOT NULL OR NEW.param4_code IS NOT NULL OR NEW.param4_name IS NOT NULL OR NEW.param4_value IS NOT NULL OR NEW.param4_uom_auth_name IS NOT NULL OR NEW.param4_uom_code IS NOT NULL OR NEW.param5_auth_name IS NOT NULL OR NEW.param5_code IS NOT NULL OR NEW.param5_name IS NOT NULL OR NEW.param5_value IS NOT NULL OR NEW.param5_uom_auth_name IS NOT NULL OR NEW.param5_uom_code IS NOT NULL OR NEW.param6_auth_name IS NOT NULL OR NEW.param6_code IS NOT NULL OR NEW.param6_name IS NOT NULL OR NEW.param6_value IS NOT NULL OR NEW.param6_uom_auth_name IS NOT NULL OR NEW.param6_uom_code IS NOT NULL OR NEW.param7_auth_name IS NOT NULL OR NEW.param7_code IS NOT NULL OR NEW.param7_name IS NOT NULL OR NEW.param7_value IS NOT NULL OR NEW.param7_uom_auth_name IS NOT NULL OR NEW.param7_uom_code IS NOT NULL);
SELECT RAISE(ABORT, 'insert on conversion violates constraint: bad parameters for Geocentric/topocentric conversions')
WHERE NEW.deprecated != 1 AND NEW.method_auth_name = 'EPSG' AND NEW.method_code = '9836' AND (NEW.method_name != 'Geocentric/topocentric conversions' OR NEW.param1_auth_name != 'EPSG' OR NEW.param1_code != '8837' OR NEW.param1_name != 'Geocentric X of topocentric origin' OR NEW.param1_value IS NULL OR NEW.param1_uom_auth_name IS NULL OR NEW.param1_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param1_uom_auth_name AND code = NEW.param1_uom_code) != 'length' OR NEW.param2_auth_name != 'EPSG' OR NEW.param2_code != '8838' OR NEW.param2_name != 'Geocentric Y of topocentric origin' OR NEW.param2_value IS NULL OR NEW.param2_uom_auth_name IS NULL OR NEW.param2_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param2_uom_auth_name AND code = NEW.param2_uom_code) != 'length' OR NEW.param3_auth_name != 'EPSG' OR NEW.param3_code != '8839' OR NEW.param3_name != 'Geocentric Z of topocentric origin' OR NEW.param3_value IS NULL OR NEW.param3_uom_auth_name IS NULL OR NEW.param3_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param3_uom_auth_name AND code = NEW.param3_uom_code) != 'length' OR NEW.param4_auth_name IS NOT NULL OR NEW.param4_code IS NOT NULL OR NEW.param4_name IS NOT NULL OR NEW.param4_value IS NOT NULL OR NEW.param4_uom_auth_name IS NOT NULL OR NEW.param4_uom_code IS NOT NULL OR NEW.param5_auth_name IS NOT NULL OR NEW.param5_code IS NOT NULL OR NEW.param5_name IS NOT NULL OR NEW.param5_value IS NOT NULL OR NEW.param5_uom_auth_name IS NOT NULL OR NEW.param5_uom_code IS NOT NULL OR NEW.param6_auth_name IS NOT NULL OR NEW.param6_code IS NOT NULL OR NEW.param6_name IS NOT NULL OR NEW.param6_value IS NOT NULL OR NEW.param6_uom_auth_name IS NOT NULL OR NEW.param6_uom_code IS NOT NULL OR NEW.param7_auth_name IS NOT NULL OR NEW.param7_code IS NOT NULL OR NEW.param7_name IS NOT NULL OR NEW.param7_value IS NOT NULL OR NEW.param7_uom_auth_name IS NOT NULL OR NEW.param7_uom_code IS NOT NULL);
SELECT RAISE(ABORT, 'insert on conversion violates constraint: bad parameters for Transverse Mercator Zoned Grid System')
WHERE NEW.deprecated != 1 AND NEW.method_auth_name = 'EPSG' AND NEW.method_code = '9824' AND (NEW.method_name != 'Transverse Mercator Zoned Grid System' OR NEW.param1_auth_name != 'EPSG' OR NEW.param1_code != '8801' OR NEW.param1_name != 'Latitude of natural origin' OR NEW.param1_value IS NULL OR NEW.param1_uom_auth_name IS NULL OR NEW.param1_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param1_uom_auth_name AND code = NEW.param1_uom_code) != 'angle' OR NEW.param2_auth_name != 'EPSG' OR NEW.param2_code != '8830' OR NEW.param2_name != 'Initial longitude' OR NEW.param2_value IS NULL OR NEW.param2_uom_auth_name IS NULL OR NEW.param2_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param2_uom_auth_name AND code = NEW.param2_uom_code) != 'angle' OR NEW.param3_auth_name != 'EPSG' OR NEW.param3_code != '8831' OR NEW.param3_name != 'Zone width' OR NEW.param3_value IS NULL OR NEW.param3_uom_auth_name IS NULL OR NEW.param3_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param3_uom_auth_name AND code = NEW.param3_uom_code) != 'angle' OR NEW.param4_auth_name != 'EPSG' OR NEW.param4_code != '8805' OR NEW.param4_name != 'Scale factor at natural origin' OR NEW.param4_value IS NULL OR NEW.param4_uom_auth_name IS NULL OR NEW.param4_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param4_uom_auth_name AND code = NEW.param4_uom_code) != 'scale' OR NEW.param5_auth_name != 'EPSG' OR NEW.param5_code != '8806' OR NEW.param5_name != 'False easting' OR NEW.param5_value IS NULL OR NEW.param5_uom_auth_name IS NULL OR NEW.param5_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param5_uom_auth_name AND code = NEW.param5_uom_code) != 'length' OR NEW.param6_auth_name != 'EPSG' OR NEW.param6_code != '8807' OR NEW.param6_name != 'False northing' OR NEW.param6_value IS NULL OR NEW.param6_uom_auth_name IS NULL OR NEW.param6_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param6_uom_auth_name AND code = NEW.param6_uom_code) != 'length' OR NEW.param7_auth_name IS NOT NULL OR NEW.param7_code IS NOT NULL OR NEW.param7_name IS NOT NULL OR NEW.param7_value IS NOT NULL OR NEW.param7_uom_auth_name IS NOT NULL OR NEW.param7_uom_code IS NOT NULL);
SELECT RAISE(ABORT, 'insert on conversion violates constraint: bad parameters for Transverse Mercator (South Orientated)')
WHERE NEW.deprecated != 1 AND NEW.method_auth_name = 'EPSG' AND NEW.method_code = '9808' AND (NEW.method_name != 'Transverse Mercator (South Orientated)' OR NEW.param1_auth_name != 'EPSG' OR NEW.param1_code != '8801' OR NEW.param1_name != 'Latitude of natural origin' OR NEW.param1_value IS NULL OR NEW.param1_uom_auth_name IS NULL OR NEW.param1_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param1_uom_auth_name AND code = NEW.param1_uom_code) != 'angle' OR NEW.param2_auth_name != 'EPSG' OR NEW.param2_code != '8802' OR NEW.param2_name != 'Longitude of natural origin' OR NEW.param2_value IS NULL OR NEW.param2_uom_auth_name IS NULL OR NEW.param2_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param2_uom_auth_name AND code = NEW.param2_uom_code) != 'angle' OR NEW.param3_auth_name != 'EPSG' OR NEW.param3_code != '8805' OR NEW.param3_name != 'Scale factor at natural origin' OR NEW.param3_value IS NULL OR NEW.param3_uom_auth_name IS NULL OR NEW.param3_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param3_uom_auth_name AND code = NEW.param3_uom_code) != 'scale' OR NEW.param4_auth_name != 'EPSG' OR NEW.param4_code != '8806' OR NEW.param4_name != 'False easting' OR NEW.param4_value IS NULL OR NEW.param4_uom_auth_name IS NULL OR NEW.param4_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param4_uom_auth_name AND code = NEW.param4_uom_code) != 'length' OR NEW.param5_auth_name != 'EPSG' OR NEW.param5_code != '8807' OR NEW.param5_name != 'False northing' OR NEW.param5_value IS NULL OR NEW.param5_uom_auth_name IS NULL OR NEW.param5_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param5_uom_auth_name AND code = NEW.param5_uom_code) != 'length' OR NEW.param6_auth_name IS NOT NULL OR NEW.param6_code IS NOT NULL OR NEW.param6_name IS NOT NULL OR NEW.param6_value IS NOT NULL OR NEW.param6_uom_auth_name IS NOT NULL OR NEW.param6_uom_code IS NOT NULL OR NEW.param7_auth_name IS NOT NULL OR NEW.param7_code IS NOT NULL OR NEW.param7_name IS NOT NULL OR NEW.param7_value IS NOT NULL OR NEW.param7_uom_auth_name IS NOT NULL OR NEW.param7_uom_code IS NOT NULL);
SELECT RAISE(ABORT, 'insert on conversion violates constraint: bad parameters for Lambert Conic Conformal (West Orientated)')
WHERE NEW.deprecated != 1 AND NEW.method_auth_name = 'EPSG' AND NEW.method_code = '9826' AND (NEW.method_name != 'Lambert Conic Conformal (West Orientated)' OR NEW.param1_auth_name != 'EPSG' OR NEW.param1_code != '8801' OR NEW.param1_name != 'Latitude of natural origin' OR NEW.param1_value IS NULL OR NEW.param1_uom_auth_name IS NULL OR NEW.param1_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param1_uom_auth_name AND code = NEW.param1_uom_code) != 'angle' OR NEW.param2_auth_name != 'EPSG' OR NEW.param2_code != '8802' OR NEW.param2_name != 'Longitude of natural origin' OR NEW.param2_value IS NULL OR NEW.param2_uom_auth_name IS NULL OR NEW.param2_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param2_uom_auth_name AND code = NEW.param2_uom_code) != 'angle' OR NEW.param3_auth_name != 'EPSG' OR NEW.param3_code != '8805' OR NEW.param3_name != 'Scale factor at natural origin' OR NEW.param3_value IS NULL OR NEW.param3_uom_auth_name IS NULL OR NEW.param3_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param3_uom_auth_name AND code = NEW.param3_uom_code) != 'scale' OR NEW.param4_auth_name != 'EPSG' OR NEW.param4_code != '8806' OR NEW.param4_name != 'False easting' OR NEW.param4_value IS NULL OR NEW.param4_uom_auth_name IS NULL OR NEW.param4_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param4_uom_auth_name AND code = NEW.param4_uom_code) != 'length' OR NEW.param5_auth_name != 'EPSG' OR NEW.param5_code != '8807' OR NEW.param5_name != 'False northing' OR NEW.param5_value IS NULL OR NEW.param5_uom_auth_name IS NULL OR NEW.param5_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param5_uom_auth_name AND code = NEW.param5_uom_code) != 'length' OR NEW.param6_auth_name IS NOT NULL OR NEW.param6_code IS NOT NULL OR NEW.param6_name IS NOT NULL OR NEW.param6_value IS NOT NULL OR NEW.param6_uom_auth_name IS NOT NULL OR NEW.param6_uom_code IS NOT NULL OR NEW.param7_auth_name IS NOT NULL OR NEW.param7_code IS NOT NULL OR NEW.param7_name IS NOT NULL OR NEW.param7_value IS NOT NULL OR NEW.param7_uom_auth_name IS NOT NULL OR NEW.param7_uom_code IS NOT NULL);
SELECT RAISE(ABORT, 'insert on conversion violates constraint: bad parameters for Equidistant Cylindrical')
WHERE NEW.deprecated != 1 AND NEW.method_auth_name = 'EPSG' AND NEW.method_code = '9842' AND (NEW.method_name != 'Equidistant Cylindrical' OR NEW.param1_auth_name != 'EPSG' OR NEW.param1_code != '8801' OR NEW.param1_name != 'Latitude of natural origin' OR NEW.param1_value IS NULL OR NEW.param1_uom_auth_name IS NULL OR NEW.param1_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param1_uom_auth_name AND code = NEW.param1_uom_code) != 'angle' OR NEW.param2_auth_name != 'EPSG' OR NEW.param2_code != '8822' OR NEW.param2_name != 'Longitude of false origin' OR NEW.param2_value IS NULL OR NEW.param2_uom_auth_name IS NULL OR NEW.param2_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param2_uom_auth_name AND code = NEW.param2_uom_code) != 'angle' OR NEW.param3_auth_name != 'EPSG' OR NEW.param3_code != '8806' OR NEW.param3_name != 'False easting' OR NEW.param3_value IS NULL OR NEW.param3_uom_auth_name IS NULL OR NEW.param3_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param3_uom_auth_name AND code = NEW.param3_uom_code) != 'length' OR NEW.param4_auth_name != 'EPSG' OR NEW.param4_code != '8807' OR NEW.param4_name != 'False northing' OR NEW.param4_value IS NULL OR NEW.param4_uom_auth_name IS NULL OR NEW.param4_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param4_uom_auth_name AND code = NEW.param4_uom_code) != 'length' OR NEW.param5_auth_name IS NOT NULL OR NEW.param5_code IS NOT NULL OR NEW.param5_name IS NOT NULL OR NEW.param5_value IS NOT NULL OR NEW.param5_uom_auth_name IS NOT NULL OR NEW.param5_uom_code IS NOT NULL OR NEW.param6_auth_name IS NOT NULL OR NEW.param6_code IS NOT NULL OR NEW.param6_name IS NOT NULL OR NEW.param6_value IS NOT NULL OR NEW.param6_uom_auth_name IS NOT NULL OR NEW.param6_uom_code IS NOT NULL OR NEW.param7_auth_name IS NOT NULL OR NEW.param7_code IS NOT NULL OR NEW.param7_name IS NOT NULL OR NEW.param7_value IS NOT NULL OR NEW.param7_uom_auth_name IS NOT NULL OR NEW.param7_uom_code IS NOT NULL);
SELECT RAISE(ABORT, 'insert on conversion violates constraint: bad parameters for Mercator (1SP) (Spherical)')
WHERE NEW.deprecated != 1 AND NEW.method_auth_name = 'EPSG' AND NEW.method_code = '9841' AND (NEW.method_name != 'Mercator (1SP) (Spherical)' OR NEW.param1_auth_name != 'EPSG' OR NEW.param1_code != '8801' OR NEW.param1_name != 'Latitude of natural origin' OR NEW.param1_value IS NULL OR NEW.param1_uom_auth_name IS NULL OR NEW.param1_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param1_uom_auth_name AND code = NEW.param1_uom_code) != 'angle' OR NEW.param2_auth_name != 'EPSG' OR NEW.param2_code != '8802' OR NEW.param2_name != 'Longitude of natural origin' OR NEW.param2_value IS NULL OR NEW.param2_uom_auth_name IS NULL OR NEW.param2_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param2_uom_auth_name AND code = NEW.param2_uom_code) != 'angle' OR NEW.param3_auth_name != 'EPSG' OR NEW.param3_code != '8805' OR NEW.param3_name != 'Scale factor at natural origin' OR NEW.param3_value IS NULL OR NEW.param3_uom_auth_name IS NULL OR NEW.param3_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param3_uom_auth_name AND code = NEW.param3_uom_code) != 'scale' OR NEW.param4_auth_name != 'EPSG' OR NEW.param4_code != '8806' OR NEW.param4_name != 'False easting' OR NEW.param4_value IS NULL OR NEW.param4_uom_auth_name IS NULL OR NEW.param4_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param4_uom_auth_name AND code = NEW.param4_uom_code) != 'length' OR NEW.param5_auth_name != 'EPSG' OR NEW.param5_code != '8807' OR NEW.param5_name != 'False northing' OR NEW.param5_value IS NULL OR NEW.param5_uom_auth_name IS NULL OR NEW.param5_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param5_uom_auth_name AND code = NEW.param5_uom_code) != 'length' OR NEW.param6_auth_name IS NOT NULL OR NEW.param6_code IS NOT NULL OR NEW.param6_name IS NOT NULL OR NEW.param6_value IS NOT NULL OR NEW.param6_uom_auth_name IS NOT NULL OR NEW.param6_uom_code IS NOT NULL OR NEW.param7_auth_name IS NOT NULL OR NEW.param7_code IS NOT NULL OR NEW.param7_name IS NOT NULL OR NEW.param7_value IS NOT NULL OR NEW.param7_uom_auth_name IS NOT NULL OR NEW.param7_uom_code IS NOT NULL);
SELECT RAISE(ABORT, 'insert on conversion violates constraint: bad parameters for Vertical Perspective')
WHERE NEW.deprecated != 1 AND NEW.method_auth_name = 'EPSG' AND NEW.method_code = '9838' AND (NEW.method_name != 'Vertical Perspective' OR NEW.param1_auth_name != 'EPSG' OR NEW.param1_code != '8834' OR NEW.param1_name != 'Latitude of topocentric origin' OR NEW.param1_value IS NULL OR NEW.param1_uom_auth_name IS NULL OR NEW.param1_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param1_uom_auth_name AND code = NEW.param1_uom_code) != 'angle' OR NEW.param2_auth_name != 'EPSG' OR NEW.param2_code != '8835' OR NEW.param2_name != 'Longitude of topocentric origin' OR NEW.param2_value IS NULL OR NEW.param2_uom_auth_name IS NULL OR NEW.param2_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param2_uom_auth_name AND code = NEW.param2_uom_code) != 'angle' OR NEW.param3_auth_name != 'EPSG' OR NEW.param3_code != '8836' OR NEW.param3_name != 'Ellipsoidal height of topocentric origin' OR NEW.param3_value IS NULL OR NEW.param3_uom_auth_name IS NULL OR NEW.param3_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param3_uom_auth_name AND code = NEW.param3_uom_code) != 'length' OR NEW.param4_auth_name != 'EPSG' OR NEW.param4_code != '8840' OR NEW.param4_name != 'Viewpoint height' OR NEW.param4_value IS NULL OR NEW.param4_uom_auth_name IS NULL OR NEW.param4_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param4_uom_auth_name AND code = NEW.param4_uom_code) != 'length' OR NEW.param5_auth_name IS NOT NULL OR NEW.param5_code IS NOT NULL OR NEW.param5_name IS NOT NULL OR NEW.param5_value IS NOT NULL OR NEW.param5_uom_auth_name IS NOT NULL OR NEW.param5_uom_code IS NOT NULL OR NEW.param6_auth_name IS NOT NULL OR NEW.param6_code IS NOT NULL OR NEW.param6_name IS NOT NULL OR NEW.param6_value IS NOT NULL OR NEW.param6_uom_auth_name IS NOT NULL OR NEW.param6_uom_code IS NOT NULL OR NEW.param7_auth_name IS NOT NULL OR NEW.param7_code IS NOT NULL OR NEW.param7_name IS NOT NULL OR NEW.param7_value IS NOT NULL OR NEW.param7_uom_auth_name IS NOT NULL OR NEW.param7_uom_code IS NOT NULL);
SELECT RAISE(ABORT, 'insert on conversion violates constraint: bad parameters for Lambert Azimuthal Equal Area (Spherical)')
WHERE NEW.deprecated != 1 AND NEW.method_auth_name = 'EPSG' AND NEW.method_code = '9821' AND (NEW.method_name != 'Lambert Azimuthal Equal Area (Spherical)' OR NEW.param1_auth_name != 'EPSG' OR NEW.param1_code != '8828' OR NEW.param1_name != 'Spherical latitude of origin' OR NEW.param1_value IS NULL OR NEW.param1_uom_auth_name IS NULL OR NEW.param1_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param1_uom_auth_name AND code = NEW.param1_uom_code) != 'angle' OR NEW.param2_auth_name != 'EPSG' OR NEW.param2_code != '8829' OR NEW.param2_name != 'Spherical longitude of origin' OR NEW.param2_value IS NULL OR NEW.param2_uom_auth_name IS NULL OR NEW.param2_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param2_uom_auth_name AND code = NEW.param2_uom_code) != 'angle' OR NEW.param3_auth_name != 'EPSG' OR NEW.param3_code != '8806' OR NEW.param3_name != 'False easting' OR NEW.param3_value IS NULL OR NEW.param3_uom_auth_name IS NULL OR NEW.param3_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param3_uom_auth_name AND code = NEW.param3_uom_code) != 'length' OR NEW.param4_auth_name != 'EPSG' OR NEW.param4_code != '8807' OR NEW.param4_name != 'False northing' OR NEW.param4_value IS NULL OR NEW.param4_uom_auth_name IS NULL OR NEW.param4_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param4_uom_auth_name AND code = NEW.param4_uom_code) != 'length' OR NEW.param5_auth_name IS NOT NULL OR NEW.param5_code IS NOT NULL OR NEW.param5_name IS NOT NULL OR NEW.param5_value IS NOT NULL OR NEW.param5_uom_auth_name IS NOT NULL OR NEW.param5_uom_code IS NOT NULL OR NEW.param6_auth_name IS NOT NULL OR NEW.param6_code IS NOT NULL OR NEW.param6_name IS NOT NULL OR NEW.param6_value IS NOT NULL OR NEW.param6_uom_auth_name IS NOT NULL OR NEW.param6_uom_code IS NOT NULL OR NEW.param7_auth_name IS NOT NULL OR NEW.param7_code IS NOT NULL OR NEW.param7_name IS NOT NULL OR NEW.param7_value IS NOT NULL OR NEW.param7_uom_auth_name IS NOT NULL OR NEW.param7_uom_code IS NOT NULL);
SELECT RAISE(ABORT, 'insert on conversion violates constraint: bad parameters for Lambert Cylindrical Equal Area (Spherical)')
WHERE NEW.deprecated != 1 AND NEW.method_auth_name = 'EPSG' AND NEW.method_code = '9834' AND (NEW.method_name != 'Lambert Cylindrical Equal Area (Spherical)' OR NEW.param1_auth_name != 'EPSG' OR NEW.param1_code != '8823' OR NEW.param1_name != 'Latitude of 1st standard parallel' OR NEW.param1_value IS NULL OR NEW.param1_uom_auth_name IS NULL OR NEW.param1_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param1_uom_auth_name AND code = NEW.param1_uom_code) != 'angle' OR NEW.param2_auth_name != 'EPSG' OR NEW.param2_code != '8802' OR NEW.param2_name != 'Longitude of natural origin' OR NEW.param2_value IS NULL OR NEW.param2_uom_auth_name IS NULL OR NEW.param2_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param2_uom_auth_name AND code = NEW.param2_uom_code) != 'angle' OR NEW.param3_auth_name != 'EPSG' OR NEW.param3_code != '8806' OR NEW.param3_name != 'False easting' OR NEW.param3_value IS NULL OR NEW.param3_uom_auth_name IS NULL OR NEW.param3_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param3_uom_auth_name AND code = NEW.param3_uom_code) != 'length' OR NEW.param4_auth_name != 'EPSG' OR NEW.param4_code != '8807' OR NEW.param4_name != 'False northing' OR NEW.param4_value IS NULL OR NEW.param4_uom_auth_name IS NULL OR NEW.param4_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param4_uom_auth_name AND code = NEW.param4_uom_code) != 'length' OR NEW.param5_auth_name IS NOT NULL OR NEW.param5_code IS NOT NULL OR NEW.param5_name IS NOT NULL OR NEW.param5_value IS NOT NULL OR NEW.param5_uom_auth_name IS NOT NULL OR NEW.param5_uom_code IS NOT NULL OR NEW.param6_auth_name IS NOT NULL OR NEW.param6_code IS NOT NULL OR NEW.param6_name IS NOT NULL OR NEW.param6_value IS NOT NULL OR NEW.param6_uom_auth_name IS NOT NULL OR NEW.param6_uom_code IS NOT NULL OR NEW.param7_auth_name IS NOT NULL OR NEW.param7_code IS NOT NULL OR NEW.param7_name IS NOT NULL OR NEW.param7_value IS NOT NULL OR NEW.param7_uom_auth_name IS NOT NULL OR NEW.param7_uom_code IS NOT NULL);
SELECT RAISE(ABORT, 'insert on conversion violates constraint: bad parameters for Hyperbolic Cassini-Soldner')
WHERE NEW.deprecated != 1 AND NEW.method_auth_name = 'EPSG' AND NEW.method_code = '9833' AND (NEW.method_name != 'Hyperbolic Cassini-Soldner' OR NEW.param1_auth_name != 'EPSG' OR NEW.param1_code != '8801' OR NEW.param1_name != 'Latitude of natural origin' OR NEW.param1_value IS NULL OR NEW.param1_uom_auth_name IS NULL OR NEW.param1_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param1_uom_auth_name AND code = NEW.param1_uom_code) != 'angle' OR NEW.param2_auth_name != 'EPSG' OR NEW.param2_code != '8802' OR NEW.param2_name != 'Longitude of natural origin' OR NEW.param2_value IS NULL OR NEW.param2_uom_auth_name IS NULL OR NEW.param2_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param2_uom_auth_name AND code = NEW.param2_uom_code) != 'angle' OR NEW.param3_auth_name != 'EPSG' OR NEW.param3_code != '8806' OR NEW.param3_name != 'False easting' OR NEW.param3_value IS NULL OR NEW.param3_uom_auth_name IS NULL OR NEW.param3_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param3_uom_auth_name AND code = NEW.param3_uom_code) != 'length' OR NEW.param4_auth_name != 'EPSG' OR NEW.param4_code != '8807' OR NEW.param4_name != 'False northing' OR NEW.param4_value IS NULL OR NEW.param4_uom_auth_name IS NULL OR NEW.param4_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param4_uom_auth_name AND code = NEW.param4_uom_code) != 'length' OR NEW.param5_auth_name IS NOT NULL OR NEW.param5_code IS NOT NULL OR NEW.param5_name IS NOT NULL OR NEW.param5_value IS NOT NULL OR NEW.param5_uom_auth_name IS NOT NULL OR NEW.param5_uom_code IS NOT NULL OR NEW.param6_auth_name IS NOT NULL OR NEW.param6_code IS NOT NULL OR NEW.param6_name IS NOT NULL OR NEW.param6_value IS NOT NULL OR NEW.param6_uom_auth_name IS NOT NULL OR NEW.param6_uom_code IS NOT NULL OR NEW.param7_auth_name IS NOT NULL OR NEW.param7_code IS NOT NULL OR NEW.param7_name IS NOT NULL OR NEW.param7_value IS NOT NULL OR NEW.param7_uom_auth_name IS NOT NULL OR NEW.param7_uom_code IS NOT NULL);
SELECT RAISE(ABORT, 'insert on conversion violates constraint: bad parameters for Lambert Conic Conformal (2SP Belgium)')
WHERE NEW.deprecated != 1 AND NEW.method_auth_name = 'EPSG' AND NEW.method_code = '9803' AND (NEW.method_name != 'Lambert Conic Conformal (2SP Belgium)' OR NEW.param1_auth_name != 'EPSG' OR NEW.param1_code != '8821' OR NEW.param1_name != 'Latitude of false origin' OR NEW.param1_value IS NULL OR NEW.param1_uom_auth_name IS NULL OR NEW.param1_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param1_uom_auth_name AND code = NEW.param1_uom_code) != 'angle' OR NEW.param2_auth_name != 'EPSG' OR NEW.param2_code != '8822' OR NEW.param2_name != 'Longitude of false origin' OR NEW.param2_value IS NULL OR NEW.param2_uom_auth_name IS NULL OR NEW.param2_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param2_uom_auth_name AND code = NEW.param2_uom_code) != 'angle' OR NEW.param3_auth_name != 'EPSG' OR NEW.param3_code != '8823' OR NEW.param3_name != 'Latitude of 1st standard parallel' OR NEW.param3_value IS NULL OR NEW.param3_uom_auth_name IS NULL OR NEW.param3_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param3_uom_auth_name AND code = NEW.param3_uom_code) != 'angle' OR NEW.param4_auth_name != 'EPSG' OR NEW.param4_code != '8824' OR NEW.param4_name != 'Latitude of 2nd standard parallel' OR NEW.param4_value IS NULL OR NEW.param4_uom_auth_name IS NULL OR NEW.param4_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param4_uom_auth_name AND code = NEW.param4_uom_code) != 'angle' OR NEW.param5_auth_name != 'EPSG' OR NEW.param5_code != '8826' OR NEW.param5_name != 'Easting at false origin' OR NEW.param5_value IS NULL OR NEW.param5_uom_auth_name IS NULL OR NEW.param5_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param5_uom_auth_name AND code = NEW.param5_uom_code) != 'length' OR NEW.param6_auth_name != 'EPSG' OR NEW.param6_code != '8827' OR NEW.param6_name != 'Northing at false origin' OR NEW.param6_value IS NULL OR NEW.param6_uom_auth_name IS NULL OR NEW.param6_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param6_uom_auth_name AND code = NEW.param6_uom_code) != 'length' OR NEW.param7_auth_name IS NOT NULL OR NEW.param7_code IS NOT NULL OR NEW.param7_name IS NOT NULL OR NEW.param7_value IS NOT NULL OR NEW.param7_uom_auth_name IS NOT NULL OR NEW.param7_uom_code IS NOT NULL);
SELECT RAISE(ABORT, 'insert on conversion violates constraint: bad parameters for New Zealand Map Grid')
WHERE NEW.deprecated != 1 AND NEW.method_auth_name = 'EPSG' AND NEW.method_code = '9811' AND (NEW.method_name != 'New Zealand Map Grid' OR NEW.param1_auth_name != 'EPSG' OR NEW.param1_code != '8801' OR NEW.param1_name != 'Latitude of natural origin' OR NEW.param1_value IS NULL OR NEW.param1_uom_auth_name IS NULL OR NEW.param1_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param1_uom_auth_name AND code = NEW.param1_uom_code) != 'angle' OR NEW.param2_auth_name != 'EPSG' OR NEW.param2_code != '8802' OR NEW.param2_name != 'Longitude of natural origin' OR NEW.param2_value IS NULL OR NEW.param2_uom_auth_name IS NULL OR NEW.param2_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param2_uom_auth_name AND code = NEW.param2_uom_code) != 'angle' OR NEW.param3_auth_name != 'EPSG' OR NEW.param3_code != '8806' OR NEW.param3_name != 'False easting' OR NEW.param3_value IS NULL OR NEW.param3_uom_auth_name IS NULL OR NEW.param3_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param3_uom_auth_name AND code = NEW.param3_uom_code) != 'length' OR NEW.param4_auth_name != 'EPSG' OR NEW.param4_code != '8807' OR NEW.param4_name != 'False northing' OR NEW.param4_value IS NULL OR NEW.param4_uom_auth_name IS NULL OR NEW.param4_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param4_uom_auth_name AND code = NEW.param4_uom_code) != 'length' OR NEW.param5_auth_name IS NOT NULL OR NEW.param5_code IS NOT NULL OR NEW.param5_name IS NOT NULL OR NEW.param5_value IS NOT NULL OR NEW.param5_uom_auth_name IS NOT NULL OR NEW.param5_uom_code IS NOT NULL OR NEW.param6_auth_name IS NOT NULL OR NEW.param6_code IS NOT NULL OR NEW.param6_name IS NOT NULL OR NEW.param6_value IS NOT NULL OR NEW.param6_uom_auth_name IS NOT NULL OR NEW.param6_uom_code IS NOT NULL OR NEW.param7_auth_name IS NOT NULL OR NEW.param7_code IS NOT NULL OR NEW.param7_name IS NOT NULL OR NEW.param7_value IS NOT NULL OR NEW.param7_uom_auth_name IS NOT NULL OR NEW.param7_uom_code IS NOT NULL);
SELECT RAISE(ABORT, 'insert on conversion violates constraint: bad parameters for Tunisia Mining Grid')
WHERE NEW.deprecated != 1 AND NEW.method_auth_name = 'EPSG' AND NEW.method_code = '9816' AND (NEW.method_name != 'Tunisia Mining Grid' OR NEW.param1_auth_name != 'EPSG' OR NEW.param1_code != '8821' OR NEW.param1_name != 'Latitude of false origin' OR NEW.param1_value IS NULL OR NEW.param1_uom_auth_name IS NULL OR NEW.param1_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param1_uom_auth_name AND code = NEW.param1_uom_code) != 'angle' OR NEW.param2_auth_name != 'EPSG' OR NEW.param2_code != '8822' OR NEW.param2_name != 'Longitude of false origin' OR NEW.param2_value IS NULL OR NEW.param2_uom_auth_name IS NULL OR NEW.param2_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param2_uom_auth_name AND code = NEW.param2_uom_code) != 'angle' OR NEW.param3_auth_name != 'EPSG' OR NEW.param3_code != '8826' OR NEW.param3_name != 'Easting at false origin' OR NEW.param3_value IS NULL OR NEW.param3_uom_auth_name IS NULL OR NEW.param3_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param3_uom_auth_name AND code = NEW.param3_uom_code) != 'length' OR NEW.param4_auth_name != 'EPSG' OR NEW.param4_code != '8827' OR NEW.param4_name != 'Northing at false origin' OR NEW.param4_value IS NULL OR NEW.param4_uom_auth_name IS NULL OR NEW.param4_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param4_uom_auth_name AND code = NEW.param4_uom_code) != 'length' OR NEW.param5_auth_name IS NOT NULL OR NEW.param5_code IS NOT NULL OR NEW.param5_name IS NOT NULL OR NEW.param5_value IS NOT NULL OR NEW.param5_uom_auth_name IS NOT NULL OR NEW.param5_uom_code IS NOT NULL OR NEW.param6_auth_name IS NOT NULL OR NEW.param6_code IS NOT NULL OR NEW.param6_name IS NOT NULL OR NEW.param6_value IS NOT NULL OR NEW.param6_uom_auth_name IS NOT NULL OR NEW.param6_uom_code IS NOT NULL OR NEW.param7_auth_name IS NOT NULL OR NEW.param7_code IS NOT NULL OR NEW.param7_name IS NOT NULL OR NEW.param7_value IS NOT NULL OR NEW.param7_uom_auth_name IS NOT NULL OR NEW.param7_uom_code IS NOT NULL);
SELECT RAISE(ABORT, 'insert on conversion violates constraint: bad parameters for Lambert Conic Near-Conformal')
WHERE NEW.deprecated != 1 AND NEW.method_auth_name = 'EPSG' AND NEW.method_code = '9817' AND (NEW.method_name != 'Lambert Conic Near-Conformal' OR NEW.param1_auth_name != 'EPSG' OR NEW.param1_code != '8801' OR NEW.param1_name != 'Latitude of natural origin' OR NEW.param1_value IS NULL OR NEW.param1_uom_auth_name IS NULL OR NEW.param1_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param1_uom_auth_name AND code = NEW.param1_uom_code) != 'angle' OR NEW.param2_auth_name != 'EPSG' OR NEW.param2_code != '8802' OR NEW.param2_name != 'Longitude of natural origin' OR NEW.param2_value IS NULL OR NEW.param2_uom_auth_name IS NULL OR NEW.param2_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param2_uom_auth_name AND code = NEW.param2_uom_code) != 'angle' OR NEW.param3_auth_name != 'EPSG' OR NEW.param3_code != '8805' OR NEW.param3_name != 'Scale factor at natural origin' OR NEW.param3_value IS NULL OR NEW.param3_uom_auth_name IS NULL OR NEW.param3_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param3_uom_auth_name AND code = NEW.param3_uom_code) != 'scale' OR NEW.param4_auth_name != 'EPSG' OR NEW.param4_code != '8806' OR NEW.param4_name != 'False easting' OR NEW.param4_value IS NULL OR NEW.param4_uom_auth_name IS NULL OR NEW.param4_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param4_uom_auth_name AND code = NEW.param4_uom_code) != 'length' OR NEW.param5_auth_name != 'EPSG' OR NEW.param5_code != '8807' OR NEW.param5_name != 'False northing' OR NEW.param5_value IS NULL OR NEW.param5_uom_auth_name IS NULL OR NEW.param5_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param5_uom_auth_name AND code = NEW.param5_uom_code) != 'length' OR NEW.param6_auth_name IS NOT NULL OR NEW.param6_code IS NOT NULL OR NEW.param6_name IS NOT NULL OR NEW.param6_value IS NOT NULL OR NEW.param6_uom_auth_name IS NOT NULL OR NEW.param6_uom_code IS NOT NULL OR NEW.param7_auth_name IS NOT NULL OR NEW.param7_code IS NOT NULL OR NEW.param7_name IS NOT NULL OR NEW.param7_value IS NOT NULL OR NEW.param7_uom_auth_name IS NOT NULL OR NEW.param7_uom_code IS NOT NULL);
SELECT RAISE(ABORT, 'insert on conversion violates constraint: bad parameters for Equidistant Cylindrical (Spherical)')
WHERE NEW.deprecated != 1 AND NEW.method_auth_name = 'EPSG' AND NEW.method_code = '9823' AND (NEW.method_name != 'Equidistant Cylindrical (Spherical)' OR NEW.param1_auth_name != 'EPSG' OR NEW.param1_code != '8801' OR NEW.param1_name != 'Latitude of natural origin' OR NEW.param1_value IS NULL OR NEW.param1_uom_auth_name IS NULL OR NEW.param1_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param1_uom_auth_name AND code = NEW.param1_uom_code) != 'angle' OR NEW.param2_auth_name != 'EPSG' OR NEW.param2_code != '8802' OR NEW.param2_name != 'Longitude of natural origin' OR NEW.param2_value IS NULL OR NEW.param2_uom_auth_name IS NULL OR NEW.param2_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param2_uom_auth_name AND code = NEW.param2_uom_code) != 'angle' OR NEW.param3_auth_name != 'EPSG' OR NEW.param3_code != '8806' OR NEW.param3_name != 'False easting' OR NEW.param3_value IS NULL OR NEW.param3_uom_auth_name IS NULL OR NEW.param3_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param3_uom_auth_name AND code = NEW.param3_uom_code) != 'length' OR NEW.param4_auth_name != 'EPSG' OR NEW.param4_code != '8807' OR NEW.param4_name != 'False northing' OR NEW.param4_value IS NULL OR NEW.param4_uom_auth_name IS NULL OR NEW.param4_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param4_uom_auth_name AND code = NEW.param4_uom_code) != 'length' OR NEW.param5_auth_name IS NOT NULL OR NEW.param5_code IS NOT NULL OR NEW.param5_name IS NOT NULL OR NEW.param5_value IS NOT NULL OR NEW.param5_uom_auth_name IS NOT NULL OR NEW.param5_uom_code IS NOT NULL OR NEW.param6_auth_name IS NOT NULL OR NEW.param6_code IS NOT NULL OR NEW.param6_name IS NOT NULL OR NEW.param6_value IS NOT NULL OR NEW.param6_uom_auth_name IS NOT NULL OR NEW.param6_uom_code IS NOT NULL OR NEW.param7_auth_name IS NOT NULL OR NEW.param7_code IS NOT NULL OR NEW.param7_name IS NOT NULL OR NEW.param7_value IS NOT NULL OR NEW.param7_uom_auth_name IS NOT NULL OR NEW.param7_uom_code IS NOT NULL);
SELECT RAISE(ABORT, 'insert on conversion violates constraint: bad parameters for Polar Stereographic (variant C)')
WHERE NEW.deprecated != 1 AND NEW.method_auth_name = 'EPSG' AND NEW.method_code = '9830' AND (NEW.method_name != 'Polar Stereographic (variant C)' OR NEW.param1_auth_name != 'EPSG' OR NEW.param1_code != '8832' OR NEW.param1_name != 'Latitude of standard parallel' OR NEW.param1_value IS NULL OR NEW.param1_uom_auth_name IS NULL OR NEW.param1_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param1_uom_auth_name AND code = NEW.param1_uom_code) != 'angle' OR NEW.param2_auth_name != 'EPSG' OR NEW.param2_code != '8833' OR NEW.param2_name != 'Longitude of origin' OR NEW.param2_value IS NULL OR NEW.param2_uom_auth_name IS NULL OR NEW.param2_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param2_uom_auth_name AND code = NEW.param2_uom_code) != 'angle' OR NEW.param3_auth_name != 'EPSG' OR NEW.param3_code != '8826' OR NEW.param3_name != 'Easting at false origin' OR NEW.param3_value IS NULL OR NEW.param3_uom_auth_name IS NULL OR NEW.param3_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param3_uom_auth_name AND code = NEW.param3_uom_code) != 'length' OR NEW.param4_auth_name != 'EPSG' OR NEW.param4_code != '8827' OR NEW.param4_name != 'Northing at false origin' OR NEW.param4_value IS NULL OR NEW.param4_uom_auth_name IS NULL OR NEW.param4_uom_code IS NULL OR (SELECT type FROM unit_of_measure WHERE auth_name = NEW.param4_uom_auth_name AND code = NEW.param4_uom_code) != 'length' OR NEW.param5_auth_name IS NOT NULL OR NEW.param5_code IS NOT NULL OR NEW.param5_name IS NOT NULL OR NEW.param5_value IS NOT NULL OR NEW.param5_uom_auth_name IS NOT NULL OR NEW.param5_uom_code IS NOT NULL OR NEW.param6_auth_name IS NOT NULL OR NEW.param6_code IS NOT NULL OR NEW.param6_name IS NOT NULL OR NEW.param6_value IS NOT NULL OR NEW.param6_uom_auth_name IS NOT NULL OR NEW.param6_uom_code IS NOT NULL OR NEW.param7_auth_name IS NOT NULL OR NEW.param7_code IS NOT NULL OR NEW.param7_name IS NOT NULL OR NEW.param7_value IS NOT NULL OR NEW.param7_uom_auth_name IS NOT NULL OR NEW.param7_uom_code IS NOT NULL);
END;
-136
View File
@@ -1,136 +0,0 @@
--- This file has been generated by scripts/build_db.py. DO NOT EDIT !
INSERT INTO "coordinate_system" VALUES('EPSG','1024','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','1025','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','1026','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','1027','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','1028','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','1029','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','1030','vertical',1);
INSERT INTO "coordinate_system" VALUES('EPSG','1031','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','1032','Cartesian',3);
INSERT INTO "coordinate_system" VALUES('EPSG','1033','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','1034','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','1035','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','1036','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','1037','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','1038','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','1039','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','1040','Cartesian',3);
INSERT INTO "coordinate_system" VALUES('EPSG','1041','Cartesian',3);
INSERT INTO "coordinate_system" VALUES('EPSG','1042','Cartesian',3);
INSERT INTO "coordinate_system" VALUES('EPSG','1043','vertical',1);
INSERT INTO "coordinate_system" VALUES('EPSG','1044','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','1045','Cartesian',3);
INSERT INTO "coordinate_system" VALUES('EPSG','1047','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','1048','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','1049','vertical',1);
INSERT INTO "coordinate_system" VALUES('EPSG','1050','vertical',1);
INSERT INTO "coordinate_system" VALUES('EPSG','4400','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','4401','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','4402','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','4403','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','4404','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','4405','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','4406','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','4407','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','4408','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','4409','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','4410','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','4460','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','4461','Cartesian',3);
INSERT INTO "coordinate_system" VALUES('EPSG','4462','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','4463','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','4464','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','4465','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','4466','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','4467','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','4468','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','4469','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','4470','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','4471','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','4472','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','4473','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','4474','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','4475','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','4476','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','4477','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','4478','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','4479','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','4480','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','4481','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','4482','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','4483','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','4484','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','4485','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','4486','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','4487','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','4488','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','4489','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','4490','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','4491','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','4492','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','4493','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','4494','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','4495','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','4496','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','4497','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','4498','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','4499','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','4500','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','4501','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','4502','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','4530','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','4531','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','4532','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','4533','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','4534','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','6401','ellipsoidal',3);
INSERT INTO "coordinate_system" VALUES('EPSG','6402','ellipsoidal',2);
INSERT INTO "coordinate_system" VALUES('EPSG','6403','ellipsoidal',2);
INSERT INTO "coordinate_system" VALUES('EPSG','6404','spherical',3);
INSERT INTO "coordinate_system" VALUES('EPSG','6405','ellipsoidal',2);
INSERT INTO "coordinate_system" VALUES('EPSG','6406','ellipsoidal',2);
INSERT INTO "coordinate_system" VALUES('EPSG','6407','ellipsoidal',2);
INSERT INTO "coordinate_system" VALUES('EPSG','6408','ellipsoidal',2);
INSERT INTO "coordinate_system" VALUES('EPSG','6409','ellipsoidal',2);
INSERT INTO "coordinate_system" VALUES('EPSG','6410','ellipsoidal',2);
INSERT INTO "coordinate_system" VALUES('EPSG','6411','ellipsoidal',2);
INSERT INTO "coordinate_system" VALUES('EPSG','6412','ellipsoidal',2);
INSERT INTO "coordinate_system" VALUES('EPSG','6413','ellipsoidal',3);
INSERT INTO "coordinate_system" VALUES('EPSG','6414','ellipsoidal',3);
INSERT INTO "coordinate_system" VALUES('EPSG','6415','ellipsoidal',3);
INSERT INTO "coordinate_system" VALUES('EPSG','6416','ellipsoidal',3);
INSERT INTO "coordinate_system" VALUES('EPSG','6417','ellipsoidal',3);
INSERT INTO "coordinate_system" VALUES('EPSG','6418','ellipsoidal',3);
INSERT INTO "coordinate_system" VALUES('EPSG','6419','ellipsoidal',3);
INSERT INTO "coordinate_system" VALUES('EPSG','6420','ellipsoidal',3);
INSERT INTO "coordinate_system" VALUES('EPSG','6421','ellipsoidal',3);
INSERT INTO "coordinate_system" VALUES('EPSG','6422','ellipsoidal',2);
INSERT INTO "coordinate_system" VALUES('EPSG','6423','ellipsoidal',3);
INSERT INTO "coordinate_system" VALUES('EPSG','6424','ellipsoidal',2);
INSERT INTO "coordinate_system" VALUES('EPSG','6425','ellipsoidal',2);
INSERT INTO "coordinate_system" VALUES('EPSG','6426','ellipsoidal',3);
INSERT INTO "coordinate_system" VALUES('EPSG','6427','ellipsoidal',3);
INSERT INTO "coordinate_system" VALUES('EPSG','6428','ellipsoidal',2);
INSERT INTO "coordinate_system" VALUES('EPSG','6429','ellipsoidal',2);
INSERT INTO "coordinate_system" VALUES('EPSG','6430','ellipsoidal',3);
INSERT INTO "coordinate_system" VALUES('EPSG','6431','ellipsoidal',3);
INSERT INTO "coordinate_system" VALUES('EPSG','6495','vertical',1);
INSERT INTO "coordinate_system" VALUES('EPSG','6496','vertical',1);
INSERT INTO "coordinate_system" VALUES('EPSG','6497','vertical',1);
INSERT INTO "coordinate_system" VALUES('EPSG','6498','vertical',1);
INSERT INTO "coordinate_system" VALUES('EPSG','6499','vertical',1);
INSERT INTO "coordinate_system" VALUES('EPSG','6500','Cartesian',3);
INSERT INTO "coordinate_system" VALUES('EPSG','6501','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','6502','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','6503','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','6504','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','6505','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','6506','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','6507','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','6508','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','6509','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','6510','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','6511','Cartesian',2);
INSERT INTO "coordinate_system" VALUES('EPSG','6512','Cartesian',3);
-116
View File
@@ -1,116 +0,0 @@
-- This file is hand generated.
INSERT INTO "geodetic_crs" VALUES('OGC','CRS84','WGS 84 (CRS84)',NULL,NULL,'geographic 2D','EPSG','6424','EPSG','6326','EPSG','1262',NULL,0);
INSERT INTO "other_transformation" VALUES('PROJ','CRS84_TO_EPSG_4326','OGC:CRS84 to WGS 84',NULL,NULL,'EPSG','9843','Axis Order Reversal (2D)','OGC','CRS84','EPSG','4326','EPSG','1262',0.0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
-- alias of EPSG:3857
INSERT INTO "projected_crs" VALUES('EPSG','900913','Google Maps Global Mercator',NULL,NULL,'EPSG','4499','EPSG','4326','EPSG','3856','EPSG','3544',NULL,1);
-- ('EPSG','7001','ETRS89 to NAP height (1)') lacks an interpolationCRS with Amersfoort / EPSG:4289
-- See https://salsa.debian.org/debian-gis-team/proj-rdnap/blob/debian/2008-8/Use%20of%20RDTRANS2008%20and%20NAPTRANS2008.pdf
-- "The naptrans2008 VDatum-grid is referenced to the Bessel-1841 ellipsoid"
CREATE TABLE dummy(foo);
CREATE TRIGGER check_grid_transformation_epsg_7001
BEFORE INSERT ON dummy
FOR EACH ROW BEGIN
SELECT RAISE(ABORT, 'grid_transformation EPSG:7001 entry is not ETRS89 to NAP height (1)')
WHERE NOT EXISTS(SELECT 1 FROM grid_transformation WHERE auth_name = 'EPSG' AND code = '7001' AND name = 'ETRS89 to NAP height (1)');
SELECT RAISE(ABORT, 'grid_transformation EPSG:7001 entry has already an interpolationCRS')
WHERE EXISTS(SELECT 1 FROM grid_transformation WHERE auth_name = 'EPSG' AND code = '7001' AND interpolation_crs_auth_name IS NOT NULL);
END;
INSERT INTO dummy DEFAULT VALUES;
DROP TRIGGER check_grid_transformation_epsg_7001;
DROP TABLE dummy;
UPDATE grid_transformation SET interpolation_crs_auth_name = 'EPSG',
interpolation_crs_code = '4289'
WHERE auth_name = 'EPSG' AND code = '7001';
-- EPSG:1312 'NAD27 to NAD83 (3)' / NTv1_0.gsb has a accuracy of 1m whereas
-- EPSG:1313 'NAD27 to NAD83 (4)' / NTv2_0.gsb has a accuracy of 1.5m
-- so we will never select automatically NTv2_0.gsb. Worse the advertize
-- accuracy of the NTv1 method
UPDATE grid_transformation SET accuracy = 2.0 WHERE auth_name = 'EPSG' AND code = '1312';
-- Same for EPSG:1462 vs EPSG:1573
UPDATE grid_transformation SET accuracy = 2.0 WHERE auth_name = 'EPSG' AND code = '1462';
-- Define the allowed authorities, and their precedence, when researching a
-- coordinate operation
INSERT INTO authority_to_authority_preference(source_auth_name, target_auth_name, allowed_authorities) VALUES
('any', 'EPSG', 'PROJ,EPSG,any' );
INSERT INTO authority_to_authority_preference(source_auth_name, target_auth_name, allowed_authorities) VALUES
('EPSG', 'EPSG', 'PROJ,EPSG' );
INSERT INTO authority_to_authority_preference(source_auth_name, target_auth_name, allowed_authorities) VALUES
('PROJ', 'EPSG', 'PROJ,EPSG' );
INSERT INTO authority_to_authority_preference(source_auth_name, target_auth_name, allowed_authorities) VALUES
('IGNF', 'EPSG', 'PROJ,IGNF,EPSG' );
INSERT INTO authority_to_authority_preference(source_auth_name, target_auth_name, allowed_authorities) VALUES
('ESRI', 'EPSG', 'PROJ,ESRI,EPSG' );
-- Custom ellipsoids (from proj -le)
INSERT INTO "ellipsoid" VALUES('PROJ','ANDRAE','Andrae 1876 (Denmark, Iceland)',NULL,'PROJ','EARTH',6377104.43,'EPSG','9001',300.0,NULL,0);
INSERT INTO "ellipsoid" VALUES('PROJ','CPM','Comité international des poids et mesures 1799',NULL,'PROJ','EARTH',6375738.7,'EPSG','9001',334.29,NULL,0);
INSERT INTO "ellipsoid" VALUES('PROJ','DELMBR','Delambre 1810 (Belgium)',NULL,'PROJ','EARTH',6376428.0,'EPSG','9001',311.5,NULL,0);
INSERT INTO "ellipsoid" VALUES('PROJ','KAULA','Kaula 1961',NULL,'PROJ','EARTH',6378163.0,'EPSG','9001',298.24,NULL,0);
INSERT INTO "ellipsoid" VALUES('PROJ','LERCH','Lerch 1979',NULL,'PROJ','EARTH',6378139.0,'EPSG','9001',298.257,NULL,0);
INSERT INTO "ellipsoid" VALUES('PROJ','MERIT','MERIT 1983',NULL,'PROJ','EARTH',6378137.0,'EPSG','9001',298.257,NULL,0);
INSERT INTO "ellipsoid" VALUES('PROJ','MPRTS','Maupertius 1738',NULL,'PROJ','EARTH',6397300.0,'EPSG','9001',191.0,NULL,0);
INSERT INTO "ellipsoid" VALUES('PROJ','NEW_INTL','New International 1967',NULL,'PROJ','EARTH',6378157.5,'EPSG','9001',NULL,6356772.2,0);
INSERT INTO "ellipsoid" VALUES('PROJ','WGS60','WGS 60',NULL,'PROJ','EARTH',6378165.0,'EPSG','9001',298.3,NULL,0);
-- Extra ellipsoids from IAU2000 dictionary (see https://github.com/USGS-Astrogeology/GDAL_scripts/blob/master/OGC_IAU2000_WKT_v2/naifcodes_radii_m_wAsteroids_IAU2000.csv)
INSERT INTO "ellipsoid" VALUES('PROJ','EARTH2000','Earth2000',NULL,'PROJ','EARTH',6378140.0,'EPSG','9001',NULL,6356750.0,0);
-- Coordinate system ENh for ProjectedCRS 3D. Should be removed once EPSG has such a coordinate system
INSERT INTO "coordinate_system" VALUES('PROJ','ENh','Cartesian',3);
INSERT INTO "axis" VALUES('PROJ','1','Easting','E','east','PROJ','ENh',1,'EPSG','9001');
INSERT INTO "axis" VALUES('PROJ','2','Northing','N','north','PROJ','ENh',2,'EPSG','9001');
INSERT INTO "axis" VALUES('PROJ','3','Ellipsoidal height','h','up','PROJ','ENh',2,'EPSG','9001');
-- Consider all WGS84 related CRS are equivalent with an accuracy of 2m
INSERT INTO "helmert_transformation" VALUES('PROJ','WGS84_TO_WGS84_G730','WGS 84 to WGS 84 (G730)','','Accuracy 2m','EPSG','9603','Geocentric translations (geog2D domain)','EPSG','4326','EPSG','9053','EPSG','1262',2.0,0,0,0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'',0);
INSERT INTO "helmert_transformation" VALUES('PROJ','WGS84_TO_WGS84_G873','WGS 84 to WGS 84 (G873)','','Accuracy 2m','EPSG','9603','Geocentric translations (geog2D domain)','EPSG','4326','EPSG','9054','EPSG','1262',2.0,0,0,0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'',0);
INSERT INTO "helmert_transformation" VALUES('PROJ','WGS84_TO_WGS84_G1150','WGS 84 to WGS 84 (G1150)','','Accuracy 2m','EPSG','9603','Geocentric translations (geog2D domain)','EPSG','4326','EPSG','9055','EPSG','1262',2.0,0,0,0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'',0);
INSERT INTO "helmert_transformation" VALUES('PROJ','WGS84_TO_WGS84_G1674','WGS 84 to WGS 84 (G1674)','','Accuracy 2m','EPSG','9603','Geocentric translations (geog2D domain)','EPSG','4326','EPSG','9056','EPSG','1262',2.0,0,0,0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'',0);
INSERT INTO "helmert_transformation" VALUES('PROJ','WGS84_TO_WGS84_G1762','WGS 84 to WGS 84 (G1762)','','Accuracy 2m','EPSG','9603','Geocentric translations (geog2D domain)','EPSG','4326','EPSG','9057','EPSG','1262',2.0,0,0,0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'',0);
INSERT INTO "helmert_transformation" VALUES('PROJ','WGS84_TO_WGS84_TRANSIT','WGS 84 to WGS 84 (Transit)','','Accuracy 2m','EPSG','9603','Geocentric translations (geog2D domain)','EPSG','4326','EPSG','8888','EPSG','1262',2.0,0,0,0,'EPSG','9001',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'',0);
---- Geoid models -----
INSERT INTO "geoid_model" SELECT 'GEOID99', auth_name, code FROM grid_transformation WHERE auth_name = 'EPSG' AND grid_name LIKE 'g1999%' AND deprecated = 0;
INSERT INTO "geoid_model" SELECT 'GEOID03', auth_name, code FROM grid_transformation WHERE auth_name = 'EPSG' AND grid_name LIKE 'geoid03%' AND deprecated = 0;
INSERT INTO "geoid_model" SELECT 'GEOID06', auth_name, code FROM grid_transformation WHERE auth_name = 'EPSG' AND grid_name LIKE 'geoid06%' AND deprecated = 0;
INSERT INTO "geoid_model" SELECT 'GEOID09', auth_name, code FROM grid_transformation WHERE auth_name = 'EPSG' AND grid_name LIKE 'geoid09%' AND deprecated = 0;
-- Geoid12A and Geoid12B are identical
INSERT INTO "geoid_model" SELECT 'GEOID12A', auth_name, code FROM grid_transformation WHERE auth_name = 'EPSG' AND grid_name LIKE 'g2012b%' AND deprecated = 0;
INSERT INTO "geoid_model" SELECT 'GEOID12B', auth_name, code FROM grid_transformation WHERE auth_name = 'EPSG' AND grid_name LIKE 'g2012b%' AND deprecated = 0;
INSERT INTO "geoid_model" SELECT 'GEOID18', auth_name, code FROM grid_transformation WHERE auth_name = 'EPSG' AND grid_name LIKE 'g2018%' AND deprecated = 0;
---- PROJ historic +datum aliases -----
INSERT INTO "alias_name" VALUES('geodetic_datum','EPSG','6326','WGS84','PROJ');
INSERT INTO "alias_name" VALUES('geodetic_datum','EPSG','6121','GGRS87','PROJ');
INSERT INTO "alias_name" VALUES('geodetic_datum','EPSG','6269','NAD83','PROJ');
INSERT INTO "alias_name" VALUES('geodetic_datum','EPSG','6267','NAD27','PROJ');
INSERT INTO "alias_name" VALUES('geodetic_datum','EPSG','6314','potsdam','PROJ');
INSERT INTO "alias_name" VALUES('geodetic_datum','EPSG','6223','carthage','PROJ');
INSERT INTO "alias_name" VALUES('geodetic_datum','EPSG','6312','hermannskogel','PROJ');
INSERT INTO "alias_name" VALUES('geodetic_datum','EPSG','6299','ire65','PROJ');
INSERT INTO "alias_name" VALUES('geodetic_datum','EPSG','6272','nzgd49','PROJ');
INSERT INTO "alias_name" VALUES('geodetic_datum','EPSG','6277','OSGB36','PROJ');
-456
View File
@@ -1,456 +0,0 @@
--- This file has been generated by scripts/build_db.py. DO NOT EDIT !
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','2156','EPSG','2195','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','2291','EPSG','2292','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4035','EPSG','4047','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4226','EPSG','4142','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','31462','EPSG','31466','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','31463','EPSG','31467','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','31464','EPSG','31468','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','31465','EPSG','31469','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','31265','EPSG','31275','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','31266','EPSG','31276','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','31267','EPSG','31277','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','31268','EPSG','31278','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','31278','EPSG','31279','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','31291','EPSG','31281','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','31292','EPSG','31282','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','31293','EPSG','31283','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','31294','EPSG','31284','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','31295','EPSG','31285','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','31296','EPSG','31286','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','31297','EPSG','31287','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','29900','EPSG','29902','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','2155','EPSG','2194','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4226','EPSG','4143','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4172','EPSG','4190','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','27581','EPSG','27571','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','27582','EPSG','27572','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','27583','EPSG','27573','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','27584','EPSG','27574','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','27591','EPSG','27561','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','27592','EPSG','27562','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','27593','EPSG','27563','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','27594','EPSG','27564','EPSG');
INSERT INTO "deprecation" VALUES('compound_crs','EPSG','7401','EPSG','7411','EPSG');
INSERT INTO "deprecation" VALUES('compound_crs','EPSG','7402','EPSG','7412','EPSG');
INSERT INTO "deprecation" VALUES('compound_crs','EPSG','7403','EPSG','7413','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','32036','EPSG','2204','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','26979','EPSG','2205','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4228','EPSG','4192','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4260','EPSG','4193','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','22832','EPSG','2214','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4287','EPSG','4194','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','32074','EPSG','32064','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','32075','EPSG','32065','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','32076','EPSG','32066','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','32077','EPSG','32067','EPSG');
INSERT INTO "deprecation" VALUES('vertical_crs','EPSG','5704','EPSG','5736','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','21473','EPSG','21453','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','21474','EPSG','21454','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','21475','EPSG','21455','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','21476','EPSG','21456','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','21477','EPSG','21457','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','21478','EPSG','21458','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','21479','EPSG','21459','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','21480','EPSG','21460','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','21481','EPSG','21461','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','21482','EPSG','21462','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','21483','EPSG','21463','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','2199','EPSG','2462','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','2166','EPSG','2397','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','2167','EPSG','2398','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','2168','EPSG','2399','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','2091','EPSG','2395','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','2092','EPSG','2396','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','20092','EPSG','2491','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','20091','EPSG','2490','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','20090','EPSG','2489','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','20089','EPSG','2488','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','20088','EPSG','2487','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','20087','EPSG','2486','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','20086','EPSG','2485','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','20085','EPSG','2484','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','20084','EPSG','2483','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','20083','EPSG','2482','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','20082','EPSG','2481','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','20081','EPSG','2480','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','20080','EPSG','2479','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','20079','EPSG','2478','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','20078','EPSG','2477','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','20077','EPSG','2476','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','20076','EPSG','2475','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','20075','EPSG','2474','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','20074','EPSG','2473','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','20073','EPSG','2472','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','20072','EPSG','2471','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','20071','EPSG','2470','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','20070','EPSG','2469','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','20069','EPSG','2468','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','20068','EPSG','2467','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','20067','EPSG','2466','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','20066','EPSG','2465','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','20065','EPSG','2464','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','20064','EPSG','2463','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','28462','EPSG','2492','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','28463','EPSG','2493','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','28464','EPSG','2494','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','28465','EPSG','2495','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','28466','EPSG','2496','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','28467','EPSG','2497','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','28468','EPSG','2498','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','28469','EPSG','2499','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','28470','EPSG','2500','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','28471','EPSG','2501','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','28472','EPSG','2502','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','28473','EPSG','2503','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','28474','EPSG','2504','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','28475','EPSG','2505','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','28476','EPSG','2506','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','28477','EPSG','2507','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','28478','EPSG','2508','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','28479','EPSG','2509','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','28480','EPSG','2510','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','28481','EPSG','2511','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','28482','EPSG','2512','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','28483','EPSG','2513','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','28484','EPSG','2514','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','28485','EPSG','2515','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','28486','EPSG','2516','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','28487','EPSG','2517','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','28488','EPSG','2518','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','28489','EPSG','2519','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','28490','EPSG','2520','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','28491','EPSG','2521','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','28492','EPSG','2522','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4294','EPSG','4613','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4125','EPSG','4613','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','2550','EPSG','2933','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4185','EPSG','4615','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4185','EPSG','4616','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','2191','EPSG','2942','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','2191','EPSG','2943','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4140','EPSG','4617','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','2147','EPSG','2952','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','2140','EPSG','2945','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','2141','EPSG','2946','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','2142','EPSG','2947','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','2143','EPSG','2948','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','2144','EPSG','2949','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','2145','EPSG','2950','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','2146','EPSG','2951','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','2036','EPSG','2953','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','2292','EPSG','2954','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','2139','EPSG','2944','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','2153','EPSG','2955','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','2152','EPSG','2956','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','2151','EPSG','2957','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','2150','EPSG','2958','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','2149','EPSG','2959','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','2037','EPSG','2960','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','2038','EPSG','2961','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','2148','EPSG','2962','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4234','EPSG','4197','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','23433','EPSG','2312','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4291','EPSG','4618','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','29100','EPSG','29101','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','29177','EPSG','29187','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','29118','EPSG','29168','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','29185','EPSG','29195','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','29184','EPSG','29194','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','29183','EPSG','29193','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','29182','EPSG','29192','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','29181','EPSG','29191','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','29180','EPSG','29190','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','29179','EPSG','29189','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','29178','EPSG','29188','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','29122','EPSG','29172','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','29121','EPSG','29171','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','29120','EPSG','29170','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','29119','EPSG','29169','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','26193','EPSG','26194','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','2245','EPSG','2966','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','2244','EPSG','2965','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','2889','EPSG','2967','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','2890','EPSG','2968','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4327','EPSG','4329','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4235','EPSG','4623','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','21100','EPSG','3001','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','25700','EPSG','3002','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','2934','EPSG','3000','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','26591','EPSG','3003','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','26592','EPSG','3004','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','29635','EPSG','20135','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','29636','EPSG','20136','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4296','EPSG','4201','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','2400','EPSG','3021','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','30800','EPSG','3027','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4634','EPSG','4662','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','2982','EPSG','3060','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4340','EPSG','4930','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4344','EPSG','4932','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4342','EPSG','4934','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4346','EPSG','4936','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4348','EPSG','4938','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4350','EPSG','4940','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4352','EPSG','4942','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4387','EPSG','4944','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4385','EPSG','4919','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4330','EPSG','4910','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4331','EPSG','4911','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4332','EPSG','4912','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4333','EPSG','4913','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4334','EPSG','4914','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4335','EPSG','4915','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4336','EPSG','4916','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4337','EPSG','4917','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4338','EPSG','4918','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4354','EPSG','4946','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4389','EPSG','4948','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4356','EPSG','4950','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4358','EPSG','4952','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4360','EPSG','4954','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4362','EPSG','4956','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4364','EPSG','4958','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4366','EPSG','4960','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4368','EPSG','4962','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4370','EPSG','4964','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4372','EPSG','4966','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4382','EPSG','4968','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4374','EPSG','4970','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4384','EPSG','4972','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4376','EPSG','4974','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4378','EPSG','4976','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4328','EPSG','4978','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4380','EPSG','4980','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4388','EPSG','4949','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4386','EPSG','4945','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4383','EPSG','4973','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4381','EPSG','4969','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4379','EPSG','4981','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4377','EPSG','4977','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4375','EPSG','4975','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4373','EPSG','4971','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4371','EPSG','4967','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4369','EPSG','4965','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4367','EPSG','4963','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4365','EPSG','4961','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4363','EPSG','4959','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4361','EPSG','4957','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4359','EPSG','4955','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4357','EPSG','4953','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4355','EPSG','4951','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4353','EPSG','4947','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4351','EPSG','4943','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4349','EPSG','4941','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4347','EPSG','4939','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4345','EPSG','4937','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4343','EPSG','4933','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4341','EPSG','4935','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4339','EPSG','4931','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4329','EPSG','4979','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4126','EPSG','4669','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4819','EPSG','4307','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','31900','EPSG','31901','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','2194','EPSG','3102','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4233','EPSG','4684','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4233','EPSG','4685','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','21891','EPSG','21896','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','21892','EPSG','21897','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','21893','EPSG','21898','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','21894','EPSG','21899','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','2214','EPSG','3119','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','26747','EPSG','26799','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4172','EPSG','4694','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4685','EPSG','4696','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','2171','EPSG','3120','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','2979','EPSG','3336','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4631','EPSG','4698','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','2600','EPSG','3346','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','26432','EPSG','3353','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','26432','EPSG','3354','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4264','EPSG','4704','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4264','EPSG','4705','EPSG');
INSERT INTO "deprecation" VALUES('compound_crs','EPSG','7408','EPSG','7415','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4681','EPSG','4700','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4681','EPSG','4702','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','3103','EPSG','3343','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','3103','EPSG','3367','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','3104','EPSG','3344','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','3104','EPSG','3368','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','3105','EPSG','3345','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','3105','EPSG','3369','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','5532','EPSG','5858','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','2577','EPSG','3389','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','2694','EPSG','3390','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','3785','EPSG','3857','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4968','EPSG','4906','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4645','EPSG','4749','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4969','EPSG','4907','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','2984','EPSG','3163','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4635','EPSG','4750','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','2983','EPSG','3164','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','24571','EPSG','3167','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','24571','EPSG','3168','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4731','EPSG','4752','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','3359','EPSG','3404','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','3366','EPSG','3407','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','29700','EPSG','29701','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','29700','EPSG','29702','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','3143','EPSG','3460','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','2063','EPSG','3461','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','2064','EPSG','3462','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','3073','EPSG','3463','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','3076','EPSG','3464','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','2990','EPSG','3727','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4902','EPSG','4901','EPSG');
INSERT INTO "deprecation" VALUES('compound_crs','EPSG','7412','EPSG','7421','EPSG');
INSERT INTO "deprecation" VALUES('compound_crs','EPSG','7413','EPSG','7422','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','27492','EPSG','27493','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','32662','EPSG','32663','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','32662','EPSG','3786','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','2086','EPSG','3796','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','2085','EPSG','3795','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','26814','EPSG','26847','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','26815','EPSG','26848','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','26825','EPSG','26855','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','26826','EPSG','26856','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','26836','EPSG','26863','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','26837','EPSG','26864','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','26819','EPSG','26849','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','26820','EPSG','26850','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','26821','EPSG','26851','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','26830','EPSG','26857','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','26831','EPSG','26858','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','26832','EPSG','26859','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','26841','EPSG','26865','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','26842','EPSG','26866','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','26843','EPSG','26867','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','26822','EPSG','26852','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','26833','EPSG','26860','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','26844','EPSG','26868','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','26823','EPSG','26853','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','26824','EPSG','26854','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','26834','EPSG','26861','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','26835','EPSG','26862','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','26845','EPSG','26869','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','26846','EPSG','26870','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','3774','EPSG','3800','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','3778','EPSG','3801','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','3782','EPSG','3802','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','3349','EPSG','3832','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','3752','EPSG','3994','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','28403','EPSG','3333','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','28402','EPSG','3833','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','31700','EPSG','3844','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4317','EPSG','4179','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','31275','EPSG','3907','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','31276','EPSG','3908','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','31277','EPSG','3909','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','31279','EPSG','3910','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','3787','EPSG','3912','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','2170','EPSG','3911','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','3314','EPSG','3985','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','3315','EPSG','3989','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','3315','EPSG','3988','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','3315','EPSG','3987','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','3315','EPSG','3986','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','32663','EPSG','4087','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','3786','EPSG','4088','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','3985','EPSG','4415','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','3842','EPSG','4417','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','3843','EPSG','4434','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','32029','EPSG','4455','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','32018','EPSG','4456','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','3454','EPSG','4457','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4972','EPSG','4556','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4973','EPSG','4557','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4640','EPSG','4558','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','2989','EPSG','4559','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','4868','EPSG','5118','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','4869','EPSG','5119','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','4870','EPSG','5120','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','4861','EPSG','5111','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','4860','EPSG','5110','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','4871','EPSG','5121','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','4872','EPSG','5122','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','4873','EPSG','5123','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','4855','EPSG','5105','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','4856','EPSG','5106','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','4857','EPSG','5107','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','4858','EPSG','5108','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','4859','EPSG','5109','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','4862','EPSG','5112','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','4863','EPSG','5113','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','4864','EPSG','5114','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','4865','EPSG','5115','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','4866','EPSG','5116','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','4867','EPSG','5117','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','4874','EPSG','5124','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','4875','EPSG','5125','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','4876','EPSG','5126','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','4877','EPSG','5127','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','4878','EPSG','5128','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','4879','EPSG','5129','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','4880','EPSG','5130','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','32061','EPSG','5458','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','32062','EPSG','5459','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','5466','EPSG','5589','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','5458','EPSG','5559','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','26801','EPSG','5623','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','26802','EPSG','5624','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','26803','EPSG','5625','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','2192','EPSG','2154','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','5388','EPSG','5839','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','4474','EPSG','5879','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','3356','EPSG','6128','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','3357','EPSG','6129','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','26811','EPSG','6200','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','26812','EPSG','6201','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','26813','EPSG','6202','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','4268','EPSG','4267','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','5570','EPSG','6381','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','5577','EPSG','6381','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','5571','EPSG','6382','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','5578','EPSG','6382','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','5579','EPSG','6383','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','5572','EPSG','6383','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','5573','EPSG','6384','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','5580','EPSG','6384','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','5574','EPSG','6385','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','5581','EPSG','6385','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','5575','EPSG','6386','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','5582','EPSG','6386','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','5576','EPSG','6387','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','5583','EPSG','6387','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','6141','EPSG','6391','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','6604','EPSG','6879','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','6517','EPSG','6880','EPSG');
INSERT INTO "deprecation" VALUES('compound_crs','EPSG','6871','EPSG','6893','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','3975','EPSG','6933','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','3973','EPSG','6931','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','3974','EPSG','6932','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','6200','EPSG','6966','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','7088','EPSG','7133','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','6996','EPSG','7131','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','6997','EPSG','7132','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','27037','EPSG','7005','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','3907','EPSG','8677','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','6978','EPSG','7134','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','6980','EPSG','7136','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','6979','EPSG','7135','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','6985','EPSG','7137','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','6986','EPSG','7138','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','6987','EPSG','7139','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','3908','EPSG','8678','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','3909','EPSG','6316','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','27038','EPSG','7006','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','6956','EPSG','5896','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','6957','EPSG','5897','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','6958','EPSG','5898','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','6959','EPSG','5899','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','3910','EPSG','8679','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','7082','EPSG','8456','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','7082','EPSG','8455','EPSG');
INSERT INTO "deprecation" VALUES('projected_crs','EPSG','3911','EPSG','8686','EPSG');
INSERT INTO "deprecation" VALUES('geodetic_crs','EPSG','8449','EPSG','8860','EPSG');
-57
View File
@@ -1,57 +0,0 @@
--- This file has been generated by scripts/build_db.py. DO NOT EDIT !
INSERT INTO "ellipsoid" VALUES('EPSG','1024','CGCS2000',NULL,'PROJ','EARTH',6378137.0,'EPSG','9001',298.257222101,NULL,0);
INSERT INTO "ellipsoid" VALUES('EPSG','1025','GSK-2011',NULL,'PROJ','EARTH',6378136.5,'EPSG','9001',298.2564151,NULL,0);
INSERT INTO "ellipsoid" VALUES('EPSG','1026','Zach 1812',NULL,'PROJ','EARTH',6376045.0,'EPSG','9001',310.0,NULL,0);
INSERT INTO "ellipsoid" VALUES('EPSG','7001','Airy 1830',NULL,'PROJ','EARTH',6377563.396,'EPSG','9001',299.3249646,NULL,0);
INSERT INTO "ellipsoid" VALUES('EPSG','7002','Airy Modified 1849',NULL,'PROJ','EARTH',6377340.189,'EPSG','9001',299.3249646,NULL,0);
INSERT INTO "ellipsoid" VALUES('EPSG','7003','Australian National Spheroid',NULL,'PROJ','EARTH',6378160.0,'EPSG','9001',298.25,NULL,0);
INSERT INTO "ellipsoid" VALUES('EPSG','7004','Bessel 1841',NULL,'PROJ','EARTH',6377397.155,'EPSG','9001',299.1528128,NULL,0);
INSERT INTO "ellipsoid" VALUES('EPSG','7005','Bessel Modified',NULL,'PROJ','EARTH',6377492.018,'EPSG','9001',299.1528128,NULL,0);
INSERT INTO "ellipsoid" VALUES('EPSG','7006','Bessel Namibia',NULL,'PROJ','EARTH',6377483.865,'EPSG','9001',299.1528128,NULL,1);
INSERT INTO "ellipsoid" VALUES('EPSG','7007','Clarke 1858',NULL,'PROJ','EARTH',20926348.0,'EPSG','9005',NULL,20855233.0,0);
INSERT INTO "ellipsoid" VALUES('EPSG','7008','Clarke 1866',NULL,'PROJ','EARTH',6378206.4,'EPSG','9001',NULL,6356583.8,0);
INSERT INTO "ellipsoid" VALUES('EPSG','7009','Clarke 1866 Michigan',NULL,'PROJ','EARTH',20926631.531,'EPSG','9003',NULL,20855688.674,1);
INSERT INTO "ellipsoid" VALUES('EPSG','7010','Clarke 1880 (Benoit)',NULL,'PROJ','EARTH',6378300.789,'EPSG','9001',NULL,6356566.435,0);
INSERT INTO "ellipsoid" VALUES('EPSG','7011','Clarke 1880 (IGN)',NULL,'PROJ','EARTH',6378249.2,'EPSG','9001',NULL,6356515.0,0);
INSERT INTO "ellipsoid" VALUES('EPSG','7012','Clarke 1880 (RGS)',NULL,'PROJ','EARTH',6378249.145,'EPSG','9001',293.465,NULL,0);
INSERT INTO "ellipsoid" VALUES('EPSG','7013','Clarke 1880 (Arc)',NULL,'PROJ','EARTH',6378249.145,'EPSG','9001',293.4663077,NULL,0);
INSERT INTO "ellipsoid" VALUES('EPSG','7014','Clarke 1880 (SGA 1922)',NULL,'PROJ','EARTH',6378249.2,'EPSG','9001',293.46598,NULL,0);
INSERT INTO "ellipsoid" VALUES('EPSG','7015','Everest 1830 (1937 Adjustment)',NULL,'PROJ','EARTH',6377276.345,'EPSG','9001',300.8017,NULL,0);
INSERT INTO "ellipsoid" VALUES('EPSG','7016','Everest 1830 (1967 Definition)',NULL,'PROJ','EARTH',6377298.556,'EPSG','9001',300.8017,NULL,0);
INSERT INTO "ellipsoid" VALUES('EPSG','7018','Everest 1830 Modified',NULL,'PROJ','EARTH',6377304.063,'EPSG','9001',300.8017,NULL,0);
INSERT INTO "ellipsoid" VALUES('EPSG','7019','GRS 1980',NULL,'PROJ','EARTH',6378137.0,'EPSG','9001',298.257222101,NULL,0);
INSERT INTO "ellipsoid" VALUES('EPSG','7020','Helmert 1906',NULL,'PROJ','EARTH',6378200.0,'EPSG','9001',298.3,NULL,0);
INSERT INTO "ellipsoid" VALUES('EPSG','7021','Indonesian National Spheroid',NULL,'PROJ','EARTH',6378160.0,'EPSG','9001',298.247,NULL,0);
INSERT INTO "ellipsoid" VALUES('EPSG','7022','International 1924',NULL,'PROJ','EARTH',6378388.0,'EPSG','9001',297.0,NULL,0);
INSERT INTO "ellipsoid" VALUES('EPSG','7024','Krassowsky 1940',NULL,'PROJ','EARTH',6378245.0,'EPSG','9001',298.3,NULL,0);
INSERT INTO "ellipsoid" VALUES('EPSG','7025','NWL 9D',NULL,'PROJ','EARTH',6378145.0,'EPSG','9001',298.25,NULL,0);
INSERT INTO "ellipsoid" VALUES('EPSG','7027','Plessis 1817',NULL,'PROJ','EARTH',6376523.0,'EPSG','9001',308.64,NULL,0);
INSERT INTO "ellipsoid" VALUES('EPSG','7028','Struve 1860',NULL,'PROJ','EARTH',6378298.3,'EPSG','9001',294.73,NULL,0);
INSERT INTO "ellipsoid" VALUES('EPSG','7029','War Office',NULL,'PROJ','EARTH',6378300.0,'EPSG','9001',296.0,NULL,0);
INSERT INTO "ellipsoid" VALUES('EPSG','7030','WGS 84',NULL,'PROJ','EARTH',6378137.0,'EPSG','9001',298.257223563,NULL,0);
INSERT INTO "ellipsoid" VALUES('EPSG','7031','GEM 10C',NULL,'PROJ','EARTH',6378137.0,'EPSG','9001',298.257223563,NULL,0);
INSERT INTO "ellipsoid" VALUES('EPSG','7032','OSU86F',NULL,'PROJ','EARTH',6378136.2,'EPSG','9001',298.257223563,NULL,0);
INSERT INTO "ellipsoid" VALUES('EPSG','7033','OSU91A',NULL,'PROJ','EARTH',6378136.3,'EPSG','9001',298.257223563,NULL,0);
INSERT INTO "ellipsoid" VALUES('EPSG','7034','Clarke 1880',NULL,'PROJ','EARTH',20926202.0,'EPSG','9005',NULL,20854895.0,0);
INSERT INTO "ellipsoid" VALUES('EPSG','7035','Sphere',NULL,'PROJ','EARTH',6371000.0,'EPSG','9001',NULL,6371000.0,1);
INSERT INTO "ellipsoid" VALUES('EPSG','7036','GRS 1967',NULL,'PROJ','EARTH',6378160.0,'EPSG','9001',298.247167427,NULL,0);
INSERT INTO "ellipsoid" VALUES('EPSG','7041','Average Terrestrial System 1977',NULL,'PROJ','EARTH',6378135.0,'EPSG','9001',298.257,NULL,0);
INSERT INTO "ellipsoid" VALUES('EPSG','7042','Everest (1830 Definition)',NULL,'PROJ','EARTH',20922931.8,'EPSG','9080',NULL,20853374.58,0);
INSERT INTO "ellipsoid" VALUES('EPSG','7043','WGS 72',NULL,'PROJ','EARTH',6378135.0,'EPSG','9001',298.26,NULL,0);
INSERT INTO "ellipsoid" VALUES('EPSG','7044','Everest 1830 (1962 Definition)',NULL,'PROJ','EARTH',6377301.243,'EPSG','9001',300.8017255,NULL,0);
INSERT INTO "ellipsoid" VALUES('EPSG','7045','Everest 1830 (1975 Definition)',NULL,'PROJ','EARTH',6377299.151,'EPSG','9001',300.8017255,NULL,0);
INSERT INTO "ellipsoid" VALUES('EPSG','7046','Bessel Namibia (GLM)',NULL,'PROJ','EARTH',6377397.155,'EPSG','9031',299.1528128,NULL,0);
INSERT INTO "ellipsoid" VALUES('EPSG','7047','GRS 1980 Authalic Sphere',NULL,'PROJ','EARTH',6370997.0,'EPSG','9001',NULL,6370997.0,1);
INSERT INTO "ellipsoid" VALUES('EPSG','7048','GRS 1980 Authalic Sphere',NULL,'PROJ','EARTH',6371007.0,'EPSG','9001',NULL,6371007.0,0);
INSERT INTO "ellipsoid" VALUES('EPSG','7049','IAG 1975',NULL,'PROJ','EARTH',6378140.0,'EPSG','9001',298.257,NULL,0);
INSERT INTO "ellipsoid" VALUES('EPSG','7050','GRS 1967 Modified',NULL,'PROJ','EARTH',6378160.0,'EPSG','9001',298.25,NULL,0);
INSERT INTO "ellipsoid" VALUES('EPSG','7051','Danish 1876',NULL,'PROJ','EARTH',6377019.27,'EPSG','9001',300.0,NULL,0);
INSERT INTO "ellipsoid" VALUES('EPSG','7052','Clarke 1866 Authalic Sphere',NULL,'PROJ','EARTH',6370997.0,'EPSG','9001',NULL,6370997.0,0);
INSERT INTO "ellipsoid" VALUES('EPSG','7053','Hough 1960',NULL,'PROJ','EARTH',6378270.0,'EPSG','9001',297.0,NULL,0);
INSERT INTO "ellipsoid" VALUES('EPSG','7054','PZ-90',NULL,'PROJ','EARTH',6378136.0,'EPSG','9001',298.257839303,NULL,0);
INSERT INTO "ellipsoid" VALUES('EPSG','7055','Clarke 1880 (international foot)',NULL,'PROJ','EARTH',20926202.0,'EPSG','9002',NULL,20854895.0,0);
INSERT INTO "ellipsoid" VALUES('EPSG','7056','Everest 1830 (RSO 1969)',NULL,'PROJ','EARTH',6377295.664,'EPSG','9001',300.8017,NULL,0);
INSERT INTO "ellipsoid" VALUES('EPSG','7057','International 1924 Authalic Sphere',NULL,'PROJ','EARTH',6371228.0,'EPSG','9001',NULL,6371228.0,0);
INSERT INTO "ellipsoid" VALUES('EPSG','7058','Hughes 1980',NULL,'PROJ','EARTH',6378273.0,'EPSG','9001',NULL,6356889.449,0);
INSERT INTO "ellipsoid" VALUES('EPSG','7059','Popular Visualisation Sphere',NULL,'PROJ','EARTH',6378137.0,'EPSG','9001',NULL,6378137.0,1);
-12292
View File
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
-578
View File
@@ -1,578 +0,0 @@
--- This file has been generated by scripts/build_db.py. DO NOT EDIT !
INSERT INTO "geodetic_datum" VALUES('EPSG','1024','Hungarian Datum 1909',NULL,NULL,'EPSG','7004','EPSG','8901','EPSG','1119','1909-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1025','Taiwan Datum 1967',NULL,NULL,'EPSG','7050','EPSG','8901','EPSG','3315','1967-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1026','Taiwan Datum 1997',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1228','1997-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1029','Iraqi Geospatial Reference System',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1124','1997-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1031','MGI 1901',NULL,NULL,'EPSG','7004','EPSG','8901','EPSG','2370','1901-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1032','MOLDREF99',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1162','1999-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1033','Reseau Geodesique de la RDC 2005',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','3613','2005-05-26',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1034','Serbian Reference Network 1998',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','4543','1998-09-13',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1035','Red Geodesica de Canarias 1995',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','3199','1994-11-24',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1036','Reseau Geodesique de Mayotte 2004',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1159','2004-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1037','Cadastre 1997',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','3340','1997-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1038','Reseau Geodesique de Saint Pierre et Miquelon 2006',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1220','2006-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1041','Autonomous Regions of Portugal 2008',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','3670','1994-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1042','Mexico ITRF92',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1160','1988-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1043','China 2000',NULL,NULL,'EPSG','1024','EPSG','8901','EPSG','1067','2000-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1044','Sao Tome',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','3645',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1045','New Beijing',NULL,NULL,'EPSG','7024','EPSG','8901','EPSG','3228','1982-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1046','Principe',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','3646',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1047','Reseau de Reference des Antilles Francaises 1991',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','2824','1991-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1048','Tokyo 1892',NULL,NULL,'EPSG','7004','EPSG','8901','EPSG','1364','1892-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1052','System of the Unified Trigonometrical Cadastral Network/05',NULL,NULL,'EPSG','7004','EPSG','8901','EPSG','1079','2009-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1053','Sri Lanka Datum 1999',NULL,NULL,'EPSG','7015','EPSG','8901','EPSG','3310','1999-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1055','System of the Unified Trigonometrical Cadastral Network/05 (Ferro)',NULL,NULL,'EPSG','7004','EPSG','8909','EPSG','1079','2009-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1056','Geocentric Datum Brunei Darussalam 2009',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1055','2009-06-13',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1057','Turkish National Reference Frame',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1237','2005-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1058','Bhutan National Geodetic Datum',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1048','2003-11-14',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1060','Islands Net 2004',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1120','2004-08-07',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1061','International Terrestrial Reference Frame 2008',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1262','2005-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1062','Posiciones Geodesicas Argentinas 2007',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1033','2006-08-07',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1063','Marco Geodesico Nacional de Bolivia',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1049','2010-03-14',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1064','SIRGAS-Chile realization 1 epoch 2002',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1066','2002-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1065','Costa Rica 2005',NULL,NULL,'EPSG','7030','EPSG','8901','EPSG','1074','2005-10-30',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1066','Sistema Geodesico Nacional de Panama MACARIO SOLIS',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1186','2000-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1067','Peru96',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1189','1996-05-26',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1068','SIRGAS-ROU98',NULL,NULL,'EPSG','7030','EPSG','8901','EPSG','1247','1995-05-26',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1069','SIRGAS_ES2007.8',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1087','2007-11-07',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1070','Ocotepeque 1935',NULL,NULL,'EPSG','7008','EPSG','8901','EPSG','3876','1935-07-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1071','Sibun Gorge 1922',NULL,NULL,'EPSG','7007','EPSG','8901','EPSG','3219','1922-07-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1072','Panama-Colon 1911',NULL,NULL,'EPSG','7008','EPSG','8901','EPSG','3290','1911-07-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1073','Reseau Geodesique des Antilles Francaises 2009',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','2824','2009-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1074','Corrego Alegre 1961',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','3874','1961-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1075','South American Datum 1969(96)',NULL,NULL,'EPSG','7050','EPSG','8901','EPSG','1053','1996-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1076','Papua New Guinea Geodetic Datum 1994',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1187','1994-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1077','Ukraine 2000',NULL,NULL,'EPSG','7024','EPSG','8901','EPSG','1242','2005-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1078','Fehmarnbelt Datum 2010',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','3889','2010-02-21',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1081','Deutsche Bahn Reference System',NULL,NULL,'EPSG','7004','EPSG','8901','EPSG','3339',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1095','Tonga Geodetic Datum 2005',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1234','2005-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1100','Cayman Islands Geodetic Datum 2011',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1063','2011-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1111','Nepal 1981',NULL,NULL,'EPSG','7015','EPSG','8901','EPSG','1171','1981-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1112','Cyprus Geodetic Reference System 1993',NULL,NULL,'EPSG','7030','EPSG','8901','EPSG','3236','1993-02-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1113','Reseau Geodesique des Terres Australes et Antarctiques Francaises 2007',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','4246','2007-04-10',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1114','Israeli Geodetic Datum 2005',NULL,NULL,'EPSG','7030','EPSG','8901','EPSG','1126','2004-10-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1115','Israeli Geodetic Datum 2005(2012)',NULL,NULL,'EPSG','7030','EPSG','8901','EPSG','1126','2004-10-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1116','NAD83 (National Spatial Reference System 2011)',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1511','2012-06-12',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1117','NAD83 (National Spatial Reference System PA11)',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','4162','2012-06-12',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1118','NAD83 (National Spatial Reference System MA11)',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','4167','2012-06-12',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1120','Mexico ITRF2008',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1160','2010-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1128','Japanese Geodetic Datum 2011',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1129','2011-05-24',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1132','Rete Dinamica Nazionale 2008',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','3343','2008-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1133','NAD83 (Continuously Operating Reference Station 1996)',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1511','1997-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1135','Aden 1925',NULL,NULL,'EPSG','7012','EPSG','8901','EPSG','1340',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1136','Bioko',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','4220',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1137','Bekaa Valley 1920',NULL,NULL,'EPSG','7012','EPSG','8901','EPSG','3269',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1138','South East Island 1943',NULL,NULL,'EPSG','7012','EPSG','8901','EPSG','4183','1975-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1139','Gambia',NULL,NULL,'EPSG','7012','EPSG','8901','EPSG','3250',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1141','IGS08',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1262','2005-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1142','IG05 Intermediate Datum',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','2603','2004-10-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1143','Israeli Geodetic Datum 2005',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1126','2004-10-01',1);
INSERT INTO "geodetic_datum" VALUES('EPSG','1144','IG05/12 Intermediate Datum',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','2603','2012-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1145','Israeli Geodetic Datum 2005(2012)',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1126','2012-01-01',1);
INSERT INTO "geodetic_datum" VALUES('EPSG','1147','Oman National Geodetic Datum 2014',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1183','2013-02-25',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1152','World Geodetic System 1984 (G730)',NULL,NULL,'EPSG','7030','EPSG','8901','EPSG','1262','1994-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1153','World Geodetic System 1984 (G873)',NULL,NULL,'EPSG','7030','EPSG','8901','EPSG','1262','1997-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1154','World Geodetic System 1984 (G1150)',NULL,NULL,'EPSG','7030','EPSG','8901','EPSG','1262','2001-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1155','World Geodetic System 1984 (G1674)',NULL,NULL,'EPSG','7030','EPSG','8901','EPSG','1262','2005-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1156','World Geodetic System 1984 (G1762)',NULL,NULL,'EPSG','7030','EPSG','8901','EPSG','1262','2005-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1157','Parametry Zemli 1990.02',NULL,NULL,'EPSG','7054','EPSG','8901','EPSG','1262','2002-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1158','Parametry Zemli 1990.11',NULL,NULL,'EPSG','7054','EPSG','8901','EPSG','1262','2010-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1159','Geodezicheskaya Sistema Koordinat 2011',NULL,NULL,'EPSG','1025','EPSG','8901','EPSG','1198','2011-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1160','Kyrgyzstan Geodetic Datum 2006',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1137','2006-09-13',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1165','International Terrestrial Reference Frame 2014',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1262','2010-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1166','World Geodetic System 1984 (Transit)',NULL,NULL,'EPSG','7030','EPSG','8901','EPSG','1262','1984-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1167','Bulgaria Geodetic System 2005',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1056','2005-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1168','Geocentric Datum of Australia 2020',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','4177','2020-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1173','St. Helena Tritan',NULL,NULL,'EPSG','7030','EPSG','8901','EPSG','3183','2011-10-09',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1174','St. Helena Geodetic Datum 2015',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','3183','2015-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1178','European Terrestrial Reference Frame 1989',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1298','1989-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1179','European Terrestrial Reference Frame 1990',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1298','1989-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1180','European Terrestrial Reference Frame 1991',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1298','1989-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1181','European Terrestrial Reference Frame 1992',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1298','1989-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1182','European Terrestrial Reference Frame 1993',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1298','1989-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1183','European Terrestrial Reference Frame 1994',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1298','1989-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1184','European Terrestrial Reference Frame 1996',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1298','1989-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1185','European Terrestrial Reference Frame 1997',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1298','1989-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1186','European Terrestrial Reference Frame 2000',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1298','1989-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1187','Islands Net 2016',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1120','2016-07-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1188','Gusterberg (Ferro)',NULL,NULL,'EPSG','1026','EPSG','8909','EPSG','4455','1817-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1189','St. Stephen (Ferro)',NULL,NULL,'EPSG','1026','EPSG','8909','EPSG','4456','1817-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1191','IGS14',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1262','2010-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1192','North American Datum of 1983 (CSRS96)',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1061','1988-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1193','North American Datum of 1983 (CSRS) version 2',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1061','1997-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1194','North American Datum of 1983 (CSRS) version 3',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1061','1997-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1195','North American Datum of 1983 (CSRS) version 4',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1061','2002-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1196','North American Datum of 1983 (CSRS) version 5',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1061','2005-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1197','North American Datum of 1983 (CSRS) version 6',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1061','2010-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1198','North American Datum of 1983 (CSRS) version 7',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1061','2010-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1201','System of the Unified Trigonometrical Cadastral Network [JTSK03]',NULL,NULL,'EPSG','7004','EPSG','8901','EPSG','1211','2003-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1204','European Terrestrial Reference Frame 2005',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1298','1989-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1206','European Terrestrial Reference Frame 2014',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1298','2010-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1207','Macao 1920',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','1147','1920-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1208','Macao Geodetic Datum 2008',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1147','2008-05-17',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1209','Hong Kong Geodetic',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1118','1998-04-30',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1211','NAD83 (Federal Base Network)',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','4515',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1212','NAD83 (High Accuracy Reference Network - Corrected)',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','3634',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1214','Serbian Spatial Reference System 2000',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','4543','2010-08-19',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1217','Camacupa 2015',NULL,NULL,'EPSG','7012','EPSG','8901','EPSG','1029',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1218','MOMRA Terrestrial Reference Frame 2000',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1206','2004-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1220','Reference System de Angola 2013',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1029','2015-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1221','North American Datum of 1983 (MARP00)',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','4167','1993-08-15',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1223','Reseau Geodesique de Wallis et Futuna 1996',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1255','1993-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1225','CR-SIRGAS',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1074','2014-08-04',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1227','SIRGAS Continuously Operating Network DGF00P01',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','4530','2000-05-26',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1228','SIRGAS Continuously Operating Network DGF01P01',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','4530','2000-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1229','SIRGAS Continuously Operating Network DGF01P02',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','4530','1998-05-26',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1230','SIRGAS Continuously Operating Network DGF02P01',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','4530','2000-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1231','SIRGAS Continuously Operating Network DGF04P01',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','4530','2003-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1232','SIRGAS Continuously Operating Network DGF05P01',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','4530','2004-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1233','SIRGAS Continuously Operating Network DGF06P01',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','4530','2004-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1234','SIRGAS Continuously Operating Network DGF07P01',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','4530','2004-07-02',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1235','SIRGAS Continuously Operating Network DGF08P01',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','4530','2004-07-02',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1236','SIRGAS Continuously Operating Network SIR09P01',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','4530','2005-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1237','SIRGAS Continuously Operating Network SIR10P01',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','4530','2005-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1238','SIRGAS Continuously Operating Network SIR11P01',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','4530','2005-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1239','SIRGAS Continuously Operating Network SIR13P01',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','4530','2012-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1240','SIRGAS Continuously Operating Network SIR14P01',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','4530','2013-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1241','SIRGAS Continuously Operating Network SIR15P01',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','4530','2013-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1242','SIRGAS Continuously Operating Network SIR17P01',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','4530','2015-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1243','SIRGAS-Chile realization 2 epoch 2010.00',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1066','2010-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1244','IGS97',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1262','1997-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1245','IGS00',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1262','1998-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1246','IGb00',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1262','1998-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1247','IGS05',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1262','2000-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1248','IGb08',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1262','2005-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1249','North American Datum of 1983 (PACP00)',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','4162','1993-08-15',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1251','Kosovo Reference System 2001',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','4542','2001-04-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1252','SIRGAS-Chile realization 3 epoch 2013.00',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1066','2013-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1253','SIRGAS-Chile realization 4 epoch 2016.00',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1066','2016-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','1254','SIRGAS-Chile',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1066',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6001','Not specified (based on Airy 1830 ellipsoid)',NULL,NULL,'EPSG','7001','EPSG','8901','EPSG','1263',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6002','Not specified (based on Airy Modified 1849 ellipsoid)',NULL,NULL,'EPSG','7002','EPSG','8901','EPSG','1263',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6003','Not specified (based on Australian National Spheroid)',NULL,NULL,'EPSG','7003','EPSG','8901','EPSG','1263',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6004','Not specified (based on Bessel 1841 ellipsoid)',NULL,NULL,'EPSG','7004','EPSG','8901','EPSG','1263',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6005','Not specified (based on Bessel Modified ellipsoid)',NULL,NULL,'EPSG','7005','EPSG','8901','EPSG','1263',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6006','Not specified (based on Bessel Namibia ellipsoid)',NULL,NULL,'EPSG','7046','EPSG','8901','EPSG','1263',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6007','Not specified (based on Clarke 1858 ellipsoid)',NULL,NULL,'EPSG','7007','EPSG','8901','EPSG','1263',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6008','Not specified (based on Clarke 1866 ellipsoid)',NULL,NULL,'EPSG','7008','EPSG','8901','EPSG','1263',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6009','Not specified (based on Clarke 1866 Michigan ellipsoid)',NULL,NULL,'EPSG','7009','EPSG','8901','EPSG','1263',NULL,1);
INSERT INTO "geodetic_datum" VALUES('EPSG','6010','Not specified (based on Clarke 1880 (Benoit) ellipsoid)',NULL,NULL,'EPSG','7010','EPSG','8901','EPSG','1263',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6011','Not specified (based on Clarke 1880 (IGN) ellipsoid)',NULL,NULL,'EPSG','7011','EPSG','8901','EPSG','1263',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6012','Not specified (based on Clarke 1880 (RGS) ellipsoid)',NULL,NULL,'EPSG','7012','EPSG','8901','EPSG','1263',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6013','Not specified (based on Clarke 1880 (Arc) ellipsoid)',NULL,NULL,'EPSG','7013','EPSG','8901','EPSG','1263',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6014','Not specified (based on Clarke 1880 (SGA 1922) ellipsoid)',NULL,NULL,'EPSG','7014','EPSG','8901','EPSG','1263',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6015','Not specified (based on Everest 1830 (1937 Adjustment) ellipsoid)',NULL,NULL,'EPSG','7015','EPSG','8901','EPSG','1263',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6016','Not specified (based on Everest 1830 (1967 Definition) ellipsoid)',NULL,NULL,'EPSG','7016','EPSG','8901','EPSG','1263',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6018','Not specified (based on Everest 1830 Modified ellipsoid)',NULL,NULL,'EPSG','7018','EPSG','8901','EPSG','1263',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6019','Not specified (based on GRS 1980 ellipsoid)',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1263',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6020','Not specified (based on Helmert 1906 ellipsoid)',NULL,NULL,'EPSG','7020','EPSG','8901','EPSG','1263',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6021','Not specified (based on Indonesian National Spheroid)',NULL,NULL,'EPSG','7021','EPSG','8901','EPSG','1263',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6022','Not specified (based on International 1924 ellipsoid)',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','1263',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6024','Not specified (based on Krassowsky 1940 ellipsoid)',NULL,NULL,'EPSG','7024','EPSG','8901','EPSG','1263',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6025','Not specified (based on NWL 9D ellipsoid)',NULL,NULL,'EPSG','7025','EPSG','8901','EPSG','1263',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6027','Not specified (based on Plessis 1817 ellipsoid)',NULL,NULL,'EPSG','7027','EPSG','8901','EPSG','1263',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6028','Not specified (based on Struve 1860 ellipsoid)',NULL,NULL,'EPSG','7028','EPSG','8901','EPSG','1263',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6029','Not specified (based on War Office ellipsoid)',NULL,NULL,'EPSG','7029','EPSG','8901','EPSG','1263',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6030','Not specified (based on WGS 84 ellipsoid)',NULL,NULL,'EPSG','7030','EPSG','8901','EPSG','1263',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6031','Not specified (based on GEM 10C ellipsoid)',NULL,NULL,'EPSG','7031','EPSG','8901','EPSG','1263',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6032','Not specified (based on OSU86F ellipsoid)',NULL,NULL,'EPSG','7032','EPSG','8901','EPSG','1263',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6033','Not specified (based on OSU91A ellipsoid)',NULL,NULL,'EPSG','7033','EPSG','8901','EPSG','1263',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6034','Not specified (based on Clarke 1880 ellipsoid)',NULL,NULL,'EPSG','7034','EPSG','8901','EPSG','1263',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6035','Not specified (based on Authalic Sphere)',NULL,NULL,'EPSG','7035','EPSG','8901','EPSG','1263',NULL,1);
INSERT INTO "geodetic_datum" VALUES('EPSG','6036','Not specified (based on GRS 1967 ellipsoid)',NULL,NULL,'EPSG','7036','EPSG','8901','EPSG','1263',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6041','Not specified (based on Average Terrestrial System 1977 ellipsoid)',NULL,NULL,'EPSG','7041','EPSG','8901','EPSG','1263',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6042','Not specified (based on Everest (1830 Definition) ellipsoid)',NULL,NULL,'EPSG','7042','EPSG','8901','EPSG','1263',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6043','Not specified (based on WGS 72 ellipsoid)',NULL,NULL,'EPSG','7043','EPSG','8901','EPSG','1263',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6044','Not specified (based on Everest 1830 (1962 Definition) ellipsoid)',NULL,NULL,'EPSG','7044','EPSG','8901','EPSG','1263',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6045','Not specified (based on Everest 1830 (1975 Definition) ellipsoid)',NULL,NULL,'EPSG','7045','EPSG','8901','EPSG','1263',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6047','Not specified (based on GRS 1980 Authalic Sphere)',NULL,NULL,'EPSG','7048','EPSG','8901','EPSG','1263',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6052','Not specified (based on Clarke 1866 Authalic Sphere)',NULL,NULL,'EPSG','7052','EPSG','8901','EPSG','1263',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6053','Not specified (based on International 1924 Authalic Sphere)',NULL,NULL,'EPSG','7057','EPSG','8901','EPSG','1263',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6054','Not specified (based on Hughes 1980 ellipsoid)',NULL,NULL,'EPSG','7058','EPSG','8901','EPSG','1263',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6055','Popular Visualisation Datum',NULL,NULL,'EPSG','7059','EPSG','8901','EPSG','1262',NULL,1);
INSERT INTO "geodetic_datum" VALUES('EPSG','6120','Greek',NULL,NULL,'EPSG','7004','EPSG','8901','EPSG','3254',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6121','Greek Geodetic Reference System 1987',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','3254','1987-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6122','Average Terrestrial System 1977',NULL,NULL,'EPSG','7041','EPSG','8901','EPSG','1283','1977-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6123','Kartastokoordinaattijarjestelma (1966)',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','3333','1966-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6124','Rikets koordinatsystem 1990',NULL,NULL,'EPSG','7004','EPSG','8901','EPSG','1225','1982-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6125','Samboja',NULL,NULL,'EPSG','7004','EPSG','8901','EPSG','1328',NULL,1);
INSERT INTO "geodetic_datum" VALUES('EPSG','6126','Lithuania 1994 (ETRS89)',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1145','1992-10-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6127','Tete',NULL,NULL,'EPSG','7008','EPSG','8901','EPSG','3281','1960-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6128','Madzansua',NULL,NULL,'EPSG','7008','EPSG','8901','EPSG','1315',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6129','Observatario',NULL,NULL,'EPSG','7008','EPSG','8901','EPSG','1329','1907-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6130','Moznet (ITRF94)',NULL,NULL,'EPSG','7030','EPSG','8901','EPSG','1167','1996-11-24',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6131','Indian 1960',NULL,NULL,'EPSG','7015','EPSG','8901','EPSG','4007',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6132','Final Datum 1958',NULL,NULL,'EPSG','7012','EPSG','8901','EPSG','1300',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6133','Estonia 1992',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','3246','1992-10-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6134','PDO Survey Datum 1993',NULL,NULL,'EPSG','7012','EPSG','8901','EPSG','3288','1993-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6135','Old Hawaiian',NULL,NULL,'EPSG','7008','EPSG','8901','EPSG','1334',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6136','St. Lawrence Island',NULL,NULL,'EPSG','7008','EPSG','8901','EPSG','1332',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6137','St. Paul Island',NULL,NULL,'EPSG','7008','EPSG','8901','EPSG','1333',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6138','St. George Island',NULL,NULL,'EPSG','7008','EPSG','8901','EPSG','1331',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6139','Puerto Rico',NULL,NULL,'EPSG','7008','EPSG','8901','EPSG','1335','1901-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6140','NAD83 Canadian Spatial Reference System',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1061',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6141','Israel 1993',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','2603',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6142','Locodjo 1965',NULL,NULL,'EPSG','7012','EPSG','8901','EPSG','1075','1965-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6143','Abidjan 1987',NULL,NULL,'EPSG','7012','EPSG','8901','EPSG','1075','1987-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6144','Kalianpur 1937',NULL,NULL,'EPSG','7015','EPSG','8901','EPSG','1308','1937-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6145','Kalianpur 1962',NULL,NULL,'EPSG','7044','EPSG','8901','EPSG','1184','1962-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6146','Kalianpur 1975',NULL,NULL,'EPSG','7045','EPSG','8901','EPSG','3341','1975-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6147','Hanoi 1972',NULL,NULL,'EPSG','7024','EPSG','8901','EPSG','3328','1972-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6148','Hartebeesthoek94',NULL,NULL,'EPSG','7030','EPSG','8901','EPSG','4540','1994-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6149','CH1903',NULL,NULL,'EPSG','7004','EPSG','8901','EPSG','1286','1903-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6150','CH1903+',NULL,NULL,'EPSG','7004','EPSG','8901','EPSG','1286',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6151','Swiss Terrestrial Reference Frame 1995',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1286','1993-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6152','NAD83 (High Accuracy Reference Network)',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1337',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6153','Rassadiran',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','1338','1998-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6154','European Datum 1950(1977)',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','1123','1977-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6155','Dabola 1981',NULL,NULL,'EPSG','7011','EPSG','8901','EPSG','3257','1981-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6156','System of the Unified Trigonometrical Cadastral Network',NULL,NULL,'EPSG','7004','EPSG','8901','EPSG','1306',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6157','Mount Dillon',NULL,NULL,'EPSG','7007','EPSG','8901','EPSG','1322',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6158','Naparima 1955',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','3143','1955-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6159','European Libyan Datum 1979',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','1143','1979-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6160','Chos Malal 1914',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','1292','1914-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6161','Pampa del Castillo',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','1265',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6162','Korean Datum 1985',NULL,NULL,'EPSG','7004','EPSG','8901','EPSG','3266','1985-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6163','Yemen National Geodetic Network 1996',NULL,NULL,'EPSG','7030','EPSG','8901','EPSG','1257','1996-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6164','South Yemen',NULL,NULL,'EPSG','7024','EPSG','8901','EPSG','1340',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6165','Bissau',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','3258',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6166','Korean Datum 1995',NULL,NULL,'EPSG','7030','EPSG','8901','EPSG','3266','1995-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6167','New Zealand Geodetic Datum 2000',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1175','2000-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6168','Accra',NULL,NULL,'EPSG','7029','EPSG','8901','EPSG','1104',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6169','American Samoa 1962',NULL,NULL,'EPSG','7008','EPSG','8901','EPSG','3109','1962-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6170','Sistema de Referencia Geocentrico para America del Sur 1995',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','3448','1995-05-26',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6171','Reseau Geodesique Francais 1993',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1096','1993-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6172','Posiciones Geodesicas Argentinas',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1033','1994-01-01',1);
INSERT INTO "geodetic_datum" VALUES('EPSG','6173','IRENET95',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1305','1995-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6174','Sierra Leone Colony 1924',NULL,NULL,'EPSG','7029','EPSG','8901','EPSG','1342','1924-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6175','Sierra Leone 1968',NULL,NULL,'EPSG','7012','EPSG','8901','EPSG','3306','1968-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6176','Australian Antarctic Datum 1998',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1278','1998-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6178','Pulkovo 1942(83)',NULL,NULL,'EPSG','7024','EPSG','8901','EPSG','3900','1983-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6179','Pulkovo 1942(58)',NULL,NULL,'EPSG','7024','EPSG','8901','EPSG','3574','1956-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6180','Estonia 1997',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1090','1997-07-23',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6181','Luxembourg 1930',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','1146','1930-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6182','Azores Occidental Islands 1939',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','1344','1939-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6183','Azores Central Islands 1948',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','1301','1948-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6184','Azores Oriental Islands 1940',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','1345','1940-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6185','Madeira 1936',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','1314','1936-01-01',1);
INSERT INTO "geodetic_datum" VALUES('EPSG','6188','OSNI 1952',NULL,NULL,'EPSG','7001','EPSG','8901','EPSG','2530','1952-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6189','Red Geodesica Venezolana',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1251','1995-05-26',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6190','Posiciones Geodesicas Argentinas 1998',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1033','1995-05-26',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6191','Albanian 1987',NULL,NULL,'EPSG','7024','EPSG','8901','EPSG','3212','1987-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6192','Douala 1948',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','2555','1948-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6193','Manoca 1962',NULL,NULL,'EPSG','7011','EPSG','8901','EPSG','2555','1962-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6194','Qornoq 1927',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','3362','1927-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6195','Scoresbysund 1952',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','2570','1952-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6196','Ammassalik 1958',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','2571','1958-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6197','Garoua',NULL,NULL,'EPSG','7012','EPSG','8901','EPSG','2590',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6198','Kousseri',NULL,NULL,'EPSG','7012','EPSG','8901','EPSG','2591',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6199','Egypt 1930',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','3242','1930-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6200','Pulkovo 1995',NULL,NULL,'EPSG','7024','EPSG','8901','EPSG','1198','1995-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6201','Adindan',NULL,NULL,'EPSG','7012','EPSG','8901','EPSG','1271','1958-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6202','Australian Geodetic Datum 1966',NULL,NULL,'EPSG','7003','EPSG','8901','EPSG','1279','1966-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6203','Australian Geodetic Datum 1984',NULL,NULL,'EPSG','7003','EPSG','8901','EPSG','2576','1984-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6204','Ain el Abd 1970',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','1272','1970-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6205','Afgooye',NULL,NULL,'EPSG','7024','EPSG','8901','EPSG','3308',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6206','Agadez',NULL,NULL,'EPSG','7011','EPSG','8901','EPSG','1177',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6207','Lisbon 1937',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','1294','1937-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6208','Aratu',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','1274',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6209','Arc 1950',NULL,NULL,'EPSG','7013','EPSG','8901','EPSG','1276','1950-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6210','Arc 1960',NULL,NULL,'EPSG','7012','EPSG','8901','EPSG','1277','1960-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6211','Batavia',NULL,NULL,'EPSG','7004','EPSG','8901','EPSG','3666',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6212','Barbados 1938',NULL,NULL,'EPSG','7012','EPSG','8901','EPSG','3218','1938-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6213','Beduaram',NULL,NULL,'EPSG','7011','EPSG','8901','EPSG','2771',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6214','Beijing 1954',NULL,NULL,'EPSG','7024','EPSG','8901','EPSG','1067','1954-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6215','Reseau National Belge 1950',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','1347','1950-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6216','Bermuda 1957',NULL,NULL,'EPSG','7008','EPSG','8901','EPSG','3221','1957-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6218','Bogota 1975',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','3686','1975-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6219','Bukit Rimpah',NULL,NULL,'EPSG','7004','EPSG','8901','EPSG','1287',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6220','Camacupa 1948',NULL,NULL,'EPSG','7012','EPSG','8901','EPSG','1288',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6221','Campo Inchauspe',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','3843',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6222','Cape',NULL,NULL,'EPSG','7013','EPSG','8901','EPSG','1290',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6223','Carthage',NULL,NULL,'EPSG','7011','EPSG','8901','EPSG','1236','1925-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6224','Chua',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','3356',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6225','Corrego Alegre 1970-72',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','1293','1972-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6226','Cote d''Ivoire',NULL,NULL,'EPSG','7011','EPSG','8901','EPSG','1075',NULL,1);
INSERT INTO "geodetic_datum" VALUES('EPSG','6227','Deir ez Zor',NULL,NULL,'EPSG','7011','EPSG','8901','EPSG','1623',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6228','Douala',NULL,NULL,'EPSG','7011','EPSG','8901','EPSG','1060',NULL,1);
INSERT INTO "geodetic_datum" VALUES('EPSG','6229','Egypt 1907',NULL,NULL,'EPSG','7020','EPSG','8901','EPSG','1086','1907-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6230','European Datum 1950',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','1296','1950-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6231','European Datum 1987',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','1297','1987-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6232','Fahud',NULL,NULL,'EPSG','7012','EPSG','8901','EPSG','4009',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6233','Gandajika 1970',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','1152','1970-01-01',1);
INSERT INTO "geodetic_datum" VALUES('EPSG','6234','Garoua',NULL,NULL,'EPSG','7011','EPSG','8901','EPSG','1060',NULL,1);
INSERT INTO "geodetic_datum" VALUES('EPSG','6235','Guyane Francaise',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','1097',NULL,1);
INSERT INTO "geodetic_datum" VALUES('EPSG','6236','Hu Tzu Shan 1950',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','3315','1950-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6237','Hungarian Datum 1972',NULL,NULL,'EPSG','7036','EPSG','8901','EPSG','1119','1972-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6238','Indonesian Datum 1974',NULL,NULL,'EPSG','7021','EPSG','8901','EPSG','4020','1974-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6239','Indian 1954',NULL,NULL,'EPSG','7015','EPSG','8901','EPSG','1304','1954-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6240','Indian 1975',NULL,NULL,'EPSG','7015','EPSG','8901','EPSG','3741','1975-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6241','Jamaica 1875',NULL,NULL,'EPSG','7034','EPSG','8901','EPSG','3342','1875-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6242','Jamaica 1969',NULL,NULL,'EPSG','7008','EPSG','8901','EPSG','3342','1969-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6243','Kalianpur 1880',NULL,NULL,'EPSG','7042','EPSG','8901','EPSG','1307','1880-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6244','Kandawala',NULL,NULL,'EPSG','7015','EPSG','8901','EPSG','3310','1930-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6245','Kertau 1968',NULL,NULL,'EPSG','7018','EPSG','8901','EPSG','4223','1968-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6246','Kuwait Oil Company',NULL,NULL,'EPSG','7012','EPSG','8901','EPSG','3267','1952-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6247','La Canoa',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','3327',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6248','Provisional South American Datum 1956',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','1348','1956-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6249','Lake',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','1312',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6250','Leigon',NULL,NULL,'EPSG','7012','EPSG','8901','EPSG','1104',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6251','Liberia 1964',NULL,NULL,'EPSG','7012','EPSG','8901','EPSG','3270','1964-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6252','Lome',NULL,NULL,'EPSG','7011','EPSG','8901','EPSG','1232',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6253','Luzon 1911',NULL,NULL,'EPSG','7008','EPSG','8901','EPSG','3969','1911-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6254','Hito XVIII 1963',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','1303','1963-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6255','Herat North',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','1024',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6256','Mahe 1971',NULL,NULL,'EPSG','7012','EPSG','8901','EPSG','2369','1971-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6257','Makassar',NULL,NULL,'EPSG','7004','EPSG','8901','EPSG','1316',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6258','European Terrestrial Reference System 1989',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1298','1989-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6259','Malongo 1987',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','3180','1987-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6260','Manoca',NULL,NULL,'EPSG','7012','EPSG','8901','EPSG','1060',NULL,1);
INSERT INTO "geodetic_datum" VALUES('EPSG','6261','Merchich',NULL,NULL,'EPSG','7011','EPSG','8901','EPSG','3280','1922-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6262','Massawa',NULL,NULL,'EPSG','7004','EPSG','8901','EPSG','1089',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6263','Minna',NULL,NULL,'EPSG','7012','EPSG','8901','EPSG','1178',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6264','Mhast',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','1318',NULL,1);
INSERT INTO "geodetic_datum" VALUES('EPSG','6265','Monte Mario',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','3343','1940-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6266','M''poraloko',NULL,NULL,'EPSG','7011','EPSG','8901','EPSG','1100',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6267','North American Datum 1927',NULL,NULL,'EPSG','7008','EPSG','8901','EPSG','1349','1927-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6268','NAD27 Michigan',NULL,NULL,'EPSG','7009','EPSG','8901','EPSG','1391',NULL,1);
INSERT INTO "geodetic_datum" VALUES('EPSG','6269','North American Datum 1983',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1350','1986-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6270','Nahrwan 1967',NULL,NULL,'EPSG','7012','EPSG','8901','EPSG','1351','1967-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6271','Naparima 1972',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','1322','1972-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6272','New Zealand Geodetic Datum 1949',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','3285','1949-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6273','NGO 1948',NULL,NULL,'EPSG','7005','EPSG','8901','EPSG','1352','1948-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6274','Datum 73',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','1294','1964-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6275','Nouvelle Triangulation Francaise',NULL,NULL,'EPSG','7011','EPSG','8901','EPSG','3694','1895-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6276','NSWC 9Z-2',NULL,NULL,'EPSG','7025','EPSG','8901','EPSG','1262',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6277','OSGB 1936',NULL,NULL,'EPSG','7001','EPSG','8901','EPSG','4390','1936-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6278','OSGB 1970 (SN)',NULL,NULL,'EPSG','7001','EPSG','8901','EPSG','1264','1970-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6279','OS (SN) 1980',NULL,NULL,'EPSG','7001','EPSG','8901','EPSG','1354','1980-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6280','Padang 1884',NULL,NULL,'EPSG','7004','EPSG','8901','EPSG','1355','1884-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6281','Palestine 1923',NULL,NULL,'EPSG','7010','EPSG','8901','EPSG','1356','1923-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6282','Congo 1960 Pointe Noire',NULL,NULL,'EPSG','7011','EPSG','8901','EPSG','1072','1960-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6283','Geocentric Datum of Australia 1994',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','4177','1994-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6284','Pulkovo 1942',NULL,NULL,'EPSG','7024','EPSG','8901','EPSG','2423','1942-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6285','Qatar 1974',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','1195','1974-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6286','Qatar 1948',NULL,NULL,'EPSG','7020','EPSG','8901','EPSG','1346','1948-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6287','Qornoq',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','1107','1927-01-01',1);
INSERT INTO "geodetic_datum" VALUES('EPSG','6288','Loma Quintana',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','1313',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6289','Amersfoort',NULL,NULL,'EPSG','7004','EPSG','8901','EPSG','1275',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6291','South American Datum 1969',NULL,NULL,'EPSG','7036','EPSG','8901','EPSG','1358','1969-01-01',1);
INSERT INTO "geodetic_datum" VALUES('EPSG','6292','Sapper Hill 1943',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','3247','1943-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6293','Schwarzeck',NULL,NULL,'EPSG','7046','EPSG','8901','EPSG','1169',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6294','Segora',NULL,NULL,'EPSG','7004','EPSG','8901','EPSG','1359',NULL,1);
INSERT INTO "geodetic_datum" VALUES('EPSG','6295','Serindung',NULL,NULL,'EPSG','7004','EPSG','8901','EPSG','4005',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6296','Sudan',NULL,NULL,'EPSG','7011','EPSG','8901','EPSG','1361',NULL,1);
INSERT INTO "geodetic_datum" VALUES('EPSG','6297','Tananarive 1925',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','1149','1925-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6298','Timbalai 1948',NULL,NULL,'EPSG','7016','EPSG','8901','EPSG','1362','1948-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6299','TM65',NULL,NULL,'EPSG','7002','EPSG','8901','EPSG','1305','1965-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6300','Geodetic Datum of 1965',NULL,NULL,'EPSG','7002','EPSG','8901','EPSG','1305','1975-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6301','Tokyo',NULL,NULL,'EPSG','7004','EPSG','8901','EPSG','1364','1918-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6302','Trinidad 1903',NULL,NULL,'EPSG','7007','EPSG','8901','EPSG','1339','1903-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6303','Trucial Coast 1948',NULL,NULL,'EPSG','7020','EPSG','8901','EPSG','1363','1948-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6304','Voirol 1875',NULL,NULL,'EPSG','7011','EPSG','8901','EPSG','1365','1875-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6306','Bern 1938',NULL,NULL,'EPSG','7004','EPSG','8901','EPSG','1286','1938-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6307','Nord Sahara 1959',NULL,NULL,'EPSG','7012','EPSG','8901','EPSG','1026','1959-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6308','Stockholm 1938',NULL,NULL,'EPSG','7004','EPSG','8901','EPSG','3313','1938-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6309','Yacare',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','3326',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6310','Yoff',NULL,NULL,'EPSG','7011','EPSG','8901','EPSG','1207',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6311','Zanderij',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','1222',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6312','Militar-Geographische Institut',NULL,NULL,'EPSG','7004','EPSG','8901','EPSG','1037','1901-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6313','Reseau National Belge 1972',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','1347','1972-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6314','Deutsches Hauptdreiecksnetz',NULL,NULL,'EPSG','7004','EPSG','8901','EPSG','2326',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6315','Conakry 1905',NULL,NULL,'EPSG','7011','EPSG','8901','EPSG','3257','1905-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6316','Dealul Piscului 1930',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','3295','1930-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6317','Dealul Piscului 1970',NULL,NULL,'EPSG','7024','EPSG','8901','EPSG','1197','1970-01-01',1);
INSERT INTO "geodetic_datum" VALUES('EPSG','6318','National Geodetic Network',NULL,NULL,'EPSG','7030','EPSG','8901','EPSG','3267','1993-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6319','Kuwait Utility',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1310',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6322','World Geodetic System 1972',NULL,NULL,'EPSG','7043','EPSG','8901','EPSG','1262','1972-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6324','WGS 72 Transit Broadcast Ephemeris',NULL,NULL,'EPSG','7043','EPSG','8901','EPSG','1262','1972-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6326','World Geodetic System 1984',NULL,NULL,'EPSG','7030','EPSG','8901','EPSG','1262',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6600','Anguilla 1957',NULL,NULL,'EPSG','7012','EPSG','8901','EPSG','3214','1957-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6601','Antigua 1943',NULL,NULL,'EPSG','7012','EPSG','8901','EPSG','1273','1943-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6602','Dominica 1945',NULL,NULL,'EPSG','7012','EPSG','8901','EPSG','3239','1945-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6603','Grenada 1953',NULL,NULL,'EPSG','7012','EPSG','8901','EPSG','1551','1953-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6604','Montserrat 1958',NULL,NULL,'EPSG','7012','EPSG','8901','EPSG','3279','1958-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6605','St. Kitts 1955',NULL,NULL,'EPSG','7012','EPSG','8901','EPSG','3297','1955-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6606','St. Lucia 1955',NULL,NULL,'EPSG','7012','EPSG','8901','EPSG','3298','1955-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6607','St. Vincent 1945',NULL,NULL,'EPSG','7012','EPSG','8901','EPSG','3300','1945-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6608','North American Datum 1927 (1976)',NULL,NULL,'EPSG','7008','EPSG','8901','EPSG','1367','1976-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6609','North American Datum 1927 (CGQ77)',NULL,NULL,'EPSG','7008','EPSG','8901','EPSG','1368','1977-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6610','Xian 1980',NULL,NULL,'EPSG','7049','EPSG','8901','EPSG','3228','1980-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6611','Hong Kong 1980',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','1118','1980-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6612','Japanese Geodetic Datum 2000',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1129','1997-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6613','Gunung Segara',NULL,NULL,'EPSG','7004','EPSG','8901','EPSG','1360',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6614','Qatar National Datum 1995',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','1346','1995-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6615','Porto Santo 1936',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','1314','1936-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6616','Selvagem Grande',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','2779',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6618','South American Datum 1969',NULL,NULL,'EPSG','7050','EPSG','8901','EPSG','1358','1969-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6619','SWEREF99',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1225','1999-06-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6620','Point 58',NULL,NULL,'EPSG','7012','EPSG','8901','EPSG','2790','1969-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6621','Fort Marigot',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','2828',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6622','Guadeloupe 1948',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','2829','1948-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6623','Centre Spatial Guyanais 1967',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','3105','1967-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6624','Reseau Geodesique Francais Guyane 1995',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1097','1995-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6625','Martinique 1938',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','3276','1938-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6626','Reunion 1947',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','3337','1947-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6627','Reseau Geodesique de la Reunion 1992',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','3902','1993-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6628','Tahiti 52',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','2811','1952-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6629','Tahaa 54',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','2812','1954-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6630','IGN72 Nuku Hiva',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','3129','1972-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6631','K0 1949',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','2816','1949-01-01',1);
INSERT INTO "geodetic_datum" VALUES('EPSG','6632','Combani 1950',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','3340','1950-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6633','IGN56 Lifou',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','2814','1956-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6634','IGN72 Grande Terre',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','2822','1972-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6635','ST87 Ouvea',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','2813','1987-01-01',1);
INSERT INTO "geodetic_datum" VALUES('EPSG','6636','Petrels 1972',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','2817','1972-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6637','Pointe Geologie Perroud 1950',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','2818','1950-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6638','Saint Pierre et Miquelon 1950',NULL,NULL,'EPSG','7008','EPSG','8901','EPSG','3299','1950-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6639','MOP78',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','2815','1978-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6640','Reseau de Reference des Antilles Francaises 1991',NULL,NULL,'EPSG','7030','EPSG','8901','EPSG','2824','1991-01-01',1);
INSERT INTO "geodetic_datum" VALUES('EPSG','6641','IGN53 Mare',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','2819','1953-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6642','ST84 Ile des Pins',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','2820','1984-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6643','ST71 Belep',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','2821','1971-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6644','NEA74 Noumea',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','2823','1974-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6645','Reseau Geodesique Nouvelle Caledonie 1991',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','1174','1989-01-01',1);
INSERT INTO "geodetic_datum" VALUES('EPSG','6646','Grand Comoros',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','2807',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6647','International Terrestrial Reference Frame 1988',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1262','1988-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6648','International Terrestrial Reference Frame 1989',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1262','1988-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6649','International Terrestrial Reference Frame 1990',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1262','1988-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6650','International Terrestrial Reference Frame 1991',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1262','1988-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6651','International Terrestrial Reference Frame 1992',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1262','1988-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6652','International Terrestrial Reference Frame 1993',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1262','1993-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6653','International Terrestrial Reference Frame 1994',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1262','1993-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6654','International Terrestrial Reference Frame 1996',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1262','1997-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6655','International Terrestrial Reference Frame 1997',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1262','1997-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6656','International Terrestrial Reference Frame 2000',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1262','1997-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6657','Reykjavik 1900',NULL,NULL,'EPSG','7051','EPSG','8901','EPSG','3262','1900-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6658','Hjorsey 1955',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','3262','1955-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6659','Islands Net 1993',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1120','1993-08-07',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6660','Helle 1954',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','2869','1954-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6661','Latvia 1992',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1139','1992-10-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6663','Porto Santo 1995',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','1314','1995-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6664','Azores Oriental Islands 1995',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','1345','1995-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6665','Azores Central Islands 1995',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','1301','1995-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6666','Lisbon 1890',NULL,NULL,'EPSG','7004','EPSG','8901','EPSG','1294','1937-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6667','Iraq-Kuwait Boundary Datum 1992',NULL,NULL,'EPSG','7030','EPSG','8901','EPSG','2876','1992-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6668','European Datum 1979',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','1297','1979-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6670','Istituto Geografico Militaire 1995',NULL,NULL,'EPSG','7030','EPSG','8901','EPSG','3343','1995-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6671','Voirol 1879',NULL,NULL,'EPSG','7011','EPSG','8901','EPSG','1365','1879-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6672','Chatham Islands Datum 1971',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','2889','1971-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6673','Chatham Islands Datum 1979',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','2889','1979-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6674','Sistema de Referencia Geocentrico para las AmericaS 2000',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','3418','2000-05-26',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6675','Guam 1963',NULL,NULL,'EPSG','7008','EPSG','8901','EPSG','4525','1963-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6676','Vientiane 1982',NULL,NULL,'EPSG','7024','EPSG','8901','EPSG','1138','1982-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6677','Lao 1993',NULL,NULL,'EPSG','7024','EPSG','8901','EPSG','1138','1993-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6678','Lao National Datum 1997',NULL,NULL,'EPSG','7024','EPSG','8901','EPSG','1138','1997-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6679','Jouik 1961',NULL,NULL,'EPSG','7012','EPSG','8901','EPSG','2967','1961-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6680','Nouakchott 1965',NULL,NULL,'EPSG','7012','EPSG','8901','EPSG','2968','1965-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6681','Mauritania 1999',NULL,NULL,'EPSG','7012','EPSG','8901','EPSG','1157','1999-01-01',1);
INSERT INTO "geodetic_datum" VALUES('EPSG','6682','Gulshan 303',NULL,NULL,'EPSG','7015','EPSG','8901','EPSG','1041','1995-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6683','Philippine Reference System 1992',NULL,NULL,'EPSG','7008','EPSG','8901','EPSG','1190','1992-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6684','Gan 1970',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','3274','1970-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6685','Gandajika',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','1259','1953-01-01',1);
INSERT INTO "geodetic_datum" VALUES('EPSG','6686','Marco Geocentrico Nacional de Referencia',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1070','2004-10-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6687','Reseau Geodesique de la Polynesie Francaise',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1098','1993-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6688','Fatu Iva 72',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','3133','1972-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6689','IGN63 Hiva Oa',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','3130','1963-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6690','Tahiti 79',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','3124','1979-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6691','Moorea 87',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','3125','1987-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6692','Maupiti 83',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','3126','1983-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6693','Nakhl-e Ghanem',NULL,NULL,'EPSG','7030','EPSG','8901','EPSG','2362','2005-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6694','Posiciones Geodesicas Argentinas 1994',NULL,NULL,'EPSG','7030','EPSG','8901','EPSG','1033','1994-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6695','Katanga 1955',NULL,NULL,'EPSG','7008','EPSG','8901','EPSG','3147','1955-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6696','Kasai 1953',NULL,NULL,'EPSG','7012','EPSG','8901','EPSG','3148','1955-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6697','IGC 1962 Arc of the 6th Parallel South',NULL,NULL,'EPSG','7012','EPSG','8901','EPSG','3149','1962-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6698','IGN 1962 Kerguelen',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','2816','1949-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6699','Le Pouce 1934',NULL,NULL,'EPSG','7012','EPSG','8901','EPSG','3209','1934-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6700','IGN Astro 1960',NULL,NULL,'EPSG','7012','EPSG','8901','EPSG','3277','1960-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6701','Institut Geographique du Congo Belge 1955',NULL,NULL,'EPSG','7012','EPSG','8901','EPSG','3171','1955-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6702','Mauritania 1999',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1157','1997-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6703','Missao Hidrografico Angola y Sao Tome 1951',NULL,NULL,'EPSG','7012','EPSG','8901','EPSG','1318','1951-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6704','Mhast (onshore)',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','3179',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6705','Mhast (offshore)',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','3180','1979-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6706','Egypt Gulf of Suez S-650 TL',NULL,NULL,'EPSG','7020','EPSG','8901','EPSG','2341','1980-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6707','Tern Island 1961',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','3181','1961-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6708','Cocos Islands 1965',NULL,NULL,'EPSG','7003','EPSG','8901','EPSG','1069','1965-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6709','Iwo Jima 1945',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','3200','1945-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6710','Astro DOS 71',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','3183','1971-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6711','Marcus Island 1952',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','1872','1952-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6712','Ascension Island 1958',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','3182','1958-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6713','Ayabelle Lighthouse',NULL,NULL,'EPSG','7012','EPSG','8901','EPSG','1081',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6714','Bellevue',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','3193','1960-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6715','Camp Area Astro',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','3205',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6716','Phoenix Islands 1966',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','3196','1966-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6717','Cape Canaveral',NULL,NULL,'EPSG','7008','EPSG','8901','EPSG','3206','1963-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6718','Solomon 1968',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','1213','1968-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6719','Easter Island 1967',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','3188','1967-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6720','Fiji Geodetic Datum 1986',NULL,NULL,'EPSG','7043','EPSG','8901','EPSG','1094','1986-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6721','Fiji 1956',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','3398','1956-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6722','South Georgia 1968',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','3529','1968-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6723','Grand Cayman Geodetic Datum 1959',NULL,NULL,'EPSG','7008','EPSG','8901','EPSG','3185','1959-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6724','Diego Garcia 1969',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','3189','1969-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6725','Johnston Island 1961',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','3201','1961-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6726','Sister Islands Geodetic Datum 1961',NULL,NULL,'EPSG','7008','EPSG','8901','EPSG','3186','1961-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6727','Midway 1961',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','3202','1961-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6728','Pico de las Nieves 1984',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','3873',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6729','Pitcairn 1967',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','3208','1967-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6730','Santo 1965',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','3194','1965-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6731','Viti Levu 1916',NULL,NULL,'EPSG','7012','EPSG','8901','EPSG','3195','1916-01-01',1);
INSERT INTO "geodetic_datum" VALUES('EPSG','6732','Marshall Islands 1960',NULL,NULL,'EPSG','7053','EPSG','8901','EPSG','3191','1960-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6733','Wake Island 1952',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','3190','1952-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6734','Tristan 1968',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','3184','1968-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6735','Kusaie 1951',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','3192','1951-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6736','Deception Island',NULL,NULL,'EPSG','7012','EPSG','8901','EPSG','3204',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6737','Geocentric datum of Korea',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1135','2002-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6738','Hong Kong 1963',NULL,NULL,'EPSG','7007','EPSG','8901','EPSG','1118','1963-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6739','Hong Kong 1963(67)',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','1118','1967-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6740','Parametry Zemli 1990',NULL,NULL,'EPSG','7054','EPSG','8901','EPSG','1262','1990-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6741','Faroe Datum 1954',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','3248','1954-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6742','Geodetic Datum of Malaysia 2000',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1151','2000-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6743','Karbala 1979',NULL,NULL,'EPSG','7012','EPSG','8901','EPSG','3625','1979-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6744','Nahrwan 1934',NULL,NULL,'EPSG','7012','EPSG','8901','EPSG','4238','1934-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6745','Rauenberg Datum/83',NULL,NULL,'EPSG','7004','EPSG','8901','EPSG','2545','1990-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6746','Potsdam Datum/83',NULL,NULL,'EPSG','7004','EPSG','8901','EPSG','2544','1990-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6747','Greenland 1996',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1107','1996-08-14',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6748','Vanua Levu 1915',NULL,NULL,'EPSG','7055','EPSG','8901','EPSG','3401','1915-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6749','Reseau Geodesique de Nouvelle Caledonie 91-93',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1174','1989-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6750','ST87 Ouvea',NULL,NULL,'EPSG','7030','EPSG','8901','EPSG','2813','1987-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6751','Kertau (RSO)',NULL,NULL,'EPSG','7056','EPSG','8901','EPSG','1309','1969-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6752','Viti Levu 1912',NULL,NULL,'EPSG','7055','EPSG','8901','EPSG','3195','1912-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6753','fk89',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','3248','1989-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6754','Libyan Geodetic Datum 2006',NULL,NULL,'EPSG','7022','EPSG','8901','EPSG','1143','2006-05-19',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6755','Datum Geodesi Nasional 1995',NULL,NULL,'EPSG','7030','EPSG','8901','EPSG','1122','1995-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6756','Vietnam 2000',NULL,NULL,'EPSG','7030','EPSG','8901','EPSG','3328','2000-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6757','SVY21',NULL,NULL,'EPSG','7030','EPSG','8901','EPSG','1210','2004-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6758','Jamaica 2001',NULL,NULL,'EPSG','7030','EPSG','8901','EPSG','1128','2001-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6759','NAD83 (National Spatial Reference System 2007)',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1511','2007-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6760','World Geodetic System 1966',NULL,NULL,'EPSG','7025','EPSG','8901','EPSG','1262','1966-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6761','Croatian Terrestrial Reference System',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1076','1995-07-20',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6762','Bermuda 2000',NULL,NULL,'EPSG','7030','EPSG','8901','EPSG','1047','2000-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6763','Pitcairn 2006',NULL,NULL,'EPSG','7030','EPSG','8901','EPSG','3208','2006-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6764','Ross Sea Region Geodetic Datum 2000',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','3558','2000-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6765','Slovenia Geodetic Datum 1996',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1212','1996-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6801','CH1903 (Bern)',NULL,NULL,'EPSG','7004','EPSG','8907','EPSG','1286','1903-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6802','Bogota 1975 (Bogota)',NULL,NULL,'EPSG','7022','EPSG','8904','EPSG','3229','1975-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6803','Lisbon 1937 (Lisbon)',NULL,NULL,'EPSG','7022','EPSG','8902','EPSG','1294','1937-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6804','Makassar (Jakarta)',NULL,NULL,'EPSG','7004','EPSG','8908','EPSG','1316',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6805','Militar-Geographische Institut (Ferro)',NULL,NULL,'EPSG','7004','EPSG','8909','EPSG','1321','1901-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6806','Monte Mario (Rome)',NULL,NULL,'EPSG','7022','EPSG','8906','EPSG','3343',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6807','Nouvelle Triangulation Francaise (Paris)',NULL,NULL,'EPSG','7011','EPSG','8903','EPSG','3694','1895-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6808','Padang 1884 (Jakarta)',NULL,NULL,'EPSG','7004','EPSG','8908','EPSG','1355','1884-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6809','Reseau National Belge 1950 (Brussels)',NULL,NULL,'EPSG','7022','EPSG','8910','EPSG','1347','1950-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6810','Tananarive 1925 (Paris)',NULL,NULL,'EPSG','7022','EPSG','8903','EPSG','3273','1925-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6811','Voirol 1875 (Paris)',NULL,NULL,'EPSG','7011','EPSG','8903','EPSG','1365','1875-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6813','Batavia (Jakarta)',NULL,NULL,'EPSG','7004','EPSG','8908','EPSG','1285',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6814','Stockholm 1938 (Stockholm)',NULL,NULL,'EPSG','7004','EPSG','8911','EPSG','3313','1938-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6815','Greek (Athens)',NULL,NULL,'EPSG','7004','EPSG','8912','EPSG','3254',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6816','Carthage (Paris)',NULL,NULL,'EPSG','7011','EPSG','8903','EPSG','1618','1925-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6817','NGO 1948 (Oslo)',NULL,NULL,'EPSG','7005','EPSG','8913','EPSG','1352','1948-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6818','System of the Unified Trigonometrical Cadastral Network (Ferro)',NULL,NULL,'EPSG','7004','EPSG','8909','EPSG','1306','1920-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6819','Nord Sahara 1959 (Paris)',NULL,NULL,'EPSG','7012','EPSG','8903','EPSG','1366','1959-01-01',1);
INSERT INTO "geodetic_datum" VALUES('EPSG','6820','Gunung Segara (Jakarta)',NULL,NULL,'EPSG','7004','EPSG','8908','EPSG','1360',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6821','Voirol 1879 (Paris)',NULL,NULL,'EPSG','7011','EPSG','8903','EPSG','1365','1879-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6896','International Terrestrial Reference Frame 2005',NULL,NULL,'EPSG','7019','EPSG','8901','EPSG','1262','2000-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6901','Ancienne Triangulation Francaise (Paris)',NULL,NULL,'EPSG','7027','EPSG','8914','EPSG','1326',NULL,0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6902','Nord de Guerre (Paris)',NULL,NULL,'EPSG','7027','EPSG','8903','EPSG','1369',NULL,1);
INSERT INTO "geodetic_datum" VALUES('EPSG','6903','Madrid 1870 (Madrid)',NULL,NULL,'EPSG','7028','EPSG','8905','EPSG','2366','1870-01-01',0);
INSERT INTO "geodetic_datum" VALUES('EPSG','6904','Lisbon 1890 (Lisbon)',NULL,NULL,'EPSG','7004','EPSG','8902','EPSG','1294','1937-01-01',0);
File diff suppressed because it is too large Load Diff
-790
View File
@@ -1,790 +0,0 @@
--- This file has been generated by scripts/build_grid_alternatives_generated.py. DO NOT EDIT !
-- NADCON (NAD27 -> NAD83) entries
INSERT INTO grid_alternatives(original_grid_name,
proj_grid_name,
proj_grid_format,
proj_method,
inverse_direction,
package_name,
url, direct_download, open_license, directory)
VALUES ('conus.las',
'conus',
'CTable2',
'hgridshift',
0,
'proj-datumgrid',
NULL, NULL, NULL, NULL);
INSERT INTO grid_alternatives(original_grid_name,
proj_grid_name,
proj_grid_format,
proj_method,
inverse_direction,
package_name,
url, direct_download, open_license, directory)
VALUES ('alaska.las',
'alaska',
'CTable2',
'hgridshift',
0,
'proj-datumgrid',
NULL, NULL, NULL, NULL);
INSERT INTO grid_alternatives(original_grid_name,
proj_grid_name,
proj_grid_format,
proj_method,
inverse_direction,
package_name,
url, direct_download, open_license, directory)
VALUES ('hawaii.las',
'hawaii',
'CTable2',
'hgridshift',
0,
'proj-datumgrid',
NULL, NULL, NULL, NULL);
INSERT INTO grid_alternatives(original_grid_name,
proj_grid_name,
proj_grid_format,
proj_method,
inverse_direction,
package_name,
url, direct_download, open_license, directory)
VALUES ('prvi.las',
'prvi',
'CTable2',
'hgridshift',
0,
'proj-datumgrid',
NULL, NULL, NULL, NULL);
INSERT INTO grid_alternatives(original_grid_name,
proj_grid_name,
proj_grid_format,
proj_method,
inverse_direction,
package_name,
url, direct_download, open_license, directory)
VALUES ('stgeorge.las',
'stgeorge',
'CTable2',
'hgridshift',
0,
'proj-datumgrid',
NULL, NULL, NULL, NULL);
INSERT INTO grid_alternatives(original_grid_name,
proj_grid_name,
proj_grid_format,
proj_method,
inverse_direction,
package_name,
url, direct_download, open_license, directory)
VALUES ('stlrnc.las',
'stlrnc',
'CTable2',
'hgridshift',
0,
'proj-datumgrid',
NULL, NULL, NULL, NULL);
INSERT INTO grid_alternatives(original_grid_name,
proj_grid_name,
proj_grid_format,
proj_method,
inverse_direction,
package_name,
url, direct_download, open_license, directory)
VALUES ('stpaul.las',
'stpaul',
'CTable2',
'hgridshift',
0,
'proj-datumgrid',
NULL, NULL, NULL, NULL);
-- NAD83 -> NAD83(HPGN) entries
INSERT INTO grid_alternatives(original_grid_name,
proj_grid_name,
proj_grid_format,
proj_method,
inverse_direction,
package_name,
url, direct_download, open_license, directory)
VALUES ('alhpgn.las',
'alhpgn.gsb',
'NTv2',
'hgridshift',
0,
'proj-datumgrid-north-america',
NULL, NULL, NULL, NULL);
INSERT INTO grid_alternatives(original_grid_name,
proj_grid_name,
proj_grid_format,
proj_method,
inverse_direction,
package_name,
url, direct_download, open_license, directory)
VALUES ('arhpgn.las',
'arhpgn.gsb',
'NTv2',
'hgridshift',
0,
'proj-datumgrid-north-america',
NULL, NULL, NULL, NULL);
INSERT INTO grid_alternatives(original_grid_name,
proj_grid_name,
proj_grid_format,
proj_method,
inverse_direction,
package_name,
url, direct_download, open_license, directory)
VALUES ('azhpgn.las',
'azhpgn.gsb',
'NTv2',
'hgridshift',
0,
'proj-datumgrid-north-america',
NULL, NULL, NULL, NULL);
INSERT INTO grid_alternatives(original_grid_name,
proj_grid_name,
proj_grid_format,
proj_method,
inverse_direction,
package_name,
url, direct_download, open_license, directory)
VALUES ('cnhpgn.las',
'cnhpgn.gsb',
'NTv2',
'hgridshift',
0,
'proj-datumgrid-north-america',
NULL, NULL, NULL, NULL);
INSERT INTO grid_alternatives(original_grid_name,
proj_grid_name,
proj_grid_format,
proj_method,
inverse_direction,
package_name,
url, direct_download, open_license, directory)
VALUES ('cohpgn.las',
'cohpgn.gsb',
'NTv2',
'hgridshift',
0,
'proj-datumgrid-north-america',
NULL, NULL, NULL, NULL);
INSERT INTO grid_alternatives(original_grid_name,
proj_grid_name,
proj_grid_format,
proj_method,
inverse_direction,
package_name,
url, direct_download, open_license, directory)
VALUES ('cshpgn.las',
'cshpgn.gsb',
'NTv2',
'hgridshift',
0,
'proj-datumgrid-north-america',
NULL, NULL, NULL, NULL);
INSERT INTO grid_alternatives(original_grid_name,
proj_grid_name,
proj_grid_format,
proj_method,
inverse_direction,
package_name,
url, direct_download, open_license, directory)
VALUES ('emhpgn.las',
'emhpgn.gsb',
'NTv2',
'hgridshift',
0,
'proj-datumgrid-north-america',
NULL, NULL, NULL, NULL);
INSERT INTO grid_alternatives(original_grid_name,
proj_grid_name,
proj_grid_format,
proj_method,
inverse_direction,
package_name,
url, direct_download, open_license, directory)
VALUES ('eshpgn.las',
'eshpgn.gsb',
'NTv2',
'hgridshift',
0,
'proj-datumgrid-north-america',
NULL, NULL, NULL, NULL);
INSERT INTO grid_alternatives(original_grid_name,
proj_grid_name,
proj_grid_format,
proj_method,
inverse_direction,
package_name,
url, direct_download, open_license, directory)
VALUES ('ethpgn.las',
'ethpgn.gsb',
'NTv2',
'hgridshift',
0,
'proj-datumgrid-north-america',
NULL, NULL, NULL, NULL);
INSERT INTO grid_alternatives(original_grid_name,
proj_grid_name,
proj_grid_format,
proj_method,
inverse_direction,
package_name,
url, direct_download, open_license, directory)
VALUES ('flhpgn.las',
'FL',
'CTable2',
'hgridshift',
0,
'proj-datumgrid',
NULL, NULL, NULL, NULL);
INSERT INTO grid_alternatives(original_grid_name,
proj_grid_name,
proj_grid_format,
proj_method,
inverse_direction,
package_name,
url, direct_download, open_license, directory)
VALUES ('gahpgn.las',
'gahpgn.gsb',
'NTv2',
'hgridshift',
0,
'proj-datumgrid-north-america',
NULL, NULL, NULL, NULL);
INSERT INTO grid_alternatives(original_grid_name,
proj_grid_name,
proj_grid_format,
proj_method,
inverse_direction,
package_name,
url, direct_download, open_license, directory)
VALUES ('guhpgn.las',
'guhpgn.gsb',
'NTv2',
'hgridshift',
0,
'proj-datumgrid-north-america',
NULL, NULL, NULL, NULL);
INSERT INTO grid_alternatives(original_grid_name,
proj_grid_name,
proj_grid_format,
proj_method,
inverse_direction,
package_name,
url, direct_download, open_license, directory)
VALUES ('hihpgn.las',
'hihpgn.gsb',
'NTv2',
'hgridshift',
0,
'proj-datumgrid-north-america',
NULL, NULL, NULL, NULL);
INSERT INTO grid_alternatives(original_grid_name,
proj_grid_name,
proj_grid_format,
proj_method,
inverse_direction,
package_name,
url, direct_download, open_license, directory)
VALUES ('iahpgn.las',
'iahpgn.gsb',
'NTv2',
'hgridshift',
0,
'proj-datumgrid-north-america',
NULL, NULL, NULL, NULL);
INSERT INTO grid_alternatives(original_grid_name,
proj_grid_name,
proj_grid_format,
proj_method,
inverse_direction,
package_name,
url, direct_download, open_license, directory)
VALUES ('ilhpgn.las',
'ilhpgn.gsb',
'NTv2',
'hgridshift',
0,
'proj-datumgrid-north-america',
NULL, NULL, NULL, NULL);
INSERT INTO grid_alternatives(original_grid_name,
proj_grid_name,
proj_grid_format,
proj_method,
inverse_direction,
package_name,
url, direct_download, open_license, directory)
VALUES ('inhpgn.las',
'inhpgn.gsb',
'NTv2',
'hgridshift',
0,
'proj-datumgrid-north-america',
NULL, NULL, NULL, NULL);
INSERT INTO grid_alternatives(original_grid_name,
proj_grid_name,
proj_grid_format,
proj_method,
inverse_direction,
package_name,
url, direct_download, open_license, directory)
VALUES ('kshpgn.las',
'kshpgn.gsb',
'NTv2',
'hgridshift',
0,
'proj-datumgrid-north-america',
NULL, NULL, NULL, NULL);
INSERT INTO grid_alternatives(original_grid_name,
proj_grid_name,
proj_grid_format,
proj_method,
inverse_direction,
package_name,
url, direct_download, open_license, directory)
VALUES ('kyhpgn.las',
'kyhpgn.gsb',
'NTv2',
'hgridshift',
0,
'proj-datumgrid-north-america',
NULL, NULL, NULL, NULL);
INSERT INTO grid_alternatives(original_grid_name,
proj_grid_name,
proj_grid_format,
proj_method,
inverse_direction,
package_name,
url, direct_download, open_license, directory)
VALUES ('lahpgn.las',
'lahpgn.gsb',
'NTv2',
'hgridshift',
0,
'proj-datumgrid-north-america',
NULL, NULL, NULL, NULL);
INSERT INTO grid_alternatives(original_grid_name,
proj_grid_name,
proj_grid_format,
proj_method,
inverse_direction,
package_name,
url, direct_download, open_license, directory)
VALUES ('mdhpgn.las',
'MD',
'CTable2',
'hgridshift',
0,
'proj-datumgrid',
NULL, NULL, NULL, NULL);
INSERT INTO grid_alternatives(original_grid_name,
proj_grid_name,
proj_grid_format,
proj_method,
inverse_direction,
package_name,
url, direct_download, open_license, directory)
VALUES ('mehpgn.las',
'mehpgn.gsb',
'NTv2',
'hgridshift',
0,
'proj-datumgrid-north-america',
NULL, NULL, NULL, NULL);
INSERT INTO grid_alternatives(original_grid_name,
proj_grid_name,
proj_grid_format,
proj_method,
inverse_direction,
package_name,
url, direct_download, open_license, directory)
VALUES ('mihpgn.las',
'mihpgn.gsb',
'NTv2',
'hgridshift',
0,
'proj-datumgrid-north-america',
NULL, NULL, NULL, NULL);
INSERT INTO grid_alternatives(original_grid_name,
proj_grid_name,
proj_grid_format,
proj_method,
inverse_direction,
package_name,
url, direct_download, open_license, directory)
VALUES ('mnhpgn.las',
'mnhpgn.gsb',
'NTv2',
'hgridshift',
0,
'proj-datumgrid-north-america',
NULL, NULL, NULL, NULL);
INSERT INTO grid_alternatives(original_grid_name,
proj_grid_name,
proj_grid_format,
proj_method,
inverse_direction,
package_name,
url, direct_download, open_license, directory)
VALUES ('mohpgn.las',
'mohpgn.gsb',
'NTv2',
'hgridshift',
0,
'proj-datumgrid-north-america',
NULL, NULL, NULL, NULL);
INSERT INTO grid_alternatives(original_grid_name,
proj_grid_name,
proj_grid_format,
proj_method,
inverse_direction,
package_name,
url, direct_download, open_license, directory)
VALUES ('mshpgn.las',
'mshpgn.gsb',
'NTv2',
'hgridshift',
0,
'proj-datumgrid-north-america',
NULL, NULL, NULL, NULL);
INSERT INTO grid_alternatives(original_grid_name,
proj_grid_name,
proj_grid_format,
proj_method,
inverse_direction,
package_name,
url, direct_download, open_license, directory)
VALUES ('nbhpgn.las',
'nbhpgn.gsb',
'NTv2',
'hgridshift',
0,
'proj-datumgrid-north-america',
NULL, NULL, NULL, NULL);
INSERT INTO grid_alternatives(original_grid_name,
proj_grid_name,
proj_grid_format,
proj_method,
inverse_direction,
package_name,
url, direct_download, open_license, directory)
VALUES ('nchpgn.las',
'nchpgn.gsb',
'NTv2',
'hgridshift',
0,
'proj-datumgrid-north-america',
NULL, NULL, NULL, NULL);
INSERT INTO grid_alternatives(original_grid_name,
proj_grid_name,
proj_grid_format,
proj_method,
inverse_direction,
package_name,
url, direct_download, open_license, directory)
VALUES ('ndhpgn.las',
'ndhpgn.gsb',
'NTv2',
'hgridshift',
0,
'proj-datumgrid-north-america',
NULL, NULL, NULL, NULL);
INSERT INTO grid_alternatives(original_grid_name,
proj_grid_name,
proj_grid_format,
proj_method,
inverse_direction,
package_name,
url, direct_download, open_license, directory)
VALUES ('nehpgn.las',
'nehpgn.gsb',
'NTv2',
'hgridshift',
0,
'proj-datumgrid-north-america',
NULL, NULL, NULL, NULL);
INSERT INTO grid_alternatives(original_grid_name,
proj_grid_name,
proj_grid_format,
proj_method,
inverse_direction,
package_name,
url, direct_download, open_license, directory)
VALUES ('njhpgn.las',
'njhpgn.gsb',
'NTv2',
'hgridshift',
0,
'proj-datumgrid-north-america',
NULL, NULL, NULL, NULL);
INSERT INTO grid_alternatives(original_grid_name,
proj_grid_name,
proj_grid_format,
proj_method,
inverse_direction,
package_name,
url, direct_download, open_license, directory)
VALUES ('nmhpgn.las',
'nmhpgn.gsb',
'NTv2',
'hgridshift',
0,
'proj-datumgrid-north-america',
NULL, NULL, NULL, NULL);
INSERT INTO grid_alternatives(original_grid_name,
proj_grid_name,
proj_grid_format,
proj_method,
inverse_direction,
package_name,
url, direct_download, open_license, directory)
VALUES ('nvhpgn.las',
'nvhpgn.gsb',
'NTv2',
'hgridshift',
0,
'proj-datumgrid-north-america',
NULL, NULL, NULL, NULL);
INSERT INTO grid_alternatives(original_grid_name,
proj_grid_name,
proj_grid_format,
proj_method,
inverse_direction,
package_name,
url, direct_download, open_license, directory)
VALUES ('nyhpgn.las',
'nyhpgn.gsb',
'NTv2',
'hgridshift',
0,
'proj-datumgrid-north-america',
NULL, NULL, NULL, NULL);
INSERT INTO grid_alternatives(original_grid_name,
proj_grid_name,
proj_grid_format,
proj_method,
inverse_direction,
package_name,
url, direct_download, open_license, directory)
VALUES ('ohhpgn.las',
'ohhpgn.gsb',
'NTv2',
'hgridshift',
0,
'proj-datumgrid-north-america',
NULL, NULL, NULL, NULL);
INSERT INTO grid_alternatives(original_grid_name,
proj_grid_name,
proj_grid_format,
proj_method,
inverse_direction,
package_name,
url, direct_download, open_license, directory)
VALUES ('okhpgn.las',
'okhpgn.gsb',
'NTv2',
'hgridshift',
0,
'proj-datumgrid-north-america',
NULL, NULL, NULL, NULL);
INSERT INTO grid_alternatives(original_grid_name,
proj_grid_name,
proj_grid_format,
proj_method,
inverse_direction,
package_name,
url, direct_download, open_license, directory)
VALUES ('pahpgn.las',
'pahpgn.gsb',
'NTv2',
'hgridshift',
0,
'proj-datumgrid-north-america',
NULL, NULL, NULL, NULL);
INSERT INTO grid_alternatives(original_grid_name,
proj_grid_name,
proj_grid_format,
proj_method,
inverse_direction,
package_name,
url, direct_download, open_license, directory)
VALUES ('pvhpgn.las',
'pvhpgn.gsb',
'NTv2',
'hgridshift',
0,
'proj-datumgrid-north-america',
NULL, NULL, NULL, NULL);
INSERT INTO grid_alternatives(original_grid_name,
proj_grid_name,
proj_grid_format,
proj_method,
inverse_direction,
package_name,
url, direct_download, open_license, directory)
VALUES ('schpgn.las',
'schpgn.gsb',
'NTv2',
'hgridshift',
0,
'proj-datumgrid-north-america',
NULL, NULL, NULL, NULL);
INSERT INTO grid_alternatives(original_grid_name,
proj_grid_name,
proj_grid_format,
proj_method,
inverse_direction,
package_name,
url, direct_download, open_license, directory)
VALUES ('sdhpgn.las',
'sdhpgn.gsb',
'NTv2',
'hgridshift',
0,
'proj-datumgrid-north-america',
NULL, NULL, NULL, NULL);
INSERT INTO grid_alternatives(original_grid_name,
proj_grid_name,
proj_grid_format,
proj_method,
inverse_direction,
package_name,
url, direct_download, open_license, directory)
VALUES ('tnhpgn.las',
'TN',
'CTable2',
'hgridshift',
0,
'proj-datumgrid',
NULL, NULL, NULL, NULL);
INSERT INTO grid_alternatives(original_grid_name,
proj_grid_name,
proj_grid_format,
proj_method,
inverse_direction,
package_name,
url, direct_download, open_license, directory)
VALUES ('uthpgn.las',
'uthpgn.gsb',
'NTv2',
'hgridshift',
0,
'proj-datumgrid-north-america',
NULL, NULL, NULL, NULL);
INSERT INTO grid_alternatives(original_grid_name,
proj_grid_name,
proj_grid_format,
proj_method,
inverse_direction,
package_name,
url, direct_download, open_license, directory)
VALUES ('vahpgn.las',
'vahpgn.gsb',
'NTv2',
'hgridshift',
0,
'proj-datumgrid-north-america',
NULL, NULL, NULL, NULL);
INSERT INTO grid_alternatives(original_grid_name,
proj_grid_name,
proj_grid_format,
proj_method,
inverse_direction,
package_name,
url, direct_download, open_license, directory)
VALUES ('wihpgn.las',
'WI',
'CTable2',
'hgridshift',
0,
'proj-datumgrid',
NULL, NULL, NULL, NULL);
INSERT INTO grid_alternatives(original_grid_name,
proj_grid_name,
proj_grid_format,
proj_method,
inverse_direction,
package_name,
url, direct_download, open_license, directory)
VALUES ('wmhpgn.las',
'wmhpgn.gsb',
'NTv2',
'hgridshift',
0,
'proj-datumgrid-north-america',
NULL, NULL, NULL, NULL);
INSERT INTO grid_alternatives(original_grid_name,
proj_grid_name,
proj_grid_format,
proj_method,
inverse_direction,
package_name,
url, direct_download, open_license, directory)
VALUES ('wohpgn.las',
'WO',
'CTable2',
'hgridshift',
0,
'proj-datumgrid',
NULL, NULL, NULL, NULL);
INSERT INTO grid_alternatives(original_grid_name,
proj_grid_name,
proj_grid_format,
proj_method,
inverse_direction,
package_name,
url, direct_download, open_license, directory)
VALUES ('wshpgn.las',
'wshpgn.gsb',
'NTv2',
'hgridshift',
0,
'proj-datumgrid-north-america',
NULL, NULL, NULL, NULL);
INSERT INTO grid_alternatives(original_grid_name,
proj_grid_name,
proj_grid_format,
proj_method,
inverse_direction,
package_name,
url, direct_download, open_license, directory)
VALUES ('wthpgn.las',
'wthpgn.gsb',
'NTv2',
'hgridshift',
0,
'proj-datumgrid-north-america',
NULL, NULL, NULL, NULL);
INSERT INTO grid_alternatives(original_grid_name,
proj_grid_name,
proj_grid_format,
proj_method,
inverse_direction,
package_name,
url, direct_download, open_license, directory)
VALUES ('wvhpgn.las',
'wvhpgn.gsb',
'NTv2',
'hgridshift',
0,
'proj-datumgrid-north-america',
NULL, NULL, NULL, NULL);
INSERT INTO grid_alternatives(original_grid_name,
proj_grid_name,
proj_grid_format,
proj_method,
inverse_direction,
package_name,
url, direct_download, open_license, directory)
VALUES ('wyhpgn.las',
'wyhpgn.gsb',
'NTv2',
'hgridshift',
0,
'proj-datumgrid-north-america',
NULL, NULL, NULL, NULL);
-465
View File
@@ -1,465 +0,0 @@
--- This file has been generated by scripts/build_db.py. DO NOT EDIT !
INSERT INTO "grid_transformation" VALUES('EPSG','1068','Guam 1963 to NAD83(HARN) (1)','NADCON method which expects longitudes positive west; EPSG GeogCRSs Guam 1963 and NAD83(HARN) (codes 4675 and 4152) have longitudes positive east. Can be used as approximation for tfm between Guam 1963 and WGS 84 - see tfm code 1069.','Geodetic survey. Accuracy 3 m in each component, 1 sigma.','EPSG','9613','NADCON','EPSG','4675','EPSG','4152','EPSG','3255',5.0,'EPSG','8657','Latitude difference file','guhpgn.las','EPSG','8658','Longitude difference file','guhpgn.los',NULL,NULL,'NGS-Gum',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1069','Guam 1963 to WGS 84 (2)','Parameter files are from Guam 1963 to NAD83(HARN) (1) (code 1068), but for many purposes NAD83(HARN) can be considered to be coincident with WGS 84 within the accuracy of the transformation.','Accuracy 5m.','EPSG','9613','NADCON','EPSG','4675','EPSG','4326','EPSG','3255',5.0,'EPSG','8657','Latitude difference file','guhpgn.las','EPSG','8658','Longitude difference file','guhpgn.los',NULL,NULL,'EPSG-Gum',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1241','NAD27 to NAD83 (1)','Uses NADCON method which expects longitudes positive west; EPSG GeogCRS NAD27 (code 4267) and NAD83 (code 4269) have longitudes positive east.','Accuracy at 67% confidence level is 0.15m onshore, 5m nearshore and undetermined farther offshore.','EPSG','9613','NADCON','EPSG','4267','EPSG','4269','EPSG','2374',0.15,'EPSG','8657','Latitude difference file','conus.las','EPSG','8658','Longitude difference file','conus.los',NULL,NULL,'NGS-Usa Conus',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1243','NAD27 to NAD83 (2)','Uses NADCON method which expects longitudes positive west; EPSG GeogCRS NAD27 (code 4267) and NAD83 (code 4269) have longitudes positive east. May be used as transformation to WGS 84 - see NAD27 to WGS 84 (85) (code 15864).','Accuracy at 67% confidence level is 0.5m onshore, 5m nearshore and undetermined farther offshore.','EPSG','9613','NADCON','EPSG','4267','EPSG','4269','EPSG','2373',0.5,'EPSG','8657','Latitude difference file','alaska.las','EPSG','8658','Longitude difference file','alaska.los',NULL,NULL,'NGS-Usa AK',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1295','RGNC91-93 to NEA74 Noumea (4)','Emulation using NTv2 method of tfm NEA74 Noumea to RGNC91-93 (3) (code 15943). Note reversal of sign of parameter values in grid file.','Accuracy 5-10cm.','EPSG','9615','NTv2','EPSG','4749','EPSG','4644','EPSG','2823',0.05,'EPSG','8656','Latitude and longitude difference file','RGNC1991_NEA74Noumea.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'ESRI-Ncl 0.05m',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1312','NAD27 to NAD83 (3)','Uses NTv1 method. Replaced in Quebec by code 1462 and elsewhere in 1997 by NTv2 (transformation code 1313). Input expects longitudes to be positive west; EPSG GeogCRS NAD27 (code 4267) and NAD83 (code 4269) have longitudes positive east.','Historic record only - now superseded - see remarks.','EPSG','9614','NTv1','EPSG','4267','EPSG','4269','EPSG','1061',1.0,'EPSG','8656','Latitude and longitude difference file','NTv1_0.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'GC-Can NT1',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1313','NAD27 to NAD83 (4)','Uses NTv2 data files. Replaces NTv1 (transformation code 1312) except in Quebec. Input expects longitudes to be positive west; EPSG GeogCRS NAD27 (code 4267) and (code 4269) have longitudes positive east. May be used as tfm to WGS 84 - see code 1693.','Accuracy 1-2 metres.','EPSG','9615','NTv2','EPSG','4267','EPSG','4269','EPSG','4517',1.5,'EPSG','8656','Latitude and longitude difference file','NTv2_0.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'GC-Can NT2',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1451','NAD27(CGQ77) to NAD83 (1)','Replaced by NAD27(CGQ77) to NAD83 (2) (code 1575). Uses NT method which expects longitudes positive west; EPSG GeogCRSs CGQ77 (code 4609) and NAD83 (code 4269) have longitudes positive east.','Historic record only - now superseded - see remarks.','EPSG','9614','NTv1','EPSG','4609','EPSG','4269','EPSG','1368',1.0,'EPSG','8656','Latitude and longitude difference file','PQV4.DAC',NULL,NULL,NULL,NULL,NULL,NULL,'SGQ-Can QC NT1',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1454','Old Hawaiian to NAD83 (1)','Uses NADCON method which expects longitudes positive west; EPSG GeogCRSs Old Hawaiian (code 4135) and NAD83 (code 4269) have longitudes positive east. NADCON data converts from Old Hawaiian Datum but makes the transformation appear to be from NAD27.','Accuracy at 67% confidence level is 0.2m.','EPSG','9613','NADCON','EPSG','4135','EPSG','4269','EPSG','1334',0.2,'EPSG','8657','Latitude difference file','hawaii.las','EPSG','8658','Longitude difference file','hawaii.los',NULL,NULL,'NGS-Usa HI',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1455','St. Lawrence Island to NAD83 (1)','Uses NADCON method which expects longitudes positive west; EPSG GeogCRSs St. Lawrence (code 4136) and NAD83 (code 4269) have longitudes positive east. NADCON data converts from St. Lawrence Datum to but makes the transformation appear to be from NAD27.','Accuracy 0.5m at 67% confidence level.','EPSG','9613','NADCON','EPSG','4136','EPSG','4269','EPSG','1332',0.5,'EPSG','8657','Latitude difference file','stlrnc.las','EPSG','8658','Longitude difference file','stlrnc.los',NULL,NULL,'NGS-Usa AK StL',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1456','St. Paul Island to NAD83 (1)','Uses NADCON method which expects longitudes positive west; EPSG GeogCRSs St. Paul (code 4137) and NAD83 (code 4269) have longitudes positive east. NADCON data converts from St. Paul Datum to but makes the transformation appear to be from NAD27.','Accuracy 0.5m at 67% confidence level.','EPSG','9613','NADCON','EPSG','4137','EPSG','4269','EPSG','1333',0.5,'EPSG','8657','Latitude difference file','stpaul.las','EPSG','8658','Longitude difference file','stpaul.los',NULL,NULL,'NGS-Usa AK StP',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1457','St. George Island to NAD83 (1)','Uses NADCON method which expects longitudes positive west; EPSG GeogCRSs St. George (code 4138) and NAD83 (code 4269) have longitudes positive east. NADCON data converts from St. George Datum to but makes the transformation appear to be from NAD27.','Accuracy 0.5m at 67% confidence level.','EPSG','9613','NADCON','EPSG','4138','EPSG','4269','EPSG','1331',0.5,'EPSG','8657','Latitude difference file','stgeorge.las','EPSG','8658','Longitude difference file','stgeorge.los',NULL,NULL,'NGS-Usa AK StG',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1461','Puerto Rico to NAD83 (1)','May be taken as approximate transformation Puerto Rico-WGS 84 - see code 15841.','Accuracy 0.05m at 67% confidence level.','EPSG','9613','NADCON','EPSG','4139','EPSG','4269','EPSG','1335',0.05,'EPSG','8657','Latitude difference file','prvi.las','EPSG','8658','Longitude difference file','prvi.los',NULL,NULL,'NGS-PRVI',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1462','NAD27 to NAD83 (5)','Densification for Quebec of code 1312. Replaced by NAD27 to NAD83 (6) (code 1573). Uses NT method which expects longitudes positive west; EPSG GeogCRSs NAD27 (code 4267) and NAD83 (code 4269) have longitudes positive east.','Historic record only - now superseded - see remarks.','EPSG','9614','NTv1','EPSG','4267','EPSG','4269','EPSG','1368',1.0,'EPSG','8656','Latitude and longitude difference file','GS2783v1.QUE',NULL,NULL,NULL,NULL,NULL,NULL,'SGQ-Can QC NT1',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1463','NAD27(76) to NAD83 (1)','Uses NT method which expects longitudes positive west; EPSG GeogCRSs NAD27(76) (code 4608) and NAD83 (code 4269) have longitudes positive east. May be taken as approximate transformation NAD27(76) to WGS 84 - see code 1690.','Not known.','EPSG','9615','NTv2','EPSG','4608','EPSG','4269','EPSG','1367',1.0,'EPSG','8656','Latitude and longitude difference file','May76v20.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'SGQ-Can Ont',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1464','AGD66 to GDA94 (5)','Replaced by AGD66 to GDA94 (10) (code 1596) and then by AGD66 to GDA94 (11) (code 1803). Input expects longitudes to be positive west; EPSG GeogCRS AGD66 (code 4202) and GDA94 (code 4283) both have longitudes positive east.','0.1m accuracy.','EPSG','9615','NTv2','EPSG','4202','EPSG','4283','EPSG','2285',0.1,'EPSG','8656','Latitude and longitude difference file','vic_0799.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'OSG-Aus Vic old',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1472','ATS77 to NAD83(CSRS98) (1)','Introduced in 1999. Can be taken as an approximate transformation ATS77 to WGS 84 - see code 1688.','?','EPSG','9615','NTv2','EPSG','4122','EPSG','4140','EPSG','1447',NULL,'EPSG','8656','Latitude and longitude difference file','NB7783v2.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'GIC-Can NB',1);
INSERT INTO "grid_transformation" VALUES('EPSG','1474','NAD83 to NAD83(HARN) (1)','Uses NADCON method which expects longitudes positive west; EPSG GeogCRSs NAD83 (code 4269) and NAD83(HARN) (code 4152) have longitudes positive east. May be taken as approximate transformation NAD83-WGS 84 - see code 1717.','Geodetic survey. Accuracy 0.05m at 67% confidence level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1372',0.05,'EPSG','8657','Latitude difference file','alhpgn.las','EPSG','8658','Longitude difference file','alhpgn.los',NULL,NULL,'NGS-Usa AL',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1475','NAD83 to NAD83(HARN) (2)','Uses NADCON method which expects longitudes positive west; EPSG GeogCRSs NAD83 (code 4269) and NAD83(HARN) (code 4152) have longitudes positive east. May be taken as approximate transformation NAD83-WGS 84 - see code 1728.','Geodetic survey. Accuracy 0.05m at 67% confidence level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1373',0.05,'EPSG','8657','Latitude difference file','azhpgn.las','EPSG','8658','Longitude difference file','azhpgn.los',NULL,NULL,'NGS-Usa AZ',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1476','NAD83 to NAD83(HARN) (3)','Uses NADCON method which expects longitudes positive west; EPSG GeogCRSs NAD83 (code 4269) and NAD83(HARN) (code 4152) have longitudes positive east. May be taken as approximate transformation NAD83-WGS 84 - see code 1739.','Geodetic survey. Accuracy 0.05m at 67% confidence level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','2297',0.05,'EPSG','8657','Latitude difference file','cnhpgn.las','EPSG','8658','Longitude difference file','cnhpgn.los',NULL,NULL,'NGS-Usa CA n',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1477','NAD83 to NAD83(HARN) (4)','Uses NADCON method which expects longitudes positive west; EPSG GeogCRSs NAD83 (code 4269) and NAD83(HARN) (code 4152) have longitudes positive east. May be taken as approximate transformation NAD83-WGS 84 - see code 1750.','Geodetic survey. Accuracy 0.05m at 67% confidence level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','2298',0.05,'EPSG','8657','Latitude difference file','cshpgn.las','EPSG','8658','Longitude difference file','cshpgn.los',NULL,NULL,'NGS-Usa CA s',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1478','NAD83 to NAD83(HARN) (5)','Uses NADCON method which expects longitudes positive west; EPSG GeogCRSs NAD83 (code 4269) and NAD83(HARN) (code 4152) have longitudes positive east. May be taken as approximate transformation NAD83-WGS 84 - see code 1712.','Geodetic survey. Accuracy 0.05m at 67% confidence level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1376',0.05,'EPSG','8657','Latitude difference file','cohpgn.las','EPSG','8658','Longitude difference file','cohpgn.los',NULL,NULL,'NGS-Usa CO',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1479','NAD83 to NAD83(HARN) (6)','Uses NADCON method which expects longitudes positive west; EPSG GeogCRSs NAD83 (code 4269) and NAD83(HARN) (code 4152) have longitudes positive east. May be taken as approximate transformation NAD83-WGS 84 - see code 1713.','Geodetic survey. Accuracy 0.05m at 67% confidence level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1380',0.05,'EPSG','8657','Latitude difference file','gahpgn.las','EPSG','8658','Longitude difference file','gahpgn.los',NULL,NULL,'NGS-Usa GA',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1480','NAD83 to NAD83(HARN) (7)','Uses NADCON method which expects longitudes positive west; EPSG GeogCRSs NAD83 (code 4269) and NAD83(HARN) (code 4152) have longitudes positive east. May be taken as approximate transformation NAD83-WGS 84 - see code 1714.','Geodetic survey. Accuracy 0.05m at 67% confidence level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1379',0.05,'EPSG','8657','Latitude difference file','flhpgn.las','EPSG','8658','Longitude difference file','flhpgn.los',NULL,NULL,'NGS-Usa FL',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1481','NAD83 to NAD83(HARN) (8)','Uses NADCON method which expects longitudes positive west; EPSG GeogCRSs NAD83 (code 4269) and NAD83(HARN) (code 4152) have longitudes positive east. May be taken as approximate transformation NAD83-WGS 84 - see code 1715.','Geodetic survey. Accuracy 0.05m at 67% confidence level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','2382',0.05,'EPSG','8657','Latitude difference file','emhpgn.las','EPSG','8658','Longitude difference file','emhpgn.los',NULL,NULL,'NGS-Usa ID MT e',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1482','NAD83 to NAD83(HARN) (9)','Uses NADCON method which expects longitudes positive west; EPSG GeogCRSs NAD83 (code 4269) and NAD83(HARN) (code 4152) have longitudes positive east. May be taken as approximate transformation NAD83-WGS 84 - see code 1716.','Geodetic survey. Accuracy 0.05m at 67% confidence level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','2383',0.05,'EPSG','8657','Latitude difference file','wmhpgn.las','EPSG','8658','Longitude difference file','wmhpgn.los',NULL,NULL,'NGS-Usa ID MT w',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1483','NAD83 to NAD83(HARN) (10)','Uses NADCON method which expects longitudes positive west; EPSG GeogCRSs NAD83 (code 4269) and NAD83(HARN) (code 4152) have longitudes positive east. May be taken as approximate transformation NAD83-WGS 84 - see code 1718.','Geodetic survey. Accuracy 0.05m at 67% confidence level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1386',0.05,'EPSG','8657','Latitude difference file','kyhpgn.las','EPSG','8658','Longitude difference file','kyhpgn.los',NULL,NULL,'NGS-Usa KY',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1484','NAD83 to NAD83(HARN) (11)','Uses NADCON method which expects longitudes positive west; EPSG GeogCRSs NAD83 (code 4269) and NAD83(HARN) (code 4152) have longitudes positive east. May be taken as approximate transformation NAD83-WGS 84 - see code 1719.','Geodetic survey. Accuracy 0.05m at 67% confidence level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1387',0.05,'EPSG','8657','Latitude difference file','lahpgn.las','EPSG','8658','Longitude difference file','lahpgn.los',NULL,NULL,'NGS-Usa LA',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1485','NAD83 to NAD83(HARN) (12)','Uses NADCON method which expects longitudes positive west; EPSG GeogCRSs NAD83 (code 4269) and NAD83(HARN) (code 4152) have longitudes positive east. May be taken as approximate transformation NAD83-WGS 84 - see code 1720.','Geodetic survey. Accuracy 0.05m at 67% confidence level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','2377',0.05,'EPSG','8657','Latitude difference file','mdhpgn.las','EPSG','8658','Longitude difference file','mdhpgn.los',NULL,NULL,'NGS-Usa DE MD',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1486','NAD83 to NAD83(HARN) (13)','Uses NADCON method which expects longitudes positive west; EPSG GeogCRSs NAD83 (code 4269) and NAD83(HARN) (code 4152) have longitudes positive east. May be taken as approximate transformation NAD83-WGS 84 - see code 1721.','Geodetic survey. Accuracy 0.05m at 67% confidence level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1388',0.05,'EPSG','8657','Latitude difference file','mehpgn.las','EPSG','8658','Longitude difference file','mehpgn.los',NULL,NULL,'NGS-Usa ME',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1487','NAD83 to NAD83(HARN) (14)','Uses NADCON method which expects longitudes positive west; EPSG GeogCRSs NAD83 (code 4269) and NAD83(HARN) (code 4152) have longitudes positive east. May be taken as approximate transformation NAD83-WGS 84 - see code 1722.','Geodetic survey. Accuracy 0.05m at 67% confidence level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1391',0.05,'EPSG','8657','Latitude difference file','mihpgn.las','EPSG','8658','Longitude difference file','mihpgn.los',NULL,NULL,'NGS-Usa MI',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1488','NAD83 to NAD83(HARN) (15)','Uses NADCON method which expects longitudes positive west; EPSG GeogCRSs NAD83 (code 4269) and NAD83(HARN) (code 4152) have longitudes positive east. May be taken as approximate transformation NAD83-WGS 84 - see code 1723.','Geodetic survey. Accuracy 0.05m at 67% confidence level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1393',0.05,'EPSG','8657','Latitude difference file','mshpgn.las','EPSG','8658','Longitude difference file','mshpgn.los',NULL,NULL,'NGS-Usa MS',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1489','NAD83 to NAD83(HARN) (16)','Uses NADCON method which expects longitudes positive west; EPSG GeogCRSs NAD83 (code 4269) and NAD83(HARN) (code 4152) have longitudes positive east. May be taken as approximate transformation NAD83-WGS 84 - see code 1724.','Geodetic survey. Accuracy 0.05m at 67% confidence level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1396',0.05,'EPSG','8657','Latitude difference file','nbhpgn.las','EPSG','8658','Longitude difference file','nbhpgn.los',NULL,NULL,'NGS-Usa NE',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1490','NAD83 to NAD83(HARN) (17)','Uses NADCON method which expects longitudes positive west; EPSG GeogCRSs NAD83 (code 4269) and NAD83(HARN) (code 4152) have longitudes positive east. May be taken as approximate transformation NAD83-WGS 84 - see code 1725.','Geodetic survey. Accuracy 0.05m at 67% confidence level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','2378',0.05,'EPSG','8657','Latitude difference file','nehpgn.las','EPSG','8658','Longitude difference file','nehpgn.los',NULL,NULL,'NGS-Usa NewEng',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1491','NAD83 to NAD83(HARN) (18)','Uses NADCON method which expects longitudes positive west; EPSG GeogCRSs NAD83 (code 4269) and NAD83(HARN) (code 4152) have longitudes positive east. May be taken as approximate transformation NAD83-WGS 84 - see code 1726.','Geodetic survey. Accuracy 0.05m at 67% confidence level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1400',0.05,'EPSG','8657','Latitude difference file','nmhpgn.las','EPSG','8658','Longitude difference file','nmhpgn.los',NULL,NULL,'NGS-Usa NM',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1492','NAD83 to NAD83(HARN) (19)','Uses NADCON method which expects longitudes positive west; EPSG GeogCRSs NAD83 (code 4269) and NAD83(HARN) (code 4152) have longitudes positive east. May be taken as approximate transformation NAD83-WGS 84 - see code 1727.','Geodetic survey. Accuracy 0.05m at 67% confidence level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1401',0.05,'EPSG','8657','Latitude difference file','nyhpgn.las','EPSG','8658','Longitude difference file','nyhpgn.los',NULL,NULL,'NGS-Usa NY',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1493','NAD83 to NAD83(HARN) (20)','Uses NADCON method which expects longitudes positive west; EPSG GeogCRSs NAD83 (code 4269) and NAD83(HARN) (code 4152) have longitudes positive east. May be taken as approximate transformation NAD83-WGS 84 - see code 1729.','Geodetic survey. Accuracy 0.05m at 67% confidence level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1403',0.05,'EPSG','8657','Latitude difference file','ndhpgn.las','EPSG','8658','Longitude difference file','ndhpgn.los',NULL,NULL,'NGS-Usa ND',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1494','NAD83 to NAD83(HARN) (21)','Uses NADCON method which expects longitudes positive west; EPSG GeogCRSs NAD83 (code 4269) and NAD83(HARN) (code 4152) have longitudes positive east. May be taken as approximate transformation NAD83-WGS 84 - see code 1730.','Geodetic survey. Accuracy 0.05m at 67% confidence level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1405',0.05,'EPSG','8657','Latitude difference file','okhpgn.las','EPSG','8658','Longitude difference file','okhpgn.los',NULL,NULL,'NGS-Usa OK',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1495','NAD83 to NAD83(HARN) (22)','Uses NADCON method which expects longitudes positive west; EPSG GeogCRSs NAD83 (code 4269) and NAD83(HARN) (code 4152) have longitudes positive east. May be taken as approximate transformation NAD83-WGS 84 - see code 1731.','Geodetic survey. Accuracy 0.05m at 67% confidence level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','3634',0.05,'EPSG','8657','Latitude difference file','pvhpgn.las','EPSG','8658','Longitude difference file','pvhpgn.los',NULL,NULL,'NGS-PRVI',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1496','NAD83 to NAD83(HARN) (23)','Uses NADCON method which expects longitudes positive west; EPSG GeogCRSs NAD83 (code 4269) and NAD83(HARN) (code 4152) have longitudes positive east. May be taken as approximate transformation NAD83-WGS 84 - see code 1732.','Geodetic survey. Accuracy 0.05m at 67% confidence level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1410',0.05,'EPSG','8657','Latitude difference file','sdhpgn.las','EPSG','8658','Longitude difference file','sdhpgn.los',NULL,NULL,'NGS-Usa SD',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1497','NAD83 to NAD83(HARN) (24)','Uses NADCON method which expects longitudes positive west; EPSG GeogCRSs NAD83 (code 4269) and NAD83(HARN) (code 4152) have longitudes positive east. May be taken as approximate transformation NAD83-WGS 84 - see code 1733.','Geodetic survey. Accuracy 0.05m at 67% confidence level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1411',0.05,'EPSG','8657','Latitude difference file','tnhpgn.las','EPSG','8658','Longitude difference file','tnhpgn.los',NULL,NULL,'NGS-Usa TN',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1498','NAD83 to NAD83(HARN) (25)','Uses NADCON method which expects longitudes positive west; EPSG GeogCRSs NAD83 (code 4269) and NAD83(HARN) (code 4152) have longitudes positive east. May be taken as approximate transformation NAD83-WGS 84 - see code 1734.','Geodetic survey. Accuracy 0.05m at 67% confidence level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','2379',0.05,'EPSG','8657','Latitude difference file','ethpgn.las','EPSG','8658','Longitude difference file','ethpgn.los',NULL,NULL,'NGS-Usa TX e',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1499','NAD83 to NAD83(HARN) (26)','Uses NADCON method which expects longitudes positive west; EPSG GeogCRSs NAD83 (code 4269) and NAD83(HARN) (code 4152) have longitudes positive east. May be taken as approximate transformation NAD83-WGS 84 - see code 1735.','Geodetic survey. Accuracy 0.05m at 67% confidence level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','2380',0.05,'EPSG','8657','Latitude difference file','wthpgn.las','EPSG','8658','Longitude difference file','wthpgn.los',NULL,NULL,'NGS-Usa TX w',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1500','NAD83 to NAD83(HARN) (27)','Uses NADCON method which expects longitudes positive west; EPSG GeogCRSs NAD83 (code 4269) and NAD83(HARN) (code 4152) have longitudes positive east. May be taken as approximate transformation NAD83-WGS 84 - see code 1736.','Geodetic survey. Accuracy 0.05m at 67% confidence level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1415',0.05,'EPSG','8657','Latitude difference file','vahpgn.las','EPSG','8658','Longitude difference file','vahpgn.los',NULL,NULL,'NGS-Usa VA',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1501','NAD83 to NAD83(HARN) (28)','Uses NADCON method which expects longitudes positive west; EPSG GeogCRSs NAD83 (code 4269) and NAD83(HARN) (code 4152) have longitudes positive east. May be taken as approximate transformation NAD83-WGS 84 - see code 1737.','Geodetic survey. Accuracy 0.05m at 67% confidence level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','2381',0.05,'EPSG','8657','Latitude difference file','wohpgn.las','EPSG','8658','Longitude difference file','wohpgn.los',NULL,NULL,'NGS-Usa OR WA',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1502','NAD83 to NAD83(HARN) (29)','Uses NADCON method which expects longitudes positive west; EPSG GeogCRSs NAD83 (code 4269) and NAD83(HARN) (code 4152) have longitudes positive east. May be taken as approximate transformation NAD83-WGS 84 - see code 1738.','Geodetic survey. Accuracy 0.05m at 67% confidence level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1418',0.05,'EPSG','8657','Latitude difference file','wihpgn.las','EPSG','8658','Longitude difference file','wihpgn.los',NULL,NULL,'NGS-Usa WI',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1503','NAD83 to NAD83(HARN) (30)','Uses NADCON method which expects longitudes positive west; EPSG GeogCRSs NAD83 (code 4269) and NAD83(HARN) (code 4152) have longitudes positive east. May be taken as approximate transformation NAD83-WGS 84 - see code 1740.','Geodetic survey. Accuracy 0.05m at 67% confidence level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1419',0.05,'EPSG','8657','Latitude difference file','wyhpgn.las','EPSG','8658','Longitude difference file','wyhpgn.los',NULL,NULL,'NGS-Usa WY',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1506','AGD66 to GDA94 (6)','Replaced by AGD66 to GDA94 (11) (code 1803). Input expects longitudes to be positive west; EPSG GeogCRS AGD66 (code 4202) and GDA94 (code 4283) both have longitudes positive east.','0.1m accuracy.','EPSG','9615','NTv2','EPSG','4202','EPSG','4283','EPSG','1282',0.1,'EPSG','8656','Latitude and longitude difference file','tas_1098.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'OSG-Tas 0.1m',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1507','AGD66 to GDA94 (7)','Replaced by AGD66 to GDA94 (11) (code 1803). Input expects longitudes to be positive west; EPSG GeogCRS AGD66 (code 4202) and GDA94 (code 4283) both have longitudes positive east.','0.1m accuracy.','EPSG','9615','NTv2','EPSG','4202','EPSG','4283','EPSG','2284',0.1,'EPSG','8656','Latitude and longitude difference file','nt_0599.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'Auslig-NT 0.1m',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1520','NAD83 to NAD83(HARN) (31)','Uses NADCON method which expects longitudes positive west; EPSG GeogCRSs NAD83 (code 4269) and NAD83(HARN) (code 4152) have longitudes positive east. May be taken as approximate transformation NAD83-WGS 84 - see code 1741.','Geodetic survey. Accuracy 0.05m at 67% confidence level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1334',0.05,'EPSG','8657','Latitude difference file','hihpgn.las','EPSG','8658','Longitude difference file','hihpgn.los',NULL,NULL,'NGS-Usa HI',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1521','NAD83 to NAD83(HARN) (32)','Uses NADCON method which expects longitudes positive west; EPSG GeogCRSs NAD83 (code 4269) and NAD83(HARN) (code 4152) have longitudes positive east. May be taken as approximate transformation NAD83-WGS 84 - see code 1742.','Geodetic survey. Accuracy 0.05m at 67% confidence level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1383',0.05,'EPSG','8657','Latitude difference file','inhpgn.las','EPSG','8658','Longitude difference file','inhpgn.los',NULL,NULL,'NGS-Usa IN',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1522','NAD83 to NAD83(HARN) (33)','Uses NADCON method which expects longitudes positive west; EPSG GeogCRSs NAD83 (code 4269) and NAD83(HARN) (code 4152) have longitudes positive east. May be taken as approximate transformation NAD83-WGS 84 - see code 1743.','Geodetic survey. Accuracy 0.05m at 67% confidence level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1385',0.05,'EPSG','8657','Latitude difference file','kshpgn.las','EPSG','8658','Longitude difference file','kshpgn.los',NULL,NULL,'NGS-Usa KS',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1523','NAD83 to NAD83(HARN) (34)','Uses NADCON method which expects longitudes positive west; EPSG GeogCRSs NAD83 (code 4269) and NAD83(HARN) (code 4152) have longitudes positive east. May be taken as approximate transformation NAD83-WGS 84 - see code 1744.','Geodetic survey. Accuracy 0.05m at 67% confidence level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1397',0.05,'EPSG','8657','Latitude difference file','nvhpgn.las','EPSG','8658','Longitude difference file','nvhpgn.los',NULL,NULL,'NGS-Usa NV',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1524','NAD83 to NAD83(HARN) (35)','Uses NADCON method which expects longitudes positive west; EPSG GeogCRSs NAD83 (code 4269) and NAD83(HARN) (code 4152) have longitudes positive east. May be taken as approximate transformation NAD83-WGS 84 - see code 1745.','Geodetic survey. Accuracy 0.05m at 67% confidence level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1404',0.05,'EPSG','8657','Latitude difference file','ohhpgn.las','EPSG','8658','Longitude difference file','ohhpgn.los',NULL,NULL,'NGS-Usa OH',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1525','NAD83 to NAD83(HARN) (36)','Uses NADCON method which expects longitudes positive west; EPSG GeogCRSs NAD83 (code 4269) and NAD83(HARN) (code 4152) have longitudes positive east. May be taken as approximate transformation NAD83-WGS 84 - see code 1746.','Geodetic survey. Accuracy 0.05m at 67% confidence level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1413',0.05,'EPSG','8657','Latitude difference file','uthpgn.las','EPSG','8658','Longitude difference file','uthpgn.los',NULL,NULL,'NGS-Usa UT',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1526','NAD83 to NAD83(HARN) (37)','Uses NADCON method which expects longitudes positive west; EPSG GeogCRSs NAD83 (code 4269) and NAD83(HARN) (code 4152) have longitudes positive east. May be taken as approximate transformation NAD83-WGS 84 - see code 1747.','Geodetic survey. Accuracy 0.05m at 67% confidence level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1417',0.05,'EPSG','8657','Latitude difference file','wvhpgn.las','EPSG','8658','Longitude difference file','wvhpgn.los',NULL,NULL,'NGS-Usa WV',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1553','NAD83 to NAD83(HARN) (38)','Uses NADCON method which expects longitudes positive west; EPSG GeogCRSs NAD83 (code 4269) and NAD83(HARN) (code 4152) have longitudes positive east. May be taken as approximate transformation NAD83-WGS 84 - see code 1748.','Geodetic survey. Accuracy 0.05m at 67% confidence level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1382',0.05,'EPSG','8657','Latitude difference file','ilhpgn.las','EPSG','8658','Longitude difference file','ilhpgn.los',NULL,NULL,'NGS-Usa IL',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1554','NAD83 to NAD83(HARN) (39)','Uses NADCON method which expects longitudes positive west; EPSG GeogCRSs NAD83 (code 4269) and NAD83(HARN) (code 4152) have longitudes positive east. May be taken as approximate transformation NAD83-WGS 84 - see code 1749.','Geodetic survey. Accuracy 0.05m at 67% confidence level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1399',0.05,'EPSG','8657','Latitude difference file','njhpgn.las','EPSG','8658','Longitude difference file','njhpgn.los',NULL,NULL,'NGS-Usa NJ',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1559','AGD84 to GDA94 (3)','Withdrawn and replaced by AGD84 to GDA94 (4) (code 1593) due to binary file format error. Input expects longitudes to be positive west; EPSG GeogCRS AGD84 (code 4203) and GDA94 (code 4283) have longitudes positive east.','0.1m accuracy.','EPSG','9615','NTv2','EPSG','4203','EPSG','4283','EPSG','1280',0.1,'EPSG','8656','Latitude and longitude difference file','wa_0400.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'DOLA-Aus WA 0.1m old',1);
INSERT INTO "grid_transformation" VALUES('EPSG','1568','NZGD49 to NZGD2000 (3)','These same parameter values may be used to transform to WGS 84 - see NZGD49 to WGS 84 (4) (code 1670).','0.2m accuracy.','EPSG','9615','NTv2','EPSG','4272','EPSG','4167','EPSG','3285',0.2,'EPSG','8656','Latitude and longitude difference file','nzgd2kgrid0005.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'OSG-Nzl 1m',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1572','NAD83 to NAD83(CSRS98) (1)','Uses NT method which expects longitudes positive west; EPSG GeogCRSs NAD83 (code 4269) and NAD83(CSRS98) (code 4140) have longitudes positive east. Can be taken as an approximate transformation NAD83 to WGS 84 - see code 1696.','Accuracy 1-2 metres.','EPSG','9615','NTv2','EPSG','4269','EPSG','4140','EPSG','1368',NULL,'EPSG','8656','Latitude and longitude difference file','NAD83-98.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'SGQ-Can QC',1);
INSERT INTO "grid_transformation" VALUES('EPSG','1573','NAD27 to NAD83 (6)','Also distributed with file name QUE27-83.gsb. Replaces NAD27 to NAD83 (5) (code 1462). Uses NT method which expects longitudes positive west; EPSG GeogCRSs NAD27 (code 4267) and NAD83 (code 4269) have longitudes positive east.','Accuracy 1-2 metres.','EPSG','9615','NTv2','EPSG','4267','EPSG','4269','EPSG','1368',1.5,'EPSG','8656','Latitude and longitude difference file','NA27NA83.GSB',NULL,NULL,NULL,NULL,NULL,NULL,'SGQ-Can QC NT2',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1574','NAD27 to NAD83(CSRS98) (1)','Uses NT method which expects longitudes positive west; EPSG GeogCRSs NAD27 (code 4267) and NAD83(CSRS98) (code 4140) have longitudes positive east. Can be taken as an approximate transformation NAD27 to WGS 84 - see code 1692.','Accuracy 1-2 metres.','EPSG','9615','NTv2','EPSG','4267','EPSG','4140','EPSG','1368',NULL,'EPSG','8656','Latitude and longitude difference file','QUE27-98.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'SGQ-Can QC',1);
INSERT INTO "grid_transformation" VALUES('EPSG','1575','NAD27(CGQ77) to NAD83 (2)','Also distributed with file name CGQ77-83.gsb. Replaces NAD27(CGQ77) to NAD83 (1) (code 1451). Can be taken as approx transformation to WGS 84 - see code 1691.','Spatial referencing.','EPSG','9615','NTv2','EPSG','4609','EPSG','4269','EPSG','1368',1.5,'EPSG','8656','Latitude and longitude difference file','CQ77NA83.GSB',NULL,NULL,NULL,NULL,NULL,NULL,'SGQ-Can QC NT2',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1576','NAD27(CGQ77) to NAD83(CSRS98) (1)','Uses NT method which expects longitudes positive west; EPSG GeogCRSs NAD27(CGQ77) (code 4609) and NAD83(CSRS98) (code 4140) have 1691longitudes positive east. Can be taken as an approximate transformation NAD27(CGQ77) to WGS 84 - see code 1691.','Accuracy 1-2 metres.','EPSG','9615','NTv2','EPSG','4609','EPSG','4140','EPSG','1368',NULL,'EPSG','8656','Latitude and longitude difference file','CGQ77-98.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'SGQ-Can QC',1);
INSERT INTO "grid_transformation" VALUES('EPSG','1578','American Samoa 1962 to NAD83(HARN) (1)','NADCON method which expects longitudes positive west; EPSG GeogCRSs American Samoa 1962 and NAD83(HARN) (codes 4169 and 4152) have longitudes positive east. NADCON expects latitudes in northern hemisphere and values must be made positive prior to input.','Geodetic survey. No accuracy stated.','EPSG','9613','NADCON','EPSG','4169','EPSG','4152','EPSG','2288',5.0,'EPSG','8657','Latitude difference file','wshpgn.las','EPSG','8658','Longitude difference file','wshpgn.los',NULL,NULL,'NGS-Asm W',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1579','American Samoa 1962 to NAD83(HARN) (2)','NADCON method which expects longitudes positive west; EPSG GeogCRSs American Samoa 1962 and NAD83(HARN) (codes 4169 and 4152) have longitudes positive east. NADCON expects latitudes in northern hemisphere and values must be made positive prior to input.','Geodetic survey. No accuracy stated.','EPSG','9613','NADCON','EPSG','4169','EPSG','4152','EPSG','2289',5.0,'EPSG','8657','Latitude difference file','eshpgn.las','EPSG','8658','Longitude difference file','eshpgn.los',NULL,NULL,'NGS-Asm E',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1593','AGD84 to GDA94 (4)','Replaces AGD84 to GDA94 (3) (code 1559) and then replaced by AGD84 to GDA94 (5) (code 1804). Input expects longitudes to be positive west; EPSG GeogCRS AGD84 (code 4203) and GDA94 (code 4283) both have longitudes positive east.','0.1m accuracy.','EPSG','9615','NTv2','EPSG','4203','EPSG','4283','EPSG','1280',0.1,'EPSG','8656','Latitude and longitude difference file','wa_0700.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'DOLA-Aus WA 0.1m',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1596','AGD66 to GDA94 (10)','Replaces AGD66 to GDA94 (5) (code 1464). Replaced by AGD66 to GDA94 (11) (code 1803). Input expects longitudes to be positive west; EPSG GeogCRS AGD66 (code 4202) and GDA94 (code 4283) both have longitudes positive east.','0.1m accuracy.','EPSG','9615','NTv2','EPSG','4202','EPSG','4283','EPSG','2287',0.1,'EPSG','8656','Latitude and longitude difference file','SEAust_21_06_00.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'OSG-Aus SE 0.1m',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1599','ATS77 to NAD83(CSRS98) (2)','Can be taken as an approximate transformation ATS77 to WGS 84 - see code 1689.','?','EPSG','9615','NTv2','EPSG','4122','EPSG','4140','EPSG','1533',NULL,'EPSG','8656','Latitude and longitude difference file','PE7783V2.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'PEI DOT-Can PEI',1);
INSERT INTO "grid_transformation" VALUES('EPSG','1600','NAD27 to NAD83(CSRS98) (2)','Can be taken as an approximate transformation NAD27 to WGS 84 - see code 1703.','Accuracy 1-2 metres.','EPSG','9615','NTv2','EPSG','4267','EPSG','4140','EPSG','2375',NULL,'EPSG','8656','Latitude and longitude difference file','SK27-98.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'SK PMC-Can SK',1);
INSERT INTO "grid_transformation" VALUES('EPSG','1601','NAD83 to NAD83(CSRS98) (2)','Can be taken as an approximate transformation NAD83 to WGS 84 - see code 1697.','Accuracy 1-2 metres.','EPSG','9615','NTv2','EPSG','4269','EPSG','4140','EPSG','2375',NULL,'EPSG','8656','Latitude and longitude difference file','SK83-98.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'SK PMC-Can SK',1);
INSERT INTO "grid_transformation" VALUES('EPSG','1602','NAD83 to NAD83(CSRS98) (3)','This gridded difference file AB_CSRS.DAC will need to be renamed to AB_CSRS.gsb to run in some software suites. Formats identical, but AB file is provincial fit only.','Accuracy 1-2 metres.','EPSG','9615','NTv2','EPSG','4267','EPSG','4140','EPSG','2376',NULL,'EPSG','8656','Latitude and longitude difference file','AB_CSRS.DAC',NULL,NULL,NULL,NULL,NULL,NULL,'AB Env-Can AB',1);
INSERT INTO "grid_transformation" VALUES('EPSG','1670','NZGD49 to WGS 84 (3)','Parameter file is from NZGD49 to NZGD2000 (3) (code 1568) and assumes WGS 84 is coincident with NZGD2000 to the accuracy of the transformation.','Accuracy about 1m.','EPSG','9615','NTv2','EPSG','4272','EPSG','4326','EPSG','3285',1.0,'EPSG','8656','Latitude and longitude difference file','nzgd2kgrid0005.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'EPSG-Nzl 1m',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1688','ATS77 to WGS 84 (1)','Parameter file is from ATS77 to NAD83(CSRS)v2 (1) (code 9237) assuming that NAD83(CSRS)v2 is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1-2m level.','EPSG','9615','NTv2','EPSG','4122','EPSG','4326','EPSG','1447',1.5,'EPSG','8656','Latitude and longitude difference file','NB7783v2.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'EPSG-Can NB',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1689','ATS77 to WGS 84 (2)','Parameter file is from ATS77 to NAD83(CSRS)v2 (2) (code 9236) assuming that NAD83(CSRS)v2 is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1-2m level.','EPSG','9615','NTv2','EPSG','4122','EPSG','4326','EPSG','1533',1.5,'EPSG','8656','Latitude and longitude difference file','PE7783V2.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'EPSG-Can PEI',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1690','NAD27(76) to WGS 84 (1)','Parameter file is from NAD27(76) to NAD83 (1) (code 1463) assuming that NAD83 is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','9615','NTv2','EPSG','4608','EPSG','4326','EPSG','1367',1.0,'EPSG','8656','Latitude and longitude difference file','May76v20.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'EPSG-Can On',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1691','NAD27(CGQ77) to WGS 84 (3)','Parameter file is from NAD27(CGQ77) to NAD83(CSRS)v2 (1) (code 9240) assuming that NAD83(CSRS)v2 is equivalent to WGS 84 within the accuracy of the transformation. Also distributed with file name CGQ77-98.gsb.','Approximation at the +/- 1-2m level.','EPSG','9615','NTv2','EPSG','4609','EPSG','4326','EPSG','1368',1.5,'EPSG','8656','Latitude and longitude difference file','CQ77NA83.GSB',NULL,NULL,NULL,NULL,NULL,NULL,'EPSG-Can Qc NT2',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1692','NAD27 to WGS 84 (34)','Parameter file is from NAD27 to NAD83(CSRS)v2 (1) (code 9239) assuming that NAD83(CSRS)v2 is equivalent to WGS 84 within the accuracy of the transformation. Also distributed as QUE27-98.gsb.','Approximation at the +/- 1-2m level.','EPSG','9615','NTv2','EPSG','4267','EPSG','4326','EPSG','1368',1.5,'EPSG','8656','Latitude and longitude difference file','NA27SCRS.GSB',NULL,NULL,NULL,NULL,NULL,NULL,'EPSG-Can QC',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1693','NAD27 to WGS 84 (33)','Parameter file is from NAD27 to NAD83 (4) (code 1313) assuming that NAD83 is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','9615','NTv2','EPSG','4267','EPSG','4326','EPSG','4517',1.0,'EPSG','8656','Latitude and longitude difference file','NTv2_0.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'EPSG-Can',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1694','American Samoa 1962 to WGS 84 (2)','Parameter files are from American Samoa 1962 to NAD83(HARN) (1) (code 1578), but for many purposes NAD83(HARN) can be considered to be coincident with WGS 84 within the accuracy of the transformation.','No accuracy stated for source transformation.','EPSG','9613','NADCON','EPSG','4169','EPSG','4326','EPSG','2288',5.0,'EPSG','8657','Latitude difference file','wshpgn.las','EPSG','8658','Longitude difference file','wshpgn.los',NULL,NULL,'EPSG-Asm W',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1695','American Samoa 1962 to WGS 84 (3)','Parameter files are from American Samoa 1962 to NAD83(HARN) (2) (code 1579), but for many purposes NAD83(HARN) can be considered to be coincident with WGS 84 within the accuracy of the transformation.','No accuracy stated for source transformation.','EPSG','9613','NADCON','EPSG','4169','EPSG','4326','EPSG','2289',5.0,'EPSG','8657','Latitude difference file','eshpgn.las','EPSG','8658','Longitude difference file','eshpgn.los',NULL,NULL,'EPSG-Asm E',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1696','NAD83 to WGS 84 (6)','Parameter file is from NAD83 to NAD83(CSRS)v2 (1) (code 9241) assuming that NAD83(CSRS)v2 is equivalent to WGS 84 within the accuracy of the transformation. Also distributed with file name NAD83-98.gsb.','Approximation at the +/- 1-2m level.','EPSG','9615','NTv2','EPSG','4269','EPSG','4326','EPSG','1368',1.5,'EPSG','8656','Latitude and longitude difference file','NA83SCRS.GSB',NULL,NULL,NULL,NULL,NULL,NULL,'EPSG-Can QC',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1697','NAD83 to WGS 84 (7)','Parameter file is from NAD83 to NAD83(CSRS8)v3 (2) (code 9243) assuming that NAD83(CSRS)v3 is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1-2m level.','EPSG','9615','NTv2','EPSG','4269','EPSG','4326','EPSG','2375',1.5,'EPSG','8656','Latitude and longitude difference file','SK83-98.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'EPSG-Can SK',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1698','St. George Island to WGS 84 (1)','Parameter files are from St. George Island to NAD83 (1) (code 1457) assuming that NAD83 is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1 to 2m level.','EPSG','9613','NADCON','EPSG','4138','EPSG','4326','EPSG','1331',1.5,'EPSG','8657','Latitude difference file','stgeorge.las','EPSG','8658','Longitude difference file','stgeorge.los',NULL,NULL,'EPSG-Usa AK StG',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1699','St. Lawrence Island to WGS 84 (1)','Parameter files are from St. Lawrence Island to NAD83 (1) (code 1455) assuming that NAD83 is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1 to 2m level.','EPSG','9613','NADCON','EPSG','4136','EPSG','4326','EPSG','1332',1.5,'EPSG','8657','Latitude difference file','stlrnc.las','EPSG','8658','Longitude difference file','stlrnc.los',NULL,NULL,'EPSG-Usa AK StL',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1700','St. Paul Island to WGS 84 (1)','Parameter files are from St. Paul Island to NAD83 (1) (code 1456) assuming that NAD83 is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1 to 2m level.','EPSG','9613','NADCON','EPSG','4137','EPSG','4326','EPSG','1333',1.5,'EPSG','8657','Latitude difference file','stpaul.las','EPSG','8658','Longitude difference file','stpaul.los',NULL,NULL,'EPSG-Usa AK StP',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1702','NAD83 to WGS 84 (8)','Parameter file is from NAD83 to NAD83(CSRS)v4 (3) (code 9244) assuming that NAD83(CSRS)v4 is equivalent to WGS 84 within the accuracy of the transformation. This file AB_CSRS.DAC will need to be renamed to AB_CSRS.gsb to run in some sodtware.','Approximation at the +/- 1-2m level.','EPSG','9615','NTv2','EPSG','4269','EPSG','4326','EPSG','2376',1.5,'EPSG','8656','Latitude and longitude difference file','AB_CSRS.DAC',NULL,NULL,NULL,NULL,NULL,NULL,'EPSG-Can AB',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1703','NAD27 to WGS 84 (32)','Parameter file is from NAD27 to NAD83(CSRS)v3 (2) (code 9242) assuming that NAD83(CSRS)v3 is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1-2m level.','EPSG','9615','NTv2','EPSG','4267','EPSG','4326','EPSG','2375',1.5,'EPSG','8656','Latitude and longitude difference file','SK27-98.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'EPSG-Can SK',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1704','NAD83 to NAD83(HARN) (40)','Uses NADCON method which expects longitudes positive west; EPSG GeogCRSs NAD83 (code 4269) and NAD83(HARN) (code 4152) have longitudes positive east. May be taken as approximate transformation NAD83-WGS 84 - see code 1708.','Geodetic survey. Accuracy 0.05m at 67% confidence level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1374',0.05,'EPSG','8657','Latitude difference file','arhpgn.las','EPSG','8658','Longitude difference file','arhpgn.los',NULL,NULL,'NGS-Usa AR',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1705','NAD83 to NAD83(HARN) (41)','Uses NADCON method which expects longitudes positive west; EPSG GeogCRSs NAD83 (code 4269) and NAD83(HARN) (code 4152) have longitudes positive east. May be taken as approximate transformation NAD83-WGS 84 - see code 1709.','Geodetic survey. Accuracy 0.05m at 67% confidence level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1384',0.05,'EPSG','8657','Latitude difference file','iahpgn.las','EPSG','8658','Longitude difference file','iahpgn.los',NULL,NULL,'NGS-Usa IA',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1706','NAD83 to NAD83(HARN) (42)','Uses NADCON method which expects longitudes positive west; EPSG GeogCRSs NAD83 (code 4269) and NAD83(HARN) (code 4152) have longitudes positive east. May be taken as approximate transformation NAD83-WGS 84 - see code 1710.','Geodetic survey. Accuracy 0.05m at 67% confidence level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1392',0.05,'EPSG','8657','Latitude difference file','mnhpgn.las','EPSG','8658','Longitude difference file','mnhpgn.los',NULL,NULL,'NGS-Usa MN',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1707','NAD83 to NAD83(HARN) (43)','Uses NADCON method which expects longitudes positive west; EPSG GeogCRSs NAD83 (code 4269) and NAD83(HARN) (code 4152) have longitudes positive east. May be taken as approximate transformation NAD83-WGS 84 - see code 1711.','Geodetic survey. Accuracy 0.05m at 67% confidence level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1394',0.05,'EPSG','8657','Latitude difference file','mohpgn.las','EPSG','8658','Longitude difference file','mohpgn.los',NULL,NULL,'NGS-Usa MO',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1708','NAD83 to WGS 84 (12)','Parameter files are from NAD83 to NAD83(HARN) (40) (code 1704) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1374',1.0,'EPSG','8657','Latitude difference file','arhpgn.las','EPSG','8658','Longitude difference file','arhpgn.los',NULL,NULL,'EPSG-USA Ar',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1709','NAD83 to WGS 84 (13)','Parameter files are from NAD83 to NAD83(HARN) (41) (code 1705) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1384',1.0,'EPSG','8657','Latitude difference file','iahpgn.las','EPSG','8658','Longitude difference file','iahpgn.los',NULL,NULL,'EPSG-Usa IA',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1710','NAD83 to WGS 84 (14)','Parameter files are from NAD83 to NAD83(HARN) (42) (code 1706) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1392',1.0,'EPSG','8657','Latitude difference file','mnhpgn.las','EPSG','8658','Longitude difference file','mnhpgn.los',NULL,NULL,'EPSG-Usa MN',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1711','NAD83 to WGS 84 (15)','Parameter files are from NAD83 to NAD83(HARN) (43) (code 1707) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1394',1.0,'EPSG','8657','Latitude difference file','mohpgn.las','EPSG','8658','Longitude difference file','mohpgn.los',NULL,NULL,'EPSG-Usa MO',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1712','NAD83 to WGS 84 (16)','Parameter files are from NAD83 to NAD83(HARN) (5) (code 1478) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1376',1.0,'EPSG','8657','Latitude difference file','cohpgn.las','EPSG','8658','Longitude difference file','cohpgn.los',NULL,NULL,'EPSG-Usa CO',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1713','NAD83 to WGS 84 (17)','Parameter files are from NAD83 to NAD83(HARN) (6) (code 1479) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1380',1.0,'EPSG','8657','Latitude difference file','gahpgn.las','EPSG','8658','Longitude difference file','gahpgn.los',NULL,NULL,'EPSG-Usa GA',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1714','NAD83 to WGS 84 (18)','Parameter files are from NAD83 to NAD83(HARN) (7) (code 1480) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1379',1.0,'EPSG','8657','Latitude difference file','flhpgn.las','EPSG','8658','Longitude difference file','flhpgn.los',NULL,NULL,'EPSG-Usa FL',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1715','NAD83 to WGS 84 (19)','Parameter files are from NAD83 to NAD83(HARN) (8) (code 1481) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','2382',1.0,'EPSG','8657','Latitude difference file','emhpgn.las','EPSG','8658','Longitude difference file','emhpgn.los',NULL,NULL,'EPSG-Usa ID MT e',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1716','NAD83 to WGS 84 (20)','Parameter files are from NAD83 to NAD83(HARN) (9) (code 1482) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','2383',1.0,'EPSG','8657','Latitude difference file','wmhpgn.las','EPSG','8658','Longitude difference file','wmhpgn.los',NULL,NULL,'EPSG-Usa ID MT w',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1717','NAD83 to WGS 84 (21)','Parameter files are from NAD83 to NAD83(HARN) (1) (code 1474) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1372',1.0,'EPSG','8657','Latitude difference file','alhpgn.las','EPSG','8658','Longitude difference file','alhpgn.los',NULL,NULL,'EPSG-Usa AL',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1718','NAD83 to WGS 84 (22)','Parameter files are from NAD83 to NAD83(HARN) (10) (code 1483) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1386',1.0,'EPSG','8657','Latitude difference file','kyhpgn.las','EPSG','8658','Longitude difference file','kyhpgn.los',NULL,NULL,'EPSG-Usa KY',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1719','NAD83 to WGS 84 (23)','Parameter files are from NAD83 to NAD83(HARN) (11) (code 1484) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1387',1.0,'EPSG','8657','Latitude difference file','lahpgn.las','EPSG','8658','Longitude difference file','lahpgn.los',NULL,NULL,'EPSG-Usa LA',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1720','NAD83 to WGS 84 (24)','Parameter files are from NAD83 to NAD83(HARN) (12) (code 1485) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','2377',1.0,'EPSG','8657','Latitude difference file','mdhpgn.las','EPSG','8658','Longitude difference file','mdhpgn.los',NULL,NULL,'EPSG-Usa DE MD',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1721','NAD83 to WGS 84 (25)','Parameter files are from NAD83 to NAD83(HARN) (13) (code 1486) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1388',1.0,'EPSG','8657','Latitude difference file','mehpgn.las','EPSG','8658','Longitude difference file','mehpgn.los',NULL,NULL,'EPSG-Usa ME',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1722','NAD83 to WGS 84 (26)','Parameter files are from NAD83 to NAD83(HARN) (14) (code 1487) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1391',1.0,'EPSG','8657','Latitude difference file','mihpgn.las','EPSG','8658','Longitude difference file','mihpgn.los',NULL,NULL,'EPSG-Usa MI',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1723','NAD83 to WGS 84 (27)','Parameter files are from NAD83 to NAD83(HARN) (15) (code 1488) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1393',1.0,'EPSG','8657','Latitude difference file','mshpgn.las','EPSG','8658','Longitude difference file','mshpgn.los',NULL,NULL,'EPSG-Usa MS',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1724','NAD83 to WGS 84 (28)','Parameter files are from NAD83 to NAD83(HARN) (16) (code 1489) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1396',1.0,'EPSG','8657','Latitude difference file','nbhpgn.las','EPSG','8658','Longitude difference file','nbhpgn.los',NULL,NULL,'EPSG-Usa NE',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1725','NAD83 to WGS 84 (29)','Parameter files are from NAD83 to NAD83(HARN) (17) (code 1490) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','2378',1.0,'EPSG','8657','Latitude difference file','nehpgn.las','EPSG','8658','Longitude difference file','nehpgn.los',NULL,NULL,'EPSG-Usa NewEng',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1726','NAD83 to WGS 84 (30)','Parameter files are from NAD83 to NAD83(HARN) (18) (code 1491) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1400',1.0,'EPSG','8657','Latitude difference file','nmhpgn.las','EPSG','8658','Longitude difference file','nmhpgn.los',NULL,NULL,'EPSG-Usa NM',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1727','NAD83 to WGS 84 (31)','Parameter files are from NAD83 to NAD83(HARN) (19) (code 1492) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1401',1.0,'EPSG','8657','Latitude difference file','nyhpgn.las','EPSG','8658','Longitude difference file','nyhpgn.los',NULL,NULL,'EPSG-Usa NY',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1728','NAD83 to WGS 84 (32)','Parameter files are from NAD83 to NAD83(HARN) (2) (code 1475) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1373',1.0,'EPSG','8657','Latitude difference file','azhpgn.las','EPSG','8658','Longitude difference file','azhpgn.los',NULL,NULL,'EPSG-Usa AZ',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1729','NAD83 to WGS 84 (33)','Parameter files are from NAD83 to NAD83(HARN) (20) (code 1493) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1403',1.0,'EPSG','8657','Latitude difference file','ndhpgn.las','EPSG','8658','Longitude difference file','ndhpgn.los',NULL,NULL,'EPSG-Usa ND',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1730','NAD83 to WGS 84 (34)','Parameter files are from NAD83 to NAD83(HARN) (21) (code 1494) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1405',1.0,'EPSG','8657','Latitude difference file','okhpgn.las','EPSG','8658','Longitude difference file','okhpgn.los',NULL,NULL,'EPSG-Usa OK',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1731','NAD83 to WGS 84 (35)','Parameter files are from NAD83 to NAD83(HARN) (22) (code 1495) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','3634',1.0,'EPSG','8657','Latitude difference file','pvhpgn.las','EPSG','8658','Longitude difference file','pvhpgn.los',NULL,NULL,'EPSG-PRVI',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1732','NAD83 to WGS 84 (36)','Parameter files are from NAD83 to NAD83(HARN) (23) (code 1496) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1410',1.0,'EPSG','8657','Latitude difference file','sdhpgn.las','EPSG','8658','Longitude difference file','sdhpgn.los',NULL,NULL,'EPSG-Usa SD',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1733','NAD83 to WGS 84 (37)','Parameter files are from NAD83 to NAD83(HARN) (24) (code 1497) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1411',1.0,'EPSG','8657','Latitude difference file','tnhpgn.las','EPSG','8658','Longitude difference file','tnhpgn.los',NULL,NULL,'EPSG-Usa TN',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1734','NAD83 to WGS 84 (38)','Parameter files are from NAD83 to NAD83(HARN) (25) (code 1498) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','2379',1.0,'EPSG','8657','Latitude difference file','ethpgn.las','EPSG','8658','Longitude difference file','ethpgn.los',NULL,NULL,'EPSG-Usa TX e',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1735','NAD83 to WGS 84 (39)','Parameter files are from NAD83 to NAD83(HARN) (26) (code 1499) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','2380',1.0,'EPSG','8657','Latitude difference file','wthpgn.las','EPSG','8658','Longitude difference file','wthpgn.los',NULL,NULL,'EPSG-Usa TX w',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1736','NAD83 to WGS 84 (40)','Parameter files are from NAD83 to NAD83(HARN) (27) (code 1500) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1415',1.0,'EPSG','8657','Latitude difference file','vahpgn.las','EPSG','8658','Longitude difference file','vahpgn.los',NULL,NULL,'EPSG-Usa VA',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1737','NAD83 to WGS 84 (41)','Parameter files are from NAD83 to NAD83(HARN) (28) (code 1501) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','2381',1.0,'EPSG','8657','Latitude difference file','wohpgn.las','EPSG','8658','Longitude difference file','wohpgn.los',NULL,NULL,'EPSG-Usa OR WA',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1738','NAD83 to WGS 84 (42)','Parameter files are from NAD83 to NAD83(HARN) (29) (code 1502) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1418',1.0,'EPSG','8657','Latitude difference file','wihpgn.las','EPSG','8658','Longitude difference file','wihpgn.los',NULL,NULL,'EPSG-Usa WI',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1739','NAD83 to WGS 84 (43)','Parameter files are from NAD83 to NAD83(HARN) (3) (code 1476) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','2297',1.0,'EPSG','8657','Latitude difference file','cnhpgn.las','EPSG','8658','Longitude difference file','cnhpgn.los',NULL,NULL,'EPSG-Usa CA n',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1740','NAD83 to WGS 84 (44)','Parameter files are from NAD83 to NAD83(HARN) (30) (code 1503) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1419',1.0,'EPSG','8657','Latitude difference file','wyhpgn.las','EPSG','8658','Longitude difference file','wyhpgn.los',NULL,NULL,'EPSG-Usa WY',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1741','NAD83 to WGS 84 (45)','Parameter files are from NAD83 to NAD83(HARN) (31) (code 1520) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1334',1.0,'EPSG','8657','Latitude difference file','hihpgn.las','EPSG','8658','Longitude difference file','hihpgn.los',NULL,NULL,'EPSG-Usa HI',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1742','NAD83 to WGS 84 (46)','Parameter files are from NAD83 to NAD83(HARN) (32) (code 1521) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1383',1.0,'EPSG','8657','Latitude difference file','inhpgn.las','EPSG','8658','Longitude difference file','inhpgn.los',NULL,NULL,'EPSG-Usa IN',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1743','NAD83 to WGS 84 (47)','Parameter files are from NAD83 to NAD83(HARN) (33) (code 1522) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1385',1.0,'EPSG','8657','Latitude difference file','kshpgn.las','EPSG','8658','Longitude difference file','kshpgn.los',NULL,NULL,'EPSG-Usa KS',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1744','NAD83 to WGS 84 (48)','Parameter files are from NAD83 to NAD83(HARN) (34) (code 1523) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1397',1.0,'EPSG','8657','Latitude difference file','nvhpgn.las','EPSG','8658','Longitude difference file','nvhpgn.los',NULL,NULL,'EPSG-Usa NV',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1745','NAD83 to WGS 84 (49)','Parameter files are from NAD83 to NAD83(HARN) (35) (code 1524) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1404',1.0,'EPSG','8657','Latitude difference file','ohhpgn.las','EPSG','8658','Longitude difference file','ohhpgn.los',NULL,NULL,'EPSG-Usa OH',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1746','NAD83 to WGS 84 (50)','Parameter files are from NAD83 to NAD83(HARN) (36) (code 1525) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1413',1.0,'EPSG','8657','Latitude difference file','uthpgn.las','EPSG','8658','Longitude difference file','uthpgn.los',NULL,NULL,'EPSG-Usa UT',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1747','NAD83 to WGS 84 (51)','Parameter files are from NAD83 to NAD83(HARN) (37) (code 1526) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1417',1.0,'EPSG','8657','Latitude difference file','wvhpgn.las','EPSG','8658','Longitude difference file','wvhpgn.los',NULL,NULL,'EPSG-Usa WV',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1748','NAD83 to WGS 84 (52)','Parameter files are from NAD83 to NAD83(HARN) (38) (code 1553) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1382',1.0,'EPSG','8657','Latitude difference file','ilhpgn.las','EPSG','8658','Longitude difference file','ilhpgn.los',NULL,NULL,'EPSG-Usa IL',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1749','NAD83 to WGS 84 (53)','Parameter files are from NAD83 to NAD83(HARN) (39) (code 1554) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1399',1.0,'EPSG','8657','Latitude difference file','njhpgn.las','EPSG','8658','Longitude difference file','njhpgn.los',NULL,NULL,'EPSG-Usa NJ',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1750','NAD83 to WGS 84 (54)','Parameter files are from NAD83 to NAD83(HARN) (4) (code 1477) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','2298',1.0,'EPSG','8657','Latitude difference file','cshpgn.las','EPSG','8658','Longitude difference file','cshpgn.los',NULL,NULL,'EPSG-Usa CA s',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1752','NAD83 to NAD83(CSRS98) (3)','This gridded difference file AB_CSRS.DAC will need to be renamed to AB_CSRS.gsb to run in some software suites. Formats identical, but AB file is provincial fit only. Can be taken as an approximate transformation NAD83 to WGS 84 - see code 1702.','?','EPSG','9615','NTv2','EPSG','4269','EPSG','4140','EPSG','2376',NULL,'EPSG','8656','Latitude and longitude difference file','AB_CSRS.DAC',NULL,NULL,NULL,NULL,NULL,NULL,'AB Env-Can AB',1);
INSERT INTO "grid_transformation" VALUES('EPSG','1803','AGD66 to GDA94 (11)','Replaces AGD66 to GDA94 variants 6, 7 and 10 (codes 1506 1507 1596). Input expects longitudes to be positive west; EPSG GeogCRS AGD66 (code 4202) and GDA94 (code 4283) both have longitudes positive east. May be used as tfm to WGS 84 - see code 15786.','0.1m accuracy.','EPSG','9615','NTv2','EPSG','4202','EPSG','4283','EPSG','2575',0.1,'EPSG','8656','Latitude and longitude difference file','A66 National (13.09.01).gsb',NULL,NULL,NULL,NULL,NULL,NULL,'ICSM-Aus 0.1m',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1804','AGD84 to GDA94 (5)','Replaces AGD84 to GDA94 (4) (code 1593) which itself replaced variant 3 (code 1559). Input expects longitudes to be + west; EPSG GeogCRS AGD84 (code 4203) and GDA94 (code 4283) both have longitudes positive east. May be used as tfm to WGS 84 - see 15785','0.1m accuracy.','EPSG','9615','NTv2','EPSG','4203','EPSG','4283','EPSG','2576',0.1,'EPSG','8656','Latitude and longitude difference file','National 84 (02.07.01).gsb',NULL,NULL,NULL,NULL,NULL,NULL,'Auslig-Aus 0.1m',0);
INSERT INTO "grid_transformation" VALUES('EPSG','1841','ATS77 to NAD83(CSRS) (1)','Introduced in 1999. Can be taken as an approximate transformation ATS77 to WGS 84 - see code 1688.','Used in the GeoNB Coordinate Transformation Service. Accuracy 1-2 metres.','EPSG','9615','NTv2','EPSG','4122','EPSG','4617','EPSG','1447',1.5,'EPSG','8656','Latitude and longitude difference file','NB7783v2.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'GIC-Can NB',1);
INSERT INTO "grid_transformation" VALUES('EPSG','1843','NAD83 to NAD83(CSRS) (1)','Uses NT method which expects longitudes positive west; EPSG GeogCRSs NAD83 (code 4269) and NAD83(CSRS) (code 4617) have longitudes positive east. Can be taken as an approximate transformation NAD83 to WGS 84 - see code 1696.','Accuracy 1-2 metres.','EPSG','9615','NTv2','EPSG','4269','EPSG','4617','EPSG','1368',1.5,'EPSG','8656','Latitude and longitude difference file','NAD83-98.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'SGQ-Can QC',1);
INSERT INTO "grid_transformation" VALUES('EPSG','1844','NAD27 to NAD83(CSRS) (1)','Uses NT method which expects longitudes positive west; EPSG GeogCRSs NAD27 (code 4267) and NAD83(CSRS) (code 4617) have longitudes positive east. Can be taken as an approximate transformation NAD27 to WGS 84 - see code 1692.','Accuracy 1-2 metres.','EPSG','9615','NTv2','EPSG','4267','EPSG','4617','EPSG','1368',1.5,'EPSG','8656','Latitude and longitude difference file','QUE27-98.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'SGQ-Can QC',1);
INSERT INTO "grid_transformation" VALUES('EPSG','1845','NAD27(CGQ77) to NAD83(CSRS) (1)','Uses NT method which expects longitudes positive west; EPSG GeogCRSs NAD27(CGQ77) (code 4609) and NAD83(CSRS) (code 4617) have longitudes positive east. Can be taken as an approximate transformation NAD27(CGQ77) to WGS 84 - see code 1691.','Accuracy 1-2 metres.','EPSG','9615','NTv2','EPSG','4609','EPSG','4617','EPSG','1368',1.5,'EPSG','8656','Latitude and longitude difference file','CGQ77-98.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'SGQ-Can QC',1);
INSERT INTO "grid_transformation" VALUES('EPSG','1846','ATS77 to NAD83(CSRS) (2)','Can be taken as an approximate transformation ATS77 to WGS 84 - see code 1689.','Accuracy 1-2 metres.','EPSG','9615','NTv2','EPSG','4122','EPSG','4617','EPSG','1533',1.5,'EPSG','8656','Latitude and longitude difference file','PE7783V2.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'PEI DOT-Can PEI',1);
INSERT INTO "grid_transformation" VALUES('EPSG','1847','NAD27 to NAD83(CSRS) (2)','Can be taken as an approximate transformation NAD27 to WGS 84 - see code 1703.','Accuracy 1-2 metres.','EPSG','9615','NTv2','EPSG','4267','EPSG','4617','EPSG','2375',1.5,'EPSG','8656','Latitude and longitude difference file','SK27-98.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'SK PMC-Can SK',1);
INSERT INTO "grid_transformation" VALUES('EPSG','1848','NAD83 to NAD83(CSRS) (2)','Can be taken as an approximate transformation NAD83 to WGS 84 - see code 1697.','Accuracy 1-2 metres.','EPSG','9615','NTv2','EPSG','4269','EPSG','4617','EPSG','2375',1.5,'EPSG','8656','Latitude and longitude difference file','SK83-98.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'SK PMC-Can SK',1);
INSERT INTO "grid_transformation" VALUES('EPSG','1849','NAD83 to NAD83(CSRS) (3)','This gridded difference file AB_CSRS.DAC will need to be renamed to AB_CSRS.gsb to run in some software suites. Formats identical, but AB file is provincial fit only. Can be taken as an approximate transformation NAD83 to WGS 84 - see code 1702.','Accuracy 1-2 metres.','EPSG','9615','NTv2','EPSG','4269','EPSG','4617','EPSG','2376',1.5,'EPSG','8656','Latitude and longitude difference file','AB_CSRS.DAC',NULL,NULL,NULL,NULL,NULL,NULL,'AB Env-Can AB',1);
INSERT INTO "grid_transformation" VALUES('EPSG','1850','ATS77 to NAD83(CSRS) (3)','Can be taken as an approximate transformation ATS77 to WGS 84 - see code 1851.','Accuracy 1-2 metres.','EPSG','9615','NTv2','EPSG','4122','EPSG','4617','EPSG','2313',1.5,'EPSG','8656','Latitude and longitude difference file','NS778301.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'NSGC-Can NS',1);
INSERT INTO "grid_transformation" VALUES('EPSG','1851','ATS77 to WGS 84 (3)','Parameter file is from ATS77 to NAD83(CSRS)v3 (3) (code 9235) assuming that NAD83(CSRS)v3 is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1-2m level.','EPSG','9615','NTv2','EPSG','4122','EPSG','4326','EPSG','2313',1.5,'EPSG','8656','Latitude and longitude difference file','NS778301.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'EPSG-Can NS',0);
INSERT INTO "grid_transformation" VALUES('EPSG','3858','WGS 84 to EGM2008 height (1)','Replaces WGS 84 to EGM96 height (1) (CT code 15781). Grid spacing is 2.5 arc-minutes. For a smaller spacing (in principle more exact but requiring greater computing resources) see CT code 3859. An executable using spherical harmonics is also available.','Derivation of gravity-related heights from GPS observations.','EPSG','1025','Geographic3D to GravityRelatedHeight (EGM2008)','EPSG','4979','EPSG','3855','EPSG','1262',1.0,'EPSG','8666','Geoid (height correction) model file','Und_min2.5x2.5_egm2008_isw=82_WGS84_TideFree.gz',NULL,NULL,NULL,NULL,NULL,NULL,'NGA-World',0);
INSERT INTO "grid_transformation" VALUES('EPSG','3859','WGS 84 to EGM2008 height (2)','Replaces WGS 84 to EGM96 height (1) (CT code 15781). Grid spacing is 1 arc-minute. For a larger grid spacing (in principle less exact but requiring less computing resources) see CT code 3858. An executable using spherical harmonics is also available.','Derivation of gravity-related heights from GPS observations.','EPSG','1025','Geographic3D to GravityRelatedHeight (EGM2008)','EPSG','4979','EPSG','3855','EPSG','1262',0.5,'EPSG','8666','Geoid (height correction) model file','Und_min1x1_egm2008_isw=82_WGS84_TideFree.gz',NULL,NULL,NULL,NULL,NULL,NULL,'NGA-World',0);
INSERT INTO "grid_transformation" VALUES('EPSG','4459','NZGD2000 to NZVD2009 height (1)','Defines NZVD2009 vertical datum (datum code 1039, CRS code 4440).','Derivation of gravity-related heights from GPS observations.','EPSG','1030','Geographic3D to GravityRelatedHeight (NZgeoid)','EPSG','4959','EPSG','4440','EPSG','1175',0.1,'EPSG','8666','Geoid (height correction) model file','nzgeoid09.sid',NULL,NULL,NULL,NULL,NULL,NULL,'LINZ-NZ 2009',0);
INSERT INTO "grid_transformation" VALUES('EPSG','4561','RRAF 1991 to Martinique 1987 height (1)','May be used for transformations from WGS 84 to IGN 1987. Accuracy at each 0.025 deg x 0.025 degree grid node is given within the geoid model file.','Derivation of gravity-related heights from GPS observations.','EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4557','EPSG','5756','EPSG','3276',998.0,'EPSG','8666','Geoid (height correction) model file','ggm00.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Mtq',0);
INSERT INTO "grid_transformation" VALUES('EPSG','4562','RRAF 1991 to Guadeloupe 1988 height (1)','May be used for transformations from WGS 84 to IGN 1988. Accuracy at each 0.025 deg x 0.025 degree grid node is given within the geoid model file.','Derivation of gravity-related heights from GPS observations. Accuracy 0.2m within onshore areas.','EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4557','EPSG','5757','EPSG','2892',0.2,'EPSG','8666','Geoid (height correction) model file','ggg00.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Glp GT',0);
INSERT INTO "grid_transformation" VALUES('EPSG','4563','RRAF 1991 to IGN 1988 MG height (1)','May be used for transformations from WGS 84 to IGN 1988 MG. Accuracy at each 0.025 deg x 0.025 degree grid node is given within the geoid model file.','Derivation of gravity-related heights from GPS observations. Accuracy 0.2m within onshore area.','EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4557','EPSG','5617','EPSG','2894',0.2,'EPSG','8666','Geoid (height correction) model file','ggg00_mg.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Glp MG',0);
INSERT INTO "grid_transformation" VALUES('EPSG','4564','RRAF 1991 to IGN 1988 SM height (1)','May be used for transformations from WGS 84 to IGN 1988 SM. Accuracy at each 0.025 deg x 0.025 degree grid node is given within the geoid model file.','Derivation of gravity-related heights from GPS observations. Accuracy 0.2m within onshore area.','EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4557','EPSG','5620','EPSG','2890',0.2,'EPSG','8666','Geoid (height correction) model file','ggg00_sm.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Glp StM',0);
INSERT INTO "grid_transformation" VALUES('EPSG','4565','RRAF 1991 to IGN 1988 LS height (1)','May be used for transformations from WGS 84 to IGN 1988 LS. Accuracy at each 0.025 deg x 0.025 degree grid node is given within the geoid model file.','Derivation of gravity-related heights from GPS observations. Accuracy 0.2m within onshore area.','EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4557','EPSG','5616','EPSG','2895',0.2,'EPSG','8666','Geoid (height correction) model file','ggg00_ls.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Glp LSt',0);
INSERT INTO "grid_transformation" VALUES('EPSG','4566','RRAF 1991 to IGN 1992 LD height (1)','Accuracy 0.5m. Replaced by RRAF 1991 to IGN 2008 LD height (1) (CT code 9132).','Derivation of gravity-related heights from GPS observations.','EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4557','EPSG','5618','EPSG','2893',0.5,'EPSG','8666','Geoid (height correction) model file','ggg00_ld.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Glp Des',0);
INSERT INTO "grid_transformation" VALUES('EPSG','4567','RRAF 1991 to IGN 1988 SB height (1)','May be used for transformations from WGS 84 to IGN 1988 SB. Accuracy at each 0.025 deg x 0.025 degree grid node is given within the geoid model file.','Derivation of gravity-related heights from GPS observations. Accuracy 0.2m within onshore area.','EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4557','EPSG','5619','EPSG','2891',0.2,'EPSG','8666','Geoid (height correction) model file','ggg00_sb.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Glp StB',0);
INSERT INTO "grid_transformation" VALUES('EPSG','5334','ETRS89 to Belfast height (1)','May be used for transformations from WGS 84 to Belfast. Replaced by ETRS89 to Belfast height (2) (code 7958).','Derivation of gravity-related heights from GPS observations.','EPSG','1045','Geographic3D to GravityRelatedHeight (OSGM02-Ire)','EPSG','4937','EPSG','5732','EPSG','2530',0.03,'EPSG','8666','Geoid (height correction) model file','OSGM02_NI.txt',NULL,NULL,NULL,NULL,NULL,NULL,'OS-UK NI',0);
INSERT INTO "grid_transformation" VALUES('EPSG','5335','ETRS89 to Malin Head height (1)','May be used for transformations from WGS 84 to Malin Head. Replaced by ETRS89 to Malin Head height (2) (code 7959).','Derivation of gravity-related heights from GPS observations.','EPSG','1045','Geographic3D to GravityRelatedHeight (OSGM02-Ire)','EPSG','4937','EPSG','5731','EPSG','1305',0.04,'EPSG','8666','Geoid (height correction) model file','OSGM02_RoI.txt',NULL,NULL,NULL,NULL,NULL,NULL,'OS-Ire',0);
INSERT INTO "grid_transformation" VALUES('EPSG','5338','OSGB 1936 to ETRS89 (1)','Approximate alternative to official OSTN02 method (tfm code 7952). May be taken as approximate transformation OSGB 1936 to WGS 84 - see code 5339.','Accuracy at 2000 test points compared to official OSTN02 (tfm code 1039): latitude 0.5mm average, 17mm maximum; longitude 0.8mm average, 23mm maximum.','EPSG','9615','NTv2','EPSG','4277','EPSG','4258','EPSG','1264',0.03,'EPSG','8656','Latitude and longitude difference file','OSTN02_NTv2.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'OSGB-UK Gbr02 NT',0);
INSERT INTO "grid_transformation" VALUES('EPSG','5339','OSGB 1936 to WGS 84 (7)','Parameter values taken from OSGB 1936 to ETRS89 (1) (tfm code 5338) assuming that ETRS89 is coincident with WGS 84 within the accuracy of the tfm. Within accuracy of the tfm equivalent to OSGB 1936 / British National Grid to WGS 84 (2) (tfm code 15956).','Accuracy 1m.','EPSG','9615','NTv2','EPSG','4277','EPSG','4326','EPSG','1264',1.0,'EPSG','8656','Latitude and longitude difference file','OSTN02_NTv2.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'OGP-UK Gbr02 NT',0);
INSERT INTO "grid_transformation" VALUES('EPSG','5409','NGVD29 height to NAVD88 height (1)','Interpolation within the gridded data file may be made using any of the horizontal CRSs NAD27, NAD83 or NAD83(HARN).','Accuracy 2cm','EPSG','9658','VERTCON','EPSG','5702','EPSG','5703','EPSG','2950',0.02,'EPSG','8732','Vertical offset file','vertconw.94',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-US Conus W',1);
INSERT INTO "grid_transformation" VALUES('EPSG','5410','NGVD29 height to NAVD88 height (2)','Interpolation within the gridded data file may be made using any of the horizontal CRSs NAD27, NAD83 or NAD83(HARN).','Accuracy 2cm','EPSG','9658','VERTCON','EPSG','5702','EPSG','5703','EPSG','2949',0.02,'EPSG','8732','Vertical offset file','vertconc.94',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-US Conus C',1);
INSERT INTO "grid_transformation" VALUES('EPSG','5411','NGVD29 height to NAVD88 height (3)','Interpolation within the gridded data file may be made using any of the horizontal CRSs NAD27, NAD83 or NAD83(HARN).','Accuracy 2cm','EPSG','9658','VERTCON','EPSG','5702','EPSG','5703','EPSG','2948',0.02,'EPSG','8732','Vertical offset file','vertcone.94',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-US Conus E',1);
INSERT INTO "grid_transformation" VALUES('EPSG','5502','RGAF09 to Martinique 1987 height (1)','Replaces tfm from RRAF 1991, code 4561. May be used for transformations from WGS 84 to IGN 1987. Accuracy at each 0.025 deg x 0.025 degree grid node is given within the geoid model file.','Derivation of gravity-related heights from GPS observations.','EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','5488','EPSG','5756','EPSG','3276',998.0,'EPSG','8666','Geoid (height correction) model file','gg10_mart.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Mtq',0);
INSERT INTO "grid_transformation" VALUES('EPSG','5503','RGAF09 to Guadeloupe 1988 height (1)','Replaces tfm from RRAF 1991, code 4562. May be used for transformations from WGS 84 to IGN 1988. Accuracy at each 0.025 deg x 0.025 degree grid node is given within the geoid model file.','Derivation of gravity-related heights from GPS observations. Accuracy 0.2m within onshore areas.','EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','5488','EPSG','5757','EPSG','2892',0.2,'EPSG','8666','Geoid (height correction) model file','gg10_gtbt.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Glp GT',0);
INSERT INTO "grid_transformation" VALUES('EPSG','5504','RGAF09 to IGN 1988 MG height (1)','Replaces tfm from RRAF 1991, code 4563. May be used for transformations from WGS 84 to IGN 1988 MG. Accuracy at each 0.025 deg x 0.025 degree grid node is given within the geoid model file.','Derivation of gravity-related heights from GPS observations. Accuracy 0.2m within onshore area.','EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','5488','EPSG','5617','EPSG','2894',0.2,'EPSG','8666','Geoid (height correction) model file','gg10_mg.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Glp MG',0);
INSERT INTO "grid_transformation" VALUES('EPSG','5505','RGAF09 to IGN 1988 SM height (1)','Replaces tfm from RRAF 1991, code 4564. May be used for transformations from WGS 84 to IGN 1988 SM. Accuracy at each 0.025 deg x 0.025 degree grid node is given within the geoid model file.','Derivation of gravity-related heights from GPS observations. Accuracy 0.2m within onshore area.','EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','5488','EPSG','5620','EPSG','2890',0.2,'EPSG','8666','Geoid (height correction) model file','gg10_sm.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Glp StM',0);
INSERT INTO "grid_transformation" VALUES('EPSG','5506','RGAF09 to IGN 1988 LS height (1)','Replaces tfm from RRAF 1991, code 4565. May be used for transformations from WGS 84 to IGN 1988 LS. Accuracy at each 0.025 deg x 0.025 degree grid node is given within the geoid model file.','Derivation of gravity-related heights from GPS observations. Accuracy 0.2m within onshore area.','EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','5488','EPSG','5616','EPSG','2895',0.2,'EPSG','8666','Geoid (height correction) model file','gg10_ls.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Glp LSt',0);
INSERT INTO "grid_transformation" VALUES('EPSG','5507','RGAF09 to IGN 1992 LD height (1)','Replaces tfm from RRAF 1991, code 4566. Replaced by RGAF09 to IGN 2008 LD height (1), CT code 9131. May be used for transformations from WGS 84 to IGN 1992 LD. Accuracy at each 0.025° grid node is given within the geoid model file, approx. average 0.5m.','Derivation of gravity-related heights from GPS observations.','EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','5488','EPSG','5618','EPSG','2893',0.5,'EPSG','8666','Geoid (height correction) model file','gg10_ld.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Glp Des',0);
INSERT INTO "grid_transformation" VALUES('EPSG','5508','RGAF09 to IGN 1988 SB height (1)','Replaces tfm from RRAF 1991, code 4567. May be used for transformations from WGS 84 to IGN 1988 SB. Accuracy at each 0.025 deg x 0.025 degree grid node is given within the geoid model file.','Derivation of gravity-related heights from GPS observations. Accuracy 0.2m within onshore area.','EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','5488','EPSG','5619','EPSG','2891',0.2,'EPSG','8666','Geoid (height correction) model file','gg10_sb.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Glp StB',0);
INSERT INTO "grid_transformation" VALUES('EPSG','5525','Corrego Alegre 1961 to SIRGAS 2000 (1)','May be used as transformation between Corrego Alegre 1961 and WGS 84 - see tfm code 5540.','Accuracy 2m.','EPSG','9615','NTv2','EPSG','5524','EPSG','4674','EPSG','3874',2.0,'EPSG','8656','Latitude and longitude difference file','CA61_003.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'IBGE-Bra',0);
INSERT INTO "grid_transformation" VALUES('EPSG','5526','Corrego Alegre 1970-72 to SIRGAS 2000 (1)','May be used as transformation between Corrego Alegre 1970-72 and WGS 84 - see tfm code 5541.','Accuracy 2m.','EPSG','9615','NTv2','EPSG','4225','EPSG','4674','EPSG','1293',2.0,'EPSG','8656','Latitude and longitude difference file','CA7072_003.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'IBGE-Bra',0);
INSERT INTO "grid_transformation" VALUES('EPSG','5528','SAD69 to SIRGAS 2000 (2)','For IBGE, in onshore east and south Brazil only, replaces SAD69 to SIRGAS 2000 (1) (tfm code 15485) for pre-1996 data based on the classical geodetic network. May be used as transformation between SAD69 and WGS 84 - see tfm code 5542.','Accuracy 1m. Should be used only for pre-1996 data related to the classical geodetic network.','EPSG','9615','NTv2','EPSG','4618','EPSG','4674','EPSG','3887',1.0,'EPSG','8656','Latitude and longitude difference file','SAD69_003.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'IBGE-Bra',0);
INSERT INTO "grid_transformation" VALUES('EPSG','5529','SAD69(96) to SIRGAS 2000 (1)','May be used as transformation between SAD69(96) and WGS 84 - see tfm code 5543.','Accuracy 0.5m. Should be used for post-1996 data based on the classical geodetic network.','EPSG','9615','NTv2','EPSG','5527','EPSG','4674','EPSG','3887',0.5,'EPSG','8656','Latitude and longitude difference file','SAD96_003.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'IBGE-Bra',0);
INSERT INTO "grid_transformation" VALUES('EPSG','5540','Corrego Alegre 1961 to WGS 84 (1)','Parameters from Corrego Alegre 1961 to SIRGAS 2000 (1) (tfm code 5525) assuming that SIRGAS 2000 and WGS 84 are equal within the accuracy of the transformation.','Accuracy 2m.','EPSG','9615','NTv2','EPSG','5524','EPSG','4326','EPSG','3874',2.0,'EPSG','8656','Latitude and longitude difference file','CA61_003.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'OGP-Bra',0);
INSERT INTO "grid_transformation" VALUES('EPSG','5541','Corrego Alegre 1970-72 to WGS 84 (2)','Parameters from Corrego Alegre 1970-72 to SIRGAS 2000 (1) (tfm code 5526) assuming that SIRGAS 2000 and WGS 84 are equal within the accuracy of the transformation.','Accuracy 2m.','EPSG','9615','NTv2','EPSG','4225','EPSG','4326','EPSG','1293',2.0,'EPSG','8656','Latitude and longitude difference file','CA7072_003.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'OGP-Bra',0);
INSERT INTO "grid_transformation" VALUES('EPSG','5542','SAD69 to WGS 84 (15)','Parameters from SAD69 to SIRGAS 2000 (2) (tfm code 5528) assuming that SIRGAS 2000 and WGS 84 are equal within the accuracy of the transformation.','Accuracy 2m. Should be used only for pre-1996 data related to the classical geodetic network.','EPSG','9615','NTv2','EPSG','4618','EPSG','4326','EPSG','3887',2.0,'EPSG','8656','Latitude and longitude difference file','SAD69_003.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'OGP-Bra',0);
INSERT INTO "grid_transformation" VALUES('EPSG','5543','SAD69(96) to WGS 84 (1)','Parameters from SAD69(96) to SIRGAS 2000 (1) (tfm code 5529) assuming that SIRGAS 2000 and WGS 84 are equal within the accuracy of the transformation.','Accuracy 1m. Should be used for post-1996 data based on the classical geodetic network.','EPSG','9615','NTv2','EPSG','5527','EPSG','4326','EPSG','3887',1.0,'EPSG','8656','Latitude and longitude difference file','SAD96_003.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'OGP-Bra',0);
INSERT INTO "grid_transformation" VALUES('EPSG','5594','FEH2010 to FCSVR10 height (1)','','Derivation of gravity-related heights from GPS observations.','EPSG','1030','Geographic3D to GravityRelatedHeight (NZgeoid)','EPSG','5592','EPSG','5597','EPSG','3890',0.1,'EPSG','8666','Geoid (height correction) model file','fehmarn_geoid10.gri',NULL,NULL,NULL,NULL,NULL,NULL,'FEM-Dnk-Deu Feh',1);
INSERT INTO "grid_transformation" VALUES('EPSG','5626','FEH2010 to FCSVR10 height (1)','','Derivation of gravity-related heights from GPS observations.','EPSG','1047','Geographic3D to GravityRelatedHeight (Gravsoft)','EPSG','5592','EPSG','5597','EPSG','3890',0.1,'EPSG','8666','Geoid (height correction) model file','fehmarn_geoid10.gri',NULL,NULL,NULL,NULL,NULL,NULL,'FEM-Dnk-Deu Feh',0);
INSERT INTO "grid_transformation" VALUES('EPSG','5656','GDA94 to AHD height (49)','Replaces AusGeoid98 model. Uses AusGeoid09 model which uses bi-cubic interpolation; bi-linear interpolation of the grid file will give results agreeing to within 1cm 99.97% of the time. May be used for transformations from WGS 84 to AHD.','Derivation of gravity-related heights from GPS observations.','EPSG','1048','Geographic3D to GravityRelatedHeight (Ausgeoid v2)','EPSG','4939','EPSG','5711','EPSG','1281',0.03,'EPSG','8666','Geoid (height correction) model file','AUSGeoid09_GDA94_V1.01_DOV_windows.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus09 mainland',0);
INSERT INTO "grid_transformation" VALUES('EPSG','5657','GDA94 to AHD (Tasmania) height (2)','Replaces AusGeoid98 model. Uses AusGeoid09 model which uses bi-cubic interpolation; bi-linear interpolation of the grid file will give results agreeing to within 1cm 99.97% of the time. May be used for transformations from WGS 84 to AHD (Tasmania).','Derivation of gravity-related heights from GPS observations.','EPSG','1048','Geographic3D to GravityRelatedHeight (Ausgeoid v2)','EPSG','4939','EPSG','5712','EPSG','2947',0.03,'EPSG','8666','Geoid (height correction) model file','AUSGeoid09_GDA94_V1.01_DOV_windows.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus09 Tas',0);
INSERT INTO "grid_transformation" VALUES('EPSG','5661','ED50 to ETRS89 (14)','When included in concatenation from and to projected CRSs, gives same results as ED50 / UTM zone 31N to ETRS89 / UTM zone 31N (1) - see CRS code 5166.','For applications to an accuracy of 0.05 m (map scales not larger than 1:1000).','EPSG','9615','NTv2','EPSG','4230','EPSG','4258','EPSG','3732',0.05,'EPSG','8656','Latitude and longitude difference file','100800401.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'ICC-Esp Cat',0);
INSERT INTO "grid_transformation" VALUES('EPSG','5891','MGI to ETRS89 (5)','Not to be used for cadastral purposes as it does not comply with the rules for control network tie-in as per Paragraph 3 of the Land Survey Regulations (Vermessungsverordnung) 2010.','For applications to an accuracy of 1 decimetre: GIS, topographic mapping, engineering survey. (See remarks for cadastral survey).','EPSG','9615','NTv2','EPSG','4312','EPSG','4258','EPSG','1037',0.15,'EPSG','8656','Latitude and longitude difference file','AT_GIS_GRID.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'BEV-Aut NTv2',0);
INSERT INTO "grid_transformation" VALUES('EPSG','6138','CIGD11 to GCVD54 height (ft) (1)','Care: source CRS heights are in metres, transformation file parameter values and target CRS heights are in feet.','Derivation of gravity-related heights from GPS observations.','EPSG','1050','Geographic3D to GravityRelatedHeight (CI)','EPSG','6134','EPSG','6130','EPSG','3185',0.03,'EPSG','8666','Geoid (height correction) model file','GCGM0811.TXT',NULL,NULL,NULL,NULL,NULL,NULL,'LSD-Cym',0);
INSERT INTO "grid_transformation" VALUES('EPSG','6139','CIGD11 to LCVD61 height (ft) (1)','Care: source CRS heights are in metres, transformation file parameter values and target CRS heights are in feet.','Derivation of gravity-related heights from GPS observations.','EPSG','1050','Geographic3D to GravityRelatedHeight (CI)','EPSG','6134','EPSG','6131','EPSG','4121',0.03,'EPSG','8666','Geoid (height correction) model file','LCGM0811.TXT',NULL,NULL,NULL,NULL,NULL,NULL,'LSD-Cym',0);
INSERT INTO "grid_transformation" VALUES('EPSG','6140','CIGD11 to CBVD61 height (ft) (1)','Care: source CRS heights are in metres, transformation file parameter values and target CRS heights are in feet.','Derivation of gravity-related heights from GPS observations.','EPSG','1050','Geographic3D to GravityRelatedHeight (CI)','EPSG','6134','EPSG','6132','EPSG','3207',0.03,'EPSG','8666','Geoid (height correction) model file','CBGM0811.TXT',NULL,NULL,NULL,NULL,NULL,NULL,'LSD-Cym',0);
INSERT INTO "grid_transformation" VALUES('EPSG','6188','Lisbon to ETRS89 (4)','Derived from 1129 common stations in the national geodetic network. Residuals at 130 further test points average 0.09m, maximum 0.30m.','Decimetre accuracy.','EPSG','9615','NTv2','EPSG','4207','EPSG','4258','EPSG','1294',0.1,'EPSG','8656','Latitude and longitude difference file','DLx_ETRS89_geo.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'IGP-Prt 0.1m',0);
INSERT INTO "grid_transformation" VALUES('EPSG','6189','Datum 73 to ETRS89 (6)','Derived from 1129 common stations in the national geodetic network. Residuals at 130 further test points average 0.06m, maximum 0.16m.','Decimetre accuracy.','EPSG','9615','NTv2','EPSG','4274','EPSG','4258','EPSG','1294',0.1,'EPSG','8656','Latitude and longitude difference file','D73_ETRS89_geo.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'IGP-Prt 0.1m',0);
INSERT INTO "grid_transformation" VALUES('EPSG','6209','NAD27 to NAD83(CSRS) (4)','Introduced in 2011. Precision of 20 cm in area covered by the input data set and 40 cm anywhere else, with the exception of the northwest area of the province (near the border with Quebec) where the precision deteriorates to 80 cm.','Used in the GeoNB Coordinate Transformation Service.','EPSG','9615','NTv2','EPSG','4267','EPSG','4617','EPSG','1447',0.8,'EPSG','8656','Latitude and longitude difference file','NB2783v2.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'SNB-Can NB',1);
INSERT INTO "grid_transformation" VALUES('EPSG','6326','NAD83(2011) to NAVD88 height (1)','Uses Geoid12B hybrid model. Renamed from Geoid12A but with no data changes. See information source for further information.','Derivation of approximate gravity-related heights from GPS observations.','EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','6319','EPSG','5703','EPSG','1323',0.02,'EPSG','8666','Geoid (height correction) model file','g2012bu0.bin',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-US Conus',0);
INSERT INTO "grid_transformation" VALUES('EPSG','6327','NAD83(2011) to NAVD88 height (2)','Uses Geoid12B hybrid model. Renamed from Geoid12A but with no data changes. See information source for further information.','Derivation of approximate gravity-related heights from GPS observations.','EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','6319','EPSG','5703','EPSG','1330',0.02,'EPSG','8666','Geoid (height correction) model file','g2012ba0.bin',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-US AK',0);
INSERT INTO "grid_transformation" VALUES('EPSG','6648','NAD83(CSRS) to CGVD2013 height (1)','Uses CGG2013 model which uses bi-quadratic interpolation; bi-linear interpolation of the grid file will give results agreeing to within 1cm 99.97% of the time.','Derivation of gravity-related heights from GPS observations.','EPSG','1060','Geographic3D to GravityRelatedHeight (CGG2013)','EPSG','4955','EPSG','6647','EPSG','1061',0.03,'EPSG','8666','Geoid (height correction) model file','CGG2013n83.byn',NULL,NULL,NULL,NULL,NULL,NULL,'NRC Can CGG2013',1);
INSERT INTO "grid_transformation" VALUES('EPSG','6712','Tokyo to JGD2000 (2)','NTv2 grid derived by ESRI from that supplied by GSI in application tky2jgd. After Tohoku earthquake of 2011 accuracy in northern Honshu reduced to 1-5m and in this area replaced by Tokyo to JGD2011 (tfm code 6714).','Surveying, mapping and civil engineering.','EPSG','9615','NTv2','EPSG','4301','EPSG','4612','EPSG','3957',0.2,'EPSG','8656','Latitude and longitude difference file','tky2jgd.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'OGP-Jpn',0);
INSERT INTO "grid_transformation" VALUES('EPSG','6713','JGD2000 to JGD2011 (1)','NTv2 grid derived by ESRI from that supplied by GSI in application patchjgd.','Surveying, mapping and civil engineering purposes','EPSG','9615','NTv2','EPSG','4612','EPSG','6668','EPSG','4170',0.2,'EPSG','8656','Latitude and longitude difference file','touhokutaiheiyouoki2011.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'OGP-Jpn N Honshu',0);
INSERT INTO "grid_transformation" VALUES('EPSG','6740','Tokyo to JGD2011 (2)','Parameter values from Tokyo to JGD2000 (2) (tfm code 6712) as in area of applicability JGD2011 = JGD2000. NTv2 grid derived by ESRI from that supplied by GSI in application tky2jgd. See Tokyo to JGD2011 (1) (tfm code 6714) for northern Honshu area.','Surveying, mapping and civil engineering.','EPSG','9615','NTv2','EPSG','4301','EPSG','6668','EPSG','4194',0.2,'EPSG','8656','Latitude and longitude difference file','tky2jgd.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'OGP-Jpn ex N Honshu',0);
INSERT INTO "grid_transformation" VALUES('EPSG','6946','TM75 to ETRS89 (3)','Approximate alternative to official OS polynomial method (tfm code 1041). May be taken as approximate transformation TM75 to WGS 84 - see code 6947.','Emulation of official polynomial (tfm code 1041). Accuracy of emulation at 23000 test points compared to official polynomial: 6mm maximum.','EPSG','9615','NTv2','EPSG','4300','EPSG','4258','EPSG','1305',0.41,'EPSG','8656','Latitude and longitude difference file','tm75_etrs89.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'OSI-Ire NT',0);
INSERT INTO "grid_transformation" VALUES('EPSG','6947','TM75 to WGS 84 (4)','Parameter values taken from TM75 to ETRS89 (3) (tfm code 6946) assuming that ETRS89 is coincident with WGS 84 within the accuracy of the tfm. Within accuracy of the tfm equivalent to TM75 to WGS 84 (1) (tfm code 1042).','Emulation of polynomial (tfm code 1042). Accuracy 1m.','EPSG','9615','NTv2','EPSG','4300','EPSG','4326','EPSG','1305',1.0,'EPSG','8656','Latitude and longitude difference file','tm75_etrs89.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'OGP-Ire NT',0);
INSERT INTO "grid_transformation" VALUES('EPSG','6948','RD/83 to ETRS89 (2)','Recommended by Saxony State Spatial Data and Land Survey Corporation for transformations based on official geospatial data of Saxony. See www.landesvermessung.sachsen.de/inhalt/etrs/method/method.html#ntv2.','Cadastre. Accuracy 3mm within Saxony; within the rest of RD/83 definition area results at least coincide with EPSG transformation code15868.','EPSG','9615','NTv2','EPSG','4745','EPSG','4258','EPSG','2545',0.03,'EPSG','8656','Latitude and longitude difference file','NTv2_SN.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'GeoSN-Deu SN',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7000','Amersfoort to ETRS89 (7)','Consistent to within 1mm with official RNAPTRANS(TM)2008 at ground level onshore and at MSL offshore. The horizontal deviation using this NTv2 grid is approximately 1mm per 50m height difference from ground level or MSL.','Approximation of horizontal component of official 3D RDNAPTRANS(TM) transformation, which since 1st October 2000 has defined Amersfoort geodetic datum.','EPSG','9615','NTv2','EPSG','4289','EPSG','4258','EPSG','1275',0.001,'EPSG','8656','Latitude and longitude difference file','rdtrans2008.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'RDNAP-Nld 2008',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7001','ETRS89 to NAP height (1)','Alternative to vertical component of official 3D RDNAPTRANS(TM)2008. The naptrans2008 correction grid incorporates the NLGEO2004 geoid model plus a fixed offset.','Derivation of gravity-related heights from GPS observations. When used in conjunction with transformation Amersfoort to ETRS89 (7) (code 7000), this transformation is reversible.','EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','4937','EPSG','5709','EPSG','1275',0.01,'EPSG','8666','Geoid (height correction) model file','naptrans2008.gtx',NULL,NULL,NULL,NULL,NULL,NULL,'RDNAP-Nld 2008',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7646','NAD83(2011) to PRVD02 height (1)','Uses Geoid12B hybrid model. See information source for further information.','Derivation of approximate gravity-related heights from GPS observations.','EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','6319','EPSG','6641','EPSG','3294',0.02,'EPSG','8666','Geoid (height correction) model file','g2012bp0.bin',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-Pri 12B',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7647','NAD83(2011) to VIVD09 height (1)','Uses Geoid12B hybrid model. See information source for further information.','Derivation of approximate gravity-related heights from GPS observations.','EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','6319','EPSG','6642','EPSG','3330',0.02,'EPSG','8666','Geoid (height correction) model file','g2012bp0.bin',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-Vir 12B',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7648','NAD83(MA11) to GUVD04 height (1)','Uses Geoid12B hybrid model. See information source for further information.','Derivation of approximate gravity-related heights from GPS observations.','EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','6323','EPSG','6644','EPSG','3255',0.02,'EPSG','8666','Geoid (height correction) model file','g2012bg0.bin',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-Gum 12B',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7649','NAD83(MA11) to NMVD03 height (1)','Uses Geoid12B hybrid model. See information source for further information.','Derivation of approximate gravity-related heights from GPS observations.','EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','6323','EPSG','6640','EPSG','4171',0.02,'EPSG','8666','Geoid (height correction) model file','g2012bg0.bin',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-Mnp 12B',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7650','NAD83(PA11) to ASVD02 height (1)','Uses Geoid12B hybrid model. See information source for further information.','Derivation of approximate gravity-related heights from GPS observations.','EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','6320','EPSG','6643','EPSG','2288',0.02,'EPSG','8666','Geoid (height correction) model file','g2012bs0.bin',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-Asm 12B',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7655','PNG94 to PNG08 height (1)','','Derivation of gravity-related heights from GPS observations.','EPSG','1059','Geographic3D to GravityRelatedHeight (PNG)','EPSG','5545','EPSG','7447','EPSG','4384',0.2,'EPSG','8666','Geoid (height correction) model file','PNG08.DAT',NULL,NULL,NULL,NULL,NULL,NULL,'QC-Png',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7673','CH1903 to CHTRF95 (1)','Equivalent to concatenation of transformations 15486 and 1509 to within 2cm. Also used as transformation between CH1903 and ETRS89 (see code 7674).','Approximation (to better than 2m) using NTv2 method of results of FINELTRA programme concatenated with LV-95 parameters.','EPSG','9615','NTv2','EPSG','4149','EPSG','4151','EPSG','1286',0.25,'EPSG','8656','Latitude and longitude difference file','CHENyx06_ETRS.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'BfL-Che NTv2',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7674','CH1903 to ETRS89 (2)','Replaces tfm code 1646. Equivalent to concatenation of transformations 15486 and 1647 to within 2cm. Also used as transformation between CH1903 and CHTRF95 (see code 7673). May be used as approximate tfm CH1903 to WGS 84 - see code 7788.','Approximation (to better than 2cm) using NTv2 method of results of FINELTRA programme concatenated with LV-95 parameters.','EPSG','9615','NTv2','EPSG','4149','EPSG','4258','EPSG','1286',0.25,'EPSG','8656','Latitude and longitude difference file','CHENyx06_ETRS.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'BfL-Che NTv2',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7709','OSGB 1936 to ETRS89 (2)','Approximate alternative to official OSTN15 method (tfm code 7953). May be taken as approximate transformation OSGB 1936 to WGS 84 - see code 7710. Replaces OSGB 1936 to ETRS89 (1) (tfm code 5338).','Accuracy at 2000 test points compared to official OSTN15 (tfm code 7708): latitude 0.5mm average, 17mm maximum; longitude 0.8mm average, 23mm maximum.','EPSG','9615','NTv2','EPSG','4277','EPSG','4258','EPSG','4390',0.03,'EPSG','8656','Latitude and longitude difference file','OSTN15_NTv2_OSGBtoETRS.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'OSGB-UK Gbr15 NT',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7710','OSGB 1936 to WGS 84 (9)','Parameter values taken from OSGB 1936 to ETRS89 (3) (tfm code 7709) assuming that ETRS89 is coincident with WGS 84 within the accuracy of the tfm. Replaces OSGB 1936 to WGS 84 (7) (tfm code 5339).','Accuracy 1m.','EPSG','9615','NTv2','EPSG','4277','EPSG','4326','EPSG','4390',1.0,'EPSG','8656','Latitude and longitude difference file','OSTN15_NTv2_OSGBtoETRS.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'OGP-UK Gbr15 NT',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7711','ETRS89 to Newlyn height (2)','OSGM15 supersedes OSGM02 geoid model. Replaces ETRS89 to Newlyn height (1) (tfm code 10021).','Derivation of gravity-related heights from OSGM15 geoid model.','EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5701','EPSG','2792',0.008,'EPSG','8666','Geoid (height correction) model file','OSTN15_OSGM15_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,'OS-UK Gbr 2015',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7712','ETRS89 to Newlyn (Orkney Isles) height (2)','OSGM15 supersedes OSGM02 geoid model. Replaces ETRS89 to Newlyn (Orkney Isles) height (1) (tfm code 10029).','Derivation of gravity-related heights from OSGM15 geoid model.','EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5740','EPSG','2793',0.017,'EPSG','8666','Geoid (height correction) model file','OSTN15_OSGM15_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,'OS-UK Ork 2015',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7713','ETRS89 to Newlyn (Offshore) height (1)','Replaces ETRS89 to Fair Isle/Flannan Isles/Foula/North Rona/St Kilda/Sule Skerry height (1) (tfm codes 10024-26, 10030-31 and 10034).','Derivation of gravity-related heights from OSGM15 geoid model.','EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','7707','EPSG','4391',0.02,'EPSG','8666','Geoid (height correction) model file','OSTN15_OSGM15_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,'OS-UK Off 2015',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7714','ETRS89 to Lerwick height (2)','OSGM15 supersedes OSGM02 geoid model. Replaces ETRS89 to Lerwick height (1) (tfm code 10027).','Derivation of gravity-related heights from OSGM15 geoid model.','EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5742','EPSG','2795',0.018,'EPSG','8666','Geoid (height correction) model file','OSTN15_OSGM15_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,'OS -UK Shet 2015',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7715','ETRS89 to Stornoway height (2)','OSGM15 supersedes OSGM02 geoid model. Replaces ETRS89 to Stornaway height (1) (tfm code 10033).','Derivation of gravity-related heights from OSGM15 geoid model.','EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5746','EPSG','2799',0.011,'EPSG','8666','Geoid (height correction) model file','OSTN15_OSGM15_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,'OS-UK Heb 2015',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7716','ETRS89 to St. Marys height (2)','OSGM15 supersedes OSGM02 geoid model. Replaces ETRS89 to St Marys height (1) (tfm code 10032).','Derivation of gravity-related heights from OSGM15 geoid model.','EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5749','EPSG','2802',0.01,'EPSG','8666','Geoid (height correction) model file','OSTN15_OSGM15_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,'OS-UK Scilly 2015',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7717','ETRS89 to Douglas height (2)','OSGM15 supersedes OSGM02 geoid model. Replaces ETRS89 to Douglas height (1) (tfm code 10023).','Derivation of gravity-related heights from OSGM15 geoid model.','EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5750','EPSG','2803',0.03,'EPSG','8666','Geoid (height correction) model file','OSTN15_OSGM15_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,'OS-UK Man 2015',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7718','ETRS89 to Belfast height (2)','OSGM15 supersedes OSGM02 geoid model. Replaces ETRS89 to Belfast height (1) (tfm code 5334).','Derivation of gravity-related heights from OSGM15 geoid model.','EPSG','1045','Geographic3D to GravityRelatedHeight (OSGM02-Ire)','EPSG','4937','EPSG','5732','EPSG','2530',0.014,'EPSG','8666','Geoid (height correction) model file','OSGM15_Belfast.gri',NULL,NULL,NULL,NULL,NULL,NULL,'OS-UK NI 2015',1);
INSERT INTO "grid_transformation" VALUES('EPSG','7719','ETRS89 to Malin Head height (2)','OSGM15 supersedes OSGM02 geoid model. Replaces ETRS89 to Malin Head height (1) (tfm code 5335).','Derivation of gravity-related heights from OSGM15 geoid model.','EPSG','1045','Geographic3D to GravityRelatedHeight (OSGM02-Ire)','EPSG','4937','EPSG','5731','EPSG','1305',0.023,'EPSG','8666','Geoid (height correction) model file','OSGM15_Malin.gri',NULL,NULL,NULL,NULL,NULL,NULL,'OS-Ire 2015',1);
INSERT INTO "grid_transformation" VALUES('EPSG','7788','CH1903 to WGS 84 (3)','Parameter values from CH1903 to ETRS89 (2) (code 7674) assuming that ETRS89 is equivalent to WGS 84 within the accuracy of the transformation. Equivalent to concatenation of transformations 15486 and 1676.','Approximation at the +/- 1.5m level assuming that CH1903 is approximately equivalent to CH1903+ and that ETRS89 is equivalent to WGS 84.','EPSG','9615','NTv2','EPSG','4149','EPSG','4326','EPSG','1286',1.5,'EPSG','8656','Latitude and longitude difference file','CHENyx06_ETRS.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'OGP-Che NTv2',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7840','NZGD2000 to NZVD2016 height (1)','Defines NZVD2016 vertical datum (datum code 1169, CRS code 7839).','Derivation of gravity-related heights from GPS observations.','EPSG','1030','Geographic3D to GravityRelatedHeight (NZgeoid)','EPSG','4959','EPSG','7839','EPSG','1175',0.1,'EPSG','8666','Geoid (height correction) model file','New_Zealand_Quasigeoid_2016.csv',NULL,NULL,NULL,NULL,NULL,NULL,'LINZ-NZ 2016',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7860','NZVD2016 height to Auckland 1946 height (1)','Derived at 260 control points. Mean offset 0.292m, standard deviation 0.029m, maximum difference from mean 0.075m.','Transformation between national and local height systems.','EPSG','1071','Vertical Offset by Grid Interpolation (NZLVD)','EPSG','7839','EPSG','5759','EPSG','3764',0.02,'EPSG','8732','Vertical offset file','auckland-1946-to-nzvd2016-conversion.csv',NULL,NULL,NULL,NULL,'EPSG','4167','LINZ-NZ AUCK',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7861','NZVD2016 height to Bluff 1955 height (1)','Derived at 71 control points. Mean offset 0.273m, standard deviation 0.034m, maximum difference from mean 0.079m.','Transformation between national and local height systems.','EPSG','1071','Vertical Offset by Grid Interpolation (NZLVD)','EPSG','7839','EPSG','5760','EPSG','3801',0.02,'EPSG','8732','Vertical offset file','bluff-1955-to-nzvd2016-conversion.csv',NULL,NULL,NULL,NULL,'EPSG','4167','LINZ-NZ BLUF',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7862','NZVD2016 height to Dunedin 1958 height (1)','Derived at 197 control points. Mean offset 0.326m, standard deviation 0.043m, maximum difference from mean 0.152m.','Transformation between national and local height systems.','EPSG','1071','Vertical Offset by Grid Interpolation (NZLVD)','EPSG','7839','EPSG','5761','EPSG','3803',0.02,'EPSG','8732','Vertical offset file','dunedin-1958-to-nzvd2016-conversion.csv',NULL,NULL,NULL,NULL,'EPSG','4167','LINZ-NZ DUNE',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7863','NZVD2016 height to Dunedin-Bluff 1960 height (1)','Derived at 205 control points. Mean offset 0.254m, standard deviation 0.039m, maximum difference from mean 0.11m.','Transformation between national and local height systems.','EPSG','1071','Vertical Offset by Grid Interpolation (NZLVD)','EPSG','7839','EPSG','4458','EPSG','3806',0.02,'EPSG','8732','Vertical offset file','dunedin-bluff-1960-to-nzvd2016-conversion.csv',NULL,NULL,NULL,NULL,'EPSG','4167','LINZ-NZ DUBL',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7864','NZVD2016 height to Gisborne 1926 height (1)','Derived at 274 control points. Mean offset 0.343m, standard deviation 0.025m, maximum difference from mean 0.09m.','Transformation between national and local height systems.','EPSG','1071','Vertical Offset by Grid Interpolation (NZLVD)','EPSG','7839','EPSG','5762','EPSG','3771',0.02,'EPSG','8732','Vertical offset file','gisborne-1926-to-nzvd2016-conversion.csv',NULL,NULL,NULL,NULL,'EPSG','4167','LINZ-NZ GISB',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7865','NZVD2016 height to Lyttelton 1937 height (1)','Derived at 923 control points. Mean offset 0.34m, standard deviation 0.041m, maximum difference from mean 0.149m.','Transformation between national and local height systems.','EPSG','1071','Vertical Offset by Grid Interpolation (NZLVD)','EPSG','7839','EPSG','5763','EPSG','3804',0.01,'EPSG','8732','Vertical offset file','lyttelton-1937-to-nzvd2016-conversion.csv',NULL,NULL,NULL,NULL,'EPSG','4167','LINZ-NZ LYTT',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7866','NZVD2016 height to Moturiki 1953 height (1)','Derived at 519 control points. Mean offset 0.309m, standard deviation 0.071m, maximum difference from mean 0.231m.','Transformation between national and local height systems.','EPSG','1071','Vertical Offset by Grid Interpolation (NZLVD)','EPSG','7839','EPSG','5764','EPSG','3768',0.02,'EPSG','8732','Vertical offset file','moturiki-1953-to-nzvd2016-conversion.csv',NULL,NULL,NULL,NULL,'EPSG','4167','LINZ-NZ MOTU',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7867','NZVD2016 height to Napier 1962 height (1)','Derived at 207 control points. Mean offset 0.203m, standard deviation 0.034m, maximum difference from mean 0.096m.','Transformation between national and local height systems.','EPSG','1071','Vertical Offset by Grid Interpolation (NZLVD)','EPSG','7839','EPSG','5765','EPSG','3772',0.02,'EPSG','8732','Vertical offset file','napier-1962-to-nzvd2016-conversion.csv',NULL,NULL,NULL,NULL,'EPSG','4167','LINZ-NZ NAPI',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7868','NZVD2016 height to Nelson 1955 height (1)','Derived at 256 control points. Mean offset 0.329m, standard deviation 0.039m, maximum difference from mean 0.114m.','Transformation between national and local height systems.','EPSG','1071','Vertical Offset by Grid Interpolation (NZLVD)','EPSG','7839','EPSG','5766','EPSG','3802',0.02,'EPSG','8732','Vertical offset file','nelson-1955-to-nzvd2016-conversion.csv',NULL,NULL,NULL,NULL,'EPSG','4167','LINZ-NZ NELS',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7869','NZVD2016 height to One Tree Point 1964 height (1)','Derived at 137 control points. Mean offset 0.077m, standard deviation 0.042m, maximum difference from mean 0.107m.','Transformation between national and local height systems.','EPSG','1071','Vertical Offset by Grid Interpolation (NZLVD)','EPSG','7839','EPSG','5767','EPSG','3762',0.01,'EPSG','8732','Vertical offset file','onetreepoint-1964-to-nzvd2016-conversion.csv',NULL,NULL,NULL,NULL,'EPSG','4167','LINZ-NZ ONTP',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7870','NZVD2016 height to Stewart Island 1977 height (1)','Derived at 4 control points. Mean offset 0.299m, standard deviation 0.025m, maximum difference from mean 0.039m.','Transformation between national and local height systems.','EPSG','1071','Vertical Offset by Grid Interpolation (NZLVD)','EPSG','7839','EPSG','5772','EPSG','3338',0.18,'EPSG','8732','Vertical offset file','stewartisland-1977-to-nzvd2016-conversion.csv',NULL,NULL,NULL,NULL,'EPSG','4167','LINZ-NZ STWT',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7871','NZVD2016 height to Taranaki 1970 height (1)','Derived at 125 control points. Mean offset 0.286m, standard deviation 0.026m, maximum difference from mean 0.07m.','Transformation between national and local height systems.','EPSG','1071','Vertical Offset by Grid Interpolation (NZLVD)','EPSG','7839','EPSG','5769','EPSG','3769',0.02,'EPSG','8732','Vertical offset file','taranaki-1970-to-nzvd2016-conversion.csv',NULL,NULL,NULL,NULL,'EPSG','4167','LINZ-NZ TARA',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7872','NZVD2016 height to Wellington 1953 height (1)','Derived at 137 control points. Mean offset 0.408m, standard deviation 0.054m, maximum difference from mean 0.112m.','Transformation between national and local height systems.','EPSG','1071','Vertical Offset by Grid Interpolation (NZLVD)','EPSG','7839','EPSG','5770','EPSG','3773',0.02,'EPSG','8732','Vertical offset file','wellington-1953-to-nzvd2016-conversion.csv',NULL,NULL,NULL,NULL,'EPSG','4167','LINZ-NZ WGTN',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7891','SHGD2015 to SHVD2015 height (1)','This transformation defines SHVD2015 heights.','Derivation of gravity-related heights from GPS observations.','EPSG','1025','Geographic3D to GravityRelatedHeight (EGM2008)','EPSG','7885','EPSG','7890','EPSG','3183',0.0,'EPSG','8666','Geoid (height correction) model file','Und_min2.5x2.5_egm2008_isw=82_WGS84_TideFree.gz',NULL,NULL,NULL,NULL,NULL,NULL,'ENRD-Shn Hel',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7957','Canada velocity grid v6','NOTE: Before being deprecated this record had a second parameter (code 1048, value 8251) which has been removed due to being non-compliant with the data model.','Change of coordinate epoch for points referenced to NAD83(CSRS)v6.','EPSG','1070','Point motion by grid (Canada NTv2_Vel)','EPSG','8251','EPSG','8251','EPSG','1061',0.01,'EPSG','1050','Point motion velocity grid file','cvg60.cvb',NULL,NULL,NULL,NULL,NULL,NULL,'NRC-Can cvg6.0',1);
INSERT INTO "grid_transformation" VALUES('EPSG','7958','ETRS89 to Belfast height (2)','OSGM15 supersedes OSGM02 geoid model. Replaces ETRS89 to Belfast height (1) (tfm code 5334).','Derivation of gravity-related heights from OSGM15 geoid model.','EPSG','1072','Geographic3D to GravityRelatedHeight (OSGM15-Ire)','EPSG','4937','EPSG','5732','EPSG','2530',0.014,'EPSG','8666','Geoid (height correction) model file','OSGM15_Belfast.gri',NULL,NULL,NULL,NULL,NULL,NULL,'OS-UK NI 2015',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7959','ETRS89 to Malin Head height (2)','OSGM15 supersedes OSGM02 geoid model. Replaces ETRS89 to Malin Head height (1) (tfm code 5335).','Derivation of gravity-related heights from OSGM15 geoid model.','EPSG','1072','Geographic3D to GravityRelatedHeight (OSGM15-Ire)','EPSG','4937','EPSG','5731','EPSG','1305',0.023,'EPSG','8666','Geoid (height correction) model file','OSGM15_Malin.gri',NULL,NULL,NULL,NULL,NULL,NULL,'OS-Ire 2015',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7969','NGVD29 height (m) to NAVD88 height (1)','In this area the NGVD29 vertical reference surface is approximately 0.6 to 1.6m below the NAVD88 datum surface. Interpolation within the gridded data file may be made using either NAD27 or any of the realizations of NAD83 applicable to US conus.','Change of height to a different vertical reference surface.','EPSG','9658','VERTCON','EPSG','7968','EPSG','5703','EPSG','2950',0.02,'EPSG','8732','Vertical offset file','vertconw.94',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-US Conus W',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7970','NGVD29 height (m) to NAVD88 height (2)','In the SE of this area the NGVD29 surface is 0 to 0.1m above the NAVD88 surface; in the W it is 0.6 to 0.9m below the NAVD88 surface. Interpolation in the data file may be made using either NAD27 or any of the NAD83 realizations applicable to US conus.','Change of height to a different vertical reference surface.','EPSG','9658','VERTCON','EPSG','7968','EPSG','5703','EPSG','2949',0.02,'EPSG','8732','Vertical offset file','vertconc.94',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-US Conus C',0);
INSERT INTO "grid_transformation" VALUES('EPSG','7971','NGVD29 height (m) to NAVD88 height (3)','In this area the NGVD29 vertical reference surface is approximately 0 to 0.5m above the NAVD88 surface. Interpolation within the gridded data file may be made using either NAD27 or any of the realisations of NAD83 applicable to US conus.','Change of height to a different vertical reference surface.','EPSG','9658','VERTCON','EPSG','7968','EPSG','5703','EPSG','2948',0.02,'EPSG','8732','Vertical offset file','vertcone.94',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-US Conus E',0);
INSERT INTO "grid_transformation" VALUES('EPSG','8037','WGS 84 to MSL height (1)','Parameter values are from WGS 84 to EGM2008 height (2) (tfm code 3859) assuming that the EGM2008 height surface approximates to MSL height within the accuracy of the transformation.','Derivation of gravity-related heights referenced to an unspecified mean sea level from GPS observations.','EPSG','1025','Geographic3D to GravityRelatedHeight (EGM2008)','EPSG','4979','EPSG','5714','EPSG','1262',0.5,'EPSG','8666','Geoid (height correction) model file','Und_min1x1_egm2008_isw=82_WGS84_TideFree.gz',NULL,NULL,NULL,NULL,NULL,NULL,'IOGP-World',0);
INSERT INTO "grid_transformation" VALUES('EPSG','8268','GR96 to GVR2000 height (1)','Defines GVR2000. File is also available in NOAA VDatum format (ggeoid2000.gtx) and GeoTIFF format (ggeoid2000.tif).','Derivation of gravity-related heights from GNSS observations.','EPSG','1047','Geographic3D to GravityRelatedHeight (Gravsoft)','EPSG','4909','EPSG','8266','EPSG','4461',0.1,'EPSG','8666','Geoid (height correction) model file','gr2000g.gri',NULL,NULL,NULL,NULL,NULL,NULL,'SDFE-Grl',0);
INSERT INTO "grid_transformation" VALUES('EPSG','8269','GR96 to GVR2016 height (1)','Defines GVR2016. File is also available in NOAA VDatum format (ggeoid2016.gtx) and GeoTIFF format (ggeoid2016.tif).','Derivation of gravity-related heights from GNSS observations.','EPSG','1047','Geographic3D to GravityRelatedHeight (Gravsoft)','EPSG','4909','EPSG','8267','EPSG','4454',0.1,'EPSG','8666','Geoid (height correction) model file','ggeoid16.gri',NULL,NULL,NULL,NULL,NULL,NULL,'SDFE-Grl',0);
INSERT INTO "grid_transformation" VALUES('EPSG','8271','RGF93 to NGF IGN69 height (2)','Replaces RGF93 to NGF IGN69 height (1) (code 10000). Accuracy at each 0.1 deg x 0.1 degree grid node is given within the geoid model file.','Derivation of gravity-related heights from GPS observations.','EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4965','EPSG','5720','EPSG','1326',0.02,'EPSG','8666','Geoid (height correction) model file','RAF09.mnt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Fra 09',1);
INSERT INTO "grid_transformation" VALUES('EPSG','8272','RGF93 to IGN78 Corsica height (1)','Replaces RGF93 to NGF IGN69 height (1) (code 10002). Accuracy at each 0.1 deg x 0.1 degree grid node is given within the geoid model file.','Derivation of gravity-related heights from GPS observations.','EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4965','EPSG','5721','EPSG','1327',0.05,'EPSG','8666','Geoid (height correction) model file','RAC09.mnt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Fra Cor 09',1);
INSERT INTO "grid_transformation" VALUES('EPSG','8361','ETRS89 to ETRS89 + Baltic 1957 height (1)','Uses ETRS89 (realization ETRF2000) and quasigeoid model DVRM05. 1 sigma = 34 mm (test performed on 563 independent points). Uses method 9635 rather than method 9665 to facilitate Baltic 1957 to EVRF2007 transformation (see transformation code 8363).','Geodetic survey, GIS','EPSG','9635','Geog3D to Geog2D+GravityRelatedHeight (US .gtx)','EPSG','4937','EPSG','8360','EPSG','1211',0.03,'EPSG','8666','Geoid (height correction) model file','Slovakia_ETRS89h_to_Baltic1957.gtx',NULL,NULL,NULL,NULL,NULL,NULL,'UGKK-Svk',0);
INSERT INTO "grid_transformation" VALUES('EPSG','8362','ETRS89 to ETRS89 + EVRF2007 height (1)','Uses ETRS89 (realization ETRF2000) and quasigeoid model DMQSK2014E. 1 sigma = 29 mm (test performed on 93 independent points). Uses method 9635 rather than method 9665 to facilitate Baltic 1957 to EVRF2007 transformation (see transformation code 8363).','Geodetic survey, GIS','EPSG','9635','Geog3D to Geog2D+GravityRelatedHeight (US .gtx)','EPSG','4937','EPSG','7423','EPSG','1211',0.03,'EPSG','8666','Geoid (height correction) model file','Slovakia_ETRS89h_to_EVRF2007.gtx',NULL,NULL,NULL,NULL,NULL,NULL,'UGKK-Svk',0);
INSERT INTO "grid_transformation" VALUES('EPSG','8364','S-JTSK [JTSK03] to S-JTSK (1)','Derived at 684 identical points.','Applications to 5cm accuracy.','EPSG','9613','NADCON','EPSG','8351','EPSG','4156','EPSG','1211',0.05,'EPSG','8657','Latitude difference file','Slovakia_JTSK03_to_JTSK.LAS','EPSG','8658','Longitude difference file','Slovakia_JTSK03_to_JTSK.LOS',NULL,NULL,'UGKK-Svk',0);
INSERT INTO "grid_transformation" VALUES('EPSG','8369','BD72 to ETRS89 (3)','File name is lower case and despite its name is between geographic CRSs. (Similarly-named file in upper case BD72LB72_ETRS89LB08 operates in projected CRS domain).','For applications to an accuracy of 0.01 metre.','EPSG','9615','NTv2','EPSG','4313','EPSG','4258','EPSG','1347',0.01,'EPSG','8656','Latitude and longitude difference file','bd72lb72_etrs89lb08.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'IGN-Bel 0.01m',0);
INSERT INTO "grid_transformation" VALUES('EPSG','8371','RGF93 to NGF IGN69 height (2)','Replaces RGF93 to NGF IGN69 height (1) (code 10000). Accuracy at each 0.0333333333333° in longitude and 0.025° in latitude grid node is given within the geoid model file. Recommended interpolation method given in file RAF09.xml.','Derivation of gravity-related heights from GPS observations.','EPSG','1073','Geographic3D to GravityRelatedHeight (IGN2009)','EPSG','4965','EPSG','5720','EPSG','1326',0.02,'EPSG','8666','Geoid (height correction) model file','RAF09.mnt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Fra 09',0);
INSERT INTO "grid_transformation" VALUES('EPSG','8372','RGF93 to IGN78 Corsica height (2)','Replaces RGF93 to NGF IGN69 height (1) (code 10002). Accuracy at each 0.0333333333333° in longitude and 0.025° in latitude grid node is given within the geoid model file. Recommended interpolation method given in file RAC09.xml.','Derivation of gravity-related heights from GPS observations.','EPSG','1073','Geographic3D to GravityRelatedHeight (IGN2009)','EPSG','4965','EPSG','5721','EPSG','1327',0.05,'EPSG','8666','Geoid (height correction) model file','RAC09.mnt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Fra Cor 09',0);
INSERT INTO "grid_transformation" VALUES('EPSG','8444','GDA94 to GDA2020 (4)','See GDA94 to GDA2020 (1) (code 8048) for transformation using Helmert method which gives identical results.','Spatial referencing.','EPSG','9615','NTv2','EPSG','4283','EPSG','7844','EPSG','4169',0.05,'EPSG','8656','Latitude and longitude difference file','GDA94_GDA2020_conformal_christmas_island.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'ICSM-Cxr Conf',0);
INSERT INTO "grid_transformation" VALUES('EPSG','8445','GDA94 to GDA2020 (5)','See GDA94 to GDA2020 (1) (code 8048) for transformation using Helmert method which gives identical results.','Spatial referencing.','EPSG','9615','NTv2','EPSG','4283','EPSG','7844','EPSG','1069',0.05,'EPSG','8656','Latitude and longitude difference file','GDA94_GDA2020_conformal_cocos_island.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'ICSM-Cck Conf',0);
INSERT INTO "grid_transformation" VALUES('EPSG','8446','GDA94 to GDA2020 (3)','Gives identical results to Helmert transformation GDA94 to GDA2020 (1) (code 8048). See GDA94 to GDA2020 (2) (code 8447) for alternative with local distortion modelling included. GDA2020 Technical Manual and fact sheet T1 give guidance on which to use.','Conformal transformation of GDA94 coordinates that have been derived through GNSS CORS.','EPSG','9615','NTv2','EPSG','4283','EPSG','7844','EPSG','2575',0.05,'EPSG','8656','Latitude and longitude difference file','GDA94_GDA2020_conformal.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'ICSM-Aus NTv2 Conf',0);
INSERT INTO "grid_transformation" VALUES('EPSG','8447','GDA94 to GDA2020 (2)','See GDA94 to GDA2020 (1) or (3) (codes 8048 and 8446) for alternative conformal-only transformation without local distortion modelling. GDA2020 Technical Manual and fact sheet T1 give guidance on which to use.','Transformation of GDA94 coordinates when localised distortion needs to be taken into account, e.g. if GDA94 coordinates were derived survey control monuments.','EPSG','9615','NTv2','EPSG','4283','EPSG','7844','EPSG','2575',0.05,'EPSG','8656','Latitude and longitude difference file','GDA94_GDA2020_conformal_and_distortion.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'ICSM-Aus Conf and Dist',0);
INSERT INTO "grid_transformation" VALUES('EPSG','8451','GDA2020 to AHD height (1)','Uncertainties given in accompanying file AUSGeoid2020_windows_binary_uncertainty.gsb','Derivation of gravity-related heights from GNSS observations.','EPSG','1048','Geographic3D to GravityRelatedHeight (Ausgeoid v2)','EPSG','7843','EPSG','5711','EPSG','4493',0.03,'EPSG','8666','Geoid (height correction) model file','AUSGeoid2020_windows_binary.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus 2020',0);
INSERT INTO "grid_transformation" VALUES('EPSG','8546','St. George Island to NAD83 (2)','Uses NADCON5 method which expects longitudes positive east in range 0-360°; EPSG source and target CRSs have longitudes positive east in range -180° to +180°.','Spatial referencing.','EPSG','1074','NADCON5 (2D)','EPSG','4138','EPSG','4269','EPSG','1331',0.15,'EPSG','8657','Latitude difference file','nadcon5.sg1952.nad83_1986.stgeorge.lat.trn.20160901.b','EPSG','8658','Longitude difference file','nadcon5.sg1952.nad83_1986.stgeorge.lon.trn.20160901.b',NULL,NULL,'NGS-Usa AK StG Nadcon5',0);
INSERT INTO "grid_transformation" VALUES('EPSG','8547','St. Lawrence Island to NAD83 (2)','Uses NADCON5 method which expects longitudes positive east in range 0-360°; EPSG source and target CRSs have longitudes positive east in range -180° to +180°.','Spatial referencing.','EPSG','1074','NADCON5 (2D)','EPSG','4136','EPSG','4269','EPSG','1332',0.5,'EPSG','8657','Latitude difference file','nadcon5.sl1952.nad83_1986.stlawrence.lat.trn.20160901.b','EPSG','8658','Longitude difference file','nadcon5.sl1952.nad83_1986.stlawrence.lon.trn.20160901.b',NULL,NULL,'NGS-Usa AK StL Nadcon5',0);
INSERT INTO "grid_transformation" VALUES('EPSG','8548','St. Paul Island to NAD83 (2)','Uses NADCON5 method which expects longitudes positive east in range 0-360°; EPSG source and target CRSs have longitudes positive east in range -180° to +180°.','Spatial referencing.','EPSG','1074','NADCON5 (2D)','EPSG','4137','EPSG','4269','EPSG','1333',0.5,'EPSG','8657','Latitude difference file','nadcon5.sp1952.nad83_1986.stpaul.lat.trn.20160901.b','EPSG','8658','Longitude difference file','nadcon5.sp1952.nad83_1986.stpaul.lon.trn.20160901.b',NULL,NULL,'NGS-Usa AK StP Nadcon5',0);
INSERT INTO "grid_transformation" VALUES('EPSG','8549','NAD27 to NAD83 (8)','Uses NADCON5 method which expects longitudes positive east in range 0-360°; source and target CRSs have longitudes positive east in range -180° to +180°. Accuracy at 67% confidence level is 0.5m onshore, 5m nearshore and undetermined farther offshore.','Spatial referencing.','EPSG','1074','NADCON5 (2D)','EPSG','4267','EPSG','4269','EPSG','1330',0.5,'EPSG','8657','Latitude difference file','nadcon5.nad27.nad83_1986.alaska.lat.trn.20160901.b','EPSG','8658','Longitude difference file','nadcon5.nad27.nad83_1986.alaska.lon.trn.20160901.b',NULL,NULL,'NGS-Usa AK Nadcon5',0);
INSERT INTO "grid_transformation" VALUES('EPSG','8550','NAD83 to NAD83(HARN) (48)','Uses NADCON5 method which expects longitudes positive east in range 0-360°; EPSG source and target CRSs have longitudes positive east in range -180° to +180°.','Spatial referencing.','EPSG','1074','NADCON5 (2D)','EPSG','4269','EPSG','4152','EPSG','2373',0.15,'EPSG','8657','Latitude difference file','nadcon5.nad83_1986.nad83_1992.alaska.lat.trn.20160901.b','EPSG','8658','Longitude difference file','nadcon5.nad83_1986.nad83_1992.alaska.lon.trn.20160901.b',NULL,NULL,'NGS-Usa AK Nadcon5',0);
INSERT INTO "grid_transformation" VALUES('EPSG','8555','NAD27 to NAD83 (7)','Uses NADCON5 method which expects longitudes positive east in range 0-360°; source and target CRSs have longitudes positive east in range -180° to +180°. Accuracy at 67% confidence level is 0.15m onshore, 1m nearshore and undetermined farther offshore.','Spatial referencing.','EPSG','1074','NADCON5 (2D)','EPSG','4267','EPSG','4269','EPSG','4516',0.15,'EPSG','8657','Latitude difference file','nadcon5.nad27.nad83_1986.conus.lat.trn.20160901.b','EPSG','8658','Longitude difference file','nadcon5.nad27.nad83_1986.conus.lon.trn.20160901.b',NULL,NULL,'NGS-Usa Conus Nadcon5',0);
INSERT INTO "grid_transformation" VALUES('EPSG','8556','NAD83 to NAD83(HARN) (47)','Uses NADCON5 method which expects longitudes positive east in range 0-360°; EPSG source and target CRSs have longitudes positive east in range -180° to +180°.','Spatial referencing.','EPSG','1074','NADCON5 (2D)','EPSG','4269','EPSG','4152','EPSG','4516',0.05,'EPSG','8657','Latitude difference file','nadcon5.nad83_1986.nad83_harn.conus.lat.trn.20160901.b','EPSG','8658','Longitude difference file','nadcon5.nad83_1986.nad83_harn.conus.lon.trn.20160901.b',NULL,NULL,'NGS-Usa Conus Nadcon5',0);
INSERT INTO "grid_transformation" VALUES('EPSG','8561','Old Hawaiian to NAD83 (2)','Uses NADCON5 method which expects longitudes positive east in range 0-360°; EPSG source and target CRSs have longitudes positive east in range -180° to +180°.','Spatial referencing.','EPSG','1074','NADCON5 (2D)','EPSG','4135','EPSG','4269','EPSG','1334',0.2,'EPSG','8657','Latitude difference file','nadcon5.ohd.nad83_1986.hawaii.lat.trn.20160901.b','EPSG','8658','Longitude difference file','nadcon5.ohd.nad83_1986.hawaii.lon.trn.20160901.b',NULL,NULL,'NGS-Usa HI Nadcon5',0);
INSERT INTO "grid_transformation" VALUES('EPSG','8660','NAD83 to NAD83(HARN) (49)','Uses NADCON5 method which expects longitudes positive east in range 0-360°; EPSG source and target CRSs have longitudes positive east in range -180° to +180°.','Spatial referencing.','EPSG','1074','NADCON5 (2D)','EPSG','4269','EPSG','4152','EPSG','1334',0.05,'EPSG','8657','Latitude difference file','nadcon5.nad83_1986.nad83_1993.hawaii.lat.trn.20160901.b','EPSG','8658','Longitude difference file','nadcon5.nad83_1986.nad83_1993.hawaii.lon.trn.20160901.b',NULL,NULL,'NGS-Usa HI Nadcon5',0);
INSERT INTO "grid_transformation" VALUES('EPSG','8662','American Samoa 1962 to NAD83(HARN) (3)','Uses NADCON5 method which expects longitudes positive east in range 0-360°; EPSG source and target CRSs have longitudes positive east in range -180° to +180°.','Spatial referencing.','EPSG','1074','NADCON5 (2D)','EPSG','4169','EPSG','4152','EPSG','3109',5.0,'EPSG','8657','Latitude difference file','nadcon5.as62.nad83_1993.as.lat.trn.20160901.b','EPSG','8658','Longitude difference file','nadcon5.as62.nad83_1993.as.lon.trn.20160901.b',NULL,NULL,'NGS-Asm Nadcon5',0);
INSERT INTO "grid_transformation" VALUES('EPSG','8665','Guam 1963 to NAD83(HARN) (2)','Uses NADCON5 method which expects longitudes positive east in range 0-360°; EPSG source and target CRSs have longitudes positive east in range -180° to +180°.','Spatial referencing.','EPSG','1074','NADCON5 (2D)','EPSG','4675','EPSG','4152','EPSG','4525',5.0,'EPSG','8657','Latitude difference file','nadcon5.gu63.nad83_1993.guamcnmi.lat.trn.20160901.b','EPSG','8658','Longitude difference file','nadcon5.gu63.nad83_1993.guamcnmi.lon.trn.20160901.b',NULL,NULL,'NGS-Gum NADCON5',0);
INSERT INTO "grid_transformation" VALUES('EPSG','8668','Puerto Rico to NAD83 (2)','Uses NADCON5 method which expects longitudes positive east in range 0-360°; EPSG source and target CRSs have longitudes positive east in range -180° to +180°.','Spatial referencing.','EPSG','1074','NADCON5 (2D)','EPSG','4139','EPSG','4269','EPSG','3634',0.15,'EPSG','8657','Latitude difference file','nadcon5.pr40.nad83_1986.prvi.lat.trn.20160901.b','EPSG','8658','Longitude difference file','nadcon5.pr40.nad83_1986.prvi.lon.trn.20160901.b',NULL,NULL,'NGS-Pri Vir Nadcon5',0);
INSERT INTO "grid_transformation" VALUES('EPSG','8669','NAD83 to NAD83(HARN) (50)','Uses NADCON5 method which expects longitudes positive east in range 0-360°; EPSG source and target CRSs have longitudes positive east in range -180° to +180°.','Spatial referencing.','EPSG','1074','NADCON5 (2D)','EPSG','4269','EPSG','4152','EPSG','3634',0.15,'EPSG','8657','Latitude difference file','nadcon5.nad83_1986.nad83_1993.prvi.lat.trn.20160901.b','EPSG','8658','Longitude difference file','nadcon5.nad83_1986.nad83_1993.prvi.lon.trn.20160901.b',NULL,NULL,'NGS-Pri Vir Nadcon5',0);
INSERT INTO "grid_transformation" VALUES('EPSG','8676','Canada velocity grid v6','','Change of coordinate epoch for points referenced to NAD83(CSRS)v6.','EPSG','1070','Point motion by grid (Canada NTv2_Vel)','EPSG','8251','EPSG','8251','EPSG','1061',0.01,'EPSG','1050','Point motion velocity grid file','cvg60.cvb',NULL,NULL,NULL,NULL,NULL,NULL,'NRC-Can cvg6.0',0);
INSERT INTO "grid_transformation" VALUES('EPSG','8885','RGF93 to NGF IGN69 height (3)','Replaces RGF93 to NGF IGN69 height (2) (code 8371). Accuracy at each 0.0333333333333° in longitude and 0.025° in latitude grid node is given within the geoid model file. Recommended interpolation method is bilinear.','Derivation of gravity-related heights from GPS observations.','EPSG','1073','Geographic3D to GravityRelatedHeight (IGN2009)','EPSG','4965','EPSG','5720','EPSG','1326',0.01,'EPSG','8666','Geoid (height correction) model file','RAF18.tac',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Fra 18',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9105','ATS77 to NAD83 (1)','','Spatial referencing.','EPSG','9615','NTv2','EPSG','4122','EPSG','4269','EPSG','2313',0.5,'EPSG','8656','Latitude and longitude difference file','GS7783.GSB',NULL,NULL,NULL,NULL,NULL,NULL,'NSGC-Can NS',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9106','ATS77 to NAD83(CSRS)v6 (4)','Derived through NAD83(CSRS)v6. Replaces ATS77 to NAD83(CSRS)v3 (3) (transformation code 9235).','Spatial referencing.','EPSG','9615','NTv2','EPSG','4122','EPSG','8252','EPSG','2313',0.06,'EPSG','8656','Latitude and longitude difference file','NS778302.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'NSGC-Can NS v2',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9107','NAD27 to NAD83(CSRS)v3 (5)','Derived through NAD83(CSRS)v3 but within accuracy of transformation may be assumed to apply to any version. For Toronto use NAD27 to NAD83(CSRS) (6) (CT code 9108).','Spatial referencing.','EPSG','9615','NTv2','EPSG','4267','EPSG','8240','EPSG','4537',1.5,'EPSG','8656','Latitude and longitude difference file','ON27CSv1.GSB',NULL,NULL,NULL,NULL,NULL,NULL,'LIO-Can Ont ex Tor',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9108','NAD27 to NAD83(CSRS)v3 (6)','Derived through NAD83(CSRS)v3 but within accuracy of transformation may be assumed to apply to any version. For Ontario excluding Toronto use NAD27 to NAD83(CSRS) (5) (CT code 9107).','Spatial referencing.','EPSG','9615','NTv2','EPSG','4267','EPSG','8240','EPSG','4536',1.0,'EPSG','8656','Latitude and longitude difference file','TOR27CSv1.GSB',NULL,NULL,NULL,NULL,NULL,NULL,'LIO-Can Ont Tor',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9109','NAD27(76) to NAD83(CSRS)v3 (1)','Derived through NAD83(CSRS)v3 but within accuracy of transformation may be assumed to apply to any version.','Spatial referencing.','EPSG','9615','NTv2','EPSG','4608','EPSG','8240','EPSG','1367',1.0,'EPSG','8656','Latitude and longitude difference file','ON76CSv1.GSB',NULL,NULL,NULL,NULL,NULL,NULL,'LIO-Can Ont',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9110','NAD83 to NAD83(CSRS)v3 (5)','Derived through NAD83(CSRS)v3.','Spatial referencing.','EPSG','9615','NTv2','EPSG','4269','EPSG','8240','EPSG','1367',0.1,'EPSG','8656','Latitude and longitude difference file','ON83CSv1.GSB',NULL,NULL,NULL,NULL,NULL,NULL,'LIO-Can Ont',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9111','NAD27 to NAD83 (9)','','Spatial referencing.','EPSG','9615','NTv2','EPSG','4267','EPSG','4269','EPSG','2375',1.5,'EPSG','8656','Latitude and longitude difference file','SK27-83.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'ISC-Can SK',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9112','NAD27 to NAD83(CSRS)v2 (7)','Derived through NAD83(CSRS)v2. Replaced by NAD27 to NAD83(CSRS) (8) (CT code 9113) for CRD, NAD27 to NAD83(CSRS) (9) (CT code 9114) forn north Vancouver Island and NAD27 to NAD83(CSRS) (10) (CT code 9115) for mainland.','Spatial referencing.','EPSG','9615','NTv2','EPSG','4267','EPSG','8237','EPSG','2832',1.5,'EPSG','8656','Latitude and longitude difference file','BC_27_98.GSB',NULL,NULL,NULL,NULL,NULL,NULL,'GeoBC-Can BC CSRSv2',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9113','NAD27 to NAD83(CSRS)v3 (8)','Derived through NAD83(CSRS)v3.','Spatial referencing.','EPSG','9615','NTv2','EPSG','4267','EPSG','8240','EPSG','4533',1.5,'EPSG','8656','Latitude and longitude difference file','CRD27_00.GSB',NULL,NULL,NULL,NULL,NULL,NULL,'GeoBC-Can BC CRD',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9114','NAD27 to NAD83(CSRS)v3 (9)','Derived through NAD83(CSRS)v3.','Spatial referencing.','EPSG','9615','NTv2','EPSG','4267','EPSG','8240','EPSG','4534',1.5,'EPSG','8656','Latitude and longitude difference file','NVI27_05.GSB',NULL,NULL,NULL,NULL,NULL,NULL,'GeoBC-Can BC NVI',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9115','NAD27 to NAD83(CSRS)v4 (10)','Derived through NAD83(CSRS)v4.','Spatial referencing.','EPSG','9615','NTv2','EPSG','4267','EPSG','8246','EPSG','4535',1.5,'EPSG','8656','Latitude and longitude difference file','BC_27_05.GSB',NULL,NULL,NULL,NULL,NULL,NULL,'GeoBC-Can BC mainland',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9116','NAD83 to NAD83(CSRS)v2 (6)','Derived through NAD83(CSRS)v2. Replaced by NAD83 to NAD83(CSRS) (7) (CT code 9117) for CRD, NAD83 to NAD83(CSRS) (8) (CT code 9118) for north Vancouver Island and NAD83 to NAD83(CSRS) (9) (CT code 9119) for mainland.','Spatial referencing.','EPSG','9615','NTv2','EPSG','4269','EPSG','8237','EPSG','2832',0.1,'EPSG','8656','Latitude and longitude difference file','BC_93_98.GSB',NULL,NULL,NULL,NULL,NULL,NULL,'GeoBC-Can BC CSRSv2',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9117','NAD83 to NAD83(CSRS)v3 (7)','Derived through NAD83(CSRS)v3.','Spatial referencing.','EPSG','9615','NTv2','EPSG','4269','EPSG','8240','EPSG','4533',0.1,'EPSG','8656','Latitude and longitude difference file','CRD93_00.GSB',NULL,NULL,NULL,NULL,NULL,NULL,'GeoBC-Can BC CRD',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9118','NAD83 to NAD83(CSRS)v3 (8)','Derived through NAD83(CSRS)v3.','Spatial referencing.','EPSG','9615','NTv2','EPSG','4269','EPSG','8240','EPSG','4534',0.1,'EPSG','8656','Latitude and longitude difference file','NVI93_05.GSB',NULL,NULL,NULL,NULL,NULL,NULL,'GeoBC-Can BC NVI',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9119','NAD83 to NAD83(CSRS)v4 (9)','Derived through NAD83(CSRS)v4.','Spatial referencing.','EPSG','9615','NTv2','EPSG','4269','EPSG','8246','EPSG','4535',0.1,'EPSG','8656','Latitude and longitude difference file','BC_93_05.GSB',NULL,NULL,NULL,NULL,NULL,NULL,'GeoBC-Can BC mainland',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9120','NAD83(CSRS)v2 to NAD83(CSRS)v3 (1)','','Spatial referencing.','EPSG','9615','NTv2','EPSG','8237','EPSG','8240','EPSG','4533',0.1,'EPSG','8656','Latitude and longitude difference file','CRD98_00.GSB',NULL,NULL,NULL,NULL,NULL,NULL,'GeoBC-Can BC CRD',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9121','NAD83(CSRS)v2 to NAD83(CSRS)v3 (2)','','Spatial referencing.','EPSG','9615','NTv2','EPSG','8237','EPSG','8240','EPSG','4534',0.1,'EPSG','8656','Latitude and longitude difference file','NVI98_05.GSB',NULL,NULL,NULL,NULL,NULL,NULL,'GeoBC-Can BC NVI',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9122','NAD83(CSRS)v2 to NAD83(CSRS)v4 (1)','','Spatial referencing.','EPSG','9615','NTv2','EPSG','8237','EPSG','8240','EPSG','4535',0.1,'EPSG','8656','Latitude and longitude difference file','BC_98_05.GSB',NULL,NULL,NULL,NULL,NULL,NULL,'GeoBC-Can BC mainland',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9123','NAD83(CSRS) to CGVD28 height (1)','Derived through NAD83(CSRS)v3.','Derivation of gravity-related heights from GPS observations.','EPSG','1060','Geographic3D to GravityRelatedHeight (CGG2013)','EPSG','4955','EPSG','5713','EPSG','1061',0.05,'EPSG','8666','Geoid (height correction) model file','HT2_0.byn',NULL,NULL,NULL,NULL,NULL,NULL,'NRC Can CGG2000',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9124','ITRF2008 to CGVD2013(CGG2013) height (1)','Uses CGG2013 model derived through NAD83(CSRS)v6 which uses bi-quadratic interpolation; bi-linear interpolation of the grid file will give results agreeing to within 1cm 99.97% of the time. Replaced by CT code 9125.','Derivation of gravity-related heights from GPS observations.','EPSG','1060','Geographic3D to GravityRelatedHeight (CGG2013)','EPSG','7911','EPSG','6647','EPSG','1061',0.03,'EPSG','8666','Geoid (height correction) model file','CGG2013i83.byn',NULL,NULL,NULL,NULL,NULL,NULL,'NRC Can CGG2013',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9125','ITRF2008 to CGVD2013(CGG2013a) height (2)','Uses CGG2013a model derived through NAD83(CSRS)v6 which uses bi-quadratic interpolation; bi-linear interpolation of the grid file will give results agreeing to within 1cm 99.97% of the time. Replaces CT code 9124.','Derivation of gravity-related heights from GPS observations.','EPSG','1060','Geographic3D to GravityRelatedHeight (CGG2013)','EPSG','7911','EPSG','9245','EPSG','1061',0.03,'EPSG','8666','Geoid (height correction) model file','CGG2013i08a.byn',NULL,NULL,NULL,NULL,NULL,NULL,'NRC Can CGG2013a',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9131','RGAF09 to IGN 2008 LD height (1)','Replaces RGAF09 to IGN 1992 LD height (1) (CT code 5507). Accuracy 0.1-0.2m within onshore area.','Derivation of gravity-related heights from GPS observations.','EPSG','1073','Geographic3D to GravityRelatedHeight (IGN2009)','EPSG','5488','EPSG','9130','EPSG','2893',0.2,'EPSG','8666','Geoid (height correction) model file','RALD2016.mnt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN-Glp Des',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9132','RRAF 1991 to IGN 2008 LD height (1)','Replaces RRAF 1991 to IGN 1992 LD height (1) (CT code 4566). Accuracy 0.1-0.2m within onshore area.','Derivation of gravity-related heights from GPS observations.','EPSG','1073','Geographic3D to GravityRelatedHeight (IGN2009)','EPSG','4557','EPSG','9130','EPSG','2893',0.2,'EPSG','8666','Geoid (height correction) model file','RALDW842016.mnt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Glp Des',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9133','RGAF09 to Guadeloupe 1988 height (2)','Replaces RGAF09 to Guadeloupe 1988 height (1) (CT code 5503). Accuracy 0.01-0.05m within onshore areas.','Derivation of gravity-related heights from GPS observations.','EPSG','1073','Geographic3D to GravityRelatedHeight (IGN2009)','EPSG','5488','EPSG','5757','EPSG','2892',0.05,'EPSG','8666','Geoid (height correction) model file','RAGTBT2016.mnt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Glp GT 2016',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9134','RGAF09 to IGN 1988 LS height (2)','Replaces RGAF09 to IGN 1988 LS height (2) (CT code 5506). Accuracy 0.05-0.1m within onshore area.','Derivation of gravity-related heights from GPS observations.','EPSG','1073','Geographic3D to GravityRelatedHeight (IGN2009)','EPSG','5488','EPSG','5616','EPSG','2895',0.1,'EPSG','8666','Geoid (height correction) model file','RALS2016.mnt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Glp LSt 2016',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9135','RGAF09 to IGN 1988 MG height (2)','Replaces RGAF09 to IGN 1988 MG height (1), CT code 5504. Accuracy 0.0.5-0.1m within onshore area.','Derivation of gravity-related heights from GPS observations.','EPSG','1073','Geographic3D to GravityRelatedHeight (IGN2009)','EPSG','5488','EPSG','5617','EPSG','2894',0.1,'EPSG','8666','Geoid (height correction) model file','RAMG2016.mnt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Glp MG 2016',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9136','RGAF09 to Martinique 1987 height (2)','Replaces RGAF09 to Martinique 1987 height (1) (CT code 5502). Accuracy 0.01m to 0.05m within onshore area.','Derivation of gravity-related heights from GPS observations.','EPSG','1073','Geographic3D to GravityRelatedHeight (IGN2009)','EPSG','5488','EPSG','5756','EPSG','3276',0.05,'EPSG','8666','Geoid (height correction) model file','RAMART2016.mnt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Mtq 2016',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9137','RGSPM06 to Danger 1950 height (1)','Accuracy 0.10m to 0.20m within onshore area.','Derivation of gravity-related heights from GPS observations.','EPSG','1073','Geographic3D to GravityRelatedHeight (IGN2009)','EPSG','4466','EPSG','5792','EPSG','1220',0.2,'EPSG','8666','Geoid (height correction) model file','GGSPM06v1.mnt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN-SPM',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9160','NAD83(HARN) to NAVD88 height (1)','Uses Geoid99 hybrid model. Replaced by 2003 model (CT code 9168).','Derivation of approximate gravity-related heights from GPS observations.','EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','4957','EPSG','5703','EPSG','2977',0.05,'EPSG','8666','Geoid (height correction) model file','g1999u01.bin',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-US Conus NW',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9161','NAD83(HARN) to NAVD88 height (2)','Uses Geoid99 hybrid model. Replaced by 2003 model (CT code 9168).','Derivation of approximate gravity-related heights from GPS observations.','EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','4957','EPSG','5703','EPSG','2978',0.05,'EPSG','8666','Geoid (height correction) model file','g1999u02.bin',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-US Conus CNW',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9162','NAD83(HARN) to NAVD88 height (3)','Uses Geoid99 hybrid model. Replaced by 2003 model (CT code 9168).','Derivation of approximate gravity-related heights from GPS observations.','EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','4957','EPSG','5703','EPSG','2979',0.05,'EPSG','8666','Geoid (height correction) model file','g1999u03.bin',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-US Conus CNE',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9163','NAD83(HARN) to NAVD88 height (4)','Uses Geoid99 hybrid model. Replaced by 2003 model (CT code 9168).','Derivation of approximate gravity-related heights from GPS observations.','EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','4957','EPSG','5703','EPSG','2980',0.05,'EPSG','8666','Geoid (height correction) model file','g1999u04.bin',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-US Conus NE',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9164','NAD83(HARN) to NAVD88 height (5)','Uses Geoid99 hybrid model. Replaced by 2003 model (CT code 9168).','Derivation of approximate gravity-related heights from GPS observations.','EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','4957','EPSG','5703','EPSG','2973',0.05,'EPSG','8666','Geoid (height correction) model file','g1999u05.bin',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-US Conus SW',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9165','NAD83(HARN) to NAVD88 height (6)','Uses Geoid99 hybrid model. Replaced by 2003 model (CT code 9168).','Derivation of approximate gravity-related heights from GPS observations.','EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','4957','EPSG','5703','EPSG','2974',0.05,'EPSG','8666','Geoid (height correction) model file','g1999u06.bin',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-US Conus CSW',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9166','NAD83(HARN) to NAVD88 height (7)','Uses Geoid99 hybrid model. Replaced by 2003 model (CT code 9168).','Derivation of approximate gravity-related heights from GPS observations.','EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','4957','EPSG','5703','EPSG','2975',0.05,'EPSG','8666','Geoid (height correction) model file','g1999u07.bin',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-US Conus CSE',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9167','NAD83(HARN) to NAVD88 height (8)','Uses Geoid99 hybrid model. Replaced by 2003 model (CT code 9168).','Derivation of approximate gravity-related heights from GPS observations.','EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','4957','EPSG','5703','EPSG','2976',0.05,'EPSG','8666','Geoid (height correction) model file','g1999u08.bin',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-US Conus SE',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9168','NAD83(FBN) to NAVD88 height (1)','Uses Geoid03 hybrid model. Replaced by 2009 model (CT code 9173).','Derivation of approximate gravity-related heights from GPS observations.','EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','8542','EPSG','5703','EPSG','1323',0.02,'EPSG','8666','Geoid (height correction) model file','geoid03_conus.bin',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-US Conus',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9169','NAD83(HARN) to NAVD88 height (9)','Uses Geoid06 hybrid model. Replaced by Geoid09 model (CT code 9174).','Derivation of approximate gravity-related heights from GPS observations.','EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','4957','EPSG','5703','EPSG','1330',0.02,'EPSG','8666','Geoid (height correction) model file','geoid06_ak.bin',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-US AK',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9170','NAD83(FBN) to ASVD02 height (1)','Uses Geoid09 hybrid model. Replaced by Geoid12 model (CT code 7650).','Derivation of approximate gravity-related heights from GPS observations.','EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','8542','EPSG','6643','EPSG','2288',0.05,'EPSG','8666','Geoid (height correction) model file','g2009s01.bin',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-Asm 09',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9171','NAD83(FBN) to GUVD04 height (1)','Uses Geoid09 hybrid model. Replaced by Geoid12 model (CT code 7648).','Derivation of approximate gravity-related heights from GPS observations.','EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','8542','EPSG','6644','EPSG','3255',0.05,'EPSG','8666','Geoid (height correction) model file','g2009g01.bin',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-Gum 09',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9172','NAD83(FBN) to NMVD03 height (1)','Uses Geoid09 hybrid model. Replaced by Geoid12 model (CT code 7649).','Derivation of approximate gravity-related heights from GPS observations.','EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','8542','EPSG','6640','EPSG','4171',0.05,'EPSG','8666','Geoid (height correction) model file','g2009g01.bin',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-Mnp 12B',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9173','NAD83(NSRS2007) to NAVD88 height (1)','Uses Geoid09 hybrid model. Replaced by 2012 model (CT code 6326).','Derivation of approximate gravity-related heights from GPS observations.','EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','4893','EPSG','5703','EPSG','1323',0.05,'EPSG','8666','Geoid (height correction) model file','geoid09_conus.bin',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-US Conus 09',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9174','NAD83(NSRS2007) to NAVD88 height (2)','Uses Geoid09 hybrid model. Replaced by Geoid12 model (CT code 6327).','Derivation of approximate gravity-related heights from GPS observations.','EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','4893','EPSG','5703','EPSG','1330',0.05,'EPSG','8666','Geoid (height correction) model file','geoid09_ak.bin',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-US AK 09',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9175','NAD83(NSRS2007) to PRVD02 height (1)','Uses Geoid09 hybrid model. Replaced by Geoid12 model (CT code 7646).','Derivation of approximate gravity-related heights from GPS observations.','EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','4893','EPSG','6641','EPSG','3294',0.05,'EPSG','8666','Geoid (height correction) model file','g2009p01.bin',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-Pri 09',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9176','NAD83(NSRS2007) to VIVD09 height (1)','Uses Geoid09 hybrid model. Replaced by Geoid12 model (CT code 7647).','Derivation of approximate gravity-related heights from GPS observations.','EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','4893','EPSG','6642','EPSG','3330',0.05,'EPSG','8666','Geoid (height correction) model file','g2009p01.bin',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-Vir 09',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9187','RGAF09 to IGN 1988 SB height (2)','Accuracy 0.05m to 0.1m. Replaces RGAF09 to IGN 1988 SB height (1), transformation code 5508.','Derivation of gravity-related heights from GPS observations.','EPSG','1073','Geographic3D to GravityRelatedHeight (IGN2009)','EPSG','5488','EPSG','5619','EPSG','2891',0.1,'EPSG','8666','Geoid (height correction) model file','gg10_sbv2.mnt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Glp StB',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9188','RGAF09 to IGN 1988 SM height (2)','Accuracy 0.05m to 0.1m. Replaces RGAF09 to IGN 1988 SM height (1), transformation code 5505.','Derivation of gravity-related heights from GPS observations.','EPSG','1073','Geographic3D to GravityRelatedHeight (IGN2009)','EPSG','5488','EPSG','5620','EPSG','2890',0.1,'EPSG','8666','Geoid (height correction) model file','gg10_smv2.mnt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Glp StM',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9228','RGSPM06 to Danger 1950 height (2)','Accuracy 0.01m to 0.05m within onshore area. Replaces RGSPM06 to Danger 1950 height (1), CT code 9137.','Derivation of gravity-related heights from GPS observations.','EPSG','1073','Geographic3D to GravityRelatedHeight (IGN2009)','EPSG','4466','EPSG','5792','EPSG','1220',0.05,'EPSG','8666','Geoid (height correction) model file','RASPM2018.mnt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN-SPM',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9229','NAD83(2011) to NAVD88 height (3)','Uses Geoid18 hybrid model. Replaces 12B model. See information source for further information.','Derivation of approximate gravity-related heights from GPS observations.','EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','6319','EPSG','5703','EPSG','1323',0.015,'EPSG','8666','Geoid (height correction) model file','g2018u0.bin',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-US Conus 18',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9230','NAD83(2011) to PRVD02 height (2)','Uses Geoid18 hybrid model. Replaces 12B model. See information source for further information.','Derivation of approximate gravity-related heights from GPS observations.','EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','6319','EPSG','6641','EPSG','3294',0.015,'EPSG','8666','Geoid (height correction) model file','g2018p0.bin',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-Pri 12B',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9231','NAD83(2011) to VIVD09 height (2)','Uses Geoid18 hybrid model. Replaces 12B model. See information source for further information.','Derivation of approximate gravity-related heights from GPS observations.','EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','6319','EPSG','6642','EPSG','3330',0.015,'EPSG','8666','Geoid (height correction) model file','g2018p0.bin',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-Vir 18',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9232','ISN93 to ISN2016 (1)','Grid transformation based on Kriging between ISN93 and ISN2016. Accuracy is better than 5 cm in stable areas but can be around 25 cm in areas that have suffered deformation due to earthquake or volcanic eruption.','Spatial referencing.','EPSG','9615','NTv2','EPSG','4659','EPSG','8086','EPSG','1120',0.05,'EPSG','8656','Latitude and longitude difference file','ISN93_ISN2016.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'LMI-Isl',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9233','ISN2004 to ISN2016 (1)','Grid transformation based on Kriging between ISN2004 and ISN2016. Accuracy is better than 5 cm in stable areas but can be around 25 cm in areas that have suffered deformation due to earthquake or volcanic eruption.','Spatial referencing.','EPSG','9615','NTv2','EPSG','5324','EPSG','8086','EPSG','1120',0.05,'EPSG','8656','Latitude and longitude difference file','ISN2004_ISN2016.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'LMI-Isl',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9235','ATS77 to NAD83(CSRS)v3 (3)','Can be taken as an approximate transformation ATS77 to WGS 84 - see code 1851. Replaced by ATS77 to NAD83(CSRS)v6 (4) (transformation code 9106).','Accuracy 1-2 metres.','EPSG','9615','NTv2','EPSG','4122','EPSG','8240','EPSG','2313',1.5,'EPSG','8656','Latitude and longitude difference file','NS778301.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'NSGC-Can NS',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9236','ATS77 to NAD83(CSRS)v2 (2)','Can be taken as an approximate transformation ATS77 to WGS 84 - see code 1689.','Accuracy 1-2 metres.','EPSG','9615','NTv2','EPSG','4122','EPSG','8237','EPSG','1533',1.5,'EPSG','8656','Latitude and longitude difference file','PE7783V2.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'PEI DOT-Can PEI',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9237','ATS77 to NAD83(CSRS)v2 (1)','Introduced in 1999. Can be taken as an approximate transformation ATS77 to WGS 84 - see code 1688.','Used in the GeoNB Coordinate Transformation Service. Accuracy 1-2 metres.','EPSG','9615','NTv2','EPSG','4122','EPSG','8237','EPSG','1447',1.5,'EPSG','8656','Latitude and longitude difference file','NB7783v2.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'GIC-Can NB',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9238','NAD27 to NAD83(CSRS)v2 (4)','Introduced in 2011. Precision of 20 cm in area covered by the input data set and 40 cm anywhere else, with the exception of the northwest area of the province (near the border with Quebec) where the precision deteriorates to 80 cm.','Used in the GeoNB Coordinate Transformation Service.','EPSG','9615','NTv2','EPSG','4267','EPSG','8237','EPSG','1447',0.8,'EPSG','8656','Latitude and longitude difference file','NB2783v2.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'SNB-Can NB',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9239','NAD27 to NAD83(CSRS)v2 (1)','Uses NT method which expects longitudes positive west; EPSG GeogCRSs NAD27 (code 4267) and NAD83(CSRS) (code 4617) have longitudes positive east. Can be taken as an approximate transformation NAD27 to WGS 84 - see code 1692.','Accuracy 1-2 metres.','EPSG','9615','NTv2','EPSG','4267','EPSG','8237','EPSG','1368',1.5,'EPSG','8656','Latitude and longitude difference file','QUE27-98.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'SGQ-Can QC',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9240','NAD27(CGQ77) to NAD83(CSRS)v2 (1)','Uses NT method which expects longitudes positive west; EPSG GeogCRSs NAD27(CGQ77) (code 4609) and NAD83(CSRS) (code 4617) have longitudes positive east. Can be taken as an approximate transformation NAD27(CGQ77) to WGS 84 - see code 1691.','Accuracy 1-2 metres.','EPSG','9615','NTv2','EPSG','4609','EPSG','8237','EPSG','1368',1.5,'EPSG','8656','Latitude and longitude difference file','CGQ77-98.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'SGQ-Can QC',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9241','NAD83 to NAD83(CSRS)v2 (1)','Uses NT method which expects longitudes positive west; EPSG GeogCRSs NAD83 (code 4269) and NAD83(CSRS) (code 4617) have longitudes positive east. Can be taken as an approximate transformation NAD83 to WGS 84 - see code 1696.','Accuracy 1-2 metres.','EPSG','9615','NTv2','EPSG','4269','EPSG','8237','EPSG','1368',1.5,'EPSG','8656','Latitude and longitude difference file','NAD83-98.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'SGQ-Can QC',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9242','NAD27 to NAD83(CSRS)v3 (2)','Can be taken as an approximate transformation NAD27 to WGS 84 - see code 1703.','Accuracy 1-2 metres.','EPSG','9615','NTv2','EPSG','4267','EPSG','8240','EPSG','2375',1.5,'EPSG','8656','Latitude and longitude difference file','SK27-98.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'SK PMC-Can SK',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9243','NAD83 to NAD83(CSRS)v3 (2)','Can be taken as an approximate transformation NAD83 to WGS 84 - see code 1697.','Accuracy 1-2 metres.','EPSG','9615','NTv2','EPSG','4269','EPSG','8240','EPSG','2375',1.5,'EPSG','8656','Latitude and longitude difference file','SK83-98.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'SK PMC-Can SK',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9244','NAD83 to NAD83(CSRS)v4 (3)','This gridded difference file AB_CSRS.DAC will need to be renamed to AB_CSRS.gsb to run in some software suites. Formats identical, but AB file is provincial fit only. Can be taken as an approximate transformation NAD83 to WGS 84 - see code 1702.','Accuracy 1-2 metres.','EPSG','9615','NTv2','EPSG','4269','EPSG','8246','EPSG','2376',1.5,'EPSG','8656','Latitude and longitude difference file','AB_CSRS.DAC',NULL,NULL,NULL,NULL,NULL,NULL,'AB Env-Can AB',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9246','NAD83(CSRS)v6 to CGVD2013(CGG2013) height (1)','Uses CGG2013 model which uses bi-quadratic interpolation; bi-linear interpolation of the grid file will give results agreeing to within 1cm 99.97% of the time. Replaced by CGG2013a model (CT code 9247).','Derivation of gravity-related heights from GPS observations.','EPSG','1060','Geographic3D to GravityRelatedHeight (CGG2013)','EPSG','8251','EPSG','6647','EPSG','1061',0.03,'EPSG','8666','Geoid (height correction) model file','CGG2013n83.byn',NULL,NULL,NULL,NULL,NULL,NULL,'NRC Can CGG2013',0);
INSERT INTO "grid_transformation" VALUES('EPSG','9247','NAD83(CSRS)v6 to CGVD2013(CGG2013a) height (1)','Uses CGG2013a model which uses bi-quadratic interpolation; bi-linear interpolation of the grid file will give results agreeing to within 1cm 99.97% of the time. Replaces CGG2013 model (CT code 9246).','Derivation of gravity-related heights from GPS observations.','EPSG','1060','Geographic3D to GravityRelatedHeight (CGG2013)','EPSG','8251','EPSG','9245','EPSG','1061',0.03,'EPSG','8666','Geoid (height correction) model file','CGG2013n83a.byn',NULL,NULL,NULL,NULL,NULL,NULL,'NRC Can CGG2013a',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10000','RGF93 to NGF IGN69 height (1)','May be used for transformations from WGS 84 to NGF IGN69. Accuracy at each 0.1 deg x 0.1 degree grid node is given within the geoid model file.','Derivation of gravity-related heights from GPS observations.','EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4965','EPSG','5720','EPSG','1326',0.5,'EPSG','8666','Geoid (height correction) model file','ggf97a.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Fra',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10001','ETRS89 to NGF IGN69 height (1)','Parameter values taken from RGF93 to NGF IGN69 (1) (code 10000) assuming that RGF93 is equivalent to ETRS89 within the accuracy of the transformation. Accuracy at each 0.1 deg x 0.1 degree grid node is given within the geoid model file.','Derivation of gravity-related heights from GPS observations.','EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4937','EPSG','5720','EPSG','1326',0.5,'EPSG','8666','Geoid (height correction) model file','ggf97a.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Fra',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10002','RGF93 to IGN78 Corsica height (1)','May be used for transformations from WGS 84 to IGN78 Corsica. Accuracy at each 0.1 deg x 0.1 degree grid node is given within the geoid model file.','Derivation of gravity-related heights from GPS observations.','EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4965','EPSG','5721','EPSG','1327',0.5,'EPSG','8666','Geoid (height correction) model file','ggf97a_corse.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Fra Cor',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10003','ETRS89 to IGN78 Corsica height (1)','Parameter values taken from RGF93 to IGN78 Corsica (1) (code 10002) assuming that RGF93 is equivalent to ETRS89 within the accuracy of the transformation. Accuracy at each 0.1 deg x 0.1 degree grid node is given within the geoid model file.','Derivation of gravity-related heights from GPS observations.','EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4937','EPSG','5721','EPSG','1327',0.5,'EPSG','8666','Geoid (height correction) model file','ggf97a_corse.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Fra Cor',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10004','RRAF 1991 to Martinique 1987 height (1)','May be used for transformations from WGS 84 to IGN 1987. Accuracy at each 0.025 deg x 0.025 degree grid node is given within the geoid model file.','Derivation of gravity-related heights from GPS observations.','EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4973','EPSG','5756','EPSG','1156',998.0,'EPSG','8666','Geoid (height correction) model file','ggm00.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Mtq',1);
INSERT INTO "grid_transformation" VALUES('EPSG','10005','RRAF 1991 to Guadeloupe 1988 height (1)','May be used for transformations from WGS 84 to IGN 1988. Accuracy at each 0.025 deg x 0.025 degree grid node is given within the geoid model file.','Derivation of gravity-related heights from GPS observations. Accuracy 0.2m within onshore areas.','EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4973','EPSG','5757','EPSG','2892',0.2,'EPSG','8666','Geoid (height correction) model file','ggg00.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Glp GT',1);
INSERT INTO "grid_transformation" VALUES('EPSG','10006','RRAF 1991 to Guadeloupe 1988 height (2)','May be used for transformations from WGS 84 to IGN 1988. Accuracy at each 0.025 deg x 0.025 degree grid node is given within the geoid model file.','Derivation of gravity-related heights from GPS observations.','EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4973','EPSG','5757','EPSG','2894',998.0,'EPSG','8666','Geoid (height correction) model file','ggg00_mg.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Glp MG',1);
INSERT INTO "grid_transformation" VALUES('EPSG','10007','RRAF 1991 to Guadeloupe 1988 height (3)','May be used for transformations from WGS 84 to IGN 1988. Accuracy at each 0.025 deg x 0.025 degree grid node is given within the geoid model file.','Derivation of gravity-related heights from GPS observations.','EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4973','EPSG','5757','EPSG','2895',998.0,'EPSG','8666','Geoid (height correction) model file','ggg00_ls.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Glp LSt',1);
INSERT INTO "grid_transformation" VALUES('EPSG','10008','RRAF 1991 to Guadeloupe 1988 height (4)','May be used for transformations from WGS 84 to IGN 1988. Accuracy at each 0.025 deg x 0.025 degree grid node is given within the geoid model file.','Derivation of gravity-related heights from GPS observations.','EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4973','EPSG','5757','EPSG','2893',998.0,'EPSG','8666','Geoid (height correction) model file','ggg00_ld.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Glp Des',1);
INSERT INTO "grid_transformation" VALUES('EPSG','10009','RRAF 1991 to Guadeloupe 1988 height (5)','May be used for transformations from WGS 84 to IGN 1988. Accuracy at each 0.025 deg x 0.025 degree grid node is given within the geoid model file.','Derivation of gravity-related heights from GPS observations.','EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4973','EPSG','5757','EPSG','2891',998.0,'EPSG','8666','Geoid (height correction) model file','ggg00_sb.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Glp StB',1);
INSERT INTO "grid_transformation" VALUES('EPSG','10010','RRAF 1991 to Guadeloupe 1988 height (6)','May be used for transformations from WGS 84 to IGN 1988. Accuracy at each 0.025 deg x 0.025 degree grid node is given within the geoid model file.','Derivation of gravity-related heights from GPS observations.','EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4973','EPSG','5757','EPSG','2890',998.0,'EPSG','8666','Geoid (height correction) model file','ggg00_sm.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Glp StM',1);
INSERT INTO "grid_transformation" VALUES('EPSG','10011','RGFG95 to NGG1977 height (1)','May be used for transformations from WGS 84 to NGG1977. Accuracy at each 0.025 deg x 0.025 degree grid node is given within the geoid model file.','Derivation of gravity-related heights from GPS observations.','EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4967','EPSG','5755','EPSG','3146',998.0,'EPSG','8666','Geoid (height correction) model file','ggguy00.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Guf',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10012','RGR92 to Reunion 1989 height (1)','May be used for transformations from WGS 84 to IGN 1989. Accuracy at each 0.02 deg x 0.02 degree grid node is given within the geoid model file.','Derivation of gravity-related heights from GPS observations.','EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4971','EPSG','5758','EPSG','3337',0.1,'EPSG','8666','Geoid (height correction) model file','ggr99.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Reu',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10013','NAD83 to NAVD88 height (1)','Uses Geoid03 hybrid model. See information source for further information. Note: Source CRS is 2D, used in this application of the method as a pseudo-3D CRS.','Derivation of approximate gravity-related heights from GPS observations.','EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','4269','EPSG','5703','EPSG','2977',0.05,'EPSG','8666','Geoid (height correction) model file','g2003u01.bin',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-US Conus NW',1);
INSERT INTO "grid_transformation" VALUES('EPSG','10014','NAD83 to NAVD88 height (2)','Uses Geoid03 hybrid model. See information source for further information. Note: Source CRS is 2D, used in this application of the method as a pseudo-3D CRS.','Derivation of approximate gravity-related heights from GPS observations.','EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','4269','EPSG','5703','EPSG','2978',0.05,'EPSG','8666','Geoid (height correction) model file','g2003u02.bin',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-US Conus CNW',1);
INSERT INTO "grid_transformation" VALUES('EPSG','10015','NAD83 to NAVD88 height (3)','Uses Geoid03 hybrid model. See information source for further information. Note: Source CRS is 2D, used in this application of the method as a pseudo-3D CRS.','Derivation of approximate gravity-related heights from GPS observations.','EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','4269','EPSG','5703','EPSG','2979',0.05,'EPSG','8666','Geoid (height correction) model file','g2003u03.bin',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-US Conus CNE',1);
INSERT INTO "grid_transformation" VALUES('EPSG','10016','NAD83 to NAVD88 height (4)','Uses Geoid03 hybrid model. See information source for further information. Note: Source CRS is 2D, used in this application of the method as a pseudo-3D CRS.','Derivation of approximate gravity-related heights from GPS observations.','EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','4269','EPSG','5703','EPSG','2980',0.05,'EPSG','8666','Geoid (height correction) model file','g2003u04.bin',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-US Conus NE',1);
INSERT INTO "grid_transformation" VALUES('EPSG','10017','NAD83 to NAVD88 height (5)','Uses Geoid03 hybrid model. See information source for further information. Note: Source CRS is 2D, used in this application of the method as a pseudo-3D CRS.','Derivation of approximate gravity-related heights from GPS observations.','EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','4269','EPSG','5703','EPSG','2973',0.05,'EPSG','8666','Geoid (height correction) model file','g2003u05.bin',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-US Conus SW',1);
INSERT INTO "grid_transformation" VALUES('EPSG','10018','NAD83 to NAVD88 height (6)','Uses Geoid03 hybrid model. See information source for further information. Note: Source CRS is 2D, used in this application of the method as a pseudo-3D CRS.','Derivation of approximate gravity-related heights from GPS observations.','EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','4269','EPSG','5703','EPSG','2974',0.05,'EPSG','8666','Geoid (height correction) model file','g2003u06.bin',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-US Conus CSW',1);
INSERT INTO "grid_transformation" VALUES('EPSG','10019','NAD83 to NAVD88 height (7)','Uses Geoid03 hybrid model. See information source for further information. Note: Source CRS is 2D, used in this application of the method as a pseudo-3D CRS.','Derivation of approximate gravity-related heights from GPS observations.','EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','4269','EPSG','5703','EPSG','2975',0.05,'EPSG','8666','Geoid (height correction) model file','g2003u07.bin',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-US Conus CSE',1);
INSERT INTO "grid_transformation" VALUES('EPSG','10020','NAD83 to NAVD88 height (8)','Uses Geoid03 hybrid model. See information source for further information. Note: Source CRS is 2D, used in this application of the method as a pseudo-3D CRS.','Derivation of approximate gravity-related heights from GPS observations.','EPSG','9665','Geographic3D to GravityRelatedHeight (US .gtx)','EPSG','4269','EPSG','5703','EPSG','2976',0.05,'EPSG','8666','Geoid (height correction) model file','g2003u08.bin',NULL,NULL,NULL,NULL,NULL,NULL,'NGS-US Conus SE',1);
INSERT INTO "grid_transformation" VALUES('EPSG','10021','ETRS89 to Newlyn height (1)','May be used for transformations from WGS 84 to Newlyn.','Derivation of gravity-related heights from GPS observations.','EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5701','EPSG','2792',0.02,'EPSG','8666','Geoid (height correction) model file','OSTN02_OSGM02_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,'OS-UK Gbr',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10022','ETRS89 to Belfast height (1)','May be used for transformations from WGS 84 to Belfast.','Derivation of gravity-related heights from GPS observations.','EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5732','EPSG','2530',0.03,'EPSG','8666','Geoid (height correction) model file','OSTN02_OSGM02_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,'OS-UK NI',1);
INSERT INTO "grid_transformation" VALUES('EPSG','10023','ETRS89 to Douglas height (1)','May be used for transformations from WGS 84 to Douglas.','Derivation of gravity-related heights from GPS observations.','EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5750','EPSG','2803',0.02,'EPSG','8666','Geoid (height correction) model file','OSTN02_OSGM02_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,'OS-UK Man',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10024','ETRS89 to Fair Isle height (1)','May be used for transformations from WGS 84 to Fair Isle.','Derivation of gravity-related heights from GPS observations.','EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5741','EPSG','2794',0.05,'EPSG','8666','Geoid (height correction) model file','OSTN02_OSGM02_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,'OS-UK Fair',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10025','ETRS89 to Flannan Isles height (1)','May be used for transformations from WGS 84 to Flannan Isles.','Derivation of gravity-related heights from GPS observations.','EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5748','EPSG','2801',0.05,'EPSG','8666','Geoid (height correction) model file','OSTN02_OSGM02_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,'OS-UK Flan',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10026','ETRS89 to Foula height (1)','May be used for transformations from WGS 84 to Foula.','Derivation of gravity-related heights from GPS observations.','EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5743','EPSG','2796',0.05,'EPSG','8666','Geoid (height correction) model file','OSTN02_OSGM02_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,'OS-UK Foula',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10027','ETRS89 to Lerwick height (1)','May be used for transformations from WGS 84 to Lerwick.','Derivation of gravity-related heights from GPS observations.','EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5742','EPSG','2795',0.05,'EPSG','8666','Geoid (height correction) model file','OSTN02_OSGM02_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,'OS-UK Shet',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10028','ETRS89 to Malin Head height (1)','May be used for transformations from WGS 84 to Malin Head.','Derivation of gravity-related heights from GPS observations.','EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5731','EPSG','1305',0.04,'EPSG','8666','Geoid (height correction) model file','OSTN02_OSGM02_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,'OS-Ire',1);
INSERT INTO "grid_transformation" VALUES('EPSG','10029','ETRS89 to Newlyn (Orkney Isles) height (1)','May be used for transformations from WGS 84 to Newlyn (Orkney Isles).','Derivation of gravity-related heights from GPS observations.','EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5740','EPSG','2793',0.05,'EPSG','8666','Geoid (height correction) model file','OSTN02_OSGM02_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,'OS-UK Ork',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10030','ETRS89 to North Rona height (1)','May be used for transformations from WGS 84 to North Rona.','Derivation of gravity-related heights from GPS observations.','EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5745','EPSG','2798',0.05,'EPSG','8666','Geoid (height correction) model file','OSTN02_OSGM02_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,'OS-UK Rona',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10031','ETRS89 to St. Kilda height (1)','May be used for transformations from WGS 84 to St. Kilda.','Derivation of gravity-related heights from GPS observations.','EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5747','EPSG','2800',0.05,'EPSG','8666','Geoid (height correction) model file','OSTN02_OSGM02_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,'OS-UK Kilda',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10032','ETRS89 to St. Marys height (1)','May be used for transformations from WGS 84 to St. Marys.','Derivation of gravity-related heights from GPS observations.','EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5749','EPSG','2802',0.0,'EPSG','8666','Geoid (height correction) model file','OSTN02_OSGM02_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,'OS-UK Scilly',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10033','ETRS89 to Stornoway height (1)','May be used for transformations from WGS 84 to Stornoway.','Derivation of gravity-related heights from GPS observations.','EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5746','EPSG','2799',0.05,'EPSG','8666','Geoid (height correction) model file','OSTN02_OSGM02_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,'OS-UK Heb',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10034','ETRS89 to Sule Skerry height (1)','May be used for transformations from WGS 84 to Sule Skerry.','Derivation of gravity-related heights from GPS observations.','EPSG','9663','Geographic3D to GravityRelatedHeight (OSGM-GB)','EPSG','4937','EPSG','5744','EPSG','2797',0.05,'EPSG','8666','Geoid (height correction) model file','OSTN02_OSGM02_GB.txt',NULL,NULL,NULL,NULL,NULL,NULL,'OS-UK Sule',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10035','GDA94 to AHD height (1)','May be used for transformations from WGS 84 to AHD.','Derivation of gravity-related heights from GPS observations.','EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2899',0.4,'EPSG','8666','Geoid (height correction) model file','SC52_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SC52',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10036','GDA94 to AHD height (2)','May be used for transformations from WGS 84 to AHD. Uses AusGeoid98 model.','Derivation of gravity-related heights from GPS observations.','EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2900',0.4,'EPSG','8666','Geoid (height correction) model file','SC53_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SC53',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10037','GDA94 to AHD height (3)','May be used for transformations from WGS 84 to AHD. Uses AusGeoid98 model.','Derivation of gravity-related heights from GPS observations.','EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2901',0.4,'EPSG','8666','Geoid (height correction) model file','SC54_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SC54',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10038','GDA94 to AHD height (4)','May be used for transformations from WGS 84 to AHD. Uses AusGeoid98 model.','Derivation of gravity-related heights from GPS observations.','EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2902',0.4,'EPSG','8666','Geoid (height correction) model file','SD51_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SD51',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10039','GDA94 to AHD height (5)','May be used for transformations from WGS 84 to AHD. Uses AusGeoid98 model.','Derivation of gravity-related heights from GPS observations.','EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2903',0.4,'EPSG','8666','Geoid (height correction) model file','SD52_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SD52',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10040','GDA94 to AHD height (6)','May be used for transformations from WGS 84 to AHD. Uses AusGeoid98 model.','Derivation of gravity-related heights from GPS observations.','EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2904',0.4,'EPSG','8666','Geoid (height correction) model file','SD53_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SD53',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10041','GDA94 to AHD height (7)','May be used for transformations from WGS 84 to AHD. Uses AusGeoid98 model.','Derivation of gravity-related heights from GPS observations.','EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2905',0.4,'EPSG','8666','Geoid (height correction) model file','SD54_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SD54',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10042','GDA94 to AHD height (8)','May be used for transformations from WGS 84 to AHD. Uses AusGeoid98 model.','Derivation of gravity-related heights from GPS observations.','EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2906',0.4,'EPSG','8666','Geoid (height correction) model file','SD55_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SD55',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10043','GDA94 to AHD height (9)','May be used for transformations from WGS 84 to AHD. Uses AusGeoid98 model.','Derivation of gravity-related heights from GPS observations.','EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2907',0.4,'EPSG','8666','Geoid (height correction) model file','SE50_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SE50',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10044','GDA94 to AHD height (10)','May be used for transformations from WGS 84 to AHD. Uses AusGeoid98 model.','Derivation of gravity-related heights from GPS observations.','EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2908',0.4,'EPSG','8666','Geoid (height correction) model file','SE51_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SE51',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10045','GDA94 to AHD height (11)','May be used for transformations from WGS 84 to AHD. Uses AusGeoid98 model.','Derivation of gravity-related heights from GPS observations.','EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2909',0.4,'EPSG','8666','Geoid (height correction) model file','SE52_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SE52',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10046','GDA94 to AHD height (12)','May be used for transformations from WGS 84 to AHD. Uses AusGeoid98 model.','Derivation of gravity-related heights from GPS observations.','EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2910',0.4,'EPSG','8666','Geoid (height correction) model file','SE53_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SE53',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10047','GDA94 to AHD height (13)','May be used for transformations from WGS 84 to AHD. Uses AusGeoid98 model.','Derivation of gravity-related heights from GPS observations.','EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2911',0.4,'EPSG','8666','Geoid (height correction) model file','SE54_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SE54',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10048','GDA94 to AHD height (14)','May be used for transformations from WGS 84 to AHD. Uses AusGeoid98 model.','Derivation of gravity-related heights from GPS observations.','EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2912',0.4,'EPSG','8666','Geoid (height correction) model file','SE55_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SE55',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10049','GDA94 to AHD height (15)','May be used for transformations from WGS 84 to AHD. Uses AusGeoid98 model.','Derivation of gravity-related heights from GPS observations.','EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2913',0.4,'EPSG','8666','Geoid (height correction) model file','SF49_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SF49',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10050','GDA94 to AHD height (16)','May be used for transformations from WGS 84 to AHD. Uses AusGeoid98 model.','Derivation of gravity-related heights from GPS observations.','EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2914',0.4,'EPSG','8666','Geoid (height correction) model file','SF50_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SF50',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10051','GDA94 to AHD height (17)','May be used for transformations from WGS 84 to AHD. Uses AusGeoid98 model.','Derivation of gravity-related heights from GPS observations.','EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2915',0.4,'EPSG','8666','Geoid (height correction) model file','SF51_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SF51',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10052','GDA94 to AHD height (18)','May be used for transformations from WGS 84 to AHD. Uses AusGeoid98 model.','Derivation of gravity-related heights from GPS observations.','EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2916',0.4,'EPSG','8666','Geoid (height correction) model file','SF52_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SF52',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10053','GDA94 to AHD height (19)','May be used for transformations from WGS 84 to AHD. Uses AusGeoid98 model.','Derivation of gravity-related heights from GPS observations.','EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2917',0.4,'EPSG','8666','Geoid (height correction) model file','SF53_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SF53',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10054','GDA94 to AHD height (20)','May be used for transformations from WGS 84 to AHD. Uses AusGeoid98 model.','Derivation of gravity-related heights from GPS observations.','EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2918',0.4,'EPSG','8666','Geoid (height correction) model file','SF54_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SF54',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10055','GDA94 to AHD height (21)','May be used for transformations from WGS 84 to AHD. Uses AusGeoid98 model.','Derivation of gravity-related heights from GPS observations.','EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2919',0.4,'EPSG','8666','Geoid (height correction) model file','SF55_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SF55',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10056','GDA94 to AHD height (22)','May be used for transformations from WGS 84 to AHD. Uses AusGeoid98 model.','Derivation of gravity-related heights from GPS observations.','EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2920',0.4,'EPSG','8666','Geoid (height correction) model file','SF56_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SF56',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10057','GDA94 to AHD height (23)','May be used for transformations from WGS 84 to AHD. Uses AusGeoid98 model.','Derivation of gravity-related heights from GPS observations.','EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2921',0.4,'EPSG','8666','Geoid (height correction) model file','SG49_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SG49',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10058','GDA94 to AHD height (24)','May be used for transformations from WGS 84 to AHD. Uses AusGeoid98 model.','Derivation of gravity-related heights from GPS observations.','EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2922',0.4,'EPSG','8666','Geoid (height correction) model file','SG50_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SG50',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10059','GDA94 to AHD height (25)','May be used for transformations from WGS 84 to AHD. Uses AusGeoid98 model.','Derivation of gravity-related heights from GPS observations.','EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2923',0.4,'EPSG','8666','Geoid (height correction) model file','SG51_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SG51',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10060','GDA94 to AHD height (26)','May be used for transformations from WGS 84 to AHD. Uses AusGeoid98 model.','Derivation of gravity-related heights from GPS observations.','EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2924',0.4,'EPSG','8666','Geoid (height correction) model file','SG52_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SG52',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10061','GDA94 to AHD height (27)','May be used for transformations from WGS 84 to AHD. Uses AusGeoid98 model.','Derivation of gravity-related heights from GPS observations.','EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2925',0.4,'EPSG','8666','Geoid (height correction) model file','SG53_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SG53',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10062','GDA94 to AHD height (28)','May be used for transformations from WGS 84 to AHD. Uses AusGeoid98 model.','Derivation of gravity-related heights from GPS observations.','EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2926',0.4,'EPSG','8666','Geoid (height correction) model file','SG54_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SG54',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10063','GDA94 to AHD height (29)','May be used for transformations from WGS 84 to AHD. Uses AusGeoid98 model.','Derivation of gravity-related heights from GPS observations.','EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2927',0.4,'EPSG','8666','Geoid (height correction) model file','SG55_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SG55',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10064','GDA94 to AHD height (30)','May be used for transformations from WGS 84 to AHD. Uses AusGeoid98 model.','Derivation of gravity-related heights from GPS observations.','EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2928',0.4,'EPSG','8666','Geoid (height correction) model file','SG56_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SG56',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10065','GDA94 to AHD height (31)','May be used for transformations from WGS 84 to AHD. Uses AusGeoid98 model.','Derivation of gravity-related heights from GPS observations.','EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2929',0.4,'EPSG','8666','Geoid (height correction) model file','SH49_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SH49',1);
INSERT INTO "grid_transformation" VALUES('EPSG','10066','GDA94 to AHD height (32)','May be used for transformations from WGS 84 to AHD. Uses AusGeoid98 model.','Derivation of gravity-related heights from GPS observations.','EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2930',0.4,'EPSG','8666','Geoid (height correction) model file','SH50_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SH50',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10067','GDA94 to AHD height (33)','May be used for transformations from WGS 84 to AHD. Uses AusGeoid98 model.','Derivation of gravity-related heights from GPS observations.','EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2931',0.4,'EPSG','8666','Geoid (height correction) model file','SH51_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SH51',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10068','GDA94 to AHD height (34)','May be used for transformations from WGS 84 to AHD. Uses AusGeoid98 model.','Derivation of gravity-related heights from GPS observations.','EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2932',0.4,'EPSG','8666','Geoid (height correction) model file','SH52_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SH52',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10069','GDA94 to AHD height (35)','May be used for transformations from WGS 84 to AHD. Uses AusGeoid98 model.','Derivation of gravity-related heights from GPS observations.','EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2933',0.4,'EPSG','8666','Geoid (height correction) model file','SH53_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SH53',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10070','GDA94 to AHD height (36)','May be used for transformations from WGS 84 to AHD. Uses AusGeoid98 model.','Derivation of gravity-related heights from GPS observations.','EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2934',0.4,'EPSG','8666','Geoid (height correction) model file','SH54_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SH54',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10071','GDA94 to AHD height (37)','May be used for transformations from WGS 84 to AHD. Uses AusGeoid98 model.','Derivation of gravity-related heights from GPS observations.','EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2935',0.4,'EPSG','8666','Geoid (height correction) model file','SH55_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SH55',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10072','GDA94 to AHD height (38)','May be used for transformations from WGS 84 to AHD. Uses AusGeoid98 model.','Derivation of gravity-related heights from GPS observations.','EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2936',0.4,'EPSG','8666','Geoid (height correction) model file','SH56_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SH56',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10073','GDA94 to AHD height (39)','May be used for transformations from WGS 84 to AHD. Uses AusGeoid98 model.','Derivation of gravity-related heights from GPS observations.','EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2937',0.4,'EPSG','8666','Geoid (height correction) model file','SI50_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SI50',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10074','GDA94 to AHD height (40)','May be used for transformations from WGS 84 to AHD. Uses AusGeoid98 model.','Derivation of gravity-related heights from GPS observations.','EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2938',0.4,'EPSG','8666','Geoid (height correction) model file','SI51_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SI51',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10075','GDA94 to AHD height (41)','May be used for transformations from WGS 84 to AHD. Uses AusGeoid98 model.','Derivation of gravity-related heights from GPS observations.','EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2939',0.4,'EPSG','8666','Geoid (height correction) model file','SI53_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SI53',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10076','GDA94 to AHD height (42)','May be used for transformations from WGS 84 to AHD. Uses AusGeoid98 model.','Derivation of gravity-related heights from GPS observations.','EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2940',0.4,'EPSG','8666','Geoid (height correction) model file','SI54_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SI54',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10077','GDA94 to AHD height (43)','May be used for transformations from WGS 84 to AHD. Uses AusGeoid98 model.','Derivation of gravity-related heights from GPS observations.','EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2941',0.4,'EPSG','8666','Geoid (height correction) model file','SI55_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SI55',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10078','GDA94 to AHD height (44)','May be used for transformations from WGS 84 to AHD. Uses AusGeoid98 model.','Derivation of gravity-related heights from GPS observations.','EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2942',0.4,'EPSG','8666','Geoid (height correction) model file','SI56_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SI56',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10079','GDA94 to AHD height (45)','May be used for transformations from WGS 84 to AHD. Uses AusGeoid98 model.','Derivation of gravity-related heights from GPS observations.','EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2943',0.4,'EPSG','8666','Geoid (height correction) model file','SJ53_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SJ53',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10080','GDA94 to AHD height (46)','May be used for transformations from WGS 84 to AHD. Uses AusGeoid98 model.','Derivation of gravity-related heights from GPS observations.','EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2944',0.4,'EPSG','8666','Geoid (height correction) model file','SJ54_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SJ54',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10081','GDA94 to AHD height (47)','May be used for transformations from WGS 84 to AHD. Uses AusGeoid98 model.','Derivation of gravity-related heights from GPS observations.','EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2945',0.4,'EPSG','8666','Geoid (height correction) model file','SJ55_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SJ55',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10082','GDA94 to AHD height (48)','May be used for transformations from WGS 84 to AHD. Uses AusGeoid98 model.','Derivation of gravity-related heights from GPS observations.','EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5711','EPSG','2946',0.4,'EPSG','8666','Geoid (height correction) model file','SJ56_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SJ56',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10083','GDA94 to AHD (Tasmania) height (1)','May be used for transformations from WGS 84 to AHD (Tasmania). Uses AusGeoid98 model.','Derivation of gravity-related heights from GPS observations.','EPSG','9662','Geographic3D to GravityRelatedHeight (Ausgeoid98)','EPSG','4939','EPSG','5712','EPSG','2947',0.4,'EPSG','8666','Geoid (height correction) model file','SK55_DAT.htm',NULL,NULL,NULL,NULL,NULL,NULL,'GA-Aus SK55',0);
INSERT INTO "grid_transformation" VALUES('EPSG','10084','WGS 84 to EGM96 height (1)','Replaces WGS 84 to EGM84 height (1) (tfm code 15781). Replaced by WGS 84 to EGM2008 height (1) and (2) (tfm codes 3858-59). An executable using spherical harmonics is also available.','Derivation of gravity-related heights from GPS observations.','EPSG','9661','Geographic3D to GravityRelatedHeight (EGM)','EPSG','4979','EPSG','5773','EPSG','1262',1.0,'EPSG','8666','Geoid (height correction) model file','WW15MGH.GRD',NULL,NULL,NULL,NULL,NULL,NULL,'NGA-World',0);
INSERT INTO "grid_transformation" VALUES('EPSG','15486','CH1903 to CH1903+ (1)','For improved accuracy (0.01m) use CHENyx06 interpolation programme FINELTRA. File CHENyx06 replaced by CHENyx06a; there is a small area at the border of the data where some more real data has been introduced. swisstopo consider the change insignificant.','Approximation using NTv2 method of results of FINELTRA programme to an accuracy of 0.01m except at boundary of the Geneva and Vaud cantons, in city of Geneva and in the main valleys of Valais canton where differences are up to 20 cm.','EPSG','9615','NTv2','EPSG','4149','EPSG','4150','EPSG','1286',0.2,'EPSG','8656','Latitude and longitude difference file','CHENyx06a.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'BfL-Che',0);
INSERT INTO "grid_transformation" VALUES('EPSG','15488','RRAF 1991 to IGN 1988 MG height (1)','May be used for transformations from WGS 84 to IGN 1988 MG. Accuracy at each 0.025 deg x 0.025 degree grid node is given within the geoid model file.','Derivation of gravity-related heights from GPS observations. Accuracy 0.2m within onshore area.','EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4973','EPSG','5617','EPSG','2894',0.2,'EPSG','8666','Geoid (height correction) model file','ggg00_mg.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Glp MG',1);
INSERT INTO "grid_transformation" VALUES('EPSG','15489','RRAF 1991 to IGN 1988 LS height (1)','May be used for transformations from WGS 84 to IGN 1988 LS. Accuracy at each 0.025 deg x 0.025 degree grid node is given within the geoid model file.','Derivation of gravity-related heights from GPS observations. Accuracy 0.2m within onshore area.','EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4973','EPSG','5616','EPSG','2895',0.2,'EPSG','8666','Geoid (height correction) model file','ggg00_ls.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Glp LSt',1);
INSERT INTO "grid_transformation" VALUES('EPSG','15490','RRAF 1991 to IGN 1992 LD height (1)','May be used for transformations from WGS 84 to IGN 1992 LD. Accuracy at each 0.025 deg x 0.025 degree grid node is given within the geoid model file.','Derivation of gravity-related heights from GPS observations. Accuracy 0.5m within onshore area.','EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4973','EPSG','5618','EPSG','2893',0.5,'EPSG','8666','Geoid (height correction) model file','ggg00_ld.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Glp Des',1);
INSERT INTO "grid_transformation" VALUES('EPSG','15491','RRAF 1991 to IGN 1988 SB height (1)','May be used for transformations from WGS 84 to IGN 1988 SB. Accuracy at each 0.025 deg x 0.025 degree grid node is given within the geoid model file.','Derivation of gravity-related heights from GPS observations. Accuracy 0.2m within onshore area.','EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4973','EPSG','5619','EPSG','2891',0.2,'EPSG','8666','Geoid (height correction) model file','ggg00_sb.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Glp StB',1);
INSERT INTO "grid_transformation" VALUES('EPSG','15492','RRAF 1991 to IGN 1988 SM height (1)','May be used for transformations from WGS 84 to IGN 1988 SM. Accuracy at each 0.025 deg x 0.025 degree grid node is given within the geoid model file.','Derivation of gravity-related heights from GPS observations. Accuracy 0.2m within onshore area.','EPSG','9664','Geographic3D to GravityRelatedHeight (IGN1997)','EPSG','4973','EPSG','5620','EPSG','2890',0.2,'EPSG','8666','Geoid (height correction) model file','ggg00_sm.txt',NULL,NULL,NULL,NULL,NULL,NULL,'IGN Glp StM',1);
INSERT INTO "grid_transformation" VALUES('EPSG','15781','WGS 84 to EGM84 height (1)','File may also be found named as "EGM84.GRD". An executable using spherical harmonics is also available. Replaced by WGS 84 to EGM96 height (1) (CT code 10084).','Derivation of gravity-related heights from GPS observations.','EPSG','9661','Geographic3D to GravityRelatedHeight (EGM)','EPSG','4979','EPSG','5798','EPSG','1262',1.0,'EPSG','8666','Geoid (height correction) model file','DIRACC.DAT',NULL,NULL,NULL,NULL,NULL,NULL,'NGA-World',0);
INSERT INTO "grid_transformation" VALUES('EPSG','15785','AGD84 to WGS 84 (9)','Transformation taken from AGD84 to GDA94 (5) (code 1804) assuming that GDA94 is equivalent to WGS 84 within the accuracy of this tfm. Uses NTv2 method which expects longitudes positive west; EPSG CRS codes 4203 and 4326 have longitudes positive east.','1m accuracy.','EPSG','9615','NTv2','EPSG','4203','EPSG','4326','EPSG','2576',1.0,'EPSG','8656','Latitude and longitude difference file','National 84 (02.07.01).gsb',NULL,NULL,NULL,NULL,NULL,NULL,'OGP-Aus 1m',0);
INSERT INTO "grid_transformation" VALUES('EPSG','15786','AGD66 to WGS 84 (17)','Transformation taken from AGD66 to GDA94 (11) (code 1803) assuming that GDA94 is equivalent to WGS 84 within the accuracy of this tfm. Uses NTv2 method which expects longitudes positive west; EPSG CRS codes 4202 and 4326 have longitudes positive east.','1m accuracy.','EPSG','9615','NTv2','EPSG','4202','EPSG','4326','EPSG','2575',1.0,'EPSG','8656','Latitude and longitude difference file','A66 National (13.09.01).gsb',NULL,NULL,NULL,NULL,NULL,NULL,'OGP-Aus 0.1m',0);
INSERT INTO "grid_transformation" VALUES('EPSG','15834','NAD83 to NAD83(HARN) (44)','Uses NADCON method which expects longitudes positive west; EPSG GeogCRSs NAD83 (code 4269) and NAD83(HARN) (code 4152) have longitudes positive east. May be taken as approximate transformation NAD83-WGS 84 - see code 15835.','Geodetic survey. Accuracy 0.05m at 67% confidence level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1402',0.05,'EPSG','8657','Latitude difference file','nchpgn.las','EPSG','8658','Longitude difference file','nchpgn.los',NULL,NULL,'NGS-Usa NC',0);
INSERT INTO "grid_transformation" VALUES('EPSG','15835','NAD83 to WGS 84 (55)','Parameter files are from NAD83 to NAD83(HARN) (44) (code 15834) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1402',1.0,'EPSG','8657','Latitude difference file','nchpgn.las','EPSG','8658','Longitude difference file','nchpgn.los',NULL,NULL,'OGP-Usa NC',0);
INSERT INTO "grid_transformation" VALUES('EPSG','15836','NAD83 to NAD83(HARN) (45)','Uses NADCON method which expects longitudes positive west; EPSG GeogCRSs NAD83 (code 4269) and NAD83(HARN) (code 4152) have longitudes positive east. May be taken as approximate transformation NAD83-WGS 84 - see code 15837.','Geodetic survey. Accuracy 0.05m at 67% confidence level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1409',0.05,'EPSG','8657','Latitude difference file','schpgn.las','EPSG','8658','Longitude difference file','schpgn.los',NULL,NULL,'NGS-Usa SC',0);
INSERT INTO "grid_transformation" VALUES('EPSG','15837','NAD83 to WGS 84 (56)','Parameter files are from NAD83 to NAD83(HARN) (45) (code 15836) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1409',1.0,'EPSG','8657','Latitude difference file','schpgn.las','EPSG','8658','Longitude difference file','schpgn.los',NULL,NULL,'OGP-Usa SC',0);
INSERT INTO "grid_transformation" VALUES('EPSG','15838','NAD83 to NAD83(HARN) (46)','Uses NADCON method which expects longitudes positive west; EPSG GeogCRSs NAD83 (code 4269) and NAD83(HARN) (code 4152) have longitudes positive east. May be taken as approximate transformation NAD83-WGS 84 - see code 15839.','Geodetic survey. Accuracy 0.05m at 67% confidence level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4152','EPSG','1407',0.05,'EPSG','8657','Latitude difference file','pahpgn.las','EPSG','8658','Longitude difference file','pahpgn.los',NULL,NULL,'NGS-Usa PA',0);
INSERT INTO "grid_transformation" VALUES('EPSG','15839','NAD83 to WGS 84 (57)','Parameter files are from NAD83 to NAD83(HARN) (46) (code 15838) assuming that NAD83(HARN) is equivalent to WGS 84 within the accuracy of the transformation.','Approximation at the +/- 1m level.','EPSG','9613','NADCON','EPSG','4269','EPSG','4326','EPSG','1407',1.0,'EPSG','8657','Latitude difference file','pahpgn.las','EPSG','8658','Longitude difference file','pahpgn.los',NULL,NULL,'OGP-Usa PA',0);
INSERT INTO "grid_transformation" VALUES('EPSG','15840','Old Hawaiian to WGS 84 (8)','Transformation steps are from Old Hawaiian to NAD83 (1) (code 1454) assuming that NAD83 is equivalent to WGS 84 within the accuracy of the transformation.','Accuracy of transformation consistent with equivalence of WGS 84 and NAD 84 for Hawaii Islands. +/- 1 to 2 meters.','EPSG','9613','NADCON','EPSG','4135','EPSG','4326','EPSG','1334',2.0,'EPSG','8657','Latitude difference file','hawaii.las','EPSG','8658','Longitude difference file','hawaii.los',NULL,NULL,'OGP-Usa HI 2m',0);
INSERT INTO "grid_transformation" VALUES('EPSG','15841','Puerto Rico to WGS 84 (4)','Transformation steps are from Puerto Rico to NAD83 (1) (code 1461) assuming that NAD83 is equivalent to WGS 84 within the accuracy of the transformation.','Accuracy of transformation consistent with equivalence of WGS 84 and NAD 83 for Puerto Rico. +/- 1 to 2 meters.','EPSG','9613','NADCON','EPSG','4139','EPSG','4326','EPSG','3294',2.0,'EPSG','8657','Latitude difference file','prvi.las','EPSG','8658','Longitude difference file','prvi.los',NULL,NULL,'OGP-Pri 2m',0);
INSERT INTO "grid_transformation" VALUES('EPSG','15851','NAD27 to WGS 84 (79)','Transformation taken from NAD27 to NAD83 (1) (code 1241) assuming that NAD83 is equivalent to WGS 84 within the accuracy of this tfm. Uses NADCON method which expects longitudes positive west; EPSG CRS codes 4267 and 4326 have longitudes positive east.','Recommended for oil industry use in US Gulf of Mexico (GoM). Accuracy at 67% confidence level is 0.15m onshore, 5m nearshore and undetermined farther offshore.','EPSG','9613','NADCON','EPSG','4267','EPSG','4326','EPSG','2374',5.0,'EPSG','8657','Latitude difference file','conus.las','EPSG','8658','Longitude difference file','conus.los',NULL,NULL,'OGP-Usa Conus',0);
INSERT INTO "grid_transformation" VALUES('EPSG','15864','NAD27 to WGS 84 (85)','Transformation taken from NAD27 to NAD83 (2) (code 1243) assuming that NAD83 is equivalent to WGS 84 within the accuracy of this tfm. Uses NADCON method which expects longitudes positive west; EPSG CRS codes 4267 and 4326 have longitudes positive east.','Accuracy at 67% confidence level is 0.15m onshore, 5m nearshore and undetermined farther offshore.','EPSG','9613','NADCON','EPSG','4267','EPSG','4326','EPSG','2373',5.0,'EPSG','8657','Latitude difference file','alaska.las','EPSG','8658','Longitude difference file','alaska.los',NULL,NULL,'OGP-Usa AK',0);
INSERT INTO "grid_transformation" VALUES('EPSG','15895','ED50 to ETRS89 (11)','May be taken as approximate transformation ED50 to WGS 84 - see code 15907. NOTE: Parameter file is non-conformant with NTv2 specification - replaced by ED50 to ETRS89 (12) (code 15932).','For applications to an accuracy of 10-15cm (95% confidence) for Spain mainland and about 4cm (95%) for Balearic Islands.','EPSG','9615','NTv2','EPSG','4230','EPSG','4258','EPSG','3429',0.2,'EPSG','8656','Latitude and longitude difference file','sped2et.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'IGN-Esp',1);
INSERT INTO "grid_transformation" VALUES('EPSG','15907','ED50 to WGS 84 (40)','Parameter values from ED50 to ETRS89 (11) (code 15895). Assumes ETRS89 and WGS 84 can be considered the same to within the accuracy of the transformation. NOTE: Parameter file is non-conformant with NTv2 specification - replaced by ED50 to WGS 84 (41).','For applications to an accuracy of 1 metre.','EPSG','9615','NTv2','EPSG','4230','EPSG','4326','EPSG','3429',1.0,'EPSG','8656','Latitude and longitude difference file','sped2et.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'OGP-Esp',1);
INSERT INTO "grid_transformation" VALUES('EPSG','15932','ED50 to ETRS89 (12)','Replaces ED50 to ETRS89 (11) (code 15895) - see supersession record. May be taken as approximate transformation ED50 to WGS 84 - see code 15933.','For applications to an accuracy of 10-15cm (95% confidence) for Spain mainland and about 4cm (95%) for Balearic Islands.','EPSG','9615','NTv2','EPSG','4230','EPSG','4258','EPSG','3429',0.2,'EPSG','8656','Latitude and longitude difference file','SPED2ETV2.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'IGN-Esp v2',0);
INSERT INTO "grid_transformation" VALUES('EPSG','15933','ED50 to WGS 84 (41)','Parameter values from ED50 to ETRS89 (12) (code 15932). Assumes ETRS89 and WGS 84 can be considered the same to within the accuracy of the transformation. Replaces ED50 to WGS 84 (40) - see supersession record.','For applications to an accuracy of 1 metre.','EPSG','9615','NTv2','EPSG','4230','EPSG','4326','EPSG','3429',1.0,'EPSG','8656','Latitude and longitude difference file','SPED2ETV2.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'OGP-Esp v2',0);
INSERT INTO "grid_transformation" VALUES('EPSG','15940','NTF to RGF93 (2)','Emulation using NTv2 method of France Geocentric Interpolation method tfm NTF to RGF93 (1), code 1053. May be taken as approximate transformation to ETRS89 or WGS 84 - see tfm codes 15941 and 15942.','For applications requiring an accuracy of better than 1 metre.','EPSG','9615','NTv2','EPSG','4275','EPSG','4171','EPSG','1326',1.0,'EPSG','8656','Latitude and longitude difference file','rgf93_ntf.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'ESRI-Fra 1m emulation',1);
INSERT INTO "grid_transformation" VALUES('EPSG','15941','NTF to ETRS89 (3)','These parameter values are taken from NTF to RGR93 (2) (code 15940) as RGR93 may be considered equivalent to ETRS89 within the accuracy of the transformation. Emulation of France Geocentric Interpolation method tfm code 1054.','For applications requiring an accuracy of better than 1 metre.','EPSG','9615','NTv2','EPSG','4275','EPSG','4258','EPSG','1326',1.0,'EPSG','8656','Latitude and longitude difference file','rgf93_ntf.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'EPSG-Fra 1m emulation',1);
INSERT INTO "grid_transformation" VALUES('EPSG','15942','NTF to WGS 84 (3)','These parameter values are taken from NTF to RGR93 (2) (code 15940) as RGR93 may be considered equivalent to WGS 84 within the accuracy of the transformation. Emulation of France Geocentric Interpolation method tfm code 15939.','For applications requiring an accuracy of better than 1 metre.','EPSG','9615','NTv2','EPSG','4275','EPSG','4326','EPSG','1326',1.0,'EPSG','8656','Latitude and longitude difference file','rgf93_ntf.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'EPSG-Fra 1m emulation',1);
INSERT INTO "grid_transformation" VALUES('EPSG','15944','NEA74 Noumea to RGNC91-93 (4)','Emulation using NTv2 method of tfm NEA74 Noumea to RGNC91-93 (3) (code 15943).','Accuracy 5-10cm.','EPSG','9615','NTv2','EPSG','4644','EPSG','4749','EPSG','2823',0.05,'EPSG','8656','Latitude and longitude difference file','RGNC1991_NEA74Noumea.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'ESRI-Ncl 0.05m',1);
INSERT INTO "grid_transformation" VALUES('EPSG','15947','IGN72 Grande Terre to RGNC91-93 (6)','Emulation using NTv2 method of tfm IGN72 Grande Terre to RGNC91-93 (4) (code 15945).','Accuracy better than +/- 0.1 metre.','EPSG','9615','NTv2','EPSG','4662','EPSG','4749','EPSG','2822',0.1,'EPSG','8656','Latitude and longitude difference file','RGNC1991_IGN72GrandeTerre.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'ESRI-Ncl 0.1m',1);
INSERT INTO "grid_transformation" VALUES('EPSG','15948','DHDN to ETRS89 (8)','Developed for ATKIS (Amtliches Topographisch-Kartographisches Informationssystem [Official Topographic and Cartographic Information System]). Provides a uniform transformation across the whole country. May be used as tfm to WGS84 - see tfm code 15949.','For applications requiring an accuracy of better than 1 metre.','EPSG','9615','NTv2','EPSG','4314','EPSG','4258','EPSG','3339',0.9,'EPSG','8656','Latitude and longitude difference file','BETA2007.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'BKG-Deu BeTA2007',0);
INSERT INTO "grid_transformation" VALUES('EPSG','15949','DHDN to WGS 84 (4)','These parameter values are taken from DHDN to ETRS89 (8) (code 15948) as ETRS89 may be considered equivalent to WGS 84 within the accuracy of the transformation.','For applications requiring an accuracy of better than 1 metre.','EPSG','9615','NTv2','EPSG','4314','EPSG','4326','EPSG','3339',1.0,'EPSG','8656','Latitude and longitude difference file','BETA2007.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'OGP-Deu BeTA2007',0);
INSERT INTO "grid_transformation" VALUES('EPSG','15954','RD/83 to WGS 84 (1)','These parameter values are taken from DHDN to ETRS89 (8) (code 15948) as RD/83 and ETRS89 may be considered equivalent to DHDN and WGS 84 respectively within the accuracy of the transformation.','For applications requiring an accuracy of better than 1 metre.','EPSG','9615','NTv2','EPSG','4745','EPSG','4326','EPSG','2545',1.0,'EPSG','8656','Latitude and longitude difference file','BETA2007.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'OGP-Deu BeTA2007',0);
INSERT INTO "grid_transformation" VALUES('EPSG','15955','PD/83 to WGS 84 (1)','These parameter values are taken from DHDN to ETRS89 (8) (code 15948) as PD/83 and ETRS89 may be considered equivalent to DHDN and WGS 84 respectively within the accuracy of the transformation.','For applications requiring an accuracy of better than 1 metre.','EPSG','9615','NTv2','EPSG','4746','EPSG','4326','EPSG','2544',1.0,'EPSG','8656','Latitude and longitude difference file','BETA2007.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'OGP-Deu BeTA2007',0);
INSERT INTO "grid_transformation" VALUES('EPSG','15958','RGF93 to NTF (2)','Emulation using NTv2 method of France Geocentric Interpolation method tfm NTF to RGF93 (1), code 1053. Note that grid file parameters are of opposite sign. May be taken as approximate transformation to ETRS89 or WGS 84 - see tfm codes 15959 and 15960.','For applications requiring an accuracy of better than 1 metre.','EPSG','9615','NTv2','EPSG','4171','EPSG','4275','EPSG','3694',1.0,'EPSG','8656','Latitude and longitude difference file','rgf93_ntf.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'ESRI-Fra 1m emulation',0);
INSERT INTO "grid_transformation" VALUES('EPSG','15959','ETRS89 to NTF (3)','These parameter values are taken from RGF93 to NTF (2) (code 15958) as RGF93 may be considered equivalent to ETRS89 within the accuracy of the transformation. Emulation of France Geocentric Interpolation method tfm code 1054: note reversal of sign.','For applications requiring an accuracy of better than 1 metre.','EPSG','9615','NTv2','EPSG','4258','EPSG','4275','EPSG','3694',1.0,'EPSG','8656','Latitude and longitude difference file','rgf93_ntf.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'EPSG-Fra 1m emulation',0);
INSERT INTO "grid_transformation" VALUES('EPSG','15960','WGS 84 to NTF (3)','These parameter values are taken from RGF93 to NTF (2) (code 15958) as RGF93 may be considered equivalent to WGS 84 within the accuracy of the transformation. Emulation of France Geocentric Interpolation method tfm code 15939: note reversal of sign.','For applications requiring an accuracy of better than 1 metre.','EPSG','9615','NTv2','EPSG','4326','EPSG','4275','EPSG','3694',1.0,'EPSG','8656','Latitude and longitude difference file','rgf93_ntf.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'EPSG-Fra 1m emulation',0);
INSERT INTO "grid_transformation" VALUES('EPSG','15961','RGNC91-93 to NEA74 Noumea (4)','Emulation using NTv2 method of tfm NEA74 Noumea to RGNC91-93 (3) (code 15943). Note reversal of sign of parameter values in grid file.','Accuracy 5-10cm.','EPSG','9615','NTv2','EPSG','4749','EPSG','4644','EPSG','2823',0.05,'EPSG','8656','Latitude and longitude difference file','RGNC1991_IGN72GrandeTerre.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'ESRI-Ncl 0.05m',1);
INSERT INTO "grid_transformation" VALUES('EPSG','15962','RGNC91-93 to IGN72 Grande Terre (6)','Emulation using NTv2 method of tfm IGN72 Grande Terre to RGNC91-93 (4) (code 15945). Note reversal sign of of parameter values in grid file.','Accuracy better than +/- 0.1 metre.','EPSG','9615','NTv2','EPSG','4749','EPSG','4662','EPSG','2822',0.1,'EPSG','8656','Latitude and longitude difference file','RGNC1991_IGN72GrandeTerre.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'ESRI-Ncl 0.1m',0);
-98
View File
@@ -1,98 +0,0 @@
-- This file is hand generated.
-- Denmark
INSERT INTO "grid_transformation" VALUES(
'PROJ','EPSG_5799_TO_EPSG_4937','DVR90 height to ETRS89',
NULL,NULL,
'PROJ','HEIGHT_TO_GEOGRAPHIC3D','GravityRelatedHeight to Geographic3D',
'EPSG','5799', -- source CRS (DVR90 height)
'EPSG','4937', -- target CRS (ETRS89)
'EPSG','3237', -- area of use: Denmark onshore
NULL,
'EPSG','8666','Geoid (height correction) model file','dvr90.gtx',
NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES(
'PROJ','EPSG_5733_TO_EPSG_4937','DNN height to ETRS89',
NULL,NULL,
'PROJ','HEIGHT_TO_GEOGRAPHIC3D','GravityRelatedHeight to Geographic3D',
'EPSG','5733', -- source CRS (DNN height)
'EPSG','4937', -- target CRS (ETRS89)
'EPSG','3237', -- area of use: Denmark onshore
NULL,
'EPSG','8666','Geoid (height correction) model file','dnn.gtx',
NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
-- Faroe Islands
INSERT INTO "grid_transformation" VALUES(
'PROJ','EPSG_5317_TO_EPSG_4937','FVR09 height to ETRS89',
NULL,NULL,
'PROJ','HEIGHT_TO_GEOGRAPHIC3D','GravityRelatedHeight to Geographic3D',
'EPSG','5317', -- source CRS (FVR09 height)
'EPSG','4937', -- target CRS (ETRS89)
'EPSG','3248', -- area of use: Faroe Islands - onshore
NULL,
'EPSG','8666','Geoid (height correction) model file','fvr09.gtx',
NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
-- Sweden
INSERT INTO "grid_transformation" VALUES(
'PROJ','EPSG_5613_TO_EPSG_4977','RH2000 height to SWEREF99',
NULL,NULL,
'PROJ','HEIGHT_TO_GEOGRAPHIC3D','GravityRelatedHeight to Geographic3D',
'EPSG','5613', -- source CRS (RH2000 height)
'EPSG','4977', -- target CRS (SWEREF99)
'EPSG','3313', -- area of use: Sweden onshore
NULL,
'EPSG','8666','Geoid (height correction) model file','SWEN17_RH2000.gtx',
NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
----- Hopefully temporary entry for BWTA2017.gsb grid -----
INSERT INTO "area" VALUES('PROJ','BWTA2017','Germany - Baden-Wurtemberg','Germany - Baden-Wurtemberg',47.5,49.83,7.49,10.51,0);
-- Advertize a 0.8 accuracy slightly better than the 0.9 of BETA2007 for sort purposes
INSERT INTO "grid_transformation" VALUES('PROJ','BWTA2017','DHDN to ETRS89 (BWTA2017)','DHDN to ETRS89 for Baden-Wurtemberg for ALKIS 2017. Using official BWTA2017 grid but this transformation entry has been created temporarily by PROJ. Accuracy indication not to be considered as authoritative','For applications requiring an accuracy of better than 1 metre.','EPSG','9615','NTv2','EPSG','4314','EPSG','4258','PROJ','BWTA2017',0.89,'EPSG','8656','Latitude and longitude difference file','BWTA2017.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'-',0);
----- Hopefully temporary entry for SeTa2016.gsb grid -----
INSERT INTO "area" VALUES('PROJ','SETA2016','Germany - Saarland','Germany - Saarland',49.10,49.64,6.345,7.45,0);
-- Advertize a 0.8 accuracy slightly better than the 0.9 of BETA2007 for sort purposes
INSERT INTO "grid_transformation" VALUES('PROJ','SETA2016','DHDN to ETRS89 (SETA2016)','DHDN to ETRS89 for Saarland. Using official SETA2016 grid but this transformation entry has been created temporarily by PROJ. Accuracy indication not to be considered as authoritative','For applications requiring an accuracy of better than 1 metre.','EPSG','9615','NTv2','EPSG','4314','EPSG','4258','PROJ','SETA2016',0.89,'EPSG','8656','Latitude and longitude difference file','SeTa2016.gsb',NULL,NULL,NULL,NULL,NULL,NULL,'-',0);
-- Iceland
INSERT INTO "grid_transformation" VALUES(
'PROJ','EPSG_8089_TO_EPSG_5323','ISH2004 height to ISN2004',
NULL,NULL,
'PROJ','HEIGHT_TO_GEOGRAPHIC3D','GravityRelatedHeight to Geographic3D',
'EPSG','8089', -- source CRS (ISH2004 height)
'EPSG','5323', -- target CRS (ISN2004 geographic 3D)
'EPSG','1120', -- area of use: Iceland - onshore and offshore
NULL,
'EPSG','8666','Geoid (height correction) model file','Icegeoid_ISN2004.gtx',
NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES(
'PROJ','EPSG_8089_TO_EPSG_4945','ISH2004 height to ISN93',
NULL,NULL,
'PROJ','HEIGHT_TO_GEOGRAPHIC3D','GravityRelatedHeight to Geographic3D',
'EPSG','8089', -- source CRS (ISH2004 height)
'EPSG','4945', -- target CRS (ISN93 geographic 3D)
'EPSG','1120', -- area of use: Iceland - onshore and offshore
NULL,
'EPSG','8666','Geoid (height correction) model file','Icegeoid_ISN93.gtx',
NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
INSERT INTO "grid_transformation" VALUES(
'PROJ','EPSG_8089_TO_EPSG_8085','ISH2004 height to ISN2016',
NULL,NULL,
'PROJ','HEIGHT_TO_GEOGRAPHIC3D','GravityRelatedHeight to Geographic3D',
'EPSG','8089', -- source CRS (ISH2004 height)
'EPSG','8085', -- target CRS (ISN2016 geographic 3D)
'EPSG','1120', -- area of use: Iceland - onshore and offshore
NULL,
'EPSG','8666','Geoid (height correction) model file','Icegeoid_ISN2016.gtx',
NULL,NULL,NULL,NULL,NULL,NULL,NULL,0);
File diff suppressed because it is too large Load Diff
-3157
View File
File diff suppressed because it is too large Load Diff

Some files were not shown because too many files have changed in this diff Show More