= OGC GML parser and generator
== Purpose
This library parses and generates GML 3.2 application schemas and data sets that
conform to:
== Installation
To install the gem, add the following line to your Gemfile:
[source,ruby]
gem 'ogc-gml'
And then execute:
[source,bash]
$ bundle install
== Usage
To use the OGC GML gem in your Ruby project, require it in your code:
[source,ruby]
require 'ogc-gml'
Then, you can start using the gem's functionality.
For example:
[source,ruby]
Parse a GML file
gml_data = File.read('spec/fixtures/geospatial_jp_iur_3.1/Bridge_class.xml')
gml = Ogc::Gml::Dictionary.from_xml(gml_data)
Access the loaded GML Dictionary
gml_dictionary = gml.dictionary
gml_dictionary.features.each do |feature|
puts feature.name
end
It is possible to utilize the library to develop an Executable Test Suite
for GML, similar to the
http://opengeospatial.github.io/ets-gml32/[OGC ETS for GML 3.2].
== Test suites
The OGC GML gem includes test fixtures from the following sources:
GML dictionary::
From the Cabinet Office, Government Of Japan, i-UR data.
Downloaded from: https://www.chisou.go.jp/tiiki/toshisaisei/itoshisaisei/iur/index.html[here].
GML objects::
Curve, Polygon, Line, Surface, etc. from the test suite of http://opengeospatial.github.io/ets-gml32/[OGC ETS for GML 3.2].
== Contributing
Contributions are welcome! If you find any issues or have suggestions for
improvements, please open an issue or submit a pull request.
== Copyright and license
Copyright Ribose.
The OGC GML gem is released under the MIT License.
// The GML specification defines 10 conformance classes that pertain to application
// schemas. Five of these are currently covered by the test suite:
// * A.1.1: All GML application schemas
// * A.1.4: GML application schemas defining features and feature collections
// * A.1.5: GML application schemas defining spatial geometries
// * A.1.6: GML application schemas defining spatial topologies
// * A.1.7: GML application schemas defining time
// While an instance document is always checked for schema validity, the suite also
// includes tests that validate fundamental GML geometry elements against various
// constraints that cannot be expressed in an XML Schema grammar (e.g. surface boundary
// orientation); these tests also apply to any application-defined geometries that
// can substitute for the base GML geometry.
// Visit the project documentation website
// for more information about test suite coverage, including the API documentation.