ogc-gml 1.0.0 → 1.0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (335) 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/Gemfile +6 -5
  6. data/README.adoc +102 -0
  7. data/lib/ogc/gml/abstract_continuous_coverage.rb +1 -2
  8. data/lib/ogc/gml/abstract_coordinate_operation.rb +5 -6
  9. data/lib/ogc/gml/abstract_coordinate_system.rb +6 -7
  10. data/lib/ogc/gml/abstract_coverage.rb +1 -2
  11. data/lib/ogc/gml/abstract_crs.rb +4 -5
  12. data/lib/ogc/gml/abstract_curve.rb +1 -2
  13. data/lib/ogc/gml/abstract_curve_segment.rb +5 -6
  14. data/lib/ogc/gml/abstract_datum.rb +5 -6
  15. data/lib/ogc/gml/abstract_feature.rb +1 -2
  16. data/lib/ogc/gml/abstract_feature_collection.rb +1 -2
  17. data/lib/ogc/gml/abstract_general_conversion.rb +4 -5
  18. data/lib/ogc/gml/abstract_general_derived_crs.rb +1 -2
  19. data/lib/ogc/gml/abstract_general_operation_parameter.rb +3 -4
  20. data/lib/ogc/gml/abstract_general_operation_parameter_property.rb +4 -5
  21. data/lib/ogc/gml/abstract_general_parameter_value.rb +2 -3
  22. data/lib/ogc/gml/abstract_general_parameter_value_property.rb +2 -3
  23. data/lib/ogc/gml/abstract_general_transformation.rb +1 -2
  24. data/lib/ogc/gml/abstract_geometric_aggregate.rb +2 -3
  25. data/lib/ogc/gml/abstract_geometric_primitive.rb +8 -9
  26. data/lib/ogc/gml/abstract_geometry.rb +1 -2
  27. data/lib/ogc/gml/abstract_gml.rb +1 -2
  28. data/lib/ogc/gml/abstract_gridded_surface.rb +5 -6
  29. data/lib/ogc/gml/abstract_meta_data.rb +4 -5
  30. data/lib/ogc/gml/abstract_parametric_curve_surface.rb +3 -4
  31. data/lib/ogc/gml/abstract_ring.rb +2 -3
  32. data/lib/ogc/gml/abstract_ring_property.rb +2 -3
  33. data/lib/ogc/gml/abstract_solid.rb +1 -2
  34. data/lib/ogc/gml/abstract_surface.rb +1 -2
  35. data/lib/ogc/gml/abstract_surface_patch.rb +2 -3
  36. data/lib/ogc/gml/abstract_time_complex.rb +1 -2
  37. data/lib/ogc/gml/abstract_time_geometric_primitive.rb +5 -6
  38. data/lib/ogc/gml/abstract_time_object.rb +1 -2
  39. data/lib/ogc/gml/abstract_time_primitive.rb +2 -3
  40. data/lib/ogc/gml/abstract_time_slice.rb +1 -2
  41. data/lib/ogc/gml/abstract_time_topology_primitive.rb +1 -2
  42. data/lib/ogc/gml/abstract_topo_primitive.rb +1 -2
  43. data/lib/ogc/gml/abstract_topology.rb +4 -5
  44. data/lib/ogc/gml/affine_cs.rb +1 -2
  45. data/lib/ogc/gml/affine_cs_property.rb +4 -5
  46. data/lib/ogc/gml/affine_placement.rb +4 -5
  47. data/lib/ogc/gml/angle.rb +4 -3
  48. data/lib/ogc/gml/arc.rb +1 -2
  49. data/lib/ogc/gml/arc_by_bulge.rb +2 -3
  50. data/lib/ogc/gml/arc_by_center_point.rb +1 -2
  51. data/lib/ogc/gml/arc_string.rb +3 -4
  52. data/lib/ogc/gml/arc_string_by_bulge.rb +2 -3
  53. data/lib/ogc/gml/array.rb +1 -2
  54. data/lib/ogc/gml/array_association.rb +4 -5
  55. data/lib/ogc/gml/association_role.rb +5 -6
  56. data/lib/ogc/gml/b_spline.rb +1 -2
  57. data/lib/ogc/gml/bag.rb +1 -2
  58. data/lib/ogc/gml/base_unit.rb +2 -3
  59. data/lib/ogc/gml/bezier.rb +5 -6
  60. data/lib/ogc/gml/boolean.rb +4 -5
  61. data/lib/ogc/gml/bounding_shape.rb +4 -5
  62. data/lib/ogc/gml/cartesian_cs.rb +1 -2
  63. data/lib/ogc/gml/cartesian_cs_property.rb +4 -5
  64. data/lib/ogc/gml/category.rb +3 -4
  65. data/lib/ogc/gml/category_extent.rb +2 -3
  66. data/lib/ogc/gml/circle.rb +1 -2
  67. data/lib/ogc/gml/circle_by_center_point.rb +3 -4
  68. data/lib/ogc/gml/clothoid.rb +5 -6
  69. data/lib/ogc/gml/code.rb +4 -5
  70. data/lib/ogc/gml/code_or_nil_reason_list.rb +4 -5
  71. data/lib/ogc/gml/code_with_authority.rb +3 -4
  72. data/lib/ogc/gml/composite_curve.rb +1 -2
  73. data/lib/ogc/gml/composite_solid.rb +1 -2
  74. data/lib/ogc/gml/composite_surface.rb +1 -2
  75. data/lib/ogc/gml/composite_value.rb +5 -6
  76. data/lib/ogc/gml/compound_crs.rb +2 -3
  77. data/lib/ogc/gml/compound_crs_property.rb +4 -5
  78. data/lib/ogc/gml/concatenated_operation.rb +4 -5
  79. data/lib/ogc/gml/concatenated_operation_property.rb +4 -5
  80. data/lib/ogc/gml/cone.rb +1 -2
  81. data/lib/ogc/gml/control_point.rb +2 -3
  82. data/lib/ogc/gml/conventional_unit.rb +2 -3
  83. data/lib/ogc/gml/conversion.rb +1 -2
  84. data/lib/ogc/gml/conversion_property.rb +4 -5
  85. data/lib/ogc/gml/conversion_to_preferred_unit.rb +4 -5
  86. data/lib/ogc/gml/coordinate_operation_accuracy.rb +4 -5
  87. data/lib/ogc/gml/coordinate_operation_property.rb +4 -5
  88. data/lib/ogc/gml/coordinate_system_axis.rb +8 -9
  89. data/lib/ogc/gml/coordinate_system_axis_property.rb +4 -5
  90. data/lib/ogc/gml/coordinate_system_property.rb +4 -5
  91. data/lib/ogc/gml/coordinates.rb +6 -7
  92. data/lib/ogc/gml/count.rb +4 -5
  93. data/lib/ogc/gml/coverage_function.rb +2 -3
  94. data/lib/ogc/gml/crs_property.rb +4 -5
  95. data/lib/ogc/gml/cubic_spline.rb +3 -4
  96. data/lib/ogc/gml/curve.rb +1 -2
  97. data/lib/ogc/gml/curve_array_property.rb +3 -4
  98. data/lib/ogc/gml/curve_property.rb +5 -6
  99. data/lib/ogc/gml/curve_segment_array_property.rb +2 -3
  100. data/lib/ogc/gml/cylinder.rb +3 -4
  101. data/lib/ogc/gml/cylindrical_cs.rb +1 -2
  102. data/lib/ogc/gml/cylindrical_cs_property.rb +4 -5
  103. data/lib/ogc/gml/data_block.rb +3 -4
  104. data/lib/ogc/gml/datum_property.rb +4 -5
  105. data/lib/ogc/gml/definition.rb +2 -3
  106. data/lib/ogc/gml/definition_proxy.rb +2 -3
  107. data/lib/ogc/gml/degrees.rb +4 -5
  108. data/lib/ogc/gml/derivation_unit_term.rb +4 -5
  109. data/lib/ogc/gml/derived_crs.rb +1 -2
  110. data/lib/ogc/gml/derived_crs_property.rb +4 -5
  111. data/lib/ogc/gml/derived_unit.rb +2 -3
  112. data/lib/ogc/gml/dictionary.rb +7 -10
  113. data/lib/ogc/gml/dictionary_entry.rb +8 -9
  114. data/lib/ogc/gml/direct_position.rb +7 -8
  115. data/lib/ogc/gml/direct_position_list.rb +8 -9
  116. data/lib/ogc/gml/directed_edge_property.rb +6 -7
  117. data/lib/ogc/gml/directed_face_property.rb +6 -7
  118. data/lib/ogc/gml/directed_node_property.rb +6 -7
  119. data/lib/ogc/gml/directed_observation.rb +1 -2
  120. data/lib/ogc/gml/directed_observation_at_distance.rb +1 -2
  121. data/lib/ogc/gml/directed_topo_solid_property.rb +6 -7
  122. data/lib/ogc/gml/direction_description.rb +4 -5
  123. data/lib/ogc/gml/direction_property.rb +6 -7
  124. data/lib/ogc/gml/direction_vector.rb +2 -3
  125. data/lib/ogc/gml/discrete_coverage.rb +1 -2
  126. data/lib/ogc/gml/dms_angle.rb +5 -6
  127. data/lib/ogc/gml/domain_of_validity.rb +4 -5
  128. data/lib/ogc/gml/domain_set.rb +5 -6
  129. data/lib/ogc/gml/dynamic_feature.rb +1 -2
  130. data/lib/ogc/gml/dynamic_feature_collection.rb +1 -2
  131. data/lib/ogc/gml/dynamic_feature_member.rb +5 -6
  132. data/lib/ogc/gml/edge.rb +5 -6
  133. data/lib/ogc/gml/ellipsoid.rb +2 -3
  134. data/lib/ogc/gml/ellipsoid_property.rb +4 -5
  135. data/lib/ogc/gml/ellipsoidal_cs.rb +1 -2
  136. data/lib/ogc/gml/ellipsoidal_cs_property.rb +4 -5
  137. data/lib/ogc/gml/engineering_crs.rb +1 -2
  138. data/lib/ogc/gml/engineering_crs_property.rb +4 -5
  139. data/lib/ogc/gml/engineering_datum.rb +1 -2
  140. data/lib/ogc/gml/engineering_datum_property.rb +4 -5
  141. data/lib/ogc/gml/envelope.rb +6 -7
  142. data/lib/ogc/gml/envelope_with_time_period.rb +7 -8
  143. data/lib/ogc/gml/face.rb +6 -7
  144. data/lib/ogc/gml/face_or_topo_solid_property.rb +7 -8
  145. data/lib/ogc/gml/feature_array_property.rb +2 -3
  146. data/lib/ogc/gml/feature_collection.rb +1 -2
  147. data/lib/ogc/gml/feature_property.rb +5 -6
  148. data/lib/ogc/gml/file.rb +6 -7
  149. data/lib/ogc/gml/formula.rb +6 -7
  150. data/lib/ogc/gml/formula_citation.rb +4 -5
  151. data/lib/ogc/gml/general_conversion_property.rb +4 -5
  152. data/lib/ogc/gml/general_transformation_property.rb +4 -5
  153. data/lib/ogc/gml/generic_meta_data.rb +4 -5
  154. data/lib/ogc/gml/geocentric_crs.rb +1 -2
  155. data/lib/ogc/gml/geocentric_crs_property.rb +4 -5
  156. data/lib/ogc/gml/geodesic.rb +2 -3
  157. data/lib/ogc/gml/geodesic_string.rb +2 -3
  158. data/lib/ogc/gml/geodetic_crs.rb +1 -2
  159. data/lib/ogc/gml/geodetic_crs_property.rb +4 -5
  160. data/lib/ogc/gml/geodetic_datum.rb +1 -2
  161. data/lib/ogc/gml/geodetic_datum_property.rb +4 -5
  162. data/lib/ogc/gml/geographic_crs.rb +1 -2
  163. data/lib/ogc/gml/geographic_crs_property.rb +4 -5
  164. data/lib/ogc/gml/geometric_complex.rb +1 -2
  165. data/lib/ogc/gml/geometric_primitive_property.rb +5 -6
  166. data/lib/ogc/gml/geometry_array_property.rb +3 -4
  167. data/lib/ogc/gml/geometry_property.rb +5 -6
  168. data/lib/ogc/gml/grid.rb +10 -11
  169. data/lib/ogc/gml/grid_envelope.rb +4 -5
  170. data/lib/ogc/gml/grid_function.rb +3 -4
  171. data/lib/ogc/gml/grid_limits.rb +2 -3
  172. data/lib/ogc/gml/history_property.rb +3 -4
  173. data/lib/ogc/gml/image_crs.rb +1 -2
  174. data/lib/ogc/gml/image_crs_property.rb +4 -5
  175. data/lib/ogc/gml/image_datum.rb +1 -2
  176. data/lib/ogc/gml/image_datum_property.rb +4 -5
  177. data/lib/ogc/gml/indirect_entry.rb +2 -3
  178. data/lib/ogc/gml/inline_property.rb +3 -4
  179. data/lib/ogc/gml/knot.rb +5 -6
  180. data/lib/ogc/gml/knot_property.rb +2 -3
  181. data/lib/ogc/gml/length.rb +4 -3
  182. data/lib/ogc/gml/line_string.rb +1 -2
  183. data/lib/ogc/gml/line_string_segment.rb +2 -3
  184. data/lib/ogc/gml/line_string_segment_array_property.rb +2 -3
  185. data/lib/ogc/gml/linear_cs.rb +1 -2
  186. data/lib/ogc/gml/linear_cs_property.rb +4 -5
  187. data/lib/ogc/gml/linear_ring.rb +2 -3
  188. data/lib/ogc/gml/location_property.rb +5 -6
  189. data/lib/ogc/gml/mapping_rule.rb +3 -4
  190. data/lib/ogc/gml/measure.rb +4 -5
  191. data/lib/ogc/gml/measure_list.rb +4 -5
  192. data/lib/ogc/gml/measure_or_nil_reason_list.rb +4 -5
  193. data/lib/ogc/gml/meta_data_property.rb +5 -6
  194. data/lib/ogc/gml/moving_object_status.rb +1 -2
  195. data/lib/ogc/gml/multi_curve.rb +1 -2
  196. data/lib/ogc/gml/multi_curve_property.rb +5 -6
  197. data/lib/ogc/gml/multi_geometry.rb +1 -2
  198. data/lib/ogc/gml/multi_geometry_property.rb +5 -6
  199. data/lib/ogc/gml/multi_point.rb +1 -2
  200. data/lib/ogc/gml/multi_point_property.rb +5 -6
  201. data/lib/ogc/gml/multi_solid.rb +1 -2
  202. data/lib/ogc/gml/multi_solid_property.rb +5 -6
  203. data/lib/ogc/gml/multi_surface.rb +1 -2
  204. data/lib/ogc/gml/multi_surface_property.rb +5 -6
  205. data/lib/ogc/gml/node.rb +6 -7
  206. data/lib/ogc/gml/node_or_edge_property.rb +6 -7
  207. data/lib/ogc/gml/node_property.rb +5 -6
  208. data/lib/ogc/gml/oblique_cartesian_cs.rb +1 -2
  209. data/lib/ogc/gml/oblique_cartesian_cs_property.rb +4 -5
  210. data/lib/ogc/gml/observation.rb +1 -2
  211. data/lib/ogc/gml/offset_curve.rb +1 -2
  212. data/lib/ogc/gml/operation_method.rb +4 -5
  213. data/lib/ogc/gml/operation_method_property.rb +4 -5
  214. data/lib/ogc/gml/operation_parameter.rb +1 -2
  215. data/lib/ogc/gml/operation_parameter_group.rb +2 -3
  216. data/lib/ogc/gml/operation_parameter_group_property.rb +4 -5
  217. data/lib/ogc/gml/operation_parameter_property.rb +4 -5
  218. data/lib/ogc/gml/operation_property.rb +4 -5
  219. data/lib/ogc/gml/orientable_curve.rb +10 -11
  220. data/lib/ogc/gml/orientable_surface.rb +9 -10
  221. data/lib/ogc/gml/parameter_value.rb +7 -8
  222. data/lib/ogc/gml/parameter_value_group.rb +2 -3
  223. data/lib/ogc/gml/pass_through_operation.rb +2 -3
  224. data/lib/ogc/gml/pass_through_operation_property.rb +4 -5
  225. data/lib/ogc/gml/point.rb +1 -2
  226. data/lib/ogc/gml/point_array_property.rb +3 -4
  227. data/lib/ogc/gml/point_property.rb +5 -6
  228. data/lib/ogc/gml/polar_cs.rb +2 -3
  229. data/lib/ogc/gml/polar_cs_property.rb +4 -5
  230. data/lib/ogc/gml/polygon.rb +1 -2
  231. data/lib/ogc/gml/polygon_patch.rb +3 -4
  232. data/lib/ogc/gml/prime_meridian.rb +2 -3
  233. data/lib/ogc/gml/prime_meridian_property.rb +4 -5
  234. data/lib/ogc/gml/priority_location_property.rb +6 -7
  235. data/lib/ogc/gml/procedure_property.rb +5 -6
  236. data/lib/ogc/gml/projected_crs.rb +1 -2
  237. data/lib/ogc/gml/projected_crs_property.rb +4 -5
  238. data/lib/ogc/gml/quantity.rb +3 -4
  239. data/lib/ogc/gml/quantity_extent.rb +2 -3
  240. data/lib/ogc/gml/range_set.rb +3 -4
  241. data/lib/ogc/gml/rectangle.rb +3 -4
  242. data/lib/ogc/gml/rectified_grid.rb +10 -11
  243. data/lib/ogc/gml/ref_location.rb +2 -3
  244. data/lib/ogc/gml/reference.rb +5 -6
  245. data/lib/ogc/gml/related_time.rb +6 -7
  246. data/lib/ogc/gml/result.rb +5 -6
  247. data/lib/ogc/gml/ring.rb +2 -3
  248. data/lib/ogc/gml/second_defining_parameter1.rb +2 -3
  249. data/lib/ogc/gml/second_defining_parameter2.rb +3 -4
  250. data/lib/ogc/gml/sequence_rule.rb +5 -6
  251. data/lib/ogc/gml/shell.rb +4 -5
  252. data/lib/ogc/gml/shell_property.rb +2 -3
  253. data/lib/ogc/gml/single_crs_property.rb +4 -5
  254. data/lib/ogc/gml/single_operation_property.rb +4 -5
  255. data/lib/ogc/gml/solid.rb +1 -2
  256. data/lib/ogc/gml/solid_array_property.rb +3 -4
  257. data/lib/ogc/gml/solid_property.rb +5 -6
  258. data/lib/ogc/gml/sphere.rb +1 -2
  259. data/lib/ogc/gml/spherical_cs.rb +2 -3
  260. data/lib/ogc/gml/spherical_cs_property.rb +4 -5
  261. data/lib/ogc/gml/string_or_ref.rb +5 -6
  262. data/lib/ogc/gml/surface.rb +1 -2
  263. data/lib/ogc/gml/surface_array_property.rb +3 -4
  264. data/lib/ogc/gml/surface_patch_array_property.rb +2 -3
  265. data/lib/ogc/gml/surface_property.rb +5 -6
  266. data/lib/ogc/gml/target_property.rb +5 -6
  267. data/lib/ogc/gml/temporal_crs.rb +1 -2
  268. data/lib/ogc/gml/temporal_crs_property.rb +4 -5
  269. data/lib/ogc/gml/temporal_cs.rb +1 -2
  270. data/lib/ogc/gml/temporal_cs_property.rb +4 -5
  271. data/lib/ogc/gml/temporal_datum.rb +4 -5
  272. data/lib/ogc/gml/temporal_datum_property.rb +4 -5
  273. data/lib/ogc/gml/time_calendar.rb +3 -4
  274. data/lib/ogc/gml/time_calendar_era.rb +4 -5
  275. data/lib/ogc/gml/time_calendar_era_property.rb +5 -6
  276. data/lib/ogc/gml/time_calendar_property.rb +5 -6
  277. data/lib/ogc/gml/time_clock.rb +5 -6
  278. data/lib/ogc/gml/time_coordinate_system.rb +3 -4
  279. data/lib/ogc/gml/time_cs.rb +1 -2
  280. data/lib/ogc/gml/time_cs_property.rb +4 -5
  281. data/lib/ogc/gml/time_edge.rb +1 -2
  282. data/lib/ogc/gml/time_edge_property.rb +5 -6
  283. data/lib/ogc/gml/time_instant.rb +1 -2
  284. data/lib/ogc/gml/time_instant_property.rb +5 -6
  285. data/lib/ogc/gml/time_interval_length.rb +6 -7
  286. data/lib/ogc/gml/time_node.rb +2 -3
  287. data/lib/ogc/gml/time_node_property.rb +5 -6
  288. data/lib/ogc/gml/time_ordinal_era.rb +3 -4
  289. data/lib/ogc/gml/time_ordinal_era_property.rb +5 -6
  290. data/lib/ogc/gml/time_ordinal_reference_system.rb +3 -4
  291. data/lib/ogc/gml/time_period.rb +2 -3
  292. data/lib/ogc/gml/time_period_property.rb +5 -6
  293. data/lib/ogc/gml/time_position.rb +6 -7
  294. data/lib/ogc/gml/time_primitive_property.rb +5 -6
  295. data/lib/ogc/gml/time_reference_system.rb +3 -4
  296. data/lib/ogc/gml/time_topology_complex.rb +1 -2
  297. data/lib/ogc/gml/time_topology_primitive_property.rb +5 -6
  298. data/lib/ogc/gml/tin.rb +1 -2
  299. data/lib/ogc/gml/topo_complex.rb +7 -8
  300. data/lib/ogc/gml/topo_complex_property.rb +4 -5
  301. data/lib/ogc/gml/topo_curve.rb +5 -6
  302. data/lib/ogc/gml/topo_curve_property.rb +3 -4
  303. data/lib/ogc/gml/topo_point.rb +1 -2
  304. data/lib/ogc/gml/topo_point_property.rb +3 -4
  305. data/lib/ogc/gml/topo_primitive_array_association.rb +3 -4
  306. data/lib/ogc/gml/topo_primitive_member.rb +5 -6
  307. data/lib/ogc/gml/topo_solid.rb +7 -8
  308. data/lib/ogc/gml/topo_solid_property.rb +5 -6
  309. data/lib/ogc/gml/topo_surface.rb +5 -6
  310. data/lib/ogc/gml/topo_surface_property.rb +3 -4
  311. data/lib/ogc/gml/topo_volume.rb +5 -6
  312. data/lib/ogc/gml/topo_volume_property.rb +3 -4
  313. data/lib/ogc/gml/transformation.rb +1 -2
  314. data/lib/ogc/gml/transformation_property.rb +4 -5
  315. data/lib/ogc/gml/triangle.rb +3 -4
  316. data/lib/ogc/gml/unit_definition.rb +2 -3
  317. data/lib/ogc/gml/unit_of_measure.rb +3 -4
  318. data/lib/ogc/gml/user_defined_cs.rb +1 -2
  319. data/lib/ogc/gml/user_defined_cs_property.rb +4 -5
  320. data/lib/ogc/gml/value_array.rb +7 -8
  321. data/lib/ogc/gml/value_array_property.rb +5 -6
  322. data/lib/ogc/gml/value_property.rb +7 -8
  323. data/lib/ogc/gml/vector.rb +2 -3
  324. data/lib/ogc/gml/version.rb +1 -1
  325. data/lib/ogc/gml/vertical_crs.rb +1 -2
  326. data/lib/ogc/gml/vertical_crs_property.rb +4 -5
  327. data/lib/ogc/gml/vertical_cs.rb +1 -2
  328. data/lib/ogc/gml/vertical_cs_property.rb +4 -5
  329. data/lib/ogc/gml/vertical_datum.rb +1 -2
  330. data/lib/ogc/gml/vertical_datum_property.rb +4 -5
  331. data/lib/ogc/gml.rb +8 -5
  332. data/ogc-gml.gemspec +10 -17
  333. metadata +10 -94
  334. data/.github/workflows/main.yml +0 -27
  335. 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: bbfb37c517aaa6292b804239329fae7acfac991428ccbb6098d5fd3de23d04c2
4
+ data.tar.gz: 69aa41c84ab89355aa3508b05322b2c13341d16b387c380cfcb9d02f3a37fb1c
5
5
  SHA512:
6
- metadata.gz: 6736ab75700d6be06924e7b6f6610156358d2d53ff3aa5e2f231d6ac665dce9f7c492e9eb138f071937e28621c06bdbfa1d61780b0370f76380f7a50c3505847
7
- data.tar.gz: eb09af5b900b5f45b7b8f6e7dc2396497b24ecb9b781b58aa68f9a7217639d426227a2154e15a5d716f70ff1c6c6a98b983a9e7dd0f9ba128843d4c73c42de72
6
+ metadata.gz: 7555a26c1764fb7a70bc3e87747c15fbea01e1a3f1b7338c8a3f5b7548f8f66ae9dcd4c737f1f25fa102bef39ff06fb1d5bae2f310db2b60109702bed85deac6
7
+ data.tar.gz: '0139c760728fb587aca2de88846408a926e19ee8e990da898d6ecc6790fdc476820e66f5418653a42c6e066118a61af782b3339afa8c69e610bb0bb77bc3728a'
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-09-11 04:07:13 UTC using RuboCop version 1.66.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: 40
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/Gemfile CHANGED
@@ -5,8 +5,9 @@ source "https://rubygems.org"
5
5
  # Specify your gem's dependencies in ogc-gml.gemspec
6
6
  gemspec
7
7
 
8
- gem "rake", "~> 13.0"
9
-
10
- gem "rspec", "~> 3.0"
11
-
12
- gem "rubocop", "~> 1.21"
8
+ gem "equivalent-xml"
9
+ gem "pry"
10
+ gem "rake"
11
+ gem "rspec"
12
+ gem "rubocop"
13
+ gem "xml-c14n"
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