Publication Date: 2018-10-29
Approval Date: 2018-06-07
Submission Date: 2018-05-17
Reference number of this document: OGC 18-037r1
Reference URL for this document: http://www.opengis.net/doc/DP/GPKG-OWSContext-Harmony
Category: OGC Public Discussion Paper
Editor: Jeff Yutzler
Title: GeoPackage / OWS Context Harmonization Discussion Paper
COPYRIGHT
Copyright © 2018 Open Geospatial Consortium. To obtain additional rights of use, visit http://www.opengeospatial.org/
WARNING
This document is not an OGC Standard. This document is an OGC Public Discussion Paper and is not an official position of the OGC membership. It is distributed for review and comment. It is subject to change without notice and may not be referred to as an OGC Standard. Further, any OGC Public Discussion Paper should not be referenced as required or mandatory technology in procurements. However, the discussions in this document could very well lead to the definition of an OGC Standard.
LICENSE AGREEMENT
Permission is hereby granted by the Open Geospatial Consortium, ("Licensor"), free of charge and subject to the terms set forth below, to any person obtaining a copy of this Intellectual Property and any associated documentation, to deal in the Intellectual Property without restriction (except as set forth below), including without limitation the rights to implement, use, copy, modify, merge, publish, distribute, and/or sublicense copies of the Intellectual Property, and to permit persons to whom the Intellectual Property is furnished to do so, provided that all copyright notices on the intellectual property are retained intact and that each person to whom the Intellectual Property is furnished agrees to the terms of this Agreement.
If you modify the Intellectual Property, all copies of the modified Intellectual Property must include, in addition to the above copyright notice, a notice that the Intellectual Property includes modifications that have not been approved or adopted by LICENSOR.
THIS LICENSE IS A COPYRIGHT LICENSE ONLY, AND DOES NOT CONVEY ANY RIGHTS UNDER ANY PATENTS THAT MAY BE IN FORCE ANYWHERE IN THE WORLD. THE INTELLECTUAL PROPERTY IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND NONINFRINGEMENT OF THIRD PARTY RIGHTS. THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE DO NOT WARRANT THAT THE FUNCTIONS CONTAINED IN THE INTELLECTUAL PROPERTY WILL MEET YOUR REQUIREMENTS OR THAT THE OPERATION OF THE INTELLECTUAL PROPERTY WILL BE UNINTERRUPTED OR ERROR FREE. ANY USE OF THE INTELLECTUAL PROPERTY SHALL BE MADE ENTIRELY AT THE USER’S OWN RISK. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR ANY CONTRIBUTOR OF INTELLECTUAL PROPERTY RIGHTS TO THE INTELLECTUAL PROPERTY BE LIABLE FOR ANY CLAIM, OR ANY DIRECT, SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM ANY ALLEGED INFRINGEMENT OR ANY LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR UNDER ANY OTHER LEGAL THEORY, ARISING OUT OF OR IN CONNECTION WITH THE IMPLEMENTATION, USE, COMMERCIALIZATION OR PERFORMANCE OF THIS INTELLECTUAL PROPERTY.
This license is effective until terminated. You may terminate it at any time by destroying the Intellectual Property together with all copies in any form. The license will also terminate if you fail to comply with any term or condition of this Agreement. Except as provided in the following sentence, no such termination of this license shall require the termination of any third party end-user sublicense to the Intellectual Property which is in force as of the date of notice of such termination. In addition, should the Intellectual Property, or the operation of the Intellectual Property, infringe, or in LICENSOR’s sole opinion be likely to infringe, any patent, copyright, trademark or other right of a third party, you agree that LICENSOR, in its sole discretion, may terminate this license without any compensation or liability to you, your licensees or any other party. You agree upon termination of any kind to destroy or cause to be destroyed the Intellectual Property together with all copies in any form, whether held by you or by any third party.
Except as contained in this notice, the name of LICENSOR or of any other holder of a copyright in all or part of the Intellectual Property shall not be used in advertising or otherwise to promote the sale, use or other dealings in this Intellectual Property without prior written authorization of LICENSOR or such copyright holder. LICENSOR is and shall at all times be the sole entity that may authorize you or any third party to use certification marks, trademarks or other special designations to indicate compliance with any LICENSOR standards or specifications.
This Agreement is governed by the laws of the Commonwealth of Massachusetts. The application to this Agreement of the United Nations Convention on Contracts for the International Sale of Goods is hereby expressly excluded. In the event any provision of this Agreement shall be deemed unenforceable, void or invalid, such provision shall be modified so as to make it valid and enforceable, and as so modified the entire Agreement shall remain in full force and effect. No decision, action or inaction by LICENSOR shall be construed to be a waiver of any rights or remedies available to it.
None of the Intellectual Property or underlying information or technology may be downloaded or otherwise exported or reexported in violation of U.S. export laws and regulations. In addition, you are responsible for complying with any local laws in your jurisdiction which may impact your right to import, export or use the Intellectual Property, and you represent that you have complied with any regulations or registration procedures required by applicable law to make this license enforceable.
- 1. Summary
- 2. References
- 3. Terms and definitions
- 4. Overview
- 5. OWS Context Extensions for Relational Databases
- 6. GeoPackage Extension for OWS Context
- 7. Discussion
- Appendix A: OWS Context Example Document
- Appendix B: Revision History
1. Summary
This OGC discussion paper presents an approach to harmonize the OGC GeoPackage and OWS Context standards through a set of extensions. GeoPackage is an open, standards-based, platform-independent, portable, self-describing, compact format for storing and transferring geospatial data and information as part of an SQLite database. OWS Context is an open format linking geospatial web services and information. A draft standard has been produced and this Discussion Paper is designed to be a companion to that draft standard to assist in discussion. The draft standard contains extensions to both GeoPackage and OWS Context.
This document is the work of collaboration between the GeoPackage and OWS Context Standards Working Groups (SWGs).
1.1. Requirements & Research Motivation
GeoPackage and OWS Context are two OGC encoding standards that have potentially complementary and overlapping uses. There are two use cases that the submitters of this discussion paper would like to see supported in a standards-based way:
-
Encoding of OWS Context content within a GeoPackage, so that a GeoPackage can load a list of OWS Contexts, present them to the user, and allow the user to select the one which most closely matches their desired activity. This would allow the OWS Context to act as a standards-based project file for GeoPackage.
-
Encoding of GeoPackage content within an OWS Context file, so that an OWS Context can refer to GeoPackage content in the same way it can refer to services, files (e.g., GML or GeoJSON), and inline content. This would increase the utility of OWS Context because GeoPackage is becoming an increasingly common container for geospatial data and information.
In addition, the intent of the OWS Context extensions is to design them in such a way that they will work with generic relational databases, not just SQLite-based GeoPackage.
1.2. Prior-After Comparison
Before this work, the GeoPackage and OWS Context standards were completely independent of each other. There was neither a standard way to encode an OWS Context in a GeoPackage nor a standard way to reference GeoPackage content in an OWS Context. In 2014, a joint OWS Context / GeoPackage SWG was formed, but unfortunately this effort did not lead to any concrete work products.
As of the date of this document, the market adoption of OWS Context appears to be fairly limited. The authors of this OGC Discussion Paper are not aware of any studies analyzing OWS Context adoption or viewpoints of what would lead to increased adoption. Acceptance of the proposals in this paper could possibly lead to increased adoption of both OWS Context and GeoPackage.
There is a community extension that allows for OWS Context files to be stored within a GeoPackage. However, this community extension encodes OWS Context content as either a JSON or Atom document. Since GeoPackage is an SQLite (relational) database, GeoPackage developers have stated that they prefer to work entirely in the SQL domain as much as possible.
1.3. Recommendations for Future Work
The GeoPackage extension presented in this paper does not define an encoding for style information. This is an essential component of OWS Context and without it the implementation is incomplete. The existing SLD encoding standard is tightly coupled to the XML format. Since, as mentioned previously, GeoPackage developers prefer to work in the SQL domain, this format is not suitable. The standardization process should be delayed until this issue is resolved.
The development of a suitable style encoding for GeoPackage is dependent on ongoing efforts by the Styled Layer Descriptor (SLD) SWG and other activities as described by the Portrayal Concept Development Study. As of this writing, the SLD SWG is in the process of producing a conceptual model for SLD2 that would support multiple encodings. If this model is produced and adopted by OGC, it would be appropriate to produce a GeoPackage encoding for it.
If the approach described by this document is embraced by the relevant SWGs, the effort should culminate in a new OGC standard. This standard would be an extension to both the GeoPackage encoding standard and the OWS Context encoding standard. (Note that as far as the authors are aware, this is the first time OGC has attempted to produce a standard that is an extension to two different standards simultaneously.)
1.4. Document contributor contact points
All questions regarding this document should be directed to the editor or the contributors:
Contacts
Name | Organization |
---|---|
Jeff Yutzler (editor) |
Image Matters LLC |
1.5. Foreword
Attention is drawn to the possibility that some of the elements of this document may be the subject of patent rights. The Open Geospatial Consortium shall not be held responsible for identifying any or all such patent rights.
Recipients of this document are requested to submit, with their comments, notification of any relevant patent claims or other intellectual property rights of which they may be aware that might be infringed by any implementation of the standard set forth in this document, and to provide supporting documentation.
2. References
The following normative documents are referenced in this document.
Note
|
Only normative standards are referenced here, e.g. OGC, ISO, or other SDO standards. All other references are defined as inline links. |
3. Terms and definitions
For the purposes of this report, the definitions specified in Clause 4 of the OWS Common Implementation Standard OGC 06-121r9 shall apply. In addition, the following terms and definitions apply.
-
common operational picture
A common operational picture is a single identical display of relevant information shared by more than one command. A common operational picture facilitates collaborative planning and assists all echelons to achieve situational awareness. (<<OWSContext1.0CM>>)
-
contents
As part of an OWS Context, a document that acts as a request or a response to an operation.
As part of a GeoPackage, contents represent a set of information layers that are stored in that GeoPackage.
-
context
A context document is a document describing the set of resources and their configuration, and ancillary information (area of interest, etc.) which defines the information representation of a common operating picture. (<<OWSContext1.0CM>>)
-
extension
An extension is a set of requirements for a standard designed to add new interoperable capabilities or constrain existing ones to improve interoperability.
-
offering
As part of an OWS Context, an offering is an object describes a specific information layer such as a service binding or inline content. A resource has at least one offering.
-
operation
As part of an OWS Context, an operation is an object describing the actual information exchange required to access the desired content. An offering has at least one operation.
-
resource
As part of an OWS Context, a resource is a configured set of information which is uniquely identifiable to a user. This can be realized as in-line or external content or by one or more configured web services. An OWS Context has at least one resource. (<<OWSContext1.0CM>>)
3.1. Abbreviated terms
-
COP Common Operational Picture
-
GML Geography Markup Language
-
GPKG GeoPackage
-
JSON JavaScript Object Notation
-
OWS OGC Web Services
-
RDBMS Relational Database Management System
-
SLD Styled Layer Descriptor
-
SWG Standards Working Group
-
XML eXtensible Markup language
4. Overview
Section 5 (OWS Context Extensions for Relational Databases) describes extensions to the OWS Context Encoding Standard.
Section 6 (GeoPackage Extension for OWS Context) describes extensions to the GeoPackage Encoding Standard.
Section 7 (Discussion) describes design decisions and other discussion points that are relevant to the development of this set of extensions.
Annex A (OWS Context Example Document) presents an example OWS Context document in the GeoJSON format that demonstrates the use of these extensions.
5. OWS Context Extensions for Relational Databases
This section describes a set of extensions to the OWS Context Encoding Standard needed to support relational databases, including but not limited to SQLite-based GeoPackage.
5.1. SQL Resource Extension
This OWS Context extension defines a new datatype called owc:SQLResource. This extension applies when a Context document is completely stored within a relational (SQL) database. Since relational databases have no mechanical way to control ordering, this extension provides a new datatype that contains an element that can be implemented as a column to support ordering.
5.1.1. Datatype owc:SQLResource
This datatype extends owc:Resource with the element(s) listed in Table 1.
Name | Definition | Data Type and Values | Multiplicity and Use |
---|---|---|---|
|
The ascending order of configured resources |
DOUBLE |
Zero or one (optional) |
Note
|
This element is a double because the conventional way to set the order of an element in the middle of an ordered list is to set its order to a value midway between the preceding and following list elements. |
5.2. SQL Content Extension
This extension defines the following:
-
a set of constraints on two existing datatypes, and
-
a new datatype.
This extension applies when a Context document refers to content within a relational (SQL) database.
5.2.1. Constraints on Datatype owc:Offering
The code
of an owc:Offering element determines whether this extension is in use for that offering.
(For example, the codes for GeoPackage offerings are listed in Table 5.)
When the SQL Content Extension is in use, an owc:Offering is constrained as per Table 2.
Note
|
The constraints are underlined. |
Name | Definition | Data Type and Values | Multiplicity and Use |
---|---|---|---|
|
Offering Code |
CharacterString |
One (mandated) |
|
Operations used to invoke the service |
owc:Operation |
One (mandatory) |
|
N/A |
N/A |
Zero (prohibited) |
5.2.2. Constraints on Datatype owc:Operation
When the SQL Content Extension is in use for an offering, owc:Operation child elements of that offering are constrained as per Table 3.
Note
|
The constraints are underlined. |
Name | Definition | Data Type and Values | Multiplicity and Use |
---|---|---|---|
|
as per extension |
CharacterString |
One (mandated) |
|
|
CharacterString |
One (mandated) |
|
|
CharacterString |
One (mandated) |
|
Service Request URL |
URI |
One (mandatory) |
|
Request body content |
owc:SQLContent (Datatype owc:SQLContent) |
One (mandatory) |
|
N/A |
N/A |
Zero (prohibited) |
|
Application specific content |
N/A |
Zero or more (optional) |
Note
|
The |
5.2.3. Datatype owc:SQLContent
When the SQL Content Extension is in use for an offering (for example, the code GPKG
as described in the note above), the request body content for its operation (see request
above) is an owc:SQLContent as described by Table 4.
For a pure SQL implementation, clients may use the query
element directly.
For a GeoPackage, the from
may be more useful because it refers to a table name that can be looked up in gpkg_contents, allowing it to be used as a proper GeoPackage content type.
Name | Definition | Data Type and Values | Multiplicity and Use |
---|---|---|---|
|
a single table or view name |
CharacterString |
One (mandatory) |
|
the actual SQL query |
CharacterString |
One (mandatory) |
|
Application specific content |
N/A |
Zero or more (optional) |
Note
|
If joins are needed, they should be established as views beforehand so that the |
Warning
|
It is the responsibility of the OWS Context client to verify that the |
5.3. GeoPackage Extension
This OWS Context extension supports content stored in a GeoPackage. This can include referencing itself (i.e., when the context and the content are in the same GeoPackage) or GeoPackages that are available on the local filesystem.
When the code
of an owc:Offering is one of the codes listed in Table 5, the SQL Content Extension applies and the code
for operations is GPKG
. The from
of the SQLContent corresponds to the name of the user-defined table in the GeoPackage. This allows clients to use gpkg_contents
and other GeoPackage tables normally.
Code | Dependency |
---|---|
|
|
|
|
|
|
|
6. GeoPackage Extension for OWS Context
This section describes a GeoPackage extension that supports OWS Context. The following subsections describe each relevant table and how it should be used in GeoPackage software. The full details of each table including schema and requirements are published in the draft standard.
6.1. gpkg_extensions
Table
To use this extension, add the following rows to this table:
table_name |
column_name |
extension_name |
definition |
scope |
---|---|---|---|---|
|
NULL |
|
See note below |
|
|
NULL |
|
See note below |
|
|
NULL |
|
See note below |
|
|
NULL |
|
See note below |
|
|
NULL |
|
See note below |
|
|
NULL |
|
See note below |
|
Note
|
The |
6.2. gpkgext_context
Table
Add a row to this table for each OWS Context as shown in Table 7. (This table implements owc:Context from [OWSContext1.0CM].)
Column |
Value |
---|---|
|
Autoincrement primary key |
|
A human-readable title for the OWS Context document |
|
A human-readable description of the OWS Context document purpose and/or content |
|
timestamp of last change to content, in ISO 8601 format |
|
Bounding box minimum easting or longitude for the users of the context document |
|
Bounding box minimum northing or latitude for the users of the context document |
|
Bounding box maximum easting or longitude for the users of the context document |
|
Bounding box maximum northing or latitude for the users of the context document |
|
Spatial Reference System ID: |
|
Identifier for the author of the document |
|
Identifier for the publisher of the document |
|
The tool/application used to create the context document and its properties |
|
Rights which apply to the context document |
|
Comma-delimited list of keywords related to this context document |
|
|
|
Beginning of time interval, in ISO 8601 format |
|
End of time interval, in ISO 8601 format |
6.3. gpkgext_context_resources
Table
Add a row to this table for each OWS Context resource as shown in Table 8. (This table implements owc:SQLResource as per Datatype owc:SQLResource.)
Column |
Value |
---|---|
|
Autoincrement primary key |
|
|
|
Identifier for the author of the resource definition |
|
Identifier for the publisher of the resource definition |
|
Rights which apply to the resource definition |
|
Bounding box minimum easting or longitude of the resource |
|
Bounding box minimum northing or latitude of the resource |
|
Bounding box maximum easting or longitude of the resource |
|
Bounding box maximum northing or latitude of the resource |
|
Spatial Reference System ID: |
|
Beginning of time interval, in ISO 8601 format |
|
End of time interval, in ISO 8601 format |
|
A reference to a description of the Context resource in alternative format |
|
This flag indicates the state of the resource within the context document. It can be interpreted by the caller as required (this may be defined in a profile or in the specific service extensions) |
|
Comma-delimited list of keywords related to this context document |
|
Minimum scale for the display of the layer |
|
Maximum scale for the display of the layer |
|
The ascending order of the resource |
6.4. gpkgext_context_offerings
Table
Add a row to this table for each OWS Context offering as shown in Table 9. (This table implements owc:Offering from [OWSContext1.0CM].)
Column |
Value |
---|---|
|
Autoincrement primary key |
|
|
|
Code identifying the type of offering |
6.5. gpkgext_context_operations
Table
Add a row to this table for each OWS Context offering as shown in Table 10. (This table implements owc:Operation from [OWSContext1.0CM].)
|
|
|
Autoincrement primary key |
|
|
|
Code identifying the type of operation |
|
Name of operation method request |
|
MIME type of the return result |
|
Service Request URL |
|
Optional request body content |
|
Result of the operation |
6.5.1. Use with GeoPackage Content
To refer to a GeoPackage through an OWS Context stored in a GeoPackage, use the values listed in Table 11.
|
|
|
|
|
|
|
|
|
NULL |
|
NULL |
6.5.2. Use with Other Types of Content
OGC Web Services can be encoded in a GeoPackage-based OWS Context. The service type is determined by the code
of gpkgext_context_offerings
. The OWS Context Encoding Standard currently supports WMS
, WFS
, WCS
, WPS
, CSW
, and WMTS
. The method
, type
, request
, and result
columns are consistent with the other OWS Context Encodings (see [OWSContext1.0Atom] or [OWSContext1.0GeoJSON]).
Note
|
The GeoPackage producer has the responsibility to ensure that the recipient is able to handle the stored content in an appropriate manner. |
6.6. gpkgext_context_contents
Table
For each offering representing RDBMS-based content, add a row to this table for each OWS Context operation as shown in Table 12. This row represents the contents of the offering. (This table implements owc:SQLContent as per Datatype owc:SQLContent.)
Column |
Value |
---|---|
|
Autoincrement primary key |
|
|
|
A single table or view name |
|
The actual SQL query |
6.7. gpkgext_context_styles
Table
The definition for this table is to be decided. (It will implement owc:StyleSet from [OWSContext1.0CM].)
7. Discussion
7.1. OWS Context Extensions for Relational Databases
For the most part, the development of a relational database (RDBMS) encoding for OWS Context was seamless. Only one new element (order
for owc:SQLResource) had to be added. The remainder of the effort centered on identifying the appropriate set of constraints for each element and the proper codes for the offerings and operations tables. Care was taken to ensure that the extensions would apply equally to any RDBMS even though there was no immediate need for this capability at this time. To an extent, the approach described in this Discussion Paper does future-proof the effort. If nothing else, it should be seamless for someone to implement the GeoPackage schema in an RDBMS other than SQLite.
7.2. GeoPackage Extension for OWS Context
7.2.1. SQL Basis
Previous attempts to provide OWS Context support in GeoPackage (including the previously mentioned community extension) included leveraging the existing GeoJSON encoding for OWS Context. However, developers have consistently requested an SQL-based solution so that developers do not need to deal with parsing text-based documents. This also gives developers the flexibility to take full advantage of the relational database (joins, etc.). Accordingly, the GPKG-OWC extension was developed using a normalized table structure and a set of primary and foreign key relationships.
7.2.2. Composition of the gpkgext_context
Table
This table mirrors the element names from [OWSContext1.0CM] fairly closely with a few exceptions:
-
last_change
is used instead of "updateDate" to maintain consistency withgpkg_contents
. -
min_x
,min_y
,max_x
,max_y
are used instead of "areaOfInterest" to maintain consistency withgpkg_contents
. In addition,srs_id
is added to ensure that the coordinates are interpreted properly by applications. -
metadata_id
is used instead of "contextMetadata" because GeoPackage already has a mechanism for storing registered metadata, the Metadata Extension. -
min_time
andmax_time
are used instead of "timeIntervalOfInterest" because SQLite has no native way to store time intervals.
7.2.3. Composition of the gpkgext_context_resources
Table
This table mirrors the element names from [OWSContext1.0CM] fairly closely with a few exceptions:
-
last_change
is used instead of "updateDate" to maintain consistency withgpkg_contents
. -
min_x
,min_y
,max_x
,max_y
are used instead of "areaOfInterest" to maintain consistency withgpkg_contents
. In addition,srs_id
is added to ensure that the coordinates are interpreted properly by applications. -
metadata_id
is used instead of "contextMetadata" because GeoPackage already has a mechanism for storing registered metadata, the Metadata Extension. -
min_time
andmax_time
are used instead of "timeIntervalOfInterest" because SQLite has no native way to store time intervals. -
description
is used instead of "contentDescription" for readability.
7.2.4. Composition of owc:SQLContents
Historically, OWS Context documents have always provided an examplar request to aid developers in using the layer correctly.
The owc:SQLContents maintains this tradition with the query
element. The from
element was considered to be crucial because it allows access to the full scope of GeoPackage operations. There was consideration to breaking out the entire SQL query into its component parts (including WHERE clause, ORDER BY clause, and GROUP BY clause) but this idea was abandoned due to excess complexity and unclear benefit.
Appendix A: OWS Context Example Document
EventKit is an application that produces GeoPackages containing selected data sources for a user-defined area of interest. Following is an example OWS Context file that was produced to describe content generated by the EventKit application.
{
"type":"FeatureCollection",
"id":"http://www.opengis.net/owc/1.0/examples/gpkg",
"geometry":{
},
"bbox":[
-66.1514161471,
18.4039575609,
-65.966914103,
18.4758115578
],
"properties":{
"lang":"en",
"title":"GPKG Example",
"subtitle":"sanjuanpr_mxd-arcmap-eventkit-20180313",
"updated":"2018-03-13T17:26:23Z",
"authors":[
{
"name":"Jeff Yutzler"
}
],
"contributors":[],
"categories":[],
"links":[
{
"rel":"profile",
"href":"http://www.opengis.net/spec/owc-atom/1.0/req/core",
"title":"This file is compliant with version 1.0 of OGC Context"
}
]
},
"features":[
{
"type":"Feature",
"id":"http://www.opengis.net/spec/owc-atom/1.0/req/gpkg/1",
"geometry":{},
"properties":{
"title":"GPKG Example",
"updated":"2018-03-13T17:26:23Z",
"content":"OSM Tiles",
"authors":[],
"contributors":[],
"categories":[],
"links":[],
"offerings":[
{
"code":"http://www.opengis.net/spec/owc-atom/1.0/req/gpkg/1.2/opt/tiles",
"operations":[
{
"code":"GPKG",
"method":"SELECT",
"type":"SQL Record Set",
"href":"osm/sanjuanpr_mxd-osm_tiles-20180313.gpkg",
"request":{
"from":"imagery",
"query":"SELECT tile_data from imagery where zoom_level = 14 and tile_column = 10368 and tile_row = 6515;"
},
"result":{}
}
],
"contents":[]
}
]
}
},
{
"type":"Feature",
"id":"http://www.opengis.net/spec/owc-atom/1.0/req/gpkg/2",
"geometry":{},
"properties":{
"title":"GPKG Example",
"updated":"2018-03-13T17:26:23Z",
"content":"OSM",
"authors":[],
"contributors":[],
"categories":[],
"links":[],
"offerings":[
{
"code":"http://www.opengis.net/spec/owc-atom/1.0/req/gpkg/1.2/opt/features",
"operations":[
{
"code":"GPKG",
"method":"SELECT",
"type":"SQL Record Set",
"href":"osm/sanjuanpr_mxd-osm-20180313.gpkg",
"request":{
"from":"boundary",
"query":"SELECT geom from boundary;"
},
"result":{}
}
],
"contents":[]
}
]
}
},
{
"type":"Feature",
"id":"http://www.opengis.net/spec/owc-atom/1.0/req/gpkg/2",
"geometry":{},
"properties":{
"title":"GPKG Example",
"updated":"2018-03-13T17:26:23Z",
"content":"OSM",
"authors":[],
"contributors":[],
"categories":[],
"links":[],
"offerings":[
{
"code":"http://www.opengis.net/spec/owc-atom/1.0/req/gpkg/1.2/opt/features",
"operations":[
{
"code":"GPKG",
"method":"SELECT",
"type":"SQL Record Set",
"href":"osm/sanjuanpr_mxd-osm-20180313.gpkg",
"request":{
"from":"amenities_points",
"query":"SELECT \"geom\", \"osm_id\", \"amenity\", \"name\", \"addr:housenumber\", \"addr:street\" from \"amenities_points\";"
},
"result":{}
}
],
"contents":[]
}
]
}
}
]
}