ogc-gml 1.0.0 → 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (334) hide show
  1. checksums.yaml +4 -4
  2. data/.gitmodules +1 -1
  3. data/.rubocop.yml +2 -0
  4. data/.rubocop_todo.yml +33 -0
  5. data/README.adoc +102 -0
  6. data/lib/ogc/gml/abstract_continuous_coverage.rb +1 -2
  7. data/lib/ogc/gml/abstract_coordinate_operation.rb +5 -6
  8. data/lib/ogc/gml/abstract_coordinate_system.rb +6 -7
  9. data/lib/ogc/gml/abstract_coverage.rb +1 -2
  10. data/lib/ogc/gml/abstract_crs.rb +4 -5
  11. data/lib/ogc/gml/abstract_curve.rb +1 -2
  12. data/lib/ogc/gml/abstract_curve_segment.rb +5 -6
  13. data/lib/ogc/gml/abstract_datum.rb +5 -6
  14. data/lib/ogc/gml/abstract_feature.rb +1 -2
  15. data/lib/ogc/gml/abstract_feature_collection.rb +1 -2
  16. data/lib/ogc/gml/abstract_general_conversion.rb +4 -5
  17. data/lib/ogc/gml/abstract_general_derived_crs.rb +1 -2
  18. data/lib/ogc/gml/abstract_general_operation_parameter.rb +3 -4
  19. data/lib/ogc/gml/abstract_general_operation_parameter_property.rb +4 -5
  20. data/lib/ogc/gml/abstract_general_parameter_value.rb +2 -3
  21. data/lib/ogc/gml/abstract_general_parameter_value_property.rb +2 -3
  22. data/lib/ogc/gml/abstract_general_transformation.rb +1 -2
  23. data/lib/ogc/gml/abstract_geometric_aggregate.rb +2 -3
  24. data/lib/ogc/gml/abstract_geometric_primitive.rb +8 -9
  25. data/lib/ogc/gml/abstract_geometry.rb +1 -2
  26. data/lib/ogc/gml/abstract_gml.rb +1 -2
  27. data/lib/ogc/gml/abstract_gridded_surface.rb +5 -6
  28. data/lib/ogc/gml/abstract_meta_data.rb +4 -5
  29. data/lib/ogc/gml/abstract_parametric_curve_surface.rb +3 -4
  30. data/lib/ogc/gml/abstract_ring.rb +2 -3
  31. data/lib/ogc/gml/abstract_ring_property.rb +2 -3
  32. data/lib/ogc/gml/abstract_solid.rb +1 -2
  33. data/lib/ogc/gml/abstract_surface.rb +1 -2
  34. data/lib/ogc/gml/abstract_surface_patch.rb +2 -3
  35. data/lib/ogc/gml/abstract_time_complex.rb +1 -2
  36. data/lib/ogc/gml/abstract_time_geometric_primitive.rb +5 -6
  37. data/lib/ogc/gml/abstract_time_object.rb +1 -2
  38. data/lib/ogc/gml/abstract_time_primitive.rb +2 -3
  39. data/lib/ogc/gml/abstract_time_slice.rb +1 -2
  40. data/lib/ogc/gml/abstract_time_topology_primitive.rb +1 -2
  41. data/lib/ogc/gml/abstract_topo_primitive.rb +1 -2
  42. data/lib/ogc/gml/abstract_topology.rb +4 -5
  43. data/lib/ogc/gml/affine_cs.rb +1 -2
  44. data/lib/ogc/gml/affine_cs_property.rb +4 -5
  45. data/lib/ogc/gml/affine_placement.rb +4 -5
  46. data/lib/ogc/gml/angle.rb +4 -3
  47. data/lib/ogc/gml/arc.rb +1 -2
  48. data/lib/ogc/gml/arc_by_bulge.rb +2 -3
  49. data/lib/ogc/gml/arc_by_center_point.rb +1 -2
  50. data/lib/ogc/gml/arc_string.rb +3 -4
  51. data/lib/ogc/gml/arc_string_by_bulge.rb +2 -3
  52. data/lib/ogc/gml/array.rb +1 -2
  53. data/lib/ogc/gml/array_association.rb +4 -5
  54. data/lib/ogc/gml/association_role.rb +5 -6
  55. data/lib/ogc/gml/b_spline.rb +1 -2
  56. data/lib/ogc/gml/bag.rb +1 -2
  57. data/lib/ogc/gml/base_unit.rb +2 -3
  58. data/lib/ogc/gml/bezier.rb +5 -6
  59. data/lib/ogc/gml/boolean.rb +4 -5
  60. data/lib/ogc/gml/bounding_shape.rb +4 -5
  61. data/lib/ogc/gml/cartesian_cs.rb +1 -2
  62. data/lib/ogc/gml/cartesian_cs_property.rb +4 -5
  63. data/lib/ogc/gml/category.rb +3 -4
  64. data/lib/ogc/gml/category_extent.rb +2 -3
  65. data/lib/ogc/gml/circle.rb +1 -2
  66. data/lib/ogc/gml/circle_by_center_point.rb +3 -4
  67. data/lib/ogc/gml/clothoid.rb +5 -6
  68. data/lib/ogc/gml/code.rb +4 -5
  69. data/lib/ogc/gml/code_or_nil_reason_list.rb +4 -5
  70. data/lib/ogc/gml/code_with_authority.rb +3 -4
  71. data/lib/ogc/gml/composite_curve.rb +1 -2
  72. data/lib/ogc/gml/composite_solid.rb +1 -2
  73. data/lib/ogc/gml/composite_surface.rb +1 -2
  74. data/lib/ogc/gml/composite_value.rb +5 -6
  75. data/lib/ogc/gml/compound_crs.rb +2 -3
  76. data/lib/ogc/gml/compound_crs_property.rb +4 -5
  77. data/lib/ogc/gml/concatenated_operation.rb +4 -5
  78. data/lib/ogc/gml/concatenated_operation_property.rb +4 -5
  79. data/lib/ogc/gml/cone.rb +1 -2
  80. data/lib/ogc/gml/control_point.rb +2 -3
  81. data/lib/ogc/gml/conventional_unit.rb +2 -3
  82. data/lib/ogc/gml/conversion.rb +1 -2
  83. data/lib/ogc/gml/conversion_property.rb +4 -5
  84. data/lib/ogc/gml/conversion_to_preferred_unit.rb +4 -5
  85. data/lib/ogc/gml/coordinate_operation_accuracy.rb +4 -5
  86. data/lib/ogc/gml/coordinate_operation_property.rb +4 -5
  87. data/lib/ogc/gml/coordinate_system_axis.rb +8 -9
  88. data/lib/ogc/gml/coordinate_system_axis_property.rb +4 -5
  89. data/lib/ogc/gml/coordinate_system_property.rb +4 -5
  90. data/lib/ogc/gml/coordinates.rb +6 -7
  91. data/lib/ogc/gml/count.rb +4 -5
  92. data/lib/ogc/gml/coverage_function.rb +2 -3
  93. data/lib/ogc/gml/crs_property.rb +4 -5
  94. data/lib/ogc/gml/cubic_spline.rb +3 -4
  95. data/lib/ogc/gml/curve.rb +1 -2
  96. data/lib/ogc/gml/curve_array_property.rb +3 -4
  97. data/lib/ogc/gml/curve_property.rb +5 -6
  98. data/lib/ogc/gml/curve_segment_array_property.rb +2 -3
  99. data/lib/ogc/gml/cylinder.rb +3 -4
  100. data/lib/ogc/gml/cylindrical_cs.rb +1 -2
  101. data/lib/ogc/gml/cylindrical_cs_property.rb +4 -5
  102. data/lib/ogc/gml/data_block.rb +3 -4
  103. data/lib/ogc/gml/datum_property.rb +4 -5
  104. data/lib/ogc/gml/definition.rb +2 -3
  105. data/lib/ogc/gml/definition_proxy.rb +2 -3
  106. data/lib/ogc/gml/degrees.rb +4 -5
  107. data/lib/ogc/gml/derivation_unit_term.rb +4 -5
  108. data/lib/ogc/gml/derived_crs.rb +1 -2
  109. data/lib/ogc/gml/derived_crs_property.rb +4 -5
  110. data/lib/ogc/gml/derived_unit.rb +2 -3
  111. data/lib/ogc/gml/dictionary.rb +8 -9
  112. data/lib/ogc/gml/dictionary_entry.rb +8 -9
  113. data/lib/ogc/gml/direct_position.rb +7 -8
  114. data/lib/ogc/gml/direct_position_list.rb +8 -9
  115. data/lib/ogc/gml/directed_edge_property.rb +6 -7
  116. data/lib/ogc/gml/directed_face_property.rb +6 -7
  117. data/lib/ogc/gml/directed_node_property.rb +6 -7
  118. data/lib/ogc/gml/directed_observation.rb +1 -2
  119. data/lib/ogc/gml/directed_observation_at_distance.rb +1 -2
  120. data/lib/ogc/gml/directed_topo_solid_property.rb +6 -7
  121. data/lib/ogc/gml/direction_description.rb +4 -5
  122. data/lib/ogc/gml/direction_property.rb +6 -7
  123. data/lib/ogc/gml/direction_vector.rb +2 -3
  124. data/lib/ogc/gml/discrete_coverage.rb +1 -2
  125. data/lib/ogc/gml/dms_angle.rb +5 -6
  126. data/lib/ogc/gml/domain_of_validity.rb +4 -5
  127. data/lib/ogc/gml/domain_set.rb +5 -6
  128. data/lib/ogc/gml/dynamic_feature.rb +1 -2
  129. data/lib/ogc/gml/dynamic_feature_collection.rb +1 -2
  130. data/lib/ogc/gml/dynamic_feature_member.rb +5 -6
  131. data/lib/ogc/gml/edge.rb +5 -6
  132. data/lib/ogc/gml/ellipsoid.rb +2 -3
  133. data/lib/ogc/gml/ellipsoid_property.rb +4 -5
  134. data/lib/ogc/gml/ellipsoidal_cs.rb +1 -2
  135. data/lib/ogc/gml/ellipsoidal_cs_property.rb +4 -5
  136. data/lib/ogc/gml/engineering_crs.rb +1 -2
  137. data/lib/ogc/gml/engineering_crs_property.rb +4 -5
  138. data/lib/ogc/gml/engineering_datum.rb +1 -2
  139. data/lib/ogc/gml/engineering_datum_property.rb +4 -5
  140. data/lib/ogc/gml/envelope.rb +6 -7
  141. data/lib/ogc/gml/envelope_with_time_period.rb +7 -8
  142. data/lib/ogc/gml/face.rb +6 -7
  143. data/lib/ogc/gml/face_or_topo_solid_property.rb +7 -8
  144. data/lib/ogc/gml/feature_array_property.rb +2 -3
  145. data/lib/ogc/gml/feature_collection.rb +1 -2
  146. data/lib/ogc/gml/feature_property.rb +5 -6
  147. data/lib/ogc/gml/file.rb +6 -7
  148. data/lib/ogc/gml/formula.rb +6 -7
  149. data/lib/ogc/gml/formula_citation.rb +4 -5
  150. data/lib/ogc/gml/general_conversion_property.rb +4 -5
  151. data/lib/ogc/gml/general_transformation_property.rb +4 -5
  152. data/lib/ogc/gml/generic_meta_data.rb +4 -5
  153. data/lib/ogc/gml/geocentric_crs.rb +1 -2
  154. data/lib/ogc/gml/geocentric_crs_property.rb +4 -5
  155. data/lib/ogc/gml/geodesic.rb +2 -3
  156. data/lib/ogc/gml/geodesic_string.rb +2 -3
  157. data/lib/ogc/gml/geodetic_crs.rb +1 -2
  158. data/lib/ogc/gml/geodetic_crs_property.rb +4 -5
  159. data/lib/ogc/gml/geodetic_datum.rb +1 -2
  160. data/lib/ogc/gml/geodetic_datum_property.rb +4 -5
  161. data/lib/ogc/gml/geographic_crs.rb +1 -2
  162. data/lib/ogc/gml/geographic_crs_property.rb +4 -5
  163. data/lib/ogc/gml/geometric_complex.rb +1 -2
  164. data/lib/ogc/gml/geometric_primitive_property.rb +5 -6
  165. data/lib/ogc/gml/geometry_array_property.rb +3 -4
  166. data/lib/ogc/gml/geometry_property.rb +5 -6
  167. data/lib/ogc/gml/grid.rb +10 -11
  168. data/lib/ogc/gml/grid_envelope.rb +4 -5
  169. data/lib/ogc/gml/grid_function.rb +3 -4
  170. data/lib/ogc/gml/grid_limits.rb +2 -3
  171. data/lib/ogc/gml/history_property.rb +3 -4
  172. data/lib/ogc/gml/image_crs.rb +1 -2
  173. data/lib/ogc/gml/image_crs_property.rb +4 -5
  174. data/lib/ogc/gml/image_datum.rb +1 -2
  175. data/lib/ogc/gml/image_datum_property.rb +4 -5
  176. data/lib/ogc/gml/indirect_entry.rb +2 -3
  177. data/lib/ogc/gml/inline_property.rb +3 -4
  178. data/lib/ogc/gml/knot.rb +5 -6
  179. data/lib/ogc/gml/knot_property.rb +2 -3
  180. data/lib/ogc/gml/length.rb +4 -3
  181. data/lib/ogc/gml/line_string.rb +1 -2
  182. data/lib/ogc/gml/line_string_segment.rb +2 -3
  183. data/lib/ogc/gml/line_string_segment_array_property.rb +2 -3
  184. data/lib/ogc/gml/linear_cs.rb +1 -2
  185. data/lib/ogc/gml/linear_cs_property.rb +4 -5
  186. data/lib/ogc/gml/linear_ring.rb +2 -3
  187. data/lib/ogc/gml/location_property.rb +5 -6
  188. data/lib/ogc/gml/mapping_rule.rb +3 -4
  189. data/lib/ogc/gml/measure.rb +4 -5
  190. data/lib/ogc/gml/measure_list.rb +4 -5
  191. data/lib/ogc/gml/measure_or_nil_reason_list.rb +4 -5
  192. data/lib/ogc/gml/meta_data_property.rb +5 -6
  193. data/lib/ogc/gml/moving_object_status.rb +1 -2
  194. data/lib/ogc/gml/multi_curve.rb +1 -2
  195. data/lib/ogc/gml/multi_curve_property.rb +5 -6
  196. data/lib/ogc/gml/multi_geometry.rb +1 -2
  197. data/lib/ogc/gml/multi_geometry_property.rb +5 -6
  198. data/lib/ogc/gml/multi_point.rb +1 -2
  199. data/lib/ogc/gml/multi_point_property.rb +5 -6
  200. data/lib/ogc/gml/multi_solid.rb +1 -2
  201. data/lib/ogc/gml/multi_solid_property.rb +5 -6
  202. data/lib/ogc/gml/multi_surface.rb +1 -2
  203. data/lib/ogc/gml/multi_surface_property.rb +5 -6
  204. data/lib/ogc/gml/node.rb +6 -7
  205. data/lib/ogc/gml/node_or_edge_property.rb +6 -7
  206. data/lib/ogc/gml/node_property.rb +5 -6
  207. data/lib/ogc/gml/oblique_cartesian_cs.rb +1 -2
  208. data/lib/ogc/gml/oblique_cartesian_cs_property.rb +4 -5
  209. data/lib/ogc/gml/observation.rb +1 -2
  210. data/lib/ogc/gml/offset_curve.rb +1 -2
  211. data/lib/ogc/gml/operation_method.rb +4 -5
  212. data/lib/ogc/gml/operation_method_property.rb +4 -5
  213. data/lib/ogc/gml/operation_parameter.rb +1 -2
  214. data/lib/ogc/gml/operation_parameter_group.rb +2 -3
  215. data/lib/ogc/gml/operation_parameter_group_property.rb +4 -5
  216. data/lib/ogc/gml/operation_parameter_property.rb +4 -5
  217. data/lib/ogc/gml/operation_property.rb +4 -5
  218. data/lib/ogc/gml/orientable_curve.rb +10 -11
  219. data/lib/ogc/gml/orientable_surface.rb +9 -10
  220. data/lib/ogc/gml/parameter_value.rb +7 -8
  221. data/lib/ogc/gml/parameter_value_group.rb +2 -3
  222. data/lib/ogc/gml/pass_through_operation.rb +2 -3
  223. data/lib/ogc/gml/pass_through_operation_property.rb +4 -5
  224. data/lib/ogc/gml/point.rb +1 -2
  225. data/lib/ogc/gml/point_array_property.rb +3 -4
  226. data/lib/ogc/gml/point_property.rb +5 -6
  227. data/lib/ogc/gml/polar_cs.rb +2 -3
  228. data/lib/ogc/gml/polar_cs_property.rb +4 -5
  229. data/lib/ogc/gml/polygon.rb +1 -2
  230. data/lib/ogc/gml/polygon_patch.rb +3 -4
  231. data/lib/ogc/gml/prime_meridian.rb +2 -3
  232. data/lib/ogc/gml/prime_meridian_property.rb +4 -5
  233. data/lib/ogc/gml/priority_location_property.rb +6 -7
  234. data/lib/ogc/gml/procedure_property.rb +5 -6
  235. data/lib/ogc/gml/projected_crs.rb +1 -2
  236. data/lib/ogc/gml/projected_crs_property.rb +4 -5
  237. data/lib/ogc/gml/quantity.rb +3 -4
  238. data/lib/ogc/gml/quantity_extent.rb +2 -3
  239. data/lib/ogc/gml/range_set.rb +3 -4
  240. data/lib/ogc/gml/rectangle.rb +3 -4
  241. data/lib/ogc/gml/rectified_grid.rb +10 -11
  242. data/lib/ogc/gml/ref_location.rb +2 -3
  243. data/lib/ogc/gml/reference.rb +5 -6
  244. data/lib/ogc/gml/related_time.rb +6 -7
  245. data/lib/ogc/gml/result.rb +5 -6
  246. data/lib/ogc/gml/ring.rb +2 -3
  247. data/lib/ogc/gml/second_defining_parameter1.rb +2 -3
  248. data/lib/ogc/gml/second_defining_parameter2.rb +3 -4
  249. data/lib/ogc/gml/sequence_rule.rb +5 -6
  250. data/lib/ogc/gml/shell.rb +4 -5
  251. data/lib/ogc/gml/shell_property.rb +2 -3
  252. data/lib/ogc/gml/single_crs_property.rb +4 -5
  253. data/lib/ogc/gml/single_operation_property.rb +4 -5
  254. data/lib/ogc/gml/solid.rb +1 -2
  255. data/lib/ogc/gml/solid_array_property.rb +3 -4
  256. data/lib/ogc/gml/solid_property.rb +5 -6
  257. data/lib/ogc/gml/sphere.rb +1 -2
  258. data/lib/ogc/gml/spherical_cs.rb +2 -3
  259. data/lib/ogc/gml/spherical_cs_property.rb +4 -5
  260. data/lib/ogc/gml/string_or_ref.rb +5 -6
  261. data/lib/ogc/gml/surface.rb +1 -2
  262. data/lib/ogc/gml/surface_array_property.rb +3 -4
  263. data/lib/ogc/gml/surface_patch_array_property.rb +2 -3
  264. data/lib/ogc/gml/surface_property.rb +5 -6
  265. data/lib/ogc/gml/target_property.rb +5 -6
  266. data/lib/ogc/gml/temporal_crs.rb +1 -2
  267. data/lib/ogc/gml/temporal_crs_property.rb +4 -5
  268. data/lib/ogc/gml/temporal_cs.rb +1 -2
  269. data/lib/ogc/gml/temporal_cs_property.rb +4 -5
  270. data/lib/ogc/gml/temporal_datum.rb +4 -5
  271. data/lib/ogc/gml/temporal_datum_property.rb +4 -5
  272. data/lib/ogc/gml/time_calendar.rb +3 -4
  273. data/lib/ogc/gml/time_calendar_era.rb +4 -5
  274. data/lib/ogc/gml/time_calendar_era_property.rb +5 -6
  275. data/lib/ogc/gml/time_calendar_property.rb +5 -6
  276. data/lib/ogc/gml/time_clock.rb +5 -6
  277. data/lib/ogc/gml/time_coordinate_system.rb +3 -4
  278. data/lib/ogc/gml/time_cs.rb +1 -2
  279. data/lib/ogc/gml/time_cs_property.rb +4 -5
  280. data/lib/ogc/gml/time_edge.rb +1 -2
  281. data/lib/ogc/gml/time_edge_property.rb +5 -6
  282. data/lib/ogc/gml/time_instant.rb +1 -2
  283. data/lib/ogc/gml/time_instant_property.rb +5 -6
  284. data/lib/ogc/gml/time_interval_length.rb +6 -7
  285. data/lib/ogc/gml/time_node.rb +2 -3
  286. data/lib/ogc/gml/time_node_property.rb +5 -6
  287. data/lib/ogc/gml/time_ordinal_era.rb +3 -4
  288. data/lib/ogc/gml/time_ordinal_era_property.rb +5 -6
  289. data/lib/ogc/gml/time_ordinal_reference_system.rb +3 -4
  290. data/lib/ogc/gml/time_period.rb +2 -3
  291. data/lib/ogc/gml/time_period_property.rb +5 -6
  292. data/lib/ogc/gml/time_position.rb +6 -7
  293. data/lib/ogc/gml/time_primitive_property.rb +5 -6
  294. data/lib/ogc/gml/time_reference_system.rb +3 -4
  295. data/lib/ogc/gml/time_topology_complex.rb +1 -2
  296. data/lib/ogc/gml/time_topology_primitive_property.rb +5 -6
  297. data/lib/ogc/gml/tin.rb +1 -2
  298. data/lib/ogc/gml/topo_complex.rb +7 -8
  299. data/lib/ogc/gml/topo_complex_property.rb +4 -5
  300. data/lib/ogc/gml/topo_curve.rb +5 -6
  301. data/lib/ogc/gml/topo_curve_property.rb +3 -4
  302. data/lib/ogc/gml/topo_point.rb +1 -2
  303. data/lib/ogc/gml/topo_point_property.rb +3 -4
  304. data/lib/ogc/gml/topo_primitive_array_association.rb +3 -4
  305. data/lib/ogc/gml/topo_primitive_member.rb +5 -6
  306. data/lib/ogc/gml/topo_solid.rb +7 -8
  307. data/lib/ogc/gml/topo_solid_property.rb +5 -6
  308. data/lib/ogc/gml/topo_surface.rb +5 -6
  309. data/lib/ogc/gml/topo_surface_property.rb +3 -4
  310. data/lib/ogc/gml/topo_volume.rb +5 -6
  311. data/lib/ogc/gml/topo_volume_property.rb +3 -4
  312. data/lib/ogc/gml/transformation.rb +1 -2
  313. data/lib/ogc/gml/transformation_property.rb +4 -5
  314. data/lib/ogc/gml/triangle.rb +3 -4
  315. data/lib/ogc/gml/unit_definition.rb +2 -3
  316. data/lib/ogc/gml/unit_of_measure.rb +3 -4
  317. data/lib/ogc/gml/user_defined_cs.rb +1 -2
  318. data/lib/ogc/gml/user_defined_cs_property.rb +4 -5
  319. data/lib/ogc/gml/value_array.rb +7 -8
  320. data/lib/ogc/gml/value_array_property.rb +5 -6
  321. data/lib/ogc/gml/value_property.rb +7 -8
  322. data/lib/ogc/gml/vector.rb +2 -3
  323. data/lib/ogc/gml/version.rb +1 -1
  324. data/lib/ogc/gml/vertical_crs.rb +1 -2
  325. data/lib/ogc/gml/vertical_crs_property.rb +4 -5
  326. data/lib/ogc/gml/vertical_cs.rb +1 -2
  327. data/lib/ogc/gml/vertical_cs_property.rb +4 -5
  328. data/lib/ogc/gml/vertical_datum.rb +1 -2
  329. data/lib/ogc/gml/vertical_datum_property.rb +4 -5
  330. data/lib/ogc/gml.rb +8 -5
  331. data/ogc-gml.gemspec +10 -10
  332. metadata +6 -6
  333. data/.github/workflows/main.yml +0 -27
  334. data/README.md +0 -35
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e6ce23574e2dfcb81175a4ef1ed804c82d3e4d149aa41bfedc6c44ec5cd4d0d6
4
- data.tar.gz: 3c5b4732f635f8406bf1a6b74c58653b0fb5bbc51d16f188c0b4111e3103b521
3
+ metadata.gz: 4c37a4a1e53791004cff0a90b4c9a7571e691c1857dd936cb5a9c2bab8922cc3
4
+ data.tar.gz: 37e6cb6cb296d5e4c985d360d584b7adacb23a8330bcd09bc28dcd62425868bb
5
5
  SHA512:
6
- metadata.gz: 6736ab75700d6be06924e7b6f6610156358d2d53ff3aa5e2f231d6ac665dce9f7c492e9eb138f071937e28621c06bdbfa1d61780b0370f76380f7a50c3505847
7
- data.tar.gz: eb09af5b900b5f45b7b8f6e7dc2396497b24ecb9b781b58aa68f9a7217639d426227a2154e15a5d716f70ff1c6c6a98b983a9e7dd0f9ba128843d4c73c42de72
6
+ metadata.gz: 373fc4d783908fc0bce949e8076021cc5711bcd64f2c642f4b379baa35c5a3500376d92da49099956b4d694070321f6627812010bbc23f86cf18db0ab3dbed9a
7
+ data.tar.gz: 0e158bffebd4619269b8ca63cf0743a4199c7c2088a06a92d274adbecbc06ab0782e9ed841924d3e7977df1681d30ea7ee14dc53b142c779a58287229a39dacf
data/.gitmodules CHANGED
@@ -1,3 +1,3 @@
1
1
  [submodule "ets-gml32"]
2
- path = ets-gml32
2
+ path = spec/fixtures/ets-gml32
3
3
  url = git@github.com:opengeospatial/ets-gml32.git
data/.rubocop.yml CHANGED
@@ -1,3 +1,5 @@
1
+ inherit_from: .rubocop_todo.yml
2
+
1
3
  AllCops:
2
4
  TargetRubyVersion: 3.0
3
5
 
data/.rubocop_todo.yml ADDED
@@ -0,0 +1,33 @@
1
+ # This configuration was generated by
2
+ # `rubocop --auto-gen-config`
3
+ # on 2024-08-30 12:07:56 UTC using RuboCop version 1.65.1.
4
+ # The point is for the user to remove these configuration records
5
+ # one by one as the offenses are removed from the code base.
6
+ # Note that changes in the inspected code, or installation of new
7
+ # versions of RuboCop, may require this file to be generated again.
8
+
9
+ # Offense count: 1
10
+ # Configuration parameters: Severity, Include.
11
+ # Include: **/*.gemspec
12
+ Gemspec/RequiredRubyVersion:
13
+ Exclude:
14
+ - 'ogc-gml.gemspec'
15
+
16
+ # Offense count: 3
17
+ # Configuration parameters: CountComments, CountAsOne, AllowedMethods, AllowedPatterns.
18
+ # AllowedMethods: refine
19
+ Metrics/BlockLength:
20
+ Max: 37
21
+
22
+ # Offense count: 323
23
+ # Configuration parameters: AllowedConstants.
24
+ Style/Documentation:
25
+ Enabled: false
26
+
27
+ # Offense count: 2
28
+ # This cop supports safe autocorrection (--autocorrect).
29
+ # Configuration parameters: EnforcedStyleForMultiline.
30
+ # SupportedStylesForMultiline: comma, consistent_comma, no_comma
31
+ Style/TrailingCommaInArguments:
32
+ Exclude:
33
+ - 'spec/ogc/gml/polygon_spec.rb'
data/README.adoc ADDED
@@ -0,0 +1,102 @@
1
+ = OGC GML parser and generator
2
+
3
+ == Purpose
4
+
5
+ This library parses and generates GML 3.2 application schemas and data sets that
6
+ conform to:
7
+
8
+ * https://www.iso.org/standard/32554.html[ISO 19136:2007, _Geographic information -- Geography Markup Language_]
9
+ * http://portal.opengeospatial.org/files/?artifact_id=20509[OGC 07-036]
10
+
11
+
12
+ == Installation
13
+
14
+ To install the gem, add the following line to your Gemfile:
15
+
16
+ [source,ruby]
17
+ ----
18
+ gem 'ogc-gml'
19
+ ----
20
+
21
+ And then execute:
22
+
23
+ [source,bash]
24
+ ----
25
+ $ bundle install
26
+ ----
27
+
28
+ == Usage
29
+
30
+ To use the OGC GML gem in your Ruby project, require it in your code:
31
+
32
+ [source,ruby]
33
+ ----
34
+ require 'ogc-gml'
35
+ ----
36
+
37
+ Then, you can start using the gem's functionality.
38
+
39
+
40
+ For example:
41
+
42
+ [source,ruby]
43
+ ----
44
+ # Parse a GML file
45
+ gml_data = File.read('spec/fixtures/geospatial_jp_iur_3.1/Bridge_class.xml')
46
+ gml = Ogc::Gml::Dictionary.from_xml(gml_data)
47
+
48
+ # Access the loaded GML Dictionary
49
+ gml_dictionary = gml.dictionary
50
+ gml_dictionary.features.each do |feature|
51
+ puts feature.name
52
+ end
53
+ ----
54
+
55
+ It is possible to utilize the library to develop an Executable Test Suite
56
+ for GML, similar to the
57
+ http://opengeospatial.github.io/ets-gml32/[OGC ETS for GML 3.2].
58
+
59
+
60
+ == Test suites
61
+
62
+ The OGC GML gem includes test fixtures from the following sources:
63
+
64
+ GML dictionary::
65
+ From the Cabinet Office, Government Of Japan, i-UR data.
66
+ Downloaded from: https://www.chisou.go.jp/tiiki/toshisaisei/itoshisaisei/iur/index.html[here].
67
+
68
+ GML objects::
69
+ Curve, Polygon, Line, Surface, etc. from the test suite of http://opengeospatial.github.io/ets-gml32/[OGC ETS for GML 3.2].
70
+
71
+
72
+
73
+ == Contributing
74
+
75
+ Contributions are welcome! If you find any issues or have suggestions for
76
+ improvements, please open an issue or submit a pull request.
77
+
78
+ == Copyright and license
79
+
80
+ Copyright Ribose.
81
+
82
+ The OGC GML gem is released under the MIT License.
83
+
84
+
85
+
86
+ // The GML specification defines 10 conformance classes that pertain to application
87
+ // schemas. Five of these are currently covered by the test suite:
88
+
89
+ // * A.1.1: All GML application schemas
90
+ // * A.1.4: GML application schemas defining features and feature collections
91
+ // * A.1.5: GML application schemas defining spatial geometries
92
+ // * A.1.6: GML application schemas defining spatial topologies
93
+ // * A.1.7: GML application schemas defining time
94
+
95
+ // While an instance document is always checked for schema validity, the suite also
96
+ // includes tests that validate fundamental GML geometry elements against various
97
+ // constraints that cannot be expressed in an XML Schema grammar (e.g. surface boundary
98
+ // orientation); these tests also apply to any application-defined geometries that
99
+ // can substitute for the base GML geometry.
100
+
101
+ // Visit the [project documentation website](http://opengeospatial.github.io/ets-gml32/)
102
+ // for more information about test suite coverage, including the API documentation.
@@ -1,7 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # --- abstract_continuous_coverage_type.rb ---
4
- require "shale"
3
+ require "lutaml/model"
5
4
  require_relative "coverage_function"
6
5
  require_relative "abstract_coverage"
7
6
 
@@ -1,7 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # --- abstract_coordinate_operation_type.rb ---
4
- require "shale"
3
+ require "lutaml/model"
5
4
 
6
5
  require_relative "coordinate_operation_accuracy"
7
6
  require_relative "crs_property"
@@ -10,10 +9,10 @@ require_relative "abstract_topology"
10
9
  module Ogc
11
10
  module Gml
12
11
  class AbstractCoordinateOperation < AbstractTopology
13
- attribute :remarks, Shale::Type::String
14
- attribute :domain_of_validity, Shale::Type::String
15
- attribute :scope, Shale::Type::String, collection: true
16
- attribute :operation_version, Shale::Type::String
12
+ attribute :remarks, :string
13
+ attribute :domain_of_validity, :string
14
+ attribute :scope, :string, collection: true
15
+ attribute :operation_version, :string
17
16
  attribute :coordinate_operation_accuracy, CoordinateOperationAccuracy, collection: true
18
17
  attribute :source_crs, CRSProperty
19
18
  attribute :target_crs, CRSProperty
@@ -1,7 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # --- abstract_coordinate_system_type.rb ---
4
- require "shale"
3
+ require "lutaml/model"
5
4
 
6
5
  require_relative "code"
7
6
  require_relative "code_with_authority"
@@ -11,15 +10,15 @@ require_relative "reference"
11
10
 
12
11
  module Ogc
13
12
  module Gml
14
- class AbstractCoordinateSystem < Shale::Mapper
15
- attribute :id, Shale::Type::Value
16
- attribute :aggregation_type, Shale::Type::String
13
+ class AbstractCoordinateSystem < Lutaml::Model::Serializable
14
+ attribute :id, :string
15
+ attribute :aggregation_type, :string
17
16
  attribute :meta_data_property, MetaDataProperty, collection: true
18
- attribute :description, Shale::Type::String
17
+ attribute :description, :string
19
18
  attribute :description_reference, Reference
20
19
  attribute :identifier, CodeWithAuthority
21
20
  attribute :name, Code, collection: true
22
- attribute :remarks, Shale::Type::String
21
+ attribute :remarks, :string
23
22
  attribute :axis, CoordinateSystemAxisProperty, collection: true
24
23
 
25
24
  xml do
@@ -1,7 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # --- abstract_coverage_type.rb ---
4
- require "shale"
3
+ require "lutaml/model"
5
4
  require_relative "bounding_shape"
6
5
  require_relative "domain_set"
7
6
  require_relative "location_property"
@@ -1,7 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # --- abstract_crs_type.rb ---
4
- require "shale"
3
+ require "lutaml/model"
5
4
 
6
5
  require_relative "code"
7
6
  require_relative "code_with_authority"
@@ -12,9 +11,9 @@ require_relative "abstract_topology"
12
11
  module Ogc
13
12
  module Gml
14
13
  class AbstractCRS < AbstractTopology
15
- attribute :remarks, Shale::Type::String
16
- attribute :domain_of_validity, Shale::Type::String, collection: true
17
- attribute :scope, Shale::Type::String, collection: true
14
+ attribute :remarks, :string
15
+ attribute :domain_of_validity, :string, collection: true
16
+ attribute :scope, :string, collection: true
18
17
 
19
18
  xml do
20
19
  root "AbstractSingleCRS"
@@ -1,7 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # --- abstract_curve_type.rb ---
4
- require "shale"
3
+ require "lutaml/model"
5
4
  require_relative "abstract_geometric_primitive"
6
5
 
7
6
  module Ogc
@@ -1,14 +1,13 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # --- abstract_curve_segment_type.rb ---
4
- require "shale"
3
+ require "lutaml/model"
5
4
 
6
5
  module Ogc
7
6
  module Gml
8
- class AbstractCurveSegment < Shale::Mapper
9
- attribute :num_derivatives_at_start, Shale::Type::Integer#, default: -> { "0" }
10
- attribute :num_derivatives_at_end, Shale::Type::Integer#, default: -> { "0" }
11
- attribute :num_derivative_interior, Shale::Type::Integer#, default: -> { "0" }
7
+ class AbstractCurveSegment < Lutaml::Model::Serializable
8
+ attribute :num_derivatives_at_start, :integer # , default: -> { "0" }
9
+ attribute :num_derivatives_at_end, :integer # , default: -> { "0" }
10
+ attribute :num_derivative_interior, :integer # , default: -> { "0" }
12
11
 
13
12
  xml do
14
13
  root "AbstractCurveSegment"
@@ -1,7 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # --- abstract_datum_type.rb ---
4
- require "shale"
3
+ require "lutaml/model"
5
4
 
6
5
  require_relative "code"
7
6
  require_relative "code_with_authority"
@@ -12,11 +11,11 @@ require_relative "abstract_topology"
12
11
  module Ogc
13
12
  module Gml
14
13
  class AbstractDatum < AbstractTopology
15
- attribute :remarks, Shale::Type::String
16
- attribute :domain_of_validity, Shale::Type::String
17
- attribute :scope, Shale::Type::String, collection: true
14
+ attribute :remarks, :string
15
+ attribute :domain_of_validity, :string
16
+ attribute :scope, :string, collection: true
18
17
  attribute :anchor_definition, Code
19
- attribute :realization_epoch, Shale::Type::Date
18
+ attribute :realization_epoch, :date
20
19
 
21
20
  xml do
22
21
  root "AbstractDatum"
@@ -1,7 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # --- abstract_feature_type.rb ---
4
- require "shale"
3
+ require "lutaml/model"
5
4
 
6
5
  require_relative "bounding_shape"
7
6
  require_relative "code"
@@ -1,7 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # --- abstract_feature_collection_type.rb ---
4
- require "shale"
3
+ require "lutaml/model"
5
4
  require_relative "bounding_shape"
6
5
  require_relative "feature_array_property"
7
6
  require_relative "feature_property"
@@ -1,7 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # --- abstract_general_conversion_type.rb ---
4
- require "shale"
3
+ require "lutaml/model"
5
4
 
6
5
  require_relative "code"
7
6
  require_relative "code_with_authority"
@@ -13,9 +12,9 @@ require_relative "abstract_topology"
13
12
  module Ogc
14
13
  module Gml
15
14
  class AbstractGeneralConversion < AbstractTopology
16
- attribute :remarks, Shale::Type::String
17
- attribute :domain_of_validity, Shale::Type::String
18
- attribute :scope, Shale::Type::String, collection: true
15
+ attribute :remarks, :string
16
+ attribute :domain_of_validity, :string
17
+ attribute :scope, :string, collection: true
19
18
  attribute :coordinate_operation_accuracy, CoordinateOperationAccuracy, collection: true
20
19
 
21
20
  xml do
@@ -1,7 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # --- abstract_general_derived_crs_type.rb ---
4
- require "shale"
3
+ require "lutaml/model"
5
4
  require_relative "general_conversion_property"
6
5
  require_relative "abstract_crs"
7
6
 
@@ -1,14 +1,13 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # --- abstract_general_operation_parameter_type.rb ---
4
- require "shale"
3
+ require "lutaml/model"
5
4
  require_relative "abstract_topology"
6
5
 
7
6
  module Ogc
8
7
  module Gml
9
8
  class AbstractGeneralOperationParameter < AbstractTopology
10
- attribute :remarks, Shale::Type::String
11
- attribute :minimum_occurs, Shale::Type::Integer
9
+ attribute :remarks, :string
10
+ attribute :minimum_occurs, :integer
12
11
 
13
12
  xml do
14
13
  root "AbstractGeneralOperationParameter"
@@ -1,15 +1,14 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # --- abstract_general_operation_parameter_property_type.rb ---
4
- require "shale"
3
+ require "lutaml/model"
5
4
 
6
5
  require_relative "abstract_general_operation_parameter"
7
6
 
8
7
  module Ogc
9
8
  module Gml
10
- class AbstractGeneralOperationParameterProperty < Shale::Mapper
11
- attribute :nil_reason, Shale::Type::Value
12
- attribute :remote_schema, Shale::Type::Value
9
+ class AbstractGeneralOperationParameterProperty < Lutaml::Model::Serializable
10
+ attribute :nil_reason, :string
11
+ attribute :remote_schema, :string
13
12
  attribute :abstract_general_operation_parameter, AbstractGeneralOperationParameter
14
13
 
15
14
  xml do
@@ -1,11 +1,10 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # --- abstract_general_parameter_value_type.rb ---
4
- require "shale"
3
+ require "lutaml/model"
5
4
 
6
5
  module Ogc
7
6
  module Gml
8
- class AbstractGeneralParameterValue < Shale::Mapper
7
+ class AbstractGeneralParameterValue < Lutaml::Model::Serializable
9
8
  xml do
10
9
  root "AbstractGeneralParameterValue"
11
10
  namespace "http://www.opengis.net/gml/3.2", "gml"
@@ -1,13 +1,12 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # --- abstract_general_parameter_value_property_type.rb ---
4
- require "shale"
3
+ require "lutaml/model"
5
4
 
6
5
  require_relative "abstract_general_parameter_value"
7
6
 
8
7
  module Ogc
9
8
  module Gml
10
- class AbstractGeneralParameterValueProperty < Shale::Mapper
9
+ class AbstractGeneralParameterValueProperty < Lutaml::Model::Serializable
11
10
  attribute :abstract_general_parameter_value, AbstractGeneralParameterValue
12
11
 
13
12
  xml do
@@ -1,7 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # --- abstract_general_transformation_type.rb ---
4
- require "shale"
3
+ require "lutaml/model"
5
4
  require_relative "abstract_coordinate_operation"
6
5
 
7
6
  module Ogc
@@ -1,13 +1,12 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # --- abstract_geometric_aggregate_type.rb ---
4
- require "shale"
3
+ require "lutaml/model"
5
4
  require_relative "abstract_geometric_primitive"
6
5
 
7
6
  module Ogc
8
7
  module Gml
9
8
  class AbstractGeometricAggregate < AbstractGeometricPrimitive
10
- attribute :aggregation_type, Shale::Type::String
9
+ attribute :aggregation_type, :string
11
10
 
12
11
  xml do
13
12
  root "AbstractGeometricAggregate"
@@ -1,7 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # --- abstract_geometric_primitive_type.rb ---
4
- require "shale"
3
+ require "lutaml/model"
5
4
 
6
5
  require_relative "code"
7
6
  require_relative "code_with_authority"
@@ -10,14 +9,14 @@ require_relative "reference"
10
9
 
11
10
  module Ogc
12
11
  module Gml
13
- class AbstractGeometricPrimitive < Shale::Mapper
14
- attribute :id, Shale::Type::Value
15
- attribute :srs_name, Shale::Type::Value
16
- attribute :srs_dimension, Shale::Type::Integer
17
- attribute :axis_labels, Shale::Type::Value
18
- attribute :uom_labels, Shale::Type::Value
12
+ class AbstractGeometricPrimitive < Lutaml::Model::Serializable
13
+ attribute :id, :string
14
+ attribute :srs_name, :string
15
+ attribute :srs_dimension, :integer
16
+ attribute :axis_labels, :string
17
+ attribute :uom_labels, :string
19
18
  attribute :meta_data_property, MetaDataProperty, collection: true
20
- attribute :description, Shale::Type::String
19
+ attribute :description, :string
21
20
  attribute :description_reference, Reference
22
21
  attribute :identifier, CodeWithAuthority
23
22
  attribute :name, Code, collection: true
@@ -1,7 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # --- abstract_geometry_type.rb ---
4
- require "shale"
3
+ require "lutaml/model"
5
4
  require_relative "abstract_geometric_primitive"
6
5
 
7
6
  module Ogc
@@ -1,7 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # --- abstract_gml_type.rb ---
4
- require "shale"
3
+ require "lutaml/model"
5
4
 
6
5
  require_relative "code"
7
6
  require_relative "code_with_authority"
@@ -1,14 +1,13 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # --- abstract_gridded_surface_type.rb ---
4
- require "shale"
3
+ require "lutaml/model"
5
4
 
6
5
  module Ogc
7
6
  module Gml
8
- class AbstractGriddedSurface < Shale::Mapper
9
- attribute :aggregation_type, Shale::Type::String
10
- attribute :rows, Shale::Type::Integer
11
- attribute :columns, Shale::Type::Integer
7
+ class AbstractGriddedSurface < Lutaml::Model::Serializable
8
+ attribute :aggregation_type, :string
9
+ attribute :rows, :integer
10
+ attribute :columns, :integer
12
11
 
13
12
  xml do
14
13
  root "AbstractGriddedSurface"
@@ -1,13 +1,12 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # --- abstract_meta_data_type.rb ---
4
- require "shale"
3
+ require "lutaml/model"
5
4
 
6
5
  module Ogc
7
6
  module Gml
8
- class AbstractMetaData < Shale::Mapper
9
- attribute :content, Shale::Type::String
10
- attribute :id, Shale::Type::Value
7
+ class AbstractMetaData < Lutaml::Model::Serializable
8
+ attribute :content, :string
9
+ attribute :id, :string
11
10
 
12
11
  xml do
13
12
  root "AbstractMetaData"
@@ -1,12 +1,11 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # --- abstract_parametric_curve_surface_type.rb ---
4
- require "shale"
3
+ require "lutaml/model"
5
4
 
6
5
  module Ogc
7
6
  module Gml
8
- class AbstractParametricCurveSurface < Shale::Mapper
9
- attribute :aggregation_type, Shale::Type::String
7
+ class AbstractParametricCurveSurface < Lutaml::Model::Serializable
8
+ attribute :aggregation_type, :string
10
9
 
11
10
  xml do
12
11
  root "AbstractParametricCurveSurface"
@@ -1,11 +1,10 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # --- abstract_ring_type.rb ---
4
- require "shale"
3
+ require "lutaml/model"
5
4
 
6
5
  module Ogc
7
6
  module Gml
8
- class AbstractRing < Shale::Mapper
7
+ class AbstractRing < Lutaml::Model::Serializable
9
8
  xml do
10
9
  root "AbstractRing"
11
10
  namespace "http://www.opengis.net/gml/3.2", "gml"
@@ -1,13 +1,12 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # --- abstract_ring_property_type.rb ---
4
- require "shale"
3
+ require "lutaml/model"
5
4
 
6
5
  require_relative "abstract_ring"
7
6
 
8
7
  module Ogc
9
8
  module Gml
10
- class AbstractRingProperty < Shale::Mapper
9
+ class AbstractRingProperty < Lutaml::Model::Serializable
11
10
  attribute :abstract_ring, AbstractRing
12
11
 
13
12
  xml do
@@ -1,7 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # --- abstract_solid_type.rb ---
4
- require "shale"
3
+ require "lutaml/model"
5
4
  require_relative "abstract_geometric_primitive"
6
5
 
7
6
  module Ogc
@@ -1,7 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # --- abstract_surface_type.rb ---
4
- require "shale"
3
+ require "lutaml/model"
5
4
  require_relative "abstract_geometric_primitive"
6
5
 
7
6
  module Ogc
@@ -1,11 +1,10 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # --- abstract_surface_patch_type.rb ---
4
- require "shale"
3
+ require "lutaml/model"
5
4
 
6
5
  module Ogc
7
6
  module Gml
8
- class AbstractSurfacePatch < Shale::Mapper
7
+ class AbstractSurfacePatch < Lutaml::Model::Serializable
9
8
  xml do
10
9
  root "AbstractSurfacePatch"
11
10
  namespace "http://www.opengis.net/gml/3.2", "gml"
@@ -1,7 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # --- abstract_time_complex_type.rb ---
4
- require "shale"
3
+ require "lutaml/model"
5
4
 
6
5
  require_relative "code"
7
6
  require_relative "code_with_authority"