lutaml-model 0.7.6 → 0.8.0

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 (1573) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/dependent-tests.yml +4 -0
  3. data/.github/workflows/docs.yml +59 -0
  4. data/.github/workflows/downstream-performance.yml +156 -0
  5. data/.github/workflows/performance.yml +33 -0
  6. data/.github/workflows/rake.yml +13 -0
  7. data/.github/workflows/release.yml +5 -0
  8. data/.gitignore +27 -1
  9. data/.rubocop.yml +14 -2
  10. data/.rubocop_todo.yml +574 -88
  11. data/Gemfile +15 -9
  12. data/README.adoc +13522 -6905
  13. data/RELEASE_NOTES.adoc +51 -0
  14. data/Rakefile +2 -0
  15. data/bench/baselines/.gitkeep +0 -0
  16. data/bench/bench_all.rb +52 -0
  17. data/bench/bench_common.rb +147 -0
  18. data/bench/bench_compare.rb +195 -0
  19. data/bench/bench_mml.rb +53 -0
  20. data/bench/bench_niso.rb +54 -0
  21. data/bench/bench_sts.rb +49 -0
  22. data/bench/bench_unitsml.rb +43 -0
  23. data/bench/bench_uniword.rb +69 -0
  24. data/bench/bench_xmi.rb +51 -0
  25. data/bench/gate_config.rb +127 -0
  26. data/benchmark/quick_benchmark.rb +297 -0
  27. data/benchmark/serialization_benchmark.rb +619 -0
  28. data/docs/.rubocop.yml +1 -0
  29. data/docs/.rubocop_todo.yml +7 -0
  30. data/docs/Gemfile +13 -0
  31. data/docs/PERFORMANCE_METHODOLOGY.md +645 -0
  32. data/docs/_config.yml +145 -0
  33. data/docs/_guides/advanced-mapping.adoc +564 -0
  34. data/docs/_guides/character-encoding.adoc +342 -0
  35. data/docs/_guides/collection-serialization.adoc +349 -0
  36. data/docs/_guides/creating-xsd.adoc +1221 -0
  37. data/docs/_guides/index.adoc +71 -0
  38. data/docs/_guides/keyvalue-serialization.adoc +1156 -0
  39. data/docs/_guides/liquid-templates.adoc +505 -0
  40. data/docs/_guides/missing-values-handling.adoc +1531 -0
  41. data/docs/_guides/ooxml-examples.adoc +755 -0
  42. data/docs/{schema_generation.adoc → _guides/schema-generation.adoc} +5 -0
  43. data/docs/{schema_import.adoc → _guides/schema-import.adoc} +276 -4
  44. data/docs/_guides/value-transformations.adoc +1388 -0
  45. data/docs/_guides/xml/namespace-presentation.adoc +476 -0
  46. data/docs/_guides/xml/namespace-semantics.adoc +677 -0
  47. data/docs/_guides/xml/reusable-mapping-classes.adoc +181 -0
  48. data/docs/_guides/xml/schema-location.adoc +245 -0
  49. data/docs/_guides/xml/type-namespaces.adoc +1011 -0
  50. data/docs/_guides/xml-mapping.adoc +1847 -0
  51. data/docs/_guides/xml-mappings-guide.adoc +21 -0
  52. data/docs/_guides/xml-namespace-declarations.adoc +662 -0
  53. data/docs/_guides/xml-namespace-qualification.adoc +720 -0
  54. data/docs/_guides/xml-namespaces.adoc +2613 -0
  55. data/docs/_guides/xml_mappings/01_introduction.adoc +65 -0
  56. data/docs/_guides/xml_mappings/02_core_concepts.adoc +177 -0
  57. data/docs/_guides/xml_mappings/03_architecture.adoc +205 -0
  58. data/docs/_guides/xml_mappings/04_xml_namespace_class.adoc +1754 -0
  59. data/docs/_guides/xml_mappings/05_common_patterns.adoc +1803 -0
  60. data/docs/_guides/xml_mappings/06_migration_guide.adoc +523 -0
  61. data/docs/_guides/xml_mappings/07_best_practices.adoc +959 -0
  62. data/docs/_guides/xml_mappings/08_troubleshooting.adoc +934 -0
  63. data/docs/_migrations/0-1-0-migrate-from-shale.adoc +304 -0
  64. data/docs/_migrations/0-8-0-namespace-restructuring.adoc +1572 -0
  65. data/docs/_migrations/0-8-0-xsd-features.adoc +729 -0
  66. data/docs/_migrations/index.adoc +18 -0
  67. data/docs/_migrations/xsd-type-migration.adoc +1294 -0
  68. data/docs/_pages/attributes.adoc +1156 -0
  69. data/docs/_pages/breaking-changes.adoc +154 -0
  70. data/docs/_pages/collections.adoc +1664 -0
  71. data/docs/_pages/comparison-with-shale.adoc +139 -0
  72. data/docs/_pages/configuration.adoc +192 -0
  73. data/docs/_pages/consolidation-mapping.adoc +252 -0
  74. data/docs/_pages/importable_models.adoc +591 -0
  75. data/docs/_pages/index.adoc +46 -0
  76. data/docs/_pages/installation.adoc +35 -0
  77. data/docs/_pages/models.adoc +332 -0
  78. data/docs/_pages/quick-start.adoc +124 -0
  79. data/docs/_pages/serialization_adapters.adoc +268 -0
  80. data/docs/_pages/troubleshooting.adoc +104 -0
  81. data/docs/_pages/validation.adoc +171 -0
  82. data/docs/_pages/value_types.adoc +1514 -0
  83. data/docs/_pages/xml-conformance.adoc +143 -0
  84. data/docs/_references/architecture.adoc +189 -0
  85. data/docs/{custom_adapters.adoc → _references/custom_adapters.adoc} +6 -1
  86. data/docs/_references/custom_registers.adoc +1026 -0
  87. data/docs/_references/data-modeling-in-a-nutshell.adoc +207 -0
  88. data/docs/_references/format-independent-features.adoc +713 -0
  89. data/docs/_references/index.adoc +47 -0
  90. data/docs/_references/instance-serialization.adoc +120 -0
  91. data/docs/_references/lutaml-namespace-planning.md +120 -0
  92. data/docs/_references/parent-root-context.adoc +122 -0
  93. data/docs/_references/reference_type.adoc +302 -0
  94. data/docs/_references/serialization-model-mappings.adoc +102 -0
  95. data/docs/_references/three-phase-namespace-architecture.adoc +470 -0
  96. data/docs/_references/xml-w3c-namespace-qualification.adoc +66 -0
  97. data/docs/_references/xsd-generation-with-namespace-support.adoc +449 -0
  98. data/docs/_references/xsd-schema-parsing.adoc +1260 -0
  99. data/docs/_references/xsd-type-architecture.adoc +534 -0
  100. data/docs/_tutorials/basic-model-definition.adoc +157 -0
  101. data/docs/_tutorials/custom-types-tutorial.adoc +258 -0
  102. data/docs/_tutorials/first-json-serialization.adoc +192 -0
  103. data/docs/_tutorials/first-xml-serialization.adoc +223 -0
  104. data/docs/_tutorials/index.adoc +60 -0
  105. data/docs/_tutorials/lutaml-xml-architecture.adoc +1354 -0
  106. data/docs/_tutorials/polymorphic-models-tutorial.adoc +253 -0
  107. data/docs/_tutorials/schema-compiler-module-namespaces.adoc +497 -0
  108. data/docs/_tutorials/validation-basics.adoc +232 -0
  109. data/docs/_tutorials/working-with-collections.adoc +201 -0
  110. data/docs/_tutorials/xml-element-attribute-namespace-guide.adoc +279 -0
  111. data/docs/_tutorials/xml-namespaces-basics.adoc +315 -0
  112. data/docs/_tutorials/xml-schema-primer-style-guide.adoc +1394 -0
  113. data/docs/architecture.md +424 -0
  114. data/docs/bugreports/BUGREPORT_element_order_render_empty.md +99 -0
  115. data/docs/cli_compare.adoc +249 -0
  116. data/docs/collection_validation.adoc +366 -0
  117. data/docs/index.adoc +106 -0
  118. data/docs/key_value_data_model.adoc +1229 -0
  119. data/docs/model_transforms.adoc +769 -0
  120. data/docs/namespace-management.adoc +1051 -0
  121. data/docs/xml-schema-qualification.md +171 -0
  122. data/lib/lutaml/{model/hash_adapter → hash_format/adapter}/document.rb +3 -4
  123. data/lib/lutaml/hash_format/adapter/mapping.rb +19 -0
  124. data/lib/lutaml/hash_format/adapter/mapping_rule.rb +9 -0
  125. data/lib/lutaml/{model/hash_adapter → hash_format/adapter}/standard_adapter.rb +3 -3
  126. data/lib/lutaml/hash_format/adapter/transform.rb +9 -0
  127. data/lib/lutaml/hash_format/adapter.rb +13 -0
  128. data/lib/lutaml/hash_format/type/serializers.rb +24 -0
  129. data/lib/lutaml/hash_format.rb +25 -0
  130. data/lib/lutaml/{model/json → json/adapter}/document.rb +3 -3
  131. data/lib/lutaml/json/adapter/mapping.rb +19 -0
  132. data/lib/lutaml/json/adapter/mapping_rule.rb +9 -0
  133. data/lib/lutaml/json/adapter/multi_json_adapter.rb +38 -0
  134. data/lib/lutaml/json/adapter/oj_adapter.rb +38 -0
  135. data/lib/lutaml/json/adapter/standard_adapter.rb +36 -0
  136. data/lib/lutaml/json/adapter/transform.rb +9 -0
  137. data/lib/lutaml/json/adapter.rb +20 -0
  138. data/lib/lutaml/json/schema/json_schema.rb +62 -0
  139. data/lib/lutaml/json/schema.rb +9 -0
  140. data/lib/lutaml/json/type/serializers.rb +72 -0
  141. data/lib/lutaml/json.rb +58 -0
  142. data/lib/lutaml/{model/jsonl → jsonl/adapter}/document.rb +2 -2
  143. data/lib/lutaml/jsonl/adapter/mapping.rb +19 -0
  144. data/lib/lutaml/jsonl/adapter/mapping_rule.rb +9 -0
  145. data/lib/lutaml/{model/jsonl → jsonl/adapter}/standard_adapter.rb +5 -4
  146. data/lib/lutaml/jsonl/adapter/transform.rb +26 -0
  147. data/lib/lutaml/jsonl/adapter.rb +13 -0
  148. data/lib/lutaml/jsonl.rb +21 -0
  149. data/lib/lutaml/key_value/adapter/hash/document.rb +13 -0
  150. data/lib/lutaml/key_value/adapter/hash/mapping.rb +19 -0
  151. data/lib/lutaml/key_value/adapter/hash/mapping_rule.rb +9 -0
  152. data/lib/lutaml/key_value/adapter/hash/standard_adapter.rb +19 -0
  153. data/lib/lutaml/key_value/adapter/hash/transform.rb +10 -0
  154. data/lib/lutaml/key_value/adapter/hash.rb +15 -0
  155. data/lib/lutaml/key_value/adapter/json/document.rb +16 -0
  156. data/lib/lutaml/key_value/adapter/json/mapping.rb +24 -0
  157. data/lib/lutaml/key_value/adapter/json/mapping_rule.rb +14 -0
  158. data/lib/lutaml/key_value/adapter/json/multi_json_adapter.rb +43 -0
  159. data/lib/lutaml/key_value/adapter/json/oj_adapter.rb +43 -0
  160. data/lib/lutaml/key_value/adapter/json/standard_adapter.rb +41 -0
  161. data/lib/lutaml/key_value/adapter/json/transform.rb +14 -0
  162. data/lib/lutaml/key_value/adapter/json.rb +24 -0
  163. data/lib/lutaml/key_value/adapter/jsonl/document.rb +16 -0
  164. data/lib/lutaml/key_value/adapter/jsonl/mapping.rb +19 -0
  165. data/lib/lutaml/key_value/adapter/jsonl/mapping_rule.rb +9 -0
  166. data/lib/lutaml/key_value/adapter/jsonl/standard_adapter.rb +36 -0
  167. data/lib/lutaml/key_value/adapter/jsonl/transform.rb +26 -0
  168. data/lib/lutaml/key_value/adapter/jsonl.rb +17 -0
  169. data/lib/lutaml/key_value/adapter/toml/document.rb +13 -0
  170. data/lib/lutaml/key_value/adapter/toml/mapping.rb +28 -0
  171. data/lib/lutaml/key_value/adapter/toml/mapping_rule.rb +9 -0
  172. data/lib/lutaml/key_value/adapter/toml/toml_rb_adapter.rb +40 -0
  173. data/lib/lutaml/key_value/adapter/toml/tomlib_adapter.rb +46 -0
  174. data/lib/lutaml/key_value/adapter/toml/transform.rb +10 -0
  175. data/lib/lutaml/key_value/adapter/toml.rb +21 -0
  176. data/lib/lutaml/key_value/adapter/yaml/document.rb +12 -0
  177. data/lib/lutaml/key_value/adapter/yaml/mapping.rb +19 -0
  178. data/lib/lutaml/key_value/adapter/yaml/mapping_rule.rb +9 -0
  179. data/lib/lutaml/key_value/adapter/yaml/standard_adapter.rb +41 -0
  180. data/lib/lutaml/key_value/adapter/yaml/transform.rb +10 -0
  181. data/lib/lutaml/key_value/adapter/yaml.rb +17 -0
  182. data/lib/lutaml/key_value/adapter/yamls/document.rb +16 -0
  183. data/lib/lutaml/key_value/adapter/yamls/mapping.rb +19 -0
  184. data/lib/lutaml/key_value/adapter/yamls/mapping_rule.rb +9 -0
  185. data/lib/lutaml/key_value/adapter/yamls/standard_adapter.rb +37 -0
  186. data/lib/lutaml/key_value/adapter/yamls/transform.rb +26 -0
  187. data/lib/lutaml/key_value/adapter/yamls.rb +17 -0
  188. data/lib/lutaml/key_value/adapter.rb +14 -0
  189. data/lib/lutaml/key_value/data_model/element.rb +222 -0
  190. data/lib/lutaml/key_value/data_model.rb +14 -0
  191. data/lib/lutaml/{model/key_value_document.rb → key_value/document.rb} +2 -2
  192. data/lib/lutaml/{model/mapping/key_value_mapping.rb → key_value/mapping.rb} +90 -44
  193. data/lib/lutaml/{model/mapping/key_value_mapping_rule.rb → key_value/mapping_rule.rb} +9 -9
  194. data/lib/lutaml/{model/transform/key_value_transform.rb → key_value/transform.rb} +111 -65
  195. data/lib/lutaml/key_value/transformation/collection_serializer.rb +575 -0
  196. data/lib/lutaml/key_value/transformation/rule_compiler.rb +294 -0
  197. data/lib/lutaml/key_value/transformation/value_serializer.rb +268 -0
  198. data/lib/lutaml/key_value/transformation.rb +1071 -0
  199. data/lib/lutaml/key_value/transformation_builder.rb +30 -0
  200. data/lib/lutaml/key_value.rb +24 -0
  201. data/lib/lutaml/model/attribute.rb +515 -121
  202. data/lib/lutaml/model/attribute_validator.rb +288 -0
  203. data/lib/lutaml/model/cached_type_resolver/concurrent_map_cache.rb +46 -0
  204. data/lib/lutaml/model/cached_type_resolver/mutex_hash_cache.rb +51 -0
  205. data/lib/lutaml/model/cached_type_resolver.rb +144 -0
  206. data/lib/lutaml/model/choice.rb +230 -13
  207. data/lib/lutaml/model/cli.rb +75 -121
  208. data/lib/lutaml/model/collection.rb +526 -42
  209. data/lib/lutaml/model/collection_handler.rb +106 -0
  210. data/lib/lutaml/model/comparable_model.rb +11 -3
  211. data/lib/lutaml/model/comparable_nil.rb +0 -2
  212. data/lib/lutaml/model/compiled_rule.rb +208 -0
  213. data/lib/lutaml/model/config.rb +56 -88
  214. data/lib/lutaml/model/configuration.rb +323 -0
  215. data/lib/lutaml/model/consolidation/attribute_grouper.rb +44 -0
  216. data/lib/lutaml/model/consolidation/dispatcher.rb +45 -0
  217. data/lib/lutaml/model/consolidation/engine.rb +33 -0
  218. data/lib/lutaml/model/consolidation/pattern_chunker.rb +87 -0
  219. data/lib/lutaml/model/consolidation_map.rb +68 -0
  220. data/lib/lutaml/model/consolidation_rule/dispatch_block.rb +34 -0
  221. data/lib/lutaml/model/consolidation_rule/gather_rule.rb +17 -0
  222. data/lib/lutaml/model/consolidation_rule/pattern_content_rule.rb +15 -0
  223. data/lib/lutaml/model/consolidation_rule/pattern_element_rule.rb +17 -0
  224. data/lib/lutaml/model/consolidation_rule.rb +27 -0
  225. data/lib/lutaml/model/constants.rb +5 -3
  226. data/lib/lutaml/model/context_registry.rb +208 -0
  227. data/lib/lutaml/model/error/element_count_out_of_range_error.rb +13 -7
  228. data/lib/lutaml/model/error/format_adapter_not_specified_error.rb +25 -0
  229. data/lib/lutaml/model/error/invalid_attribute_type_error.rb +98 -0
  230. data/lib/lutaml/model/error/invalid_format_error.rb +11 -0
  231. data/lib/lutaml/model/error/liquid_class_not_found_error.rb +9 -0
  232. data/lib/lutaml/model/error/mapping_already_exists_error.rb +6 -0
  233. data/lib/lutaml/model/error/mapping_attribute_missing_error.rb +6 -0
  234. data/lib/lutaml/model/error/mapping_attribute_type_error.rb +6 -0
  235. data/lib/lutaml/model/error/mixed_content_collection_error.rb +17 -0
  236. data/lib/lutaml/model/error/no_attributes_defined_liquid_error.rb +9 -0
  237. data/lib/lutaml/model/error/no_mapping_found_error.rb +9 -0
  238. data/lib/lutaml/model/error/required_attribute_missing_error.rb +9 -0
  239. data/lib/lutaml/model/error/reverse_transform_block_not_defined_error.rb +6 -0
  240. data/lib/lutaml/model/error/reverse_transformation_declaration_error.rb +6 -0
  241. data/lib/lutaml/model/error/sorting_configuration_conflict_error.rb +9 -0
  242. data/lib/lutaml/model/error/transform_block_not_defined_error.rb +6 -0
  243. data/lib/lutaml/model/error/type.rb +17 -0
  244. data/lib/lutaml/model/error/undefined_attribute_error.rb +9 -0
  245. data/lib/lutaml/model/error/unknown_adapter_type_error.rb +82 -3
  246. data/lib/lutaml/model/error/unknown_type_error.rb +25 -2
  247. data/lib/lutaml/model/error/unresolvable_type_error.rb +27 -0
  248. data/lib/lutaml/model/error.rb +2 -33
  249. data/lib/lutaml/model/errors.rb +4 -2
  250. data/lib/lutaml/model/finalization_cache.rb +51 -0
  251. data/lib/lutaml/model/format_registry.rb +236 -2
  252. data/lib/lutaml/model/global_context.rb +446 -0
  253. data/lib/lutaml/model/global_register.rb +106 -5
  254. data/lib/lutaml/model/hash.rb +15 -0
  255. data/lib/lutaml/model/import_registry.rb +250 -0
  256. data/lib/lutaml/model/instrumentation.rb +304 -0
  257. data/lib/lutaml/model/json.rb +17 -13
  258. data/lib/lutaml/model/jsonl.rb +7 -13
  259. data/lib/lutaml/model/liquefiable.rb +100 -12
  260. data/lib/lutaml/model/liquid/mapping.rb +30 -0
  261. data/lib/lutaml/model/liquid.rb +9 -0
  262. data/lib/lutaml/model/mapping/listener.rb +124 -0
  263. data/lib/lutaml/model/mapping/mapping.rb +99 -1
  264. data/lib/lutaml/model/mapping/mapping_rule.rb +172 -17
  265. data/lib/lutaml/model/mapping/model_mapping.rb +133 -0
  266. data/lib/lutaml/model/mapping/model_mapping_rule.rb +57 -0
  267. data/lib/lutaml/model/mapping_hash.rb +3 -1
  268. data/lib/lutaml/model/model_transformer.rb +101 -0
  269. data/lib/lutaml/model/one_entry_cache.rb +57 -0
  270. data/lib/lutaml/model/organization.rb +29 -0
  271. data/lib/lutaml/model/register/model_tree_importer.rb +88 -0
  272. data/lib/lutaml/model/register/namespace_binding.rb +92 -0
  273. data/lib/lutaml/model/register.rb +500 -35
  274. data/lib/lutaml/model/registrable.rb +2 -0
  275. data/lib/lutaml/model/render_policy.rb +154 -0
  276. data/lib/lutaml/model/runtime_compatibility.rb +95 -0
  277. data/lib/lutaml/model/schema/base_schema.rb +1 -3
  278. data/lib/lutaml/model/schema/decorators/attribute.rb +3 -1
  279. data/lib/lutaml/model/schema/decorators/choices.rb +0 -2
  280. data/lib/lutaml/model/schema/decorators/class_definition.rb +4 -5
  281. data/lib/lutaml/model/schema/decorators/definition_collection.rb +7 -7
  282. data/lib/lutaml/model/schema/decorators.rb +15 -0
  283. data/lib/lutaml/model/schema/generator/definition.rb +4 -3
  284. data/lib/lutaml/model/schema/generator/definitions_collection.rb +4 -3
  285. data/lib/lutaml/model/schema/generator/properties_collection.rb +7 -5
  286. data/lib/lutaml/model/schema/generator/property.rb +5 -1
  287. data/lib/lutaml/model/schema/generator.rb +15 -0
  288. data/lib/lutaml/model/schema/helpers.rb +11 -0
  289. data/lib/lutaml/model/schema/json_schema.rb +9 -53
  290. data/lib/lutaml/model/schema/renderer.rb +19 -17
  291. data/lib/lutaml/model/schema/schema_builder/nokogiri.rb +41 -0
  292. data/lib/lutaml/model/schema/schema_builder/oga.rb +92 -0
  293. data/lib/lutaml/model/schema/shared_methods.rb +2 -2
  294. data/lib/lutaml/model/schema/xml_compiler/attribute.rb +33 -12
  295. data/lib/lutaml/model/schema/xml_compiler/attribute_group.rb +3 -1
  296. data/lib/lutaml/model/schema/xml_compiler/choice.rb +4 -2
  297. data/lib/lutaml/model/schema/xml_compiler/complex_type.rb +73 -36
  298. data/lib/lutaml/model/schema/xml_compiler/element.rb +18 -1
  299. data/lib/lutaml/model/schema/xml_compiler/group.rb +20 -4
  300. data/lib/lutaml/model/schema/xml_compiler/registry_generator.rb +127 -0
  301. data/lib/lutaml/model/schema/xml_compiler/restriction.rb +5 -2
  302. data/lib/lutaml/model/schema/xml_compiler/sequence.rb +6 -2
  303. data/lib/lutaml/model/schema/xml_compiler/simple_content.rb +7 -3
  304. data/lib/lutaml/model/schema/xml_compiler/simple_type.rb +127 -51
  305. data/lib/lutaml/model/schema/xml_compiler/xml_namespace_class.rb +110 -0
  306. data/lib/lutaml/model/schema/xml_compiler.rb +256 -82
  307. data/lib/lutaml/model/schema/yaml_schema.rb +10 -50
  308. data/lib/lutaml/model/schema.rb +49 -14
  309. data/lib/lutaml/model/schema_location.rb +12 -60
  310. data/lib/lutaml/model/sequence.rb +102 -30
  311. data/lib/lutaml/model/serializable.rb +1 -3
  312. data/lib/lutaml/model/serialization_adapter.rb +2 -0
  313. data/lib/lutaml/model/serialize/attribute_definition.rb +229 -0
  314. data/lib/lutaml/model/serialize/builder.rb +169 -0
  315. data/lib/lutaml/model/serialize/enum_handling.rb +124 -0
  316. data/lib/lutaml/model/serialize/format_conversion.rb +298 -0
  317. data/lib/lutaml/model/serialize/initialization.rb +308 -0
  318. data/lib/lutaml/model/serialize/model_import.rb +357 -0
  319. data/lib/lutaml/model/serialize/transformation_builder.rb +127 -0
  320. data/lib/lutaml/model/serialize/value_mapping.rb +200 -0
  321. data/lib/lutaml/model/serialize.rb +175 -580
  322. data/lib/lutaml/model/services/base.rb +2 -2
  323. data/lib/lutaml/model/services/default_value_resolver.rb +60 -0
  324. data/lib/lutaml/model/services/logger.rb +10 -7
  325. data/lib/lutaml/model/services/rule_value_extractor.rb +22 -36
  326. data/lib/lutaml/model/services/transformer.rb +50 -9
  327. data/lib/lutaml/model/services/type/validator/string.rb +3 -2
  328. data/lib/lutaml/model/services/type/validator/symbol.rb +30 -0
  329. data/lib/lutaml/model/services/type/validator.rb +5 -2
  330. data/lib/lutaml/model/services/type.rb +9 -0
  331. data/lib/lutaml/model/services/validator.rb +1 -3
  332. data/lib/lutaml/model/services.rb +12 -5
  333. data/lib/lutaml/model/store.rb +59 -0
  334. data/lib/lutaml/model/toml.rb +24 -18
  335. data/lib/lutaml/model/transform/xml_transform.rb +4 -227
  336. data/lib/lutaml/model/transform.rb +49 -17
  337. data/lib/lutaml/model/transformation.rb +84 -0
  338. data/lib/lutaml/model/transformation_builder.rb +55 -0
  339. data/lib/lutaml/model/transformation_registry.rb +314 -0
  340. data/lib/lutaml/model/type/base64_binary.rb +58 -0
  341. data/lib/lutaml/model/type/boolean.rb +9 -16
  342. data/lib/lutaml/model/type/date.rb +49 -9
  343. data/lib/lutaml/model/type/date_time.rb +30 -18
  344. data/lib/lutaml/model/type/decimal.rb +28 -9
  345. data/lib/lutaml/model/type/duration.rb +82 -0
  346. data/lib/lutaml/model/type/float.rb +12 -13
  347. data/lib/lutaml/model/type/hash.rb +10 -17
  348. data/lib/lutaml/model/type/hex_binary.rb +56 -0
  349. data/lib/lutaml/model/type/integer.rb +19 -1
  350. data/lib/lutaml/model/type/qname.rb +85 -0
  351. data/lib/lutaml/model/type/reference.rb +76 -0
  352. data/lib/lutaml/model/type/string.rb +18 -35
  353. data/lib/lutaml/model/type/symbol.rb +67 -0
  354. data/lib/lutaml/model/type/time.rb +19 -22
  355. data/lib/lutaml/model/type/time_without_date.rb +18 -18
  356. data/lib/lutaml/model/type/uninitialized_class_guard.rb +36 -0
  357. data/lib/lutaml/model/type/uri.rb +51 -0
  358. data/lib/lutaml/model/type/value.rb +52 -5
  359. data/lib/lutaml/model/type.rb +98 -13
  360. data/lib/lutaml/model/type_context.rb +279 -0
  361. data/lib/lutaml/model/type_registry.rb +165 -0
  362. data/lib/lutaml/model/type_resolver.rb +185 -0
  363. data/lib/lutaml/model/type_substitution.rb +117 -0
  364. data/lib/lutaml/model/uninitialized_class.rb +1 -1
  365. data/lib/lutaml/model/utils.rb +110 -9
  366. data/lib/lutaml/model/validation.rb +50 -7
  367. data/lib/lutaml/model/value_transformer.rb +25 -0
  368. data/lib/lutaml/model/version.rb +1 -1
  369. data/lib/lutaml/model/yaml.rb +7 -13
  370. data/lib/lutaml/model/yamls.rb +7 -13
  371. data/lib/lutaml/model.rb +227 -25
  372. data/lib/lutaml/{model/toml → toml/adapter}/document.rb +3 -4
  373. data/lib/lutaml/{model/toml → toml/adapter}/mapping.rb +7 -6
  374. data/lib/lutaml/toml/adapter/mapping_rule.rb +9 -0
  375. data/lib/lutaml/toml/adapter/toml_rb_adapter.rb +38 -0
  376. data/lib/lutaml/toml/adapter/tomlib_adapter.rb +54 -0
  377. data/lib/lutaml/toml/adapter/transform.rb +9 -0
  378. data/lib/lutaml/toml/adapter.rb +19 -0
  379. data/lib/lutaml/toml/type/serializers.rb +71 -0
  380. data/lib/lutaml/toml.rb +41 -0
  381. data/lib/lutaml/xml/adapter/adapter_helpers.rb +149 -0
  382. data/lib/lutaml/xml/adapter/base_adapter.rb +672 -0
  383. data/lib/lutaml/xml/adapter/namespace_data.rb +73 -0
  384. data/lib/lutaml/xml/adapter/nokogiri_adapter.rb +1115 -0
  385. data/lib/lutaml/xml/adapter/oga_adapter.rb +849 -0
  386. data/lib/lutaml/xml/adapter/ox_adapter.rb +891 -0
  387. data/lib/lutaml/xml/adapter/rexml_adapter.rb +869 -0
  388. data/lib/lutaml/xml/adapter/xml_serialization.rb +145 -0
  389. data/lib/lutaml/xml/adapter.rb +20 -0
  390. data/lib/lutaml/xml/adapter_element.rb +185 -0
  391. data/lib/lutaml/xml/adapter_loader.rb +53 -0
  392. data/lib/lutaml/xml/attribute_namespace_resolver.rb +139 -0
  393. data/lib/lutaml/xml/blank_namespace.rb +51 -0
  394. data/lib/lutaml/xml/blank_namespace_handler.rb +50 -0
  395. data/lib/lutaml/xml/builder/base.rb +215 -0
  396. data/lib/lutaml/xml/builder/nokogiri.rb +12 -0
  397. data/lib/lutaml/xml/builder/oga.rb +15 -0
  398. data/lib/lutaml/xml/builder/ox.rb +15 -0
  399. data/lib/lutaml/xml/builder/rexml.rb +15 -0
  400. data/lib/lutaml/xml/builder.rb +16 -0
  401. data/lib/lutaml/xml/configurable.rb +214 -0
  402. data/lib/lutaml/xml/data_model.rb +257 -0
  403. data/lib/lutaml/xml/decisions/decision.rb +103 -0
  404. data/lib/lutaml/xml/decisions/decision_context.rb +225 -0
  405. data/lib/lutaml/xml/decisions/decision_engine.rb +67 -0
  406. data/lib/lutaml/xml/decisions/decision_rule.rb +54 -0
  407. data/lib/lutaml/xml/decisions/element_prefix_resolver.rb +85 -0
  408. data/lib/lutaml/xml/decisions/rules/attribute_usage_rule.rb +37 -0
  409. data/lib/lutaml/xml/decisions/rules/default_preference_rule.rb +62 -0
  410. data/lib/lutaml/xml/decisions/rules/element_form_default_rule.rb +66 -0
  411. data/lib/lutaml/xml/decisions/rules/element_form_default_unqualified_rule.rb +73 -0
  412. data/lib/lutaml/xml/decisions/rules/element_form_option_rule.rb +83 -0
  413. data/lib/lutaml/xml/decisions/rules/explicit_option_rule.rb +57 -0
  414. data/lib/lutaml/xml/decisions/rules/format_preservation_rule.rb +74 -0
  415. data/lib/lutaml/xml/decisions/rules/hoisted_on_parent_rule.rb +60 -0
  416. data/lib/lutaml/xml/decisions/rules/inherit_from_parent_rule.rb +52 -0
  417. data/lib/lutaml/xml/decisions/rules/inherit_parent_prefix_rule.rb +69 -0
  418. data/lib/lutaml/xml/decisions/rules/namespace_scope_rule.rb +54 -0
  419. data/lib/lutaml/xml/decisions/rules/reuse_parent_prefix_rule.rb +78 -0
  420. data/lib/lutaml/xml/decisions/rules/used_prefix_rule.rb +70 -0
  421. data/lib/lutaml/xml/decisions/rules.rb +39 -0
  422. data/lib/lutaml/xml/decisions.rb +15 -0
  423. data/lib/lutaml/xml/declaration_handler.rb +217 -0
  424. data/lib/lutaml/xml/declaration_plan/attribute_node.rb +81 -0
  425. data/lib/lutaml/xml/declaration_plan/element_node.rb +101 -0
  426. data/lib/lutaml/xml/declaration_plan.rb +480 -0
  427. data/lib/lutaml/xml/declaration_plan_query.rb +105 -0
  428. data/lib/lutaml/xml/declaration_planner.rb +1849 -0
  429. data/lib/lutaml/xml/doctype_extractor.rb +51 -0
  430. data/lib/lutaml/xml/document.rb +380 -0
  431. data/lib/lutaml/xml/element.rb +93 -0
  432. data/lib/lutaml/xml/element_prefix_resolver.rb +50 -0
  433. data/lib/lutaml/xml/encoding_normalizer.rb +54 -0
  434. data/lib/lutaml/xml/error/invalid_namespace_error.rb +46 -0
  435. data/lib/lutaml/xml/error/invalid_xsd_type_error.rb +43 -0
  436. data/lib/lutaml/xml/error/namespace_mismatch_error.rb +53 -0
  437. data/lib/lutaml/xml/error/xml_configuration_error.rb +17 -0
  438. data/lib/lutaml/xml/error/xml_error.rb +21 -0
  439. data/lib/lutaml/xml/format_chooser.rb +214 -0
  440. data/lib/lutaml/xml/hoisting_algorithm.rb +234 -0
  441. data/lib/lutaml/xml/listener.rb +33 -0
  442. data/lib/lutaml/xml/mapping.rb +1470 -0
  443. data/lib/lutaml/xml/mapping_rule.rb +565 -0
  444. data/lib/lutaml/xml/model_transform.rb +944 -0
  445. data/lib/lutaml/xml/namespace.rb +435 -0
  446. data/lib/lutaml/xml/namespace_class_registry.rb +144 -0
  447. data/lib/lutaml/xml/namespace_collector.rb +611 -0
  448. data/lib/lutaml/xml/namespace_declaration.rb +202 -0
  449. data/lib/lutaml/xml/namespace_declaration_builder.rb +67 -0
  450. data/lib/lutaml/xml/namespace_declaration_data.rb +182 -0
  451. data/lib/lutaml/xml/namespace_inheritance_resolver.rb +142 -0
  452. data/lib/lutaml/xml/namespace_inheritance_strategy.rb +26 -0
  453. data/lib/lutaml/xml/namespace_needs.rb +213 -0
  454. data/lib/lutaml/xml/namespace_resolution_strategy.rb +230 -0
  455. data/lib/lutaml/xml/namespace_resolver.rb +219 -0
  456. data/lib/lutaml/xml/namespace_scope_config.rb +109 -0
  457. data/lib/lutaml/xml/namespace_type_resolver.rb +135 -0
  458. data/lib/lutaml/xml/namespace_usage.rb +121 -0
  459. data/lib/lutaml/xml/nokogiri/element.rb +34 -0
  460. data/lib/lutaml/xml/nokogiri.rb +10 -0
  461. data/lib/lutaml/xml/oga/element.rb +15 -0
  462. data/lib/lutaml/xml/oga.rb +10 -0
  463. data/lib/lutaml/xml/ox/element.rb +15 -0
  464. data/lib/lutaml/xml/ox.rb +10 -0
  465. data/lib/lutaml/xml/parsed_namespace_declaration.rb +129 -0
  466. data/lib/lutaml/xml/parsed_namespace_set.rb +149 -0
  467. data/lib/lutaml/xml/polymorphic_value_handler.rb +41 -0
  468. data/lib/lutaml/xml/qualified_inheritance_strategy.rb +27 -0
  469. data/lib/lutaml/xml/rexml/element.rb +15 -0
  470. data/lib/lutaml/xml/rexml.rb +10 -0
  471. data/lib/lutaml/xml/schema/builder/nokogiri.rb +41 -0
  472. data/lib/lutaml/xml/schema/builder/oga.rb +92 -0
  473. data/lib/lutaml/xml/schema/builder.rb +59 -0
  474. data/lib/lutaml/xml/schema/builtin_types.rb +112 -0
  475. data/lib/lutaml/{model → xml}/schema/relaxng_schema.rb +9 -4
  476. data/lib/lutaml/xml/schema/xsd/all.rb +31 -0
  477. data/lib/lutaml/xml/schema/xsd/annotation.rb +31 -0
  478. data/lib/lutaml/xml/schema/xsd/any.rb +33 -0
  479. data/lib/lutaml/xml/schema/xsd/any_attribute.rb +29 -0
  480. data/lib/lutaml/xml/schema/xsd/appinfo.rb +25 -0
  481. data/lib/lutaml/xml/schema/xsd/attribute.rb +78 -0
  482. data/lib/lutaml/xml/schema/xsd/attribute_group.rb +89 -0
  483. data/lib/lutaml/xml/schema/xsd/base.rb +267 -0
  484. data/lib/lutaml/xml/schema/xsd/choice.rb +68 -0
  485. data/lib/lutaml/xml/schema/xsd/complex_content.rb +39 -0
  486. data/lib/lutaml/xml/schema/xsd/complex_type.rb +157 -0
  487. data/lib/lutaml/xml/schema/xsd/documentation.rb +26 -0
  488. data/lib/lutaml/xml/schema/xsd/element.rb +117 -0
  489. data/lib/lutaml/xml/schema/xsd/enumeration.rb +25 -0
  490. data/lib/lutaml/xml/schema/xsd/errors/enhanced_error.rb +142 -0
  491. data/lib/lutaml/xml/schema/xsd/errors/error_context.rb +67 -0
  492. data/lib/lutaml/xml/schema/xsd/errors/message_builder.rb +103 -0
  493. data/lib/lutaml/xml/schema/xsd/errors/suggestion.rb +67 -0
  494. data/lib/lutaml/xml/schema/xsd/errors/troubleshooters/namespace_troubleshooter.rb +96 -0
  495. data/lib/lutaml/xml/schema/xsd/errors/troubleshooters/troubleshooting_handler.rb +70 -0
  496. data/lib/lutaml/xml/schema/xsd/errors.rb +148 -0
  497. data/lib/lutaml/xml/schema/xsd/extension_complex_content.rb +63 -0
  498. data/lib/lutaml/xml/schema/xsd/extension_simple_content.rb +48 -0
  499. data/lib/lutaml/xml/schema/xsd/field.rb +25 -0
  500. data/lib/lutaml/xml/schema/xsd/file_validation_result.rb +55 -0
  501. data/lib/lutaml/xml/schema/xsd/fraction_digits.rb +29 -0
  502. data/lib/lutaml/xml/schema/xsd/glob.rb +105 -0
  503. data/lib/lutaml/xml/schema/xsd/group.rb +79 -0
  504. data/lib/lutaml/xml/schema/xsd/import.rb +33 -0
  505. data/lib/lutaml/xml/schema/xsd/include.rb +31 -0
  506. data/lib/lutaml/xml/schema/xsd/key.rb +32 -0
  507. data/lib/lutaml/xml/schema/xsd/keyref.rb +33 -0
  508. data/lib/lutaml/xml/schema/xsd/length.rb +27 -0
  509. data/lib/lutaml/xml/schema/xsd/list.rb +28 -0
  510. data/lib/lutaml/xml/schema/xsd/max_exclusive.rb +25 -0
  511. data/lib/lutaml/xml/schema/xsd/max_inclusive.rb +23 -0
  512. data/lib/lutaml/xml/schema/xsd/max_length.rb +25 -0
  513. data/lib/lutaml/xml/schema/xsd/min_exclusive.rb +25 -0
  514. data/lib/lutaml/xml/schema/xsd/min_inclusive.rb +23 -0
  515. data/lib/lutaml/xml/schema/xsd/min_length.rb +25 -0
  516. data/lib/lutaml/xml/schema/xsd/namespace_mapping.rb +37 -0
  517. data/lib/lutaml/xml/schema/xsd/namespace_uri_remapping.rb +79 -0
  518. data/lib/lutaml/xml/schema/xsd/notation.rb +31 -0
  519. data/lib/lutaml/xml/schema/xsd/pattern.rb +25 -0
  520. data/lib/lutaml/xml/schema/xsd/redefine.rb +35 -0
  521. data/lib/lutaml/xml/schema/xsd/restriction_complex_content.rb +56 -0
  522. data/lib/lutaml/xml/schema/xsd/restriction_simple_content.rb +84 -0
  523. data/lib/lutaml/xml/schema/xsd/restriction_simple_type.rb +64 -0
  524. data/lib/lutaml/xml/schema/xsd/schema.rb +373 -0
  525. data/lib/lutaml/xml/schema/xsd/schema_file_validation_results.rb +55 -0
  526. data/lib/lutaml/xml/schema/xsd/schema_location_mapping.rb +74 -0
  527. data/lib/lutaml/xml/schema/xsd/schema_name_resolver.rb +32 -0
  528. data/lib/lutaml/xml/schema/xsd/schema_path.rb +196 -0
  529. data/lib/lutaml/xml/schema/xsd/schema_validator.rb +256 -0
  530. data/lib/lutaml/xml/schema/xsd/selector.rb +27 -0
  531. data/lib/lutaml/xml/schema/xsd/sequence.rb +68 -0
  532. data/lib/lutaml/xml/schema/xsd/serialized_schema.rb +185 -0
  533. data/lib/lutaml/xml/schema/xsd/simple_content.rb +61 -0
  534. data/lib/lutaml/xml/schema/xsd/simple_type.rb +37 -0
  535. data/lib/lutaml/xml/schema/xsd/total_digits.rb +29 -0
  536. data/lib/lutaml/xml/schema/xsd/type_index_entry.rb +40 -0
  537. data/lib/lutaml/xml/schema/xsd/type_resolution_result.rb +112 -0
  538. data/lib/lutaml/xml/schema/xsd/union.rb +30 -0
  539. data/lib/lutaml/xml/schema/xsd/unique.rb +31 -0
  540. data/lib/lutaml/xml/schema/xsd/validation_error.rb +48 -0
  541. data/lib/lutaml/xml/schema/xsd/validation_result.rb +86 -0
  542. data/lib/lutaml/xml/schema/xsd/version.rb +11 -0
  543. data/lib/lutaml/xml/schema/xsd/white_space.rb +27 -0
  544. data/lib/lutaml/xml/schema/xsd.rb +165 -0
  545. data/lib/lutaml/xml/schema/xsd_namespace.rb +29 -0
  546. data/lib/lutaml/xml/schema/xsd_schema.rb +536 -0
  547. data/lib/lutaml/xml/schema.rb +13 -0
  548. data/lib/lutaml/xml/schema_location.rb +155 -0
  549. data/lib/lutaml/xml/serialization/collection_ext.rb +61 -0
  550. data/lib/lutaml/xml/serialization/format_conversion.rb +402 -0
  551. data/lib/lutaml/xml/serialization/instance_methods.rb +297 -0
  552. data/lib/lutaml/xml/serialization/model_import_ext.rb +40 -0
  553. data/lib/lutaml/xml/serialization.rb +15 -0
  554. data/lib/lutaml/xml/shared_dsl.rb +119 -0
  555. data/lib/lutaml/xml/transform.rb +6 -0
  556. data/lib/lutaml/xml/transformation/custom_method_wrapper.rb +262 -0
  557. data/lib/lutaml/xml/transformation/element_builder.rb +586 -0
  558. data/lib/lutaml/xml/transformation/ordered_applier.rb +329 -0
  559. data/lib/lutaml/xml/transformation/rule_applier.rb +379 -0
  560. data/lib/lutaml/xml/transformation/rule_compiler.rb +543 -0
  561. data/lib/lutaml/xml/transformation/skip_logic.rb +70 -0
  562. data/lib/lutaml/xml/transformation/value_serializer.rb +139 -0
  563. data/lib/lutaml/xml/transformation.rb +340 -0
  564. data/lib/lutaml/xml/transformation_builder.rb +28 -0
  565. data/lib/lutaml/xml/transformation_support.rb +14 -0
  566. data/lib/lutaml/xml/type/configurable.rb +157 -0
  567. data/lib/lutaml/xml/type/serializers.rb +98 -0
  568. data/lib/lutaml/xml/type/value_xml_mapping.rb +94 -0
  569. data/lib/lutaml/xml/type_namespace/collector.rb +101 -0
  570. data/lib/lutaml/xml/type_namespace/declaration.rb +61 -0
  571. data/lib/lutaml/xml/type_namespace/planner.rb +121 -0
  572. data/lib/lutaml/xml/type_namespace/reference.rb +71 -0
  573. data/lib/lutaml/xml/type_namespace/resolver.rb +43 -0
  574. data/lib/lutaml/xml/type_namespace.rb +13 -0
  575. data/lib/lutaml/xml/type_namespace_resolver.rb +76 -0
  576. data/lib/lutaml/xml/unqualified_inheritance_strategy.rb +34 -0
  577. data/lib/lutaml/xml/w3c/registration.rb +66 -0
  578. data/lib/lutaml/xml/w3c.rb +398 -0
  579. data/lib/lutaml/xml/xml_attribute.rb +38 -0
  580. data/lib/lutaml/xml/xml_element.rb +447 -0
  581. data/lib/lutaml/xml/xml_namespace.rb +72 -0
  582. data/lib/lutaml/xml.rb +295 -0
  583. data/lib/lutaml/{model/yaml → yaml/adapter}/document.rb +3 -3
  584. data/lib/lutaml/yaml/adapter/mapping.rb +19 -0
  585. data/lib/lutaml/yaml/adapter/mapping_rule.rb +9 -0
  586. data/lib/lutaml/yaml/adapter/standard_adapter.rb +39 -0
  587. data/lib/lutaml/yaml/adapter/transform.rb +9 -0
  588. data/lib/lutaml/yaml/adapter.rb +13 -0
  589. data/lib/lutaml/yaml/schema/yaml_schema.rb +65 -0
  590. data/lib/lutaml/yaml/schema.rb +9 -0
  591. data/lib/lutaml/yaml/type/serializers.rb +60 -0
  592. data/lib/lutaml/yaml.rb +26 -0
  593. data/lib/lutaml/{model/yamls → yamls/adapter}/document.rb +2 -2
  594. data/lib/lutaml/yamls/adapter/mapping.rb +19 -0
  595. data/lib/lutaml/yamls/adapter/mapping_rule.rb +9 -0
  596. data/lib/lutaml/{model/yamls → yamls/adapter}/standard_adapter.rb +6 -5
  597. data/lib/lutaml/yamls/adapter/transform.rb +26 -0
  598. data/lib/lutaml/yamls/adapter.rb +13 -0
  599. data/lib/lutaml/yamls.rb +21 -0
  600. data/lib/tasks/benchmark_runner.rb +161 -0
  601. data/lib/tasks/memory_profile.rb +176 -0
  602. data/lib/tasks/performance.rake +75 -0
  603. data/lib/tasks/performance_benchmark.rb +499 -0
  604. data/lib/tasks/performance_comparator.rb +114 -0
  605. data/lib/tasks/performance_helpers.rb +149 -0
  606. data/lib/tasks/xml_compiler_benchmark.rb +226 -0
  607. data/lib/tasks/xml_optimization_benchmark.rb +178 -0
  608. data/lutaml-model.gemspec +11 -1
  609. data/reference-docs/XML Entity Definitions for Characters (3rd Edition).html +595 -0
  610. data/scripts-xmi-profile/profile_xmi.rb +192 -0
  611. data/scripts-xmi-profile/profile_xmi_simple.rb +210 -0
  612. data/spec/address_person_spec.rb +436 -0
  613. data/spec/address_spec.rb +20 -18
  614. data/spec/ceramic_spec.rb +25 -7
  615. data/spec/fixtures/address.rb +2 -2
  616. data/spec/fixtures/ceramic.rb +6 -2
  617. data/spec/fixtures/person.rb +14 -13
  618. data/spec/fixtures/sample_model.rb +3 -3
  619. data/spec/fixtures/vase.rb +3 -3
  620. data/spec/fixtures/xml/address_example_260.xsd +8 -4
  621. data/spec/fixtures/xml/examples/nested_categories.xml +45 -51
  622. data/spec/fixtures/xml/examples/valid_catalog.xml +27 -41
  623. data/spec/fixtures/xml/math_document_schema.xsd +7 -5
  624. data/spec/fixtures/xml/product_catalog.xsd +19 -138
  625. data/spec/fixtures/xml/schema/xsd/build_test_package.rb +19 -0
  626. data/spec/fixtures/xml/schema/xsd/citygml/2.0/cityGMLBase.xsd +339 -0
  627. data/spec/fixtures/xml/schema/xsd/citygml/appearance/2.0/appearance.xsd +332 -0
  628. data/spec/fixtures/xml/schema/xsd/citygml/bridge/2.0/bridge.xsd +578 -0
  629. data/spec/fixtures/xml/schema/xsd/citygml/building/2.0/building.xsd +535 -0
  630. data/spec/fixtures/xml/schema/xsd/citygml/cityfurniture/2.0/cityFurniture.xsd +57 -0
  631. data/spec/fixtures/xml/schema/xsd/citygml/cityobjectgroup/2.0/cityObjectGroup.xsd +84 -0
  632. data/spec/fixtures/xml/schema/xsd/citygml/examples/2.0/ade/noise-ade/CityGML-NoiseADE.xsd +174 -0
  633. data/spec/fixtures/xml/schema/xsd/citygml/examples/2.0/ade/robotics-ade/stdOp.xsd +46 -0
  634. data/spec/fixtures/xml/schema/xsd/citygml/examples/2.0/ade/robotics-ade/unr.xsd +46 -0
  635. data/spec/fixtures/xml/schema/xsd/citygml/generics/2.0/generics.xsd +184 -0
  636. data/spec/fixtures/xml/schema/xsd/citygml/landuse/2.0/landUse.xsd +50 -0
  637. data/spec/fixtures/xml/schema/xsd/citygml/profiles/base/2.0/CityGML.xsd +30 -0
  638. data/spec/fixtures/xml/schema/xsd/citygml/relief/2.0/relief.xsd +186 -0
  639. data/spec/fixtures/xml/schema/xsd/citygml/texturedsurface/2.0/texturedSurface.xsd +157 -0
  640. data/spec/fixtures/xml/schema/xsd/citygml/transportation/2.0/transportation.xsd +224 -0
  641. data/spec/fixtures/xml/schema/xsd/citygml/tunnel/2.0/tunnel.xsd +530 -0
  642. data/spec/fixtures/xml/schema/xsd/citygml/vegetation/2.0/vegetation.xsd +108 -0
  643. data/spec/fixtures/xml/schema/xsd/citygml/waterbody/2.0/waterBody.xsd +171 -0
  644. data/spec/fixtures/xml/schema/xsd/citygml/xAL/xAL.xsd +1680 -0
  645. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/gml/3.2.1/basicTypes.xsd +262 -0
  646. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/gml/3.2.1/coordinateOperations.xsd +519 -0
  647. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/gml/3.2.1/coordinateReferenceSystems.xsd +367 -0
  648. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/gml/3.2.1/coordinateSystems.xsd +291 -0
  649. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/gml/3.2.1/coverage.xsd +287 -0
  650. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/gml/3.2.1/datums.xsd +281 -0
  651. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/gml/3.2.1/defaultStyle.xsd +447 -0
  652. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/gml/3.2.1/deprecatedTypes.xsd +1128 -0
  653. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/gml/3.2.1/dictionary.xsd +84 -0
  654. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/gml/3.2.1/direction.xsd +78 -0
  655. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/gml/3.2.1/dynamicFeature.xsd +103 -0
  656. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/gml/3.2.1/feature.xsd +88 -0
  657. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/gml/3.2.1/geometryAggregates.xsd +191 -0
  658. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/gml/3.2.1/geometryBasic0d1d.xsd +271 -0
  659. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/gml/3.2.1/geometryBasic2d.xsd +118 -0
  660. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/gml/3.2.1/geometryComplexes.xsd +89 -0
  661. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/gml/3.2.1/geometryPrimitives.xsd +841 -0
  662. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/gml/3.2.1/gml.xsd +15 -0
  663. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/gml/3.2.1/gmlBase.xsd +179 -0
  664. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/gml/3.2.1/grids.xsd +58 -0
  665. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/gml/3.2.1/measures.xsd +63 -0
  666. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/gml/3.2.1/observation.xsd +90 -0
  667. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/gml/3.2.1/referenceSystems.xsd +64 -0
  668. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/gml/3.2.1/temporal.xsd +263 -0
  669. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/gml/3.2.1/temporalReferenceSystems.xsd +183 -0
  670. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/gml/3.2.1/temporalTopology.xsd +113 -0
  671. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/gml/3.2.1/topology.xsd +380 -0
  672. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/gml/3.2.1/units.xsd +156 -0
  673. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/gml/3.2.1/valueObjects.xsd +199 -0
  674. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/iso/19139/20070417/gco/basicTypes.xsd +429 -0
  675. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/iso/19139/20070417/gco/gco.xsd +12 -0
  676. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/iso/19139/20070417/gco/gcoBase.xsd +61 -0
  677. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/iso/19139/20070417/gmd/applicationSchema.xsd +42 -0
  678. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/iso/19139/20070417/gmd/citation.xsd +275 -0
  679. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/iso/19139/20070417/gmd/constraints.xsd +106 -0
  680. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/iso/19139/20070417/gmd/content.xsd +188 -0
  681. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/iso/19139/20070417/gmd/dataQuality.xsd +554 -0
  682. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/iso/19139/20070417/gmd/distribution.xsd +202 -0
  683. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/iso/19139/20070417/gmd/extent.xsd +205 -0
  684. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/iso/19139/20070417/gmd/freeText.xsd +122 -0
  685. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/iso/19139/20070417/gmd/gmd.xsd +12 -0
  686. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/iso/19139/20070417/gmd/identification.xsd +348 -0
  687. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/iso/19139/20070417/gmd/maintenance.xsd +86 -0
  688. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/iso/19139/20070417/gmd/metadataApplication.xsd +175 -0
  689. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/iso/19139/20070417/gmd/metadataEntity.xsd +70 -0
  690. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/iso/19139/20070417/gmd/metadataExtension.xsd +99 -0
  691. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/iso/19139/20070417/gmd/portrayalCatalogue.xsd +36 -0
  692. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/iso/19139/20070417/gmd/referenceSystem.xsd +100 -0
  693. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/iso/19139/20070417/gmd/spatialRepresentation.xsd +237 -0
  694. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/iso/19139/20070417/gmx/catalogues.xsd +112 -0
  695. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/iso/19139/20070417/gmx/codelistItem.xsd +168 -0
  696. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/iso/19139/20070417/gmx/crsItem.xsd +1030 -0
  697. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/iso/19139/20070417/gmx/extendedTypes.xsd +75 -0
  698. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/iso/19139/20070417/gmx/gmx.xsd +2 -0
  699. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/iso/19139/20070417/gmx/gmxUsage.xsd +127 -0
  700. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/iso/19139/20070417/gmx/uomItem.xsd +162 -0
  701. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/iso/19139/20070417/gsr/gsr.xsd +12 -0
  702. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/iso/19139/20070417/gsr/spatialReferencing.xsd +24 -0
  703. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/iso/19139/20070417/gss/geometry.xsd +35 -0
  704. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/iso/19139/20070417/gss/gss.xsd +12 -0
  705. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/iso/19139/20070417/gts/gts.xsd +12 -0
  706. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/iso/19139/20070417/gts/temporalObjects.xsd +34 -0
  707. data/spec/fixtures/xml/schema/xsd/codesynthesis-gml-3.2.1/xlink/1.0.0/xlinks.xsd +122 -0
  708. data/spec/fixtures/xml/schema/xsd/i-ur/urbanFunction.xsd +2772 -0
  709. data/spec/fixtures/xml/schema/xsd/i-ur/urbanObject.xsd +3344 -0
  710. data/spec/fixtures/xml/schema/xsd/import-without-location.xsd +9 -0
  711. data/spec/fixtures/xml/schema/xsd/isotc211/19103/-/gco/1.2/baseTypes.xsd +775 -0
  712. data/spec/fixtures/xml/schema/xsd/isotc211/19103/-/gco/1.2/gco.xsd +17 -0
  713. data/spec/fixtures/xml/schema/xsd/isotc211/19103/-/gco/1.2.0/baseTypes.xsd +775 -0
  714. data/spec/fixtures/xml/schema/xsd/isotc211/19103/-/gco/1.2.0/gco.xsd +17 -0
  715. data/spec/fixtures/xml/schema/xsd/isotc211/19103/-/gcx/1.2/extendedTypes.xsd +151 -0
  716. data/spec/fixtures/xml/schema/xsd/isotc211/19103/-/gcx/1.2/gcx.xsd +16 -0
  717. data/spec/fixtures/xml/schema/xsd/isotc211/19103/-/gcx/1.2.0/extendedTypes.xsd +151 -0
  718. data/spec/fixtures/xml/schema/xsd/isotc211/19103/-/gcx/1.2.0/gcx.xsd +16 -0
  719. data/spec/fixtures/xml/schema/xsd/isotc211/19107/-/gss/1.0.0/coordinateGeometry.xsd +1078 -0
  720. data/spec/fixtures/xml/schema/xsd/isotc211/19107/-/gss/1.0.0/geometricAggregates.xsd +141 -0
  721. data/spec/fixtures/xml/schema/xsd/isotc211/19107/-/gss/1.0.0/geometricComplex.xsd +177 -0
  722. data/spec/fixtures/xml/schema/xsd/isotc211/19107/-/gss/1.0.0/geometricPrimative.xsd +526 -0
  723. data/spec/fixtures/xml/schema/xsd/isotc211/19107/-/gss/1.0.0/geometry.xsd +9 -0
  724. data/spec/fixtures/xml/schema/xsd/isotc211/19107/-/gss/1.0.0/geometryRoot.xsd +59 -0
  725. data/spec/fixtures/xml/schema/xsd/isotc211/19107/-/gss/1.0.0/gss.xsd +26 -0
  726. data/spec/fixtures/xml/schema/xsd/isotc211/19107/-/gss/1.0.0/topoComplex.xsd +33 -0
  727. data/spec/fixtures/xml/schema/xsd/isotc211/19107/-/gss/1.0.0/topoPrimative.xsd +432 -0
  728. data/spec/fixtures/xml/schema/xsd/isotc211/19107/-/gss/1.0.0/topoRoot.xsd +9 -0
  729. data/spec/fixtures/xml/schema/xsd/isotc211/19107/-/gss/1.0.0/topology.xsd +15 -0
  730. data/spec/fixtures/xml/schema/xsd/isotc211/19107/-/gss/2.0.0/coordinates.xsd +15 -0
  731. data/spec/fixtures/xml/schema/xsd/isotc211/19107/-/gss/2.0.0/curves.xsd +22 -0
  732. data/spec/fixtures/xml/schema/xsd/isotc211/19107/-/gss/2.0.0/geometry.xsd +41 -0
  733. data/spec/fixtures/xml/schema/xsd/isotc211/19107/-/gss/2.0.0/gss.xsd +21 -0
  734. data/spec/fixtures/xml/schema/xsd/isotc211/19107/-/gss/2.0.0/simplicialGeometry.xsd +63 -0
  735. data/spec/fixtures/xml/schema/xsd/isotc211/19107/-/gss/2.0.0/solids.xsd +21 -0
  736. data/spec/fixtures/xml/schema/xsd/isotc211/19107/-/gss/2.0.0/surfaces.xsd +15 -0
  737. data/spec/fixtures/xml/schema/xsd/isotc211/19107/-/gss/2.0.0/topology.xsd +21 -0
  738. data/spec/fixtures/xml/schema/xsd/isotc211/19110/-/fcc/2.1.0/abstract.xsd +47 -0
  739. data/spec/fixtures/xml/schema/xsd/isotc211/19110/-/fcc/2.1.0/fcc.xsd +12 -0
  740. data/spec/fixtures/xml/schema/xsd/isotc211/19110/-/fcc/2.2/abstract.xsd +45 -0
  741. data/spec/fixtures/xml/schema/xsd/isotc211/19110/-/fcc/2.2/fcc.xsd +11 -0
  742. data/spec/fixtures/xml/schema/xsd/isotc211/19110/-/fcc/2.2.0/abstract.xsd +45 -0
  743. data/spec/fixtures/xml/schema/xsd/isotc211/19110/-/fcc/2.2.0/fcc.xsd +11 -0
  744. data/spec/fixtures/xml/schema/xsd/isotc211/19110/-/gfc/1.0/gfc.xsd +497 -0
  745. data/spec/fixtures/xml/schema/xsd/isotc211/19110/-/gfc/2.1.0/featureCatalogue.xsd +673 -0
  746. data/spec/fixtures/xml/schema/xsd/isotc211/19110/-/gfc/2.1.0/gfc.xsd +19 -0
  747. data/spec/fixtures/xml/schema/xsd/isotc211/19110/-/gfc/2.2/featureCatalogue.xsd +798 -0
  748. data/spec/fixtures/xml/schema/xsd/isotc211/19110/-/gfc/2.2/gfc.xsd +19 -0
  749. data/spec/fixtures/xml/schema/xsd/isotc211/19110/-/gfc/2.2.0/featureCatalogue.xsd +798 -0
  750. data/spec/fixtures/xml/schema/xsd/isotc211/19110/-/gfc/2.2.0/gfc.xsd +19 -0
  751. data/spec/fixtures/xml/schema/xsd/isotc211/19110/fcc/1.0/abstract.xsd +49 -0
  752. data/spec/fixtures/xml/schema/xsd/isotc211/19110/fcc/1.0/fcc.xsd +9 -0
  753. data/spec/fixtures/xml/schema/xsd/isotc211/19110/gfc/1.1/featureCatalogue.xsd +671 -0
  754. data/spec/fixtures/xml/schema/xsd/isotc211/19110/gfc/1.1/gfc.xsd +13 -0
  755. data/spec/fixtures/xml/schema/xsd/isotc211/19111/-/rbc/3.1/rbc.xsd +13 -0
  756. data/spec/fixtures/xml/schema/xsd/isotc211/19111/-/rbc/3.1/rbcStubs.xsd +195 -0
  757. data/spec/fixtures/xml/schema/xsd/isotc211/19111/-/rbc/3.1.0/rbc.xsd +13 -0
  758. data/spec/fixtures/xml/schema/xsd/isotc211/19111/-/rbc/3.1.0/rbcStubs.xsd +195 -0
  759. data/spec/fixtures/xml/schema/xsd/isotc211/19111/-/rbc/3.1.1/AbstractCommonClasses.xsd +282 -0
  760. data/spec/fixtures/xml/schema/xsd/isotc211/19111/-/rbc/3.1.1/commonClasses.xsd +127 -0
  761. data/spec/fixtures/xml/schema/xsd/isotc211/19111/-/rbc/3.1.1/coordOps.xsd +676 -0
  762. data/spec/fixtures/xml/schema/xsd/isotc211/19111/-/rbc/3.1.1/coordRefSys.xsd +498 -0
  763. data/spec/fixtures/xml/schema/xsd/isotc211/19111/-/rbc/3.1.1/coordSys.xsd +844 -0
  764. data/spec/fixtures/xml/schema/xsd/isotc211/19111/-/rbc/3.1.1/coordinates.xsd +101 -0
  765. data/spec/fixtures/xml/schema/xsd/isotc211/19111/-/rbc/3.1.1/datum.xsd +474 -0
  766. data/spec/fixtures/xml/schema/xsd/isotc211/19111/-/rbc/3.1.1/rbc.xsd +18 -0
  767. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/cit/1.3/cit.xsd +12 -0
  768. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/cit/1.3/citation.xsd +445 -0
  769. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/cit/1.3.0/cit.xsd +12 -0
  770. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/cit/1.3.0/citation.xsd +445 -0
  771. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/gex/1.3/extent.xsd +243 -0
  772. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/gex/1.3/gex.xsd +16 -0
  773. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/gex/1.3.0/extent.xsd +243 -0
  774. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/gex/1.3.0/gex.xsd +16 -0
  775. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/gex/1.3.1/extent.xsd +244 -0
  776. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/gex/1.3.1/gex.xsd +15 -0
  777. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/lan/1.3/lan.xsd +13 -0
  778. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/lan/1.3/language.xsd +152 -0
  779. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/lan/1.3.0/lan.xsd +13 -0
  780. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/lan/1.3.0/language.xsd +152 -0
  781. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mas/1.3/applicationSchema.xsd +58 -0
  782. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mas/1.3/mas.xsd +16 -0
  783. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mas/1.3.0/applicationSchema.xsd +58 -0
  784. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mas/1.3.0/mas.xsd +16 -0
  785. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mcc/1.3/AbstractCommonClasses.xsd +378 -0
  786. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mcc/1.3/commonClasses.xsd +205 -0
  787. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mcc/1.3/mcc.xsd +12 -0
  788. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mcc/1.3.0/AbstractCommonClasses.xsd +378 -0
  789. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mcc/1.3.0/commonClasses.xsd +205 -0
  790. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mcc/1.3.0/mcc.xsd +12 -0
  791. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mco/1.3/constraints.xsd +171 -0
  792. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mco/1.3/mco.xsd +14 -0
  793. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mco/1.3.0/constraints.xsd +171 -0
  794. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mco/1.3.0/mco.xsd +14 -0
  795. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mda/1.3/mda.xsd +13 -0
  796. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mda/1.3/metadataApplication.xsd +207 -0
  797. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mda/1.3.0/mda.xsd +13 -0
  798. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mda/1.3.0/metadataApplication.xsd +207 -0
  799. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mda/1.3.1/mda.xsd +13 -0
  800. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mda/1.3.1/metadataApplication.xsd +247 -0
  801. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mdb/1.3/mdb.xsd +11 -0
  802. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mdb/1.3/metadataBase.xsd +117 -0
  803. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mdb/1.3/metadataBaseMDAerror.xsd +116 -0
  804. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mdb/1.3.0/mdb.xsd +11 -0
  805. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mdb/1.3.0/metadataBase.xsd +117 -0
  806. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mdb/1.3.0/metadataBaseMDAerror.xsd +116 -0
  807. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mdb/1.3.1/mdb.xsd +11 -0
  808. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mdb/1.3.1/metadataBase.xsd +144 -0
  809. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mex/1.3/metadataExtension.xsd +138 -0
  810. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mex/1.3/mex.xsd +15 -0
  811. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mex/1.3.0/metadataExtension.xsd +138 -0
  812. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mex/1.3.0/mex.xsd +15 -0
  813. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mmi/1.3/maintenance.xsd +70 -0
  814. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mmi/1.3/mmi.xsd +14 -0
  815. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mmi/1.3.0/maintenance.xsd +70 -0
  816. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mmi/1.3.0/mmi.xsd +14 -0
  817. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mpc/1.3/mpc.xsd +14 -0
  818. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mpc/1.3/portrayalCatalogue.xsd +40 -0
  819. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mpc/1.3.0/mpc.xsd +14 -0
  820. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mpc/1.3.0/portrayalCatalogue.xsd +40 -0
  821. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mrc/1.3/content.xsd +368 -0
  822. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mrc/1.3/mrc.xsd +19 -0
  823. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mrc/1.3.0/content.xsd +368 -0
  824. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mrc/1.3.0/mrc.xsd +19 -0
  825. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mrc/1.3.1/content.xsd +366 -0
  826. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mrc/1.3.1/mrc.xsd +13 -0
  827. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mrd/1.3/distribution.xsd +232 -0
  828. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mrd/1.3/mrd.xsd +13 -0
  829. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mrd/1.3.0/distribution.xsd +232 -0
  830. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mrd/1.3.0/mrd.xsd +13 -0
  831. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mri/1.3/identification.xsd +425 -0
  832. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mri/1.3/mri.xsd +16 -0
  833. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mri/1.3.0/identification.xsd +425 -0
  834. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mri/1.3.0/mri.xsd +16 -0
  835. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mrl/1.3/lineage.xsd +130 -0
  836. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mrl/1.3/mrl.xsd +15 -0
  837. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mrl/1.3.0/lineage.xsd +130 -0
  838. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mrl/1.3.0/mrl.xsd +15 -0
  839. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mrs/1.3/mrs.xsd +16 -0
  840. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mrs/1.3/referenceSystem.xsd +67 -0
  841. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mrs/1.3.0/mrs.xsd +16 -0
  842. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mrs/1.3.0/referenceSystem.xsd +67 -0
  843. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mrs/1.3.1/mrs.xsd +16 -0
  844. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/mrs/1.3.1/referenceSystem.xsd +66 -0
  845. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/msr/1.3/msr.xsd +17 -0
  846. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/msr/1.3/spatialRepresentation.xsd +326 -0
  847. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/msr/1.3.0/msr.xsd +17 -0
  848. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/msr/1.3.0/spatialRepresentation.xsd +326 -0
  849. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/msr/1.3.1/msr.xsd +15 -0
  850. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/msr/1.3.1/spatialRepresentation.xsd +326 -0
  851. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/srv/1.3/serviceInformation.xsd +252 -0
  852. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/srv/1.3/srv.xsd +14 -0
  853. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/srv/1.3.0/serviceInformation.xsd +252 -0
  854. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-1/srv/1.3.0/srv.xsd +14 -0
  855. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-2/gmi/1.0/acquisitionInformation.xsd +415 -0
  856. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-2/gmi/1.0/contentInformation.xsd +147 -0
  857. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-2/gmi/1.0/dataQualityInformation.xsd +214 -0
  858. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-2/gmi/1.0/gmi.xsd +23 -0
  859. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-2/gmi/1.0/metadataEntitySet.xsd +43 -0
  860. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-2/gmi/1.0/spatialRepresentationInformation.xsd +140 -0
  861. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-2/gmi/1.1/acquisitionInformation.xsd +415 -0
  862. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-2/gmi/1.1/contentInformation.xsd +147 -0
  863. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-2/gmi/1.1/dataQualityInformation.xsd +214 -0
  864. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-2/gmi/1.1/gmi.xsd +24 -0
  865. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-2/gmi/1.1/metadataEntitySet.xsd +43 -0
  866. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-2/gmi/1.1/spatialRepresentationInformation.xsd +142 -0
  867. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-2/mac/2.2/acquisitionInformationImagery.xsd +796 -0
  868. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-2/mac/2.2/mac.xsd +11 -0
  869. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-2/mac/2.2.0/acquisitionInformationImagery.xsd +796 -0
  870. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-2/mac/2.2.0/mac.xsd +11 -0
  871. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-2/mac/2.2.1/acquisitionInformationImagery.xsd +799 -0
  872. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-2/mac/2.2.1/mac.xsd +10 -0
  873. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-2/mrc/2.2/contentInformationImagery.xsd +161 -0
  874. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-2/mrc/2.2.0/contentInformationImagery.xsd +161 -0
  875. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-2/mrc/2.2.1/contentInformationImagery.xsd +159 -0
  876. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-2/mrl/2.2/lineageImagery.xsd +312 -0
  877. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-2/mrl/2.2.0/lineageImagery.xsd +312 -0
  878. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-2/msr/2.2/spatialRepresentationImagery.xsd +138 -0
  879. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-2/msr/2.2.0/spatialRepresentationImagery.xsd +138 -0
  880. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-2/msr/2.2.1/spatialRepresentationImagery.xsd +145 -0
  881. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/cat/1.0/cat.xsd +16 -0
  882. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/cat/1.0/catalogues.xsd +59 -0
  883. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/cat/1.0/codelistItem.xsd +63 -0
  884. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/cat/1.0/crsItem.xsd +188 -0
  885. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/cat/1.0/uomItem.xsd +45 -0
  886. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/cit/1.0/cit.xsd +11 -0
  887. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/cit/1.0/citation.xsd +400 -0
  888. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/cit/2.0/cit.xsd +11 -0
  889. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/cit/2.0/citation.xsd +402 -0
  890. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/gco/1.0/baseTypes.xsd +532 -0
  891. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/gco/1.0/baseTypes2014.xsd +531 -0
  892. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/gco/1.0/gco.xsd +16 -0
  893. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/gcx/1.0/extendedTypes.xsd +97 -0
  894. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/gcx/1.0/gcx.xsd +11 -0
  895. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/gex/1.0/extent.xsd +207 -0
  896. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/gex/1.0/gex.xsd +15 -0
  897. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/gmw/1.0/gmlWrapperTypes.xsd +147 -0
  898. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/gmw/1.0/gmlWrapperTypes2014.xsd +147 -0
  899. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/gmw/1.0/gmw.xsd +17 -0
  900. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/lan/1.0/lan.xsd +13 -0
  901. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/lan/1.0/language.xsd +141 -0
  902. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/mac/1.0/acquisitionInformationImagery.xsd +424 -0
  903. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/mac/1.0/mac.xsd +14 -0
  904. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/mac/2.0/acquisitionInformationImagery.xsd +473 -0
  905. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/mac/2.0/event.xsd +106 -0
  906. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/mac/2.0/mac.xsd +15 -0
  907. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/mac/2.0/metadataEntitySet.xsd +46 -0
  908. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/mas/1.0/applicationSchema.xsd +53 -0
  909. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/mas/1.0/mas.xsd +15 -0
  910. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/mcc/1.0/AbstractCommonClasses.xsd +362 -0
  911. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/mcc/1.0/commonClasses.xsd +179 -0
  912. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/mcc/1.0/mcc.xsd +12 -0
  913. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/mco/1.0/constraints.xsd +152 -0
  914. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/mco/1.0/mco.xsd +13 -0
  915. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/md1/1.0/md1.xsd +19 -0
  916. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/md1/1.0/metadataWExtendedType.xsd +10 -0
  917. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/md1/2.0/md1.xsd +19 -0
  918. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/md1/2.0/metadataWExtendedType.xsd +10 -0
  919. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/md2/1.0/md2.xsd +27 -0
  920. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/md2/1.0/metadataWithExtensions.xsd +10 -0
  921. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/md2/2.0/md2.xsd +27 -0
  922. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/md2/2.0/metadataWithExtensions.xsd +10 -0
  923. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/mda/1.0/mda.xsd +13 -0
  924. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/mda/1.0/metadataApplication.xsd +188 -0
  925. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/mda/2.0/mda.xsd +13 -0
  926. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/mda/2.0/metadataApplication.xsd +189 -0
  927. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/mdb/1.0/mdb.xsd +23 -0
  928. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/mdb/1.0/metadataBase.xsd +97 -0
  929. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/mdb/2.0/mdb.xsd +23 -0
  930. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/mdb/2.0/metadataBase.xsd +105 -0
  931. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/mds/1.0/mds.xsd +59 -0
  932. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/mds/1.0/metadataDataServices.xsd +10 -0
  933. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/mds/2.0/mds.xsd +44 -0
  934. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/mds/2.0/metadataDataServices.xsd +10 -0
  935. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/mdt/1.0/mdt.xsd +17 -0
  936. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/mdt/1.0/metadataTransfer.xsd +121 -0
  937. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/mdt/2.0/mdt.xsd +17 -0
  938. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/mdt/2.0/metadataTransfer.xsd +121 -0
  939. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/mex/1.0/metadataExtension.xsd +122 -0
  940. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/mex/1.0/mex.xsd +13 -0
  941. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/mmi/1.0/maintenance.xsd +63 -0
  942. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/mmi/1.0/mmi.xsd +13 -0
  943. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/mpc/1.0/mpc.xsd +13 -0
  944. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/mpc/1.0/portrayalCatalogue.xsd +35 -0
  945. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/mrc/1.0/content.xsd +330 -0
  946. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/mrc/1.0/contentInformationImagery.xsd +160 -0
  947. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/mrc/1.0/mrc.xsd +18 -0
  948. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/mrc/2.0/content.xsd +334 -0
  949. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/mrc/2.0/contentInformationImagery.xsd +143 -0
  950. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/mrc/2.0/mrc.xsd +21 -0
  951. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/mrd/1.0/distribution.xsd +212 -0
  952. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/mrd/1.0/mrd.xsd +13 -0
  953. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/mri/1.0/identification.xsd +385 -0
  954. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/mri/1.0/mri.xsd +15 -0
  955. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/mrl/1.0/lineage.xsd +117 -0
  956. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/mrl/1.0/lineageImagery.xsd +168 -0
  957. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/mrl/1.0/mrl.xsd +14 -0
  958. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/mrl/2.0/lineage.xsd +118 -0
  959. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/mrl/2.0/lineageImagery.xsd +250 -0
  960. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/mrl/2.0/mrl.xsd +14 -0
  961. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/mrs/1.0/mrs.xsd +13 -0
  962. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/mrs/1.0/referenceSystem.xsd +47 -0
  963. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/msr/1.0/msr.xsd +16 -0
  964. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/msr/1.0/spatialRepresentation.xsd +288 -0
  965. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/msr/1.0/spatialRepresentationImagery.xsd +113 -0
  966. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/msr/2.0/msr.xsd +16 -0
  967. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/msr/2.0/spatialRepresentation.xsd +296 -0
  968. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/msr/2.0/spatialRepresentationImagery.xsd +114 -0
  969. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/srv/2.0/serviceInformation.xsd +217 -0
  970. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/srv/2.0/srv.xsd +14 -0
  971. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/srv/2.1/serviceInformation.xsd +220 -0
  972. data/spec/fixtures/xml/schema/xsd/isotc211/19115/-3/srv/2.1/srv.xsd +14 -0
  973. data/spec/fixtures/xml/schema/xsd/isotc211/19119/-/srv/1.0/serviceMetadata.xsd +204 -0
  974. data/spec/fixtures/xml/schema/xsd/isotc211/19119/-/srv/1.0/serviceModel.xsd +230 -0
  975. data/spec/fixtures/xml/schema/xsd/isotc211/19119/-/srv/1.0/srv.xsd +13 -0
  976. data/spec/fixtures/xml/schema/xsd/isotc211/19119/srv/serviceMetadata.xsd +204 -0
  977. data/spec/fixtures/xml/schema/xsd/isotc211/19119/srv/serviceModel.xsd +238 -0
  978. data/spec/fixtures/xml/schema/xsd/isotc211/19119/srv/srv.xsd +13 -0
  979. data/spec/fixtures/xml/schema/xsd/isotc211/19123/-/cis/1.1/cis-0.xsd +17 -0
  980. data/spec/fixtures/xml/schema/xsd/isotc211/19123/-/cis/1.1/codeLists.xsd +68 -0
  981. data/spec/fixtures/xml/schema/xsd/isotc211/19123/-/cis/1.1/gridPoint.xsd +47 -0
  982. data/spec/fixtures/xml/schema/xsd/isotc211/19123/-/cis/1.1.0/cis-0.xsd +17 -0
  983. data/spec/fixtures/xml/schema/xsd/isotc211/19123/-/cis/1.1.0/codeLists.xsd +68 -0
  984. data/spec/fixtures/xml/schema/xsd/isotc211/19123/-/cis/1.1.0/gridPoint.xsd +47 -0
  985. data/spec/fixtures/xml/schema/xsd/isotc211/19123/-/cis/3.1.0/codeLists.xsd +68 -0
  986. data/spec/fixtures/xml/schema/xsd/isotc211/19123/-/cis/3.1.0/gridPoint.xsd +47 -0
  987. data/spec/fixtures/xml/schema/xsd/isotc211/19123/-2/cis/1.0/coverage.xsd +185 -0
  988. data/spec/fixtures/xml/schema/xsd/isotc211/19123/-2/cis/1.0/gmlcovAll.xsd +21 -0
  989. data/spec/fixtures/xml/schema/xsd/isotc211/19123/-2/cis/1.0/grids.xsd +115 -0
  990. data/spec/fixtures/xml/schema/xsd/isotc211/19123/-2/cis/1.1/coverage.xsd +188 -0
  991. data/spec/fixtures/xml/schema/xsd/isotc211/19123/-2/cis/1.1/gmlcovAll.xsd +25 -0
  992. data/spec/fixtures/xml/schema/xsd/isotc211/19123/-2/cis/1.1/grids.xsd +119 -0
  993. data/spec/fixtures/xml/schema/xsd/isotc211/19123/-2/cis/1.1.0/coverage.xsd +188 -0
  994. data/spec/fixtures/xml/schema/xsd/isotc211/19123/-2/cis/1.1.0/gmlcovAll.xsd +25 -0
  995. data/spec/fixtures/xml/schema/xsd/isotc211/19123/-2/cis/1.1.0/grids.xsd +119 -0
  996. data/spec/fixtures/xml/schema/xsd/isotc211/19123/-2/cis/3.1.0/coverage.xsd +188 -0
  997. data/spec/fixtures/xml/schema/xsd/isotc211/19123/-2/cis/3.1.0/gmlcovAll.xsd +23 -0
  998. data/spec/fixtures/xml/schema/xsd/isotc211/19123/-2/cis/3.1.0/grids.xsd +119 -0
  999. data/spec/fixtures/xml/schema/xsd/isotc211/19130/-1/smi/1.1.0/codeList.xsd +134 -0
  1000. data/spec/fixtures/xml/schema/xsd/isotc211/19130/-1/smi/1.1.0/groundControlPoints.xsd +239 -0
  1001. data/spec/fixtures/xml/schema/xsd/isotc211/19130/-1/smi/1.1.0/nonPhysicalSensorModel.xsd +321 -0
  1002. data/spec/fixtures/xml/schema/xsd/isotc211/19130/-1/smi/1.1.0/physicalSensorModel.xsd +62 -0
  1003. data/spec/fixtures/xml/schema/xsd/isotc211/19130/-1/smi/1.1.0/sensorModel.xsd +65 -0
  1004. data/spec/fixtures/xml/schema/xsd/isotc211/19130/-1/smi/1.1.0/sensorParameters.xsd +762 -0
  1005. data/spec/fixtures/xml/schema/xsd/isotc211/19130/-1/smi/1.1.0/spatialElements.xsd +497 -0
  1006. data/spec/fixtures/xml/schema/xsd/isotc211/19130/-1/smi/1.1.1/codeList.xsd +129 -0
  1007. data/spec/fixtures/xml/schema/xsd/isotc211/19130/-1/smi/1.1.1/groundControlPoints.xsd +235 -0
  1008. data/spec/fixtures/xml/schema/xsd/isotc211/19130/-1/smi/1.1.1/nonPhysicalSensorModel.xsd +321 -0
  1009. data/spec/fixtures/xml/schema/xsd/isotc211/19130/-1/smi/1.1.1/physicalSensorModel.xsd +62 -0
  1010. data/spec/fixtures/xml/schema/xsd/isotc211/19130/-1/smi/1.1.1/sensorModel.xsd +65 -0
  1011. data/spec/fixtures/xml/schema/xsd/isotc211/19130/-1/smi/1.1.1/sensorParameters.xsd +762 -0
  1012. data/spec/fixtures/xml/schema/xsd/isotc211/19130/-1/smi/1.1.1/spatialElements.xsd +496 -0
  1013. data/spec/fixtures/xml/schema/xsd/isotc211/19130/-2/smi/1.1.0/codeList.xsd +349 -0
  1014. data/spec/fixtures/xml/schema/xsd/isotc211/19130/-2/smi/1.1.0/sensorModel.xsd +53 -0
  1015. data/spec/fixtures/xml/schema/xsd/isotc211/19130/-2/smi/1.1.0/sensorParameters.xsd +681 -0
  1016. data/spec/fixtures/xml/schema/xsd/isotc211/19130/-2/smi/1.1.0/spatialElements.xsd +902 -0
  1017. data/spec/fixtures/xml/schema/xsd/isotc211/19130/-2/smi/1.1.1/codeList.xsd +344 -0
  1018. data/spec/fixtures/xml/schema/xsd/isotc211/19130/-2/smi/1.1.1/sensorModel.xsd +49 -0
  1019. data/spec/fixtures/xml/schema/xsd/isotc211/19130/-2/smi/1.1.1/sensorParameters.xsd +676 -0
  1020. data/spec/fixtures/xml/schema/xsd/isotc211/19130/-2/smi/1.1.1/spatialElements.xsd +897 -0
  1021. data/spec/fixtures/xml/schema/xsd/isotc211/19130/-3/smi/1.1/smi.xsd +42 -0
  1022. data/spec/fixtures/xml/schema/xsd/isotc211/19130/-3/smi/1.1.0/smi.xsd +42 -0
  1023. data/spec/fixtures/xml/schema/xsd/isotc211/19130/-3/smi/1.1.1/smi.xsd +42 -0
  1024. data/spec/fixtures/xml/schema/xsd/isotc211/19131/-/dps/2.0/dps.xsd +1344 -0
  1025. data/spec/fixtures/xml/schema/xsd/isotc211/19131/-/dps/2.0.0/dps.xsd +1344 -0
  1026. data/spec/fixtures/xml/schema/xsd/isotc211/19131/-/dps/2.2/dps.xsd +1522 -0
  1027. data/spec/fixtures/xml/schema/xsd/isotc211/19131/-/dps/2.2.0/dps.xsd +1522 -0
  1028. data/spec/fixtures/xml/schema/xsd/isotc211/19131/-/dps/2.2.1/dps.xsd +1522 -0
  1029. data/spec/fixtures/xml/schema/xsd/isotc211/19131/-1/dps/2.0/dps.xsd +1339 -0
  1030. data/spec/fixtures/xml/schema/xsd/isotc211/19131/-1/dps/2.2.0/dps.xsd +1540 -0
  1031. data/spec/fixtures/xml/schema/xsd/isotc211/19135/-1/pir/1.0/core.xsd +349 -0
  1032. data/spec/fixtures/xml/schema/xsd/isotc211/19135/-1/pir/1.0/extended.xsd +1074 -0
  1033. data/spec/fixtures/xml/schema/xsd/isotc211/19135/-1/pir/1.0/hierarchy.xsd +57 -0
  1034. data/spec/fixtures/xml/schema/xsd/isotc211/19135/-1/pir/1.0/pir.xsd +13 -0
  1035. data/spec/fixtures/xml/schema/xsd/isotc211/19135/-1/pir/1.1/core.xsd +344 -0
  1036. data/spec/fixtures/xml/schema/xsd/isotc211/19135/-1/pir/1.1/extended.xsd +1076 -0
  1037. data/spec/fixtures/xml/schema/xsd/isotc211/19135/-1/pir/1.1/hierarchy.xsd +58 -0
  1038. data/spec/fixtures/xml/schema/xsd/isotc211/19135/-1/pir/1.1/pir.xsd +15 -0
  1039. data/spec/fixtures/xml/schema/xsd/isotc211/19135/-1/pir/1.1.0/core.xsd +344 -0
  1040. data/spec/fixtures/xml/schema/xsd/isotc211/19135/-1/pir/1.1.0/extended.xsd +1076 -0
  1041. data/spec/fixtures/xml/schema/xsd/isotc211/19135/-1/pir/1.1.0/hierarchy.xsd +58 -0
  1042. data/spec/fixtures/xml/schema/xsd/isotc211/19135/-1/pir/1.1.0/pir.xsd +15 -0
  1043. data/spec/fixtures/xml/schema/xsd/isotc211/19135/-2/pre/1.0/abstract.xsd +42 -0
  1044. data/spec/fixtures/xml/schema/xsd/isotc211/19135/-2/pre/1.0/pre.xsd +4 -0
  1045. data/spec/fixtures/xml/schema/xsd/isotc211/19135/-2/pre/1.2.0/abstract.xsd +44 -0
  1046. data/spec/fixtures/xml/schema/xsd/isotc211/19135/-2/pre/1.2.0/pre.xsd +11 -0
  1047. data/spec/fixtures/xml/schema/xsd/isotc211/19135/-2/reg/1.0/reg.xsd +8 -0
  1048. data/spec/fixtures/xml/schema/xsd/isotc211/19135/-2/reg/1.0/registration.xsd +562 -0
  1049. data/spec/fixtures/xml/schema/xsd/isotc211/19135/-2/reg/1.2.0/reg.xsd +22 -0
  1050. data/spec/fixtures/xml/schema/xsd/isotc211/19135/-2/reg/1.2.0/registration.xsd +590 -0
  1051. data/spec/fixtures/xml/schema/xsd/isotc211/19136/-/gml/1.0/basicTypes.xsd +275 -0
  1052. data/spec/fixtures/xml/schema/xsd/isotc211/19136/-/gml/1.0/coordinateOperations.xsd +534 -0
  1053. data/spec/fixtures/xml/schema/xsd/isotc211/19136/-/gml/1.0/coordinateReferenceSystems.xsd +379 -0
  1054. data/spec/fixtures/xml/schema/xsd/isotc211/19136/-/gml/1.0/coordinateSystems.xsd +303 -0
  1055. data/spec/fixtures/xml/schema/xsd/isotc211/19136/-/gml/1.0/coverage.xsd +298 -0
  1056. data/spec/fixtures/xml/schema/xsd/isotc211/19136/-/gml/1.0/datums.xsd +293 -0
  1057. data/spec/fixtures/xml/schema/xsd/isotc211/19136/-/gml/1.0/defaultStyle.xsd +462 -0
  1058. data/spec/fixtures/xml/schema/xsd/isotc211/19136/-/gml/1.0/deprecatedTypes.xsd +1139 -0
  1059. data/spec/fixtures/xml/schema/xsd/isotc211/19136/-/gml/1.0/dictionary.xsd +95 -0
  1060. data/spec/fixtures/xml/schema/xsd/isotc211/19136/-/gml/1.0/direction.xsd +90 -0
  1061. data/spec/fixtures/xml/schema/xsd/isotc211/19136/-/gml/1.0/dynamicFeature.xsd +114 -0
  1062. data/spec/fixtures/xml/schema/xsd/isotc211/19136/-/gml/1.0/feature.xsd +99 -0
  1063. data/spec/fixtures/xml/schema/xsd/isotc211/19136/-/gml/1.0/geometryAggregates.xsd +203 -0
  1064. data/spec/fixtures/xml/schema/xsd/isotc211/19136/-/gml/1.0/geometryBasic0d1d.xsd +283 -0
  1065. data/spec/fixtures/xml/schema/xsd/isotc211/19136/-/gml/1.0/geometryBasic2d.xsd +130 -0
  1066. data/spec/fixtures/xml/schema/xsd/isotc211/19136/-/gml/1.0/geometryComplexes.xsd +101 -0
  1067. data/spec/fixtures/xml/schema/xsd/isotc211/19136/-/gml/1.0/geometryPrimitives.xsd +852 -0
  1068. data/spec/fixtures/xml/schema/xsd/isotc211/19136/-/gml/1.0/gml.xsd +25 -0
  1069. data/spec/fixtures/xml/schema/xsd/isotc211/19136/-/gml/1.0/gmlBase.xsd +191 -0
  1070. data/spec/fixtures/xml/schema/xsd/isotc211/19136/-/gml/1.0/grids.xsd +70 -0
  1071. data/spec/fixtures/xml/schema/xsd/isotc211/19136/-/gml/1.0/measures.xsd +74 -0
  1072. data/spec/fixtures/xml/schema/xsd/isotc211/19136/-/gml/1.0/observation.xsd +100 -0
  1073. data/spec/fixtures/xml/schema/xsd/isotc211/19136/-/gml/1.0/referenceSystems.xsd +78 -0
  1074. data/spec/fixtures/xml/schema/xsd/isotc211/19136/-/gml/1.0/temporal.xsd +274 -0
  1075. data/spec/fixtures/xml/schema/xsd/isotc211/19136/-/gml/1.0/temporalReferenceSystems.xsd +194 -0
  1076. data/spec/fixtures/xml/schema/xsd/isotc211/19136/-/gml/1.0/temporalTopology.xsd +124 -0
  1077. data/spec/fixtures/xml/schema/xsd/isotc211/19136/-/gml/1.0/topology.xsd +391 -0
  1078. data/spec/fixtures/xml/schema/xsd/isotc211/19136/-/gml/1.0/units.xsd +168 -0
  1079. data/spec/fixtures/xml/schema/xsd/isotc211/19136/-/gml/1.0/valueObjects.xsd +210 -0
  1080. data/spec/fixtures/xml/schema/xsd/isotc211/19136/-1/gmw/1.1/gmlWrapperTypes.xsd +160 -0
  1081. data/spec/fixtures/xml/schema/xsd/isotc211/19136/-1/gmw/1.1/gmw.xsd +27 -0
  1082. data/spec/fixtures/xml/schema/xsd/isotc211/19136/-1/gmw/1.1.0/gmlWrapperTypes.xsd +160 -0
  1083. data/spec/fixtures/xml/schema/xsd/isotc211/19136/-1/gmw/1.1.0/gmw.xsd +27 -0
  1084. data/spec/fixtures/xml/schema/xsd/isotc211/19139/-/cat/1.2/cat.xsd +18 -0
  1085. data/spec/fixtures/xml/schema/xsd/isotc211/19139/-/cat/1.2/catalogues.xsd +63 -0
  1086. data/spec/fixtures/xml/schema/xsd/isotc211/19139/-/cat/1.2/codelistItem.xsd +64 -0
  1087. data/spec/fixtures/xml/schema/xsd/isotc211/19139/-/cat/1.2/crsItem.xsd +200 -0
  1088. data/spec/fixtures/xml/schema/xsd/isotc211/19139/-/cat/1.2/uomItem.xsd +49 -0
  1089. data/spec/fixtures/xml/schema/xsd/isotc211/19139/-/cat/1.2.0/cat.xsd +18 -0
  1090. data/spec/fixtures/xml/schema/xsd/isotc211/19139/-/cat/1.2.0/catalogues.xsd +63 -0
  1091. data/spec/fixtures/xml/schema/xsd/isotc211/19139/-/cat/1.2.0/codelistItem.xsd +64 -0
  1092. data/spec/fixtures/xml/schema/xsd/isotc211/19139/-/cat/1.2.0/crsItem.xsd +200 -0
  1093. data/spec/fixtures/xml/schema/xsd/isotc211/19139/-/cat/1.2.0/uomItem.xsd +49 -0
  1094. data/spec/fixtures/xml/schema/xsd/isotc211/19139/-/gco/1.0/basicTypes.xsd +439 -0
  1095. data/spec/fixtures/xml/schema/xsd/isotc211/19139/-/gco/1.0/gco.xsd +18 -0
  1096. data/spec/fixtures/xml/schema/xsd/isotc211/19139/-/gco/1.0/gcoBase.xsd +71 -0
  1097. data/spec/fixtures/xml/schema/xsd/isotc211/19139/-/gmd/1.0/applicationSchema.xsd +50 -0
  1098. data/spec/fixtures/xml/schema/xsd/isotc211/19139/-/gmd/1.0/citation.xsd +283 -0
  1099. data/spec/fixtures/xml/schema/xsd/isotc211/19139/-/gmd/1.0/constraints.xsd +114 -0
  1100. data/spec/fixtures/xml/schema/xsd/isotc211/19139/-/gmd/1.0/content.xsd +197 -0
  1101. data/spec/fixtures/xml/schema/xsd/isotc211/19139/-/gmd/1.0/dataQuality.xsd +563 -0
  1102. data/spec/fixtures/xml/schema/xsd/isotc211/19139/-/gmd/1.0/distribution.xsd +210 -0
  1103. data/spec/fixtures/xml/schema/xsd/isotc211/19139/-/gmd/1.0/extent.xsd +216 -0
  1104. data/spec/fixtures/xml/schema/xsd/isotc211/19139/-/gmd/1.0/freeText.xsd +130 -0
  1105. data/spec/fixtures/xml/schema/xsd/isotc211/19139/-/gmd/1.0/gmd.xsd +18 -0
  1106. data/spec/fixtures/xml/schema/xsd/isotc211/19139/-/gmd/1.0/identification.xsd +356 -0
  1107. data/spec/fixtures/xml/schema/xsd/isotc211/19139/-/gmd/1.0/maintenance.xsd +95 -0
  1108. data/spec/fixtures/xml/schema/xsd/isotc211/19139/-/gmd/1.0/metadataApplication.xsd +183 -0
  1109. data/spec/fixtures/xml/schema/xsd/isotc211/19139/-/gmd/1.0/metadataEntity.xsd +78 -0
  1110. data/spec/fixtures/xml/schema/xsd/isotc211/19139/-/gmd/1.0/metadataExtension.xsd +107 -0
  1111. data/spec/fixtures/xml/schema/xsd/isotc211/19139/-/gmd/1.0/portrayalCatalogue.xsd +44 -0
  1112. data/spec/fixtures/xml/schema/xsd/isotc211/19139/-/gmd/1.0/referenceSystem.xsd +108 -0
  1113. data/spec/fixtures/xml/schema/xsd/isotc211/19139/-/gmd/1.0/spatialRepresentation.xsd +246 -0
  1114. data/spec/fixtures/xml/schema/xsd/isotc211/19139/-/gmx/1.0/catalogues.xsd +121 -0
  1115. data/spec/fixtures/xml/schema/xsd/isotc211/19139/-/gmx/1.0/codelistItem.xsd +179 -0
  1116. data/spec/fixtures/xml/schema/xsd/isotc211/19139/-/gmx/1.0/crsItem.xsd +1041 -0
  1117. data/spec/fixtures/xml/schema/xsd/isotc211/19139/-/gmx/1.0/extendedTypes.xsd +83 -0
  1118. data/spec/fixtures/xml/schema/xsd/isotc211/19139/-/gmx/1.0/gmx.xsd +18 -0
  1119. data/spec/fixtures/xml/schema/xsd/isotc211/19139/-/gmx/1.0/gmxUsage.xsd +136 -0
  1120. data/spec/fixtures/xml/schema/xsd/isotc211/19139/-/gmx/1.0/uomItem.xsd +173 -0
  1121. data/spec/fixtures/xml/schema/xsd/isotc211/19139/-/gsr/1.0/gsr.xsd +18 -0
  1122. data/spec/fixtures/xml/schema/xsd/isotc211/19139/-/gsr/1.0/spatialReferencing.xsd +34 -0
  1123. data/spec/fixtures/xml/schema/xsd/isotc211/19139/-/gss/1.0/geometry.xsd +45 -0
  1124. data/spec/fixtures/xml/schema/xsd/isotc211/19139/-/gss/1.0/gss.xsd +18 -0
  1125. data/spec/fixtures/xml/schema/xsd/isotc211/19139/-/gts/1.0/gts.xsd +18 -0
  1126. data/spec/fixtures/xml/schema/xsd/isotc211/19139/-/gts/1.0/temporalObjects.xsd +44 -0
  1127. data/spec/fixtures/xml/schema/xsd/isotc211/19155/gpi/1.0/gpi.xsd +16 -0
  1128. data/spec/fixtures/xml/schema/xsd/isotc211/19155/gpi/1.0/placeIdentifier.xsd +75 -0
  1129. data/spec/fixtures/xml/schema/xsd/isotc211/19155/gpi/1.0/sampleGMLApplicationSchema.xsd +83 -0
  1130. data/spec/fixtures/xml/schema/xsd/isotc211/19157/-/dqc/1.2/abstract.xsd +44 -0
  1131. data/spec/fixtures/xml/schema/xsd/isotc211/19157/-/dqc/1.2/dqc.xsd +16 -0
  1132. data/spec/fixtures/xml/schema/xsd/isotc211/19157/-/dqc/1.2.0/abstract.xsd +44 -0
  1133. data/spec/fixtures/xml/schema/xsd/isotc211/19157/-/dqc/1.2.0/dqc.xsd +16 -0
  1134. data/spec/fixtures/xml/schema/xsd/isotc211/19157/-/dqm/1.2/dqm.xsd +19 -0
  1135. data/spec/fixtures/xml/schema/xsd/isotc211/19157/-/dqm/1.2/qualityMeasures.xsd +332 -0
  1136. data/spec/fixtures/xml/schema/xsd/isotc211/19157/-/dqm/1.2.0/dqm.xsd +19 -0
  1137. data/spec/fixtures/xml/schema/xsd/isotc211/19157/-/dqm/1.2.0/qualityMeasures.xsd +332 -0
  1138. data/spec/fixtures/xml/schema/xsd/isotc211/19157/-/mdq/1.2/dataQualityElement.xsd +583 -0
  1139. data/spec/fixtures/xml/schema/xsd/isotc211/19157/-/mdq/1.2/dataQualityEvaluation.xsd +199 -0
  1140. data/spec/fixtures/xml/schema/xsd/isotc211/19157/-/mdq/1.2/dataQualityImagery.xsd +75 -0
  1141. data/spec/fixtures/xml/schema/xsd/isotc211/19157/-/mdq/1.2/dataQualityResult.xsd +213 -0
  1142. data/spec/fixtures/xml/schema/xsd/isotc211/19157/-/mdq/1.2/mdq.xsd +22 -0
  1143. data/spec/fixtures/xml/schema/xsd/isotc211/19157/-/mdq/1.2/metaquality.xsd +93 -0
  1144. data/spec/fixtures/xml/schema/xsd/isotc211/19157/-/mdq/1.2.0/dataQualityElement.xsd +583 -0
  1145. data/spec/fixtures/xml/schema/xsd/isotc211/19157/-/mdq/1.2.0/dataQualityEvaluation.xsd +199 -0
  1146. data/spec/fixtures/xml/schema/xsd/isotc211/19157/-/mdq/1.2.0/dataQualityImagery.xsd +75 -0
  1147. data/spec/fixtures/xml/schema/xsd/isotc211/19157/-/mdq/1.2.0/dataQualityResult.xsd +213 -0
  1148. data/spec/fixtures/xml/schema/xsd/isotc211/19157/-/mdq/1.2.0/mdq.xsd +22 -0
  1149. data/spec/fixtures/xml/schema/xsd/isotc211/19157/-/mdq/1.2.0/metaquality.xsd +93 -0
  1150. data/spec/fixtures/xml/schema/xsd/isotc211/19157/-1/dqc/1.0.0/dataQualityCommon.xsd +33 -0
  1151. data/spec/fixtures/xml/schema/xsd/isotc211/19157/-1/dqc/1.0.0/dqc.xsd +14 -0
  1152. data/spec/fixtures/xml/schema/xsd/isotc211/19157/-1/dqc/1.0.1/dataQualityCommon.xsd +43 -0
  1153. data/spec/fixtures/xml/schema/xsd/isotc211/19157/-1/dqc/1.0.1/dqc.xsd +17 -0
  1154. data/spec/fixtures/xml/schema/xsd/isotc211/19157/-1/dqm/1.0.0/dataQualityMeasure.xsd +376 -0
  1155. data/spec/fixtures/xml/schema/xsd/isotc211/19157/-1/dqm/1.0.0/dqm.xsd +11 -0
  1156. data/spec/fixtures/xml/schema/xsd/isotc211/19157/-1/dqm/1.0.1/dataQualityMeasure.xsd +367 -0
  1157. data/spec/fixtures/xml/schema/xsd/isotc211/19157/-1/dqm/1.0.1/dqm.xsd +11 -0
  1158. data/spec/fixtures/xml/schema/xsd/isotc211/19157/-1/mdq/1.0.0/dataQuality.xsd +570 -0
  1159. data/spec/fixtures/xml/schema/xsd/isotc211/19157/-1/mdq/1.0.0/dataQualityEvaluation.xsd +227 -0
  1160. data/spec/fixtures/xml/schema/xsd/isotc211/19157/-1/mdq/1.0.0/dataQualityResult.xsd +191 -0
  1161. data/spec/fixtures/xml/schema/xsd/isotc211/19157/-1/mdq/1.0.0/mdq.xsd +14 -0
  1162. data/spec/fixtures/xml/schema/xsd/isotc211/19157/-1/mdq/1.0.0/metaquality.xsd +106 -0
  1163. data/spec/fixtures/xml/schema/xsd/isotc211/19157/-1/mdq/1.0.1/dataQuality.xsd +581 -0
  1164. data/spec/fixtures/xml/schema/xsd/isotc211/19157/-1/mdq/1.0.1/dataQualityEvaluation.xsd +227 -0
  1165. data/spec/fixtures/xml/schema/xsd/isotc211/19157/-1/mdq/1.0.1/dataQualityResult.xsd +198 -0
  1166. data/spec/fixtures/xml/schema/xsd/isotc211/19157/-1/mdq/1.0.1/mdq.xsd +14 -0
  1167. data/spec/fixtures/xml/schema/xsd/isotc211/19157/-1/mdq/1.0.1/metaquality.xsd +102 -0
  1168. data/spec/fixtures/xml/schema/xsd/isotc211/19157/-2/dqc/1.0/abstract.xsd +43 -0
  1169. data/spec/fixtures/xml/schema/xsd/isotc211/19157/-2/dqc/1.0/dqc.xsd +15 -0
  1170. data/spec/fixtures/xml/schema/xsd/isotc211/19157/-2/dqm/1.0/dqm.xsd +15 -0
  1171. data/spec/fixtures/xml/schema/xsd/isotc211/19157/-2/dqm/1.0/qualityMeasures.xsd +303 -0
  1172. data/spec/fixtures/xml/schema/xsd/isotc211/19157/-2/mdq/1.0/dataQualityElement.xsd +554 -0
  1173. data/spec/fixtures/xml/schema/xsd/isotc211/19157/-2/mdq/1.0/dataQualityEvaluation.xsd +182 -0
  1174. data/spec/fixtures/xml/schema/xsd/isotc211/19157/-2/mdq/1.0/dataQualityImagery.xsd +72 -0
  1175. data/spec/fixtures/xml/schema/xsd/isotc211/19157/-2/mdq/1.0/dataQualityResult.xsd +140 -0
  1176. data/spec/fixtures/xml/schema/xsd/isotc211/19157/-2/mdq/1.0/mdq.xsd +21 -0
  1177. data/spec/fixtures/xml/schema/xsd/isotc211/19157/-2/mdq/1.0/metaquality.xsd +89 -0
  1178. data/spec/fixtures/xml/schema/xsd/isotc211/19160/-4/patdl/2.7.3/PATDL.v.2.7.3.xsd +517 -0
  1179. data/spec/fixtures/xml/schema/xsd/isotc211/19163/-1/igd/1.1/IE_Imagery.xsd +520 -0
  1180. data/spec/fixtures/xml/schema/xsd/isotc211/19163/-1/igd/1.1/IE_ImageryAndGriddedData.xsd +222 -0
  1181. data/spec/fixtures/xml/schema/xsd/isotc211/19163/-1/igd/1.1/IE_ThematicGriddedData.xsd +117 -0
  1182. data/spec/fixtures/xml/schema/xsd/isotc211/19163/-1/igd/1.1/igd.xsd +14 -0
  1183. data/spec/fixtures/xml/schema/xsd/isotc211/19163/-1/igd/1.1.0/IE_Imagery.xsd +520 -0
  1184. data/spec/fixtures/xml/schema/xsd/isotc211/19163/-1/igd/1.1.0/IE_ImageryAndGriddedData.xsd +222 -0
  1185. data/spec/fixtures/xml/schema/xsd/isotc211/19163/-1/igd/1.1.0/IE_ThematicGriddedData.xsd +117 -0
  1186. data/spec/fixtures/xml/schema/xsd/isotc211/19163/-1/igd/1.1.0/igd.xsd +14 -0
  1187. data/spec/fixtures/xml/schema/xsd/isotc211/19163/-1/igd/1.1.1/IE_Imagery.xsd +518 -0
  1188. data/spec/fixtures/xml/schema/xsd/isotc211/19163/-1/igd/1.1.1/IE_ImageryAndGriddedData.xsd +213 -0
  1189. data/spec/fixtures/xml/schema/xsd/isotc211/19163/-1/igd/1.1.1/IE_ThematicGriddedData.xsd +116 -0
  1190. data/spec/fixtures/xml/schema/xsd/isotc211/19163/-1/igd/1.1.1/igd.xsd +15 -0
  1191. data/spec/fixtures/xml/schema/xsd/isotc211/19165/-1/gpm/1.0.0/geospatialPreservationMetadata.xsd +872 -0
  1192. data/spec/fixtures/xml/schema/xsd/isotc211/19165/-1/gpm/1.0.0/gpm.xsd +11 -0
  1193. data/spec/fixtures/xml/schema/xsd/isotc211/19165/gpm/1.0/geospatialPreservationMetadata.xsd +385 -0
  1194. data/spec/fixtures/xml/schema/xsd/isotc211/19165/gpm/1.0/gpm.xsd +8 -0
  1195. data/spec/fixtures/xml/schema/xsd/metaschema-datatypes.xsd +263 -0
  1196. data/spec/fixtures/xml/schema/xsd/metaschema-markup-line.xsd +9 -0
  1197. data/spec/fixtures/xml/schema/xsd/metaschema-markup-multiline.xsd +135 -0
  1198. data/spec/fixtures/xml/schema/xsd/metaschema-meta-constraints.xsd +39 -0
  1199. data/spec/fixtures/xml/schema/xsd/metaschema-prose-base.xsd +82 -0
  1200. data/spec/fixtures/xml/schema/xsd/metaschema-prose-module.xsd +5 -0
  1201. data/spec/fixtures/xml/schema/xsd/metaschema.xsd +1344 -0
  1202. data/spec/fixtures/xml/schema/xsd/omml_schema.xsd +1528 -0
  1203. data/spec/fixtures/xml/schema/xsd/smil20/rdf.xsd +16 -0
  1204. data/spec/fixtures/xml/schema/xsd/smil20/smil20-AccessKeyTiming.xsd +33 -0
  1205. data/spec/fixtures/xml/schema/xsd/smil20/smil20-AudioLayout.xsd +32 -0
  1206. data/spec/fixtures/xml/schema/xsd/smil20/smil20-BasicAnimation.xsd +35 -0
  1207. data/spec/fixtures/xml/schema/xsd/smil20/smil20-BasicContentControl.xsd +49 -0
  1208. data/spec/fixtures/xml/schema/xsd/smil20/smil20-BasicInlineTiming.xsd +34 -0
  1209. data/spec/fixtures/xml/schema/xsd/smil20/smil20-BasicLayout.xsd +34 -0
  1210. data/spec/fixtures/xml/schema/xsd/smil20/smil20-BasicLinking.xsd +34 -0
  1211. data/spec/fixtures/xml/schema/xsd/smil20/smil20-BasicMedia.xsd +39 -0
  1212. data/spec/fixtures/xml/schema/xsd/smil20/smil20-BasicTimeContainers.xsd +37 -0
  1213. data/spec/fixtures/xml/schema/xsd/smil20/smil20-BasicTransitions.xsd +36 -0
  1214. data/spec/fixtures/xml/schema/xsd/smil20/smil20-BrushMedia.xsd +32 -0
  1215. data/spec/fixtures/xml/schema/xsd/smil20/smil20-CustomTestAttributes.xsd +33 -0
  1216. data/spec/fixtures/xml/schema/xsd/smil20/smil20-EventTiming.xsd +33 -0
  1217. data/spec/fixtures/xml/schema/xsd/smil20/smil20-ExclTimeContainers.xsd +37 -0
  1218. data/spec/fixtures/xml/schema/xsd/smil20/smil20-FillDefault.xsd +32 -0
  1219. data/spec/fixtures/xml/schema/xsd/smil20/smil20-HierarchicalLayout.xsd +46 -0
  1220. data/spec/fixtures/xml/schema/xsd/smil20/smil20-HostLanguage.xsd +85 -0
  1221. data/spec/fixtures/xml/schema/xsd/smil20/smil20-InlineTransitions.xsd +35 -0
  1222. data/spec/fixtures/xml/schema/xsd/smil20/smil20-IntegrationSet.xsd +72 -0
  1223. data/spec/fixtures/xml/schema/xsd/smil20/smil20-LinkingAttributes.xsd +40 -0
  1224. data/spec/fixtures/xml/schema/xsd/smil20/smil20-MediaAccessibility.xsd +34 -0
  1225. data/spec/fixtures/xml/schema/xsd/smil20/smil20-MediaClipMarkers.xsd +35 -0
  1226. data/spec/fixtures/xml/schema/xsd/smil20/smil20-MediaClipping.xsd +35 -0
  1227. data/spec/fixtures/xml/schema/xsd/smil20/smil20-MediaDescription.xsd +35 -0
  1228. data/spec/fixtures/xml/schema/xsd/smil20/smil20-MediaMarkerTiming.xsd +33 -0
  1229. data/spec/fixtures/xml/schema/xsd/smil20/smil20-MediaParam.xsd +34 -0
  1230. data/spec/fixtures/xml/schema/xsd/smil20/smil20-Metainformation.xsd +33 -0
  1231. data/spec/fixtures/xml/schema/xsd/smil20/smil20-MinMaxTiming.xsd +33 -0
  1232. data/spec/fixtures/xml/schema/xsd/smil20/smil20-MultiArcTiming.xsd +33 -0
  1233. data/spec/fixtures/xml/schema/xsd/smil20/smil20-MultiWindowLayout.xsd +32 -0
  1234. data/spec/fixtures/xml/schema/xsd/smil20/smil20-ObjectLinking.xsd +33 -0
  1235. data/spec/fixtures/xml/schema/xsd/smil20/smil20-PrefetchControl.xsd +31 -0
  1236. data/spec/fixtures/xml/schema/xsd/smil20/smil20-RepeatTiming.xsd +34 -0
  1237. data/spec/fixtures/xml/schema/xsd/smil20/smil20-RepeatValueTiming.xsd +33 -0
  1238. data/spec/fixtures/xml/schema/xsd/smil20/smil20-RestartDefault.xsd +32 -0
  1239. data/spec/fixtures/xml/schema/xsd/smil20/smil20-RestartTiming.xsd +32 -0
  1240. data/spec/fixtures/xml/schema/xsd/smil20/smil20-SkipContentControl.xsd +32 -0
  1241. data/spec/fixtures/xml/schema/xsd/smil20/smil20-SplineAnimation.xsd +34 -0
  1242. data/spec/fixtures/xml/schema/xsd/smil20/smil20-Structure.xsd +34 -0
  1243. data/spec/fixtures/xml/schema/xsd/smil20/smil20-SyncBehavior.xsd +33 -0
  1244. data/spec/fixtures/xml/schema/xsd/smil20/smil20-SyncBehaviorDefault.xsd +33 -0
  1245. data/spec/fixtures/xml/schema/xsd/smil20/smil20-SyncMaster.xsd +32 -0
  1246. data/spec/fixtures/xml/schema/xsd/smil20/smil20-SyncbaseTiming.xsd +33 -0
  1247. data/spec/fixtures/xml/schema/xsd/smil20/smil20-TimeContainerAttributes.xsd +35 -0
  1248. data/spec/fixtures/xml/schema/xsd/smil20/smil20-TimeManipulations.xsd +35 -0
  1249. data/spec/fixtures/xml/schema/xsd/smil20/smil20-TransitionModifiers.xsd +37 -0
  1250. data/spec/fixtures/xml/schema/xsd/smil20/smil20-WallclockTiming.xsd +33 -0
  1251. data/spec/fixtures/xml/schema/xsd/smil20/smil20-animate.xsd +229 -0
  1252. data/spec/fixtures/xml/schema/xsd/smil20/smil20-content.xsd +148 -0
  1253. data/spec/fixtures/xml/schema/xsd/smil20/smil20-language.xsd +834 -0
  1254. data/spec/fixtures/xml/schema/xsd/smil20/smil20-layout.xsd +211 -0
  1255. data/spec/fixtures/xml/schema/xsd/smil20/smil20-linking.xsd +117 -0
  1256. data/spec/fixtures/xml/schema/xsd/smil20/smil20-media.xsd +175 -0
  1257. data/spec/fixtures/xml/schema/xsd/smil20/smil20-meta.xsd +44 -0
  1258. data/spec/fixtures/xml/schema/xsd/smil20/smil20-struct.xsd +47 -0
  1259. data/spec/fixtures/xml/schema/xsd/smil20/smil20-timemanip.xsd +34 -0
  1260. data/spec/fixtures/xml/schema/xsd/smil20/smil20-timing.xsd +344 -0
  1261. data/spec/fixtures/xml/schema/xsd/smil20/smil20-transitions.xsd +138 -0
  1262. data/spec/fixtures/xml/schema/xsd/smil20/smil20-utility.xsd +57 -0
  1263. data/spec/fixtures/xml/schema/xsd/smil20/smil20.xsd +86 -0
  1264. data/spec/fixtures/xml/schema/xsd/smil20/xml-mod.xsd +25 -0
  1265. data/spec/fixtures/xml/schema/xsd/sweCommon/2.0.1/advanced_encodings.xsd +186 -0
  1266. data/spec/fixtures/xml/schema/xsd/sweCommon/2.0.1/basic_types.xsd +147 -0
  1267. data/spec/fixtures/xml/schema/xsd/sweCommon/2.0.1/block_components.xsd +163 -0
  1268. data/spec/fixtures/xml/schema/xsd/sweCommon/2.0.1/choice_components.xsd +56 -0
  1269. data/spec/fixtures/xml/schema/xsd/sweCommon/2.0.1/examples/security.xsd +15 -0
  1270. data/spec/fixtures/xml/schema/xsd/sweCommon/2.0.1/record_components.xsd +95 -0
  1271. data/spec/fixtures/xml/schema/xsd/sweCommon/2.0.1/simple_components.xsd +536 -0
  1272. data/spec/fixtures/xml/schema/xsd/sweCommon/2.0.1/simple_encodings.xsd +93 -0
  1273. data/spec/fixtures/xml/schema/xsd/sweCommon/2.0.1/swe.xsd +14 -0
  1274. data/spec/fixtures/xml/schema/xsd/test_schema.lxr +0 -0
  1275. data/spec/fixtures/xml/schema/xsd/test_schema.xsd +24 -0
  1276. data/spec/fixtures/xml/schema/xsd/unitsml-v1.0-csd03.xsd +1333 -0
  1277. data/spec/fixtures/xml/schema/xsd/unitsml-v1.0-csd04.xsd +1334 -0
  1278. data/spec/fixtures/xml/schema/xsd/validation_config.yml +14 -0
  1279. data/spec/fixtures/xml/special_char.xml +3 -4
  1280. data/spec/fixtures/xml/user.xsd +14 -10
  1281. data/spec/lutaml/key_value/transformation/collection_serializer_spec.rb +213 -0
  1282. data/spec/lutaml/key_value/transformation/rule_compiler_spec.rb +229 -0
  1283. data/spec/lutaml/key_value/transformation/value_serializer_spec.rb +216 -0
  1284. data/spec/lutaml/key_value/transformation_spec.rb +292 -0
  1285. data/spec/lutaml/model/attribute_collection_spec.rb +9 -6
  1286. data/spec/lutaml/model/attribute_form_default_spec.rb +252 -0
  1287. data/spec/lutaml/model/attribute_spec.rb +328 -38
  1288. data/spec/lutaml/model/cached_type_resolver_spec.rb +362 -0
  1289. data/spec/lutaml/model/cdata_spec.rb +180 -102
  1290. data/spec/lutaml/model/choice_spec.rb +37 -7
  1291. data/spec/lutaml/model/cli_spec.rb +452 -0
  1292. data/spec/lutaml/model/collection_index_spec.rb +347 -0
  1293. data/spec/lutaml/model/collection_mutation_spec.rb +124 -0
  1294. data/spec/lutaml/model/collection_spec.rb +580 -155
  1295. data/spec/lutaml/model/collection_validation_spec.rb +736 -0
  1296. data/spec/lutaml/model/comparable_model_spec.rb +75 -0
  1297. data/spec/lutaml/model/compiled_rule_spec.rb +364 -0
  1298. data/spec/lutaml/model/consolidation_spec.rb +295 -0
  1299. data/spec/lutaml/model/context_registry_spec.rb +269 -0
  1300. data/spec/lutaml/model/custom_bibtex_adapter_spec.rb +21 -7
  1301. data/spec/lutaml/model/custom_collection_spec.rb +321 -27
  1302. data/spec/lutaml/model/custom_model_spec.rb +13 -10
  1303. data/spec/lutaml/model/custom_serialization_spec.rb +12 -14
  1304. data/spec/lutaml/model/custom_vobject_adapter_spec.rb +36 -16
  1305. data/spec/lutaml/model/default_register_spec.rb +852 -0
  1306. data/spec/lutaml/model/defaults_spec.rb +57 -6
  1307. data/spec/lutaml/model/delegation_spec.rb +184 -110
  1308. data/spec/lutaml/model/derived_attribute_serialization_spec.rb +33 -0
  1309. data/spec/lutaml/model/dynamic_attribute_spec.rb +112 -0
  1310. data/spec/lutaml/model/encoding_spec.rb +281 -0
  1311. data/spec/lutaml/model/enum_spec.rb +46 -2
  1312. data/spec/lutaml/model/except_spec.rb +240 -0
  1313. data/spec/lutaml/model/finalization_cache_spec.rb +88 -0
  1314. data/spec/lutaml/model/global_context_spec.rb +421 -0
  1315. data/spec/lutaml/model/global_register_spec.rb +153 -36
  1316. data/spec/lutaml/model/group_spec.rb +193 -54
  1317. data/spec/lutaml/model/hash/adapter_spec.rb +5 -3
  1318. data/spec/lutaml/model/import_registry_spec.rb +295 -0
  1319. data/spec/lutaml/model/included_spec.rb +10 -17
  1320. data/spec/lutaml/model/inheritance_spec.rb +6 -6
  1321. data/spec/lutaml/model/json_adapter_spec.rb +13 -6
  1322. data/spec/lutaml/model/json_spec.rb +33 -0
  1323. data/spec/lutaml/model/key_value_data_model/key_value_element_spec.rb +320 -0
  1324. data/spec/lutaml/model/key_value_mapping_spec.rb +12 -2
  1325. data/spec/lutaml/model/lazy_collection_spec.rb +208 -0
  1326. data/spec/lutaml/model/liquefiable_spec.rb +263 -24
  1327. data/spec/lutaml/model/logger_spec.rb +68 -0
  1328. data/spec/lutaml/model/map_all_spec.rb +36 -11
  1329. data/spec/lutaml/model/map_content_spec.rb +4 -4
  1330. data/spec/lutaml/model/mapping_rule_perf_guard_spec.rb +71 -0
  1331. data/spec/lutaml/model/mixed_content_spec.rb +481 -171
  1332. data/spec/lutaml/model/model_transformer_spec.rb +678 -0
  1333. data/spec/lutaml/model/multiple_mapping_spec.rb +71 -39
  1334. data/spec/lutaml/model/namespace_versioning_spec.rb +390 -0
  1335. data/spec/lutaml/model/one_entry_cache_spec.rb +114 -0
  1336. data/spec/lutaml/model/ordered_content_spec.rb +115 -24
  1337. data/spec/lutaml/model/polymorphic_spec.rb +29 -6
  1338. data/spec/lutaml/model/processing_instruction_spec.rb +375 -0
  1339. data/spec/lutaml/model/{register/key_value_spec.rb → register_key_value_spec.rb} +57 -5
  1340. data/spec/lutaml/model/register_spec.rb +235 -5
  1341. data/spec/lutaml/model/render_empty_spec.rb +143 -6
  1342. data/spec/lutaml/model/render_nil_spec.rb +15 -10
  1343. data/spec/lutaml/model/root_mappings_spec.rb +16 -6
  1344. data/spec/lutaml/model/rule_value_extractor_spec.rb +13 -44
  1345. data/spec/lutaml/model/runtime_compatibility_spec.rb +36 -0
  1346. data/spec/lutaml/model/schema/generator/definitions_collection_spec.rb +4 -0
  1347. data/spec/lutaml/model/schema/json_schema_spec.rb +7 -1
  1348. data/spec/lutaml/model/schema/relaxng_schema_spec.rb +1 -1
  1349. data/spec/lutaml/model/schema/renderer_spec.rb +128 -0
  1350. data/spec/lutaml/model/schema/xsd_schema_spec.rb +1 -1
  1351. data/spec/lutaml/model/sequence_spec.rb +460 -15
  1352. data/spec/lutaml/model/serializable_spec.rb +212 -12
  1353. data/spec/lutaml/model/serializable_validation_spec.rb +3 -2
  1354. data/spec/lutaml/model/serialize_perf_guard_spec.rb +100 -0
  1355. data/spec/lutaml/model/services/default_value_resolver_spec.rb +162 -0
  1356. data/spec/lutaml/model/simple_model_spec.rb +4 -4
  1357. data/spec/lutaml/model/toml_adapter_spec.rb +11 -4
  1358. data/spec/lutaml/model/toml_spec.rb +46 -2
  1359. data/spec/lutaml/model/transformation_builder_spec.rb +283 -0
  1360. data/spec/lutaml/model/transformation_spec.rb +165 -236
  1361. data/spec/lutaml/model/type/base64_binary_spec.rb +202 -0
  1362. data/spec/lutaml/model/type/date_spec.rb +132 -0
  1363. data/spec/lutaml/model/type/date_time_spec.rb +54 -2
  1364. data/spec/lutaml/model/type/decimal_spec.rb +1 -1
  1365. data/spec/lutaml/model/type/duration_spec.rb +185 -0
  1366. data/spec/lutaml/model/type/hex_binary_spec.rb +225 -0
  1367. data/spec/lutaml/model/type/integer_spec.rb +1 -1
  1368. data/spec/lutaml/model/type/qname_spec.rb +246 -0
  1369. data/spec/lutaml/model/type/reference_integration_spec.rb +532 -0
  1370. data/spec/lutaml/model/type/reference_spec.rb +293 -0
  1371. data/spec/lutaml/model/type/symbol_spec.rb +322 -0
  1372. data/spec/lutaml/model/type/time_spec.rb +6 -5
  1373. data/spec/lutaml/model/type/time_without_date_spec.rb +1 -1
  1374. data/spec/lutaml/model/type/uninitialized_class_spec.rb +110 -0
  1375. data/spec/lutaml/model/type/uri_spec.rb +176 -0
  1376. data/spec/lutaml/model/type/value_xml_mapping_spec.rb +162 -0
  1377. data/spec/lutaml/model/type_context_spec.rb +370 -0
  1378. data/spec/lutaml/model/type_registry_spec.rb +313 -0
  1379. data/spec/lutaml/model/type_resolver_spec.rb +278 -0
  1380. data/spec/lutaml/model/type_spec.rb +7 -8
  1381. data/spec/lutaml/model/type_substitution_spec.rb +172 -0
  1382. data/spec/lutaml/model/utils_spec.rb +39 -24
  1383. data/spec/lutaml/model/value_map_spec.rb +2 -2
  1384. data/spec/lutaml/model/value_transformation_comprehensive_spec.rb +676 -0
  1385. data/spec/lutaml/model/with_child_mapping_spec.rb +1 -1
  1386. data/spec/lutaml/model/xml_decoupling_spec.rb +435 -0
  1387. data/spec/lutaml/model/xsd_form_default_patterns_spec.rb +664 -0
  1388. data/spec/lutaml/model/xsd_patterns_spec.rb +278 -0
  1389. data/spec/lutaml/model/xsd_type_spec.rb +345 -0
  1390. data/spec/lutaml/model/xsd_type_validation_spec.rb +442 -0
  1391. data/spec/lutaml/model/yamls/standard_adapter_spec.rb +2 -2
  1392. data/spec/lutaml/xml/adapter/nokogiri_adapter_spec.rb +130 -0
  1393. data/spec/lutaml/xml/adapter/oga_adapter_spec.rb +135 -0
  1394. data/spec/lutaml/xml/adapter/ox_adapter_spec.rb +101 -0
  1395. data/spec/lutaml/xml/adapter/rexml_adapter_spec.rb +101 -0
  1396. data/spec/lutaml/xml/adapter/xml_namespace_spec.rb +531 -0
  1397. data/spec/lutaml/xml/builder/builder_spec.rb +216 -0
  1398. data/spec/lutaml/xml/compiled_rule_namespace_spec.rb +405 -0
  1399. data/spec/lutaml/xml/conformance/xml_namespaces_spec.rb +580 -0
  1400. data/spec/lutaml/xml/conformance/xml_schema_instance_spec.rb +266 -0
  1401. data/spec/lutaml/xml/data_model_spec.rb +300 -0
  1402. data/spec/lutaml/xml/decisions/decision_engine_spec.rb +242 -0
  1403. data/spec/lutaml/xml/decisions/decision_spec.rb +217 -0
  1404. data/spec/lutaml/xml/decisions/element_prefix_resolver_spec.rb +198 -0
  1405. data/spec/lutaml/xml/declaration_planner_spec.rb +524 -0
  1406. data/spec/lutaml/xml/default_namespace_spec.rb +190 -0
  1407. data/spec/lutaml/{model/xml → xml}/derived_attributes_spec.rb +2 -2
  1408. data/spec/lutaml/xml/doctype_preservation_spec.rb +323 -0
  1409. data/spec/lutaml/xml/doubly_defined_namespace_spec.rb +415 -0
  1410. data/spec/lutaml/xml/dual_namespace_element_spec.rb +181 -0
  1411. data/spec/lutaml/xml/element_spec.rb +28 -0
  1412. data/spec/lutaml/xml/encoding_normalizer_spec.rb +215 -0
  1413. data/spec/lutaml/xml/enhanced_mapping_spec.rb +692 -0
  1414. data/spec/lutaml/xml/entity_fragmentation_spec.rb +583 -0
  1415. data/spec/lutaml/xml/format_chooser_spec.rb +0 -0
  1416. data/spec/lutaml/xml/fpi_namespace_spec.rb +145 -0
  1417. data/spec/lutaml/{model/xml/namespace_spec.rb → xml/general_namespace_spec.rb} +6 -5
  1418. data/spec/lutaml/xml/mapping_finalization_guard_spec.rb +83 -0
  1419. data/spec/lutaml/xml/mapping_rule_spec.rb +98 -0
  1420. data/spec/lutaml/xml/mapping_spec.rb +1147 -0
  1421. data/spec/lutaml/xml/model_transform_guard_spec.rb +126 -0
  1422. data/spec/lutaml/{model/xml → xml}/namespace/nested_with_explicit_namespace_spec.rb +8 -5
  1423. data/spec/lutaml/xml/namespace/w3c_reserved_warning_spec.rb +152 -0
  1424. data/spec/lutaml/xml/namespace_alias_prefix_root_spec.rb +130 -0
  1425. data/spec/lutaml/xml/namespace_alias_spec.rb +263 -0
  1426. data/spec/lutaml/xml/namespace_aware_parsing_spec.rb +219 -0
  1427. data/spec/lutaml/xml/namespace_backward_compatibility_spec.rb +48 -0
  1428. data/spec/lutaml/xml/namespace_bound_element_roundtrip_spec.rb +433 -0
  1429. data/spec/lutaml/xml/namespace_constant_spec.rb +383 -0
  1430. data/spec/lutaml/xml/namespace_force_prefix_spec.rb +113 -0
  1431. data/spec/lutaml/xml/namespace_format_preservation_spec.rb +49 -0
  1432. data/spec/lutaml/xml/namespace_inheritance_deep_spec.rb +162 -0
  1433. data/spec/lutaml/xml/namespace_inheritance_override_spec.rb +316 -0
  1434. data/spec/lutaml/xml/namespace_inheritance_resolver_spec.rb +0 -0
  1435. data/spec/lutaml/xml/namespace_inheritance_spec.rb +966 -0
  1436. data/spec/lutaml/xml/namespace_integration_spec.rb +277 -0
  1437. data/spec/lutaml/xml/namespace_missing_prefix_spec.rb +178 -0
  1438. data/spec/lutaml/xml/namespace_no_hoisting_spec.rb +172 -0
  1439. data/spec/lutaml/xml/namespace_placement_spec.rb +265 -0
  1440. data/spec/lutaml/xml/namespace_preservation_spec.rb +427 -0
  1441. data/spec/lutaml/xml/namespace_principles_spec.rb +909 -0
  1442. data/spec/lutaml/xml/namespace_resolution_strategy_spec.rb +273 -0
  1443. data/spec/lutaml/xml/namespace_scope_declare_spec.rb +205 -0
  1444. data/spec/lutaml/xml/namespace_scope_spec.rb +389 -0
  1445. data/spec/lutaml/xml/namespace_scope_vcard_spec.rb +616 -0
  1446. data/spec/lutaml/xml/namespace_spec.rb +712 -0
  1447. data/spec/lutaml/xml/namespace_three_phase_spec.rb +310 -0
  1448. data/spec/lutaml/xml/nil_optional_element_namespace_spec.rb +84 -0
  1449. data/spec/lutaml/xml/ooxml_namespace_spec.rb +177 -0
  1450. data/spec/lutaml/xml/ordered_method_spec.rb +109 -0
  1451. data/spec/lutaml/xml/prefix_control_spec.rb +286 -0
  1452. data/spec/lutaml/{model/register/xml_spec.rb → xml/register_spec.rb} +75 -21
  1453. data/spec/lutaml/xml/reusable_mapping_spec.rb +148 -0
  1454. data/spec/lutaml/xml/reused_elements_namespace_spec.rb +85 -0
  1455. data/spec/lutaml/{model/xml → xml}/root_mappings/nested_child_mappings_spec.rb +53 -0
  1456. data/spec/lutaml/{model/schema/xml_compiler → xml/schema/compiler}/attribute_group_spec.rb +9 -3
  1457. data/spec/lutaml/{model/schema/xml_compiler → xml/schema/compiler}/attribute_spec.rb +11 -7
  1458. data/spec/lutaml/{model/schema/xml_compiler → xml/schema/compiler}/choice_spec.rb +5 -2
  1459. data/spec/lutaml/{model/schema/xml_compiler → xml/schema/compiler}/complex_content_restriction_spec.rb +7 -2
  1460. data/spec/lutaml/{model/schema/xml_compiler → xml/schema/compiler}/complex_content_spec.rb +5 -1
  1461. data/spec/lutaml/{model/schema/xml_compiler → xml/schema/compiler}/complex_type_spec.rb +49 -20
  1462. data/spec/lutaml/{model/schema/xml_compiler → xml/schema/compiler}/element_spec.rb +9 -4
  1463. data/spec/lutaml/{model/schema/xml_compiler → xml/schema/compiler}/group_spec.rb +9 -5
  1464. data/spec/lutaml/{model/schema/xml_compiler → xml/schema/compiler}/restriction_spec.rb +1 -0
  1465. data/spec/lutaml/{model/schema/xml_compiler → xml/schema/compiler}/sequence_spec.rb +10 -4
  1466. data/spec/lutaml/{model/schema/xml_compiler → xml/schema/compiler}/simple_content_spec.rb +9 -3
  1467. data/spec/lutaml/{model/schema/xml_compiler → xml/schema/compiler}/simple_type_spec.rb +10 -7
  1468. data/spec/lutaml/{model/schema/xml_compiler_spec.rb → xml/schema/compiler_spec.rb} +219 -94
  1469. data/spec/lutaml/xml/schema/xsd/errors/error_context_spec.rb +65 -0
  1470. data/spec/lutaml/xml/schema/xsd/errors/suggestion_spec.rb +77 -0
  1471. data/spec/lutaml/xml/schema/xsd/file_validation_result_spec.rb +131 -0
  1472. data/spec/lutaml/xml/schema/xsd/glob_spec.rb +318 -0
  1473. data/spec/lutaml/xml/schema/xsd/liquid_methods/attribute_and_group_spec.rb +76 -0
  1474. data/spec/lutaml/xml/schema/xsd/liquid_methods/complex_type_spec.rb +159 -0
  1475. data/spec/lutaml/xml/schema/xsd/liquid_methods/containers_spec.rb +104 -0
  1476. data/spec/lutaml/xml/schema/xsd/liquid_methods/element_spec.rb +139 -0
  1477. data/spec/lutaml/xml/schema/xsd/liquid_methods/schema_spec.rb +75 -0
  1478. data/spec/lutaml/xml/schema/xsd/liquid_methods/simple_content_spec.rb +79 -0
  1479. data/spec/lutaml/xml/schema/xsd/namespace_uri_remapping_spec.rb +246 -0
  1480. data/spec/lutaml/xml/schema/xsd/schema_helper_methods_spec.rb +237 -0
  1481. data/spec/lutaml/xml/schema/xsd/schema_mapping_spec.rb +742 -0
  1482. data/spec/lutaml/xml/schema/xsd/schema_validator_spec.rb +228 -0
  1483. data/spec/lutaml/xml/schema/xsd/spec_helper.rb +26 -0
  1484. data/spec/lutaml/xml/schema/xsd/validation_error_spec.rb +189 -0
  1485. data/spec/lutaml/xml/schema/xsd/validation_result_spec.rb +276 -0
  1486. data/spec/lutaml/xml/schema/xsd/xsd_spec.rb +51 -0
  1487. data/spec/lutaml/xml/schema_primer_spec.rb +393 -0
  1488. data/spec/lutaml/xml/serializable_namespace_spec.rb +125 -0
  1489. data/spec/lutaml/xml/transformation/custom_method_wrapper_spec.rb +48 -0
  1490. data/spec/lutaml/xml/transformation_spec.rb +439 -0
  1491. data/spec/lutaml/xml/type_namespace/collector_spec.rb +212 -0
  1492. data/spec/lutaml/xml/type_namespace/planner_spec.rb +270 -0
  1493. data/spec/lutaml/xml/type_namespace_examples_spec.rb +521 -0
  1494. data/spec/lutaml/xml/type_namespace_integration_spec.rb +332 -0
  1495. data/spec/lutaml/xml/type_namespace_prefix_spec.rb +370 -0
  1496. data/spec/lutaml/xml/type_namespace_resolver_spec.rb +0 -0
  1497. data/spec/lutaml/xml/type_namespace_roundtrip_spec.rb +580 -0
  1498. data/spec/lutaml/xml/w3c_types_spec.rb +376 -0
  1499. data/spec/lutaml/{model → xml}/xml_adapter_spec.rb +64 -17
  1500. data/spec/lutaml/xml/xml_declaration_spec.rb +568 -0
  1501. data/spec/lutaml/xml/xml_element_guard_spec.rb +138 -0
  1502. data/spec/lutaml/{model/xml → xml}/xml_element_spec.rb +1 -1
  1503. data/spec/lutaml/xml/xml_lang_spec.rb +441 -0
  1504. data/spec/lutaml/xml/xml_space_spec.rb +247 -0
  1505. data/spec/lutaml/xml/xml_space_type_spec.rb +161 -0
  1506. data/spec/lutaml/xml/xml_spec.rb +122 -0
  1507. data/spec/parent_root_spec.rb +63 -0
  1508. data/spec/person_spec.rb +9 -9
  1509. data/spec/spec_helper.rb +64 -6
  1510. data/spec/support/test_adapter_config.rb +101 -0
  1511. data/spec/support/test_namespaces.rb +185 -0
  1512. data/spec/support/trace_helper.rb +0 -0
  1513. data/spec/support/xml/schema_helper.rb +15 -0
  1514. data/spec/support/xml/xsd/code_example_validator.rb +393 -0
  1515. data/spec/support/xml_mapping_namespaces.rb +176 -0
  1516. metadata +1465 -100
  1517. data/docs/custom_registers.adoc +0 -228
  1518. data/lib/lutaml/model/hash_adapter/mapping.rb +0 -19
  1519. data/lib/lutaml/model/hash_adapter/mapping_rule.rb +0 -9
  1520. data/lib/lutaml/model/hash_adapter/transform.rb +0 -8
  1521. data/lib/lutaml/model/hash_adapter.rb +0 -21
  1522. data/lib/lutaml/model/json/mapping.rb +0 -19
  1523. data/lib/lutaml/model/json/mapping_rule.rb +0 -9
  1524. data/lib/lutaml/model/json/multi_json_adapter.rb +0 -18
  1525. data/lib/lutaml/model/json/standard_adapter.rb +0 -25
  1526. data/lib/lutaml/model/json/transform.rb +0 -8
  1527. data/lib/lutaml/model/jsonl/mapping.rb +0 -19
  1528. data/lib/lutaml/model/jsonl/mapping_rule.rb +0 -9
  1529. data/lib/lutaml/model/jsonl/transform.rb +0 -19
  1530. data/lib/lutaml/model/schema/xsd_schema.rb +0 -62
  1531. data/lib/lutaml/model/toml/mapping_rule.rb +0 -9
  1532. data/lib/lutaml/model/toml/toml_rb_adapter.rb +0 -18
  1533. data/lib/lutaml/model/toml/tomlib_adapter.rb +0 -19
  1534. data/lib/lutaml/model/toml/transform.rb +0 -8
  1535. data/lib/lutaml/model/xml/builder/nokogiri.rb +0 -101
  1536. data/lib/lutaml/model/xml/builder/oga.rb +0 -183
  1537. data/lib/lutaml/model/xml/builder/ox.rb +0 -121
  1538. data/lib/lutaml/model/xml/document.rb +0 -477
  1539. data/lib/lutaml/model/xml/element.rb +0 -32
  1540. data/lib/lutaml/model/xml/mapping.rb +0 -471
  1541. data/lib/lutaml/model/xml/mapping_rule.rb +0 -149
  1542. data/lib/lutaml/model/xml/nokogiri_adapter.rb +0 -234
  1543. data/lib/lutaml/model/xml/oga/document.rb +0 -20
  1544. data/lib/lutaml/model/xml/oga/element.rb +0 -123
  1545. data/lib/lutaml/model/xml/oga_adapter.rb +0 -172
  1546. data/lib/lutaml/model/xml/ox_adapter.rb +0 -229
  1547. data/lib/lutaml/model/xml/transform.rb +0 -8
  1548. data/lib/lutaml/model/xml/xml_attribute.rb +0 -37
  1549. data/lib/lutaml/model/xml/xml_element.rb +0 -167
  1550. data/lib/lutaml/model/xml/xml_namespace.rb +0 -49
  1551. data/lib/lutaml/model/xml.rb +0 -31
  1552. data/lib/lutaml/model/xml_adapter/element.rb +0 -18
  1553. data/lib/lutaml/model/xml_adapter/nokogiri_adapter.rb +0 -15
  1554. data/lib/lutaml/model/xml_adapter/oga_adapter.rb +0 -21
  1555. data/lib/lutaml/model/xml_adapter/ox_adapter.rb +0 -18
  1556. data/lib/lutaml/model/xml_adapter.rb +0 -7
  1557. data/lib/lutaml/model/yaml/mapping.rb +0 -19
  1558. data/lib/lutaml/model/yaml/mapping_rule.rb +0 -9
  1559. data/lib/lutaml/model/yaml/standard_adapter.rb +0 -28
  1560. data/lib/lutaml/model/yaml/transform.rb +0 -8
  1561. data/lib/lutaml/model/yamls/mapping.rb +0 -19
  1562. data/lib/lutaml/model/yamls/mapping_rule.rb +0 -9
  1563. data/lib/lutaml/model/yamls/transform.rb +0 -19
  1564. data/spec/benchmarks/xml_parsing_benchmark_spec.rb +0 -74
  1565. data/spec/fixtures/xml/advanced_test_schema.xsd +0 -134
  1566. data/spec/lutaml/model/namespace_spec.rb +0 -57
  1567. data/spec/lutaml/model/xml_adapter/nokogiri_adapter_spec.rb +0 -56
  1568. data/spec/lutaml/model/xml_adapter/oga_adapter_spec.rb +0 -60
  1569. data/spec/lutaml/model/xml_adapter/ox_adapter_spec.rb +0 -61
  1570. data/spec/lutaml/model/xml_adapter/xml_namespace_spec.rb +0 -368
  1571. data/spec/lutaml/model/xml_mapping_rule_spec.rb +0 -158
  1572. data/spec/lutaml/model/xml_mapping_spec.rb +0 -1318
  1573. data/spec/lutaml/model/xml_spec.rb +0 -63
@@ -0,0 +1,1540 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <schema
3
+ xmlns="http://www.w3.org/2001/XMLSchema"
4
+ xmlns:dps="https://schemas.isotc211.org/19131/dps/2.2"
5
+ xmlns:gco="https://schemas.isotc211.org/19103/-/gco/1.2"
6
+ xmlns:cit="https://schemas.isotc211.org/19115/-1/cit/1.3"
7
+ xmlns:mrl="https://schemas.isotc211.org/19115/-1/mrl/1.3"
8
+ xmlns:mco="https://schemas.isotc211.org/19115/-1/mco/1.3"
9
+ xmlns:mdq="https://schemas.isotc211.org/19157/-/mdq/1.2"
10
+ xmlns:mas="https://schemas.isotc211.org/19115/-1/mas/1.3"
11
+ xmlns:mri="https://schemas.isotc211.org/19115/-1/mri/1.3"
12
+ xmlns:mcc="https://schemas.isotc211.org/19115/-1/mcc/1.3"
13
+ xmlns:mrc="https://schemas.isotc211.org/19115/-1/mrc/1.3"
14
+ xmlns:gex="https://schemas.isotc211.org/19115/-1/gex/1.3"
15
+ xmlns:lan="https://schemas.isotc211.org/19115/-1/lan/1.3"
16
+ xmlns:mmi="https://schemas.isotc211.org/19115/-1/mmi/1.3"
17
+ xmlns:mrs="https://schemas.isotc211.org/19115/-1/mrs/1.3"
18
+ targetNamespace="https://schemas.isotc211.org/19131/dps/2.2"
19
+ elementFormDefault="qualified"
20
+ version="2.2.0">
21
+ <import namespace="https://schemas.isotc211.org/19103/-/gco/1.2" schemaLocation="https://schemas.isotc211.org/19103/-/gco/1.2.0/gco.xsd"/>
22
+ <import namespace="https://schemas.isotc211.org/19115/-1/cit/1.3" schemaLocation="https://schemas.isotc211.org/19115/-1/cit/1.3.0/citation.xsd"/>
23
+ <import namespace="https://schemas.isotc211.org/19115/-1/mrl/1.3" schemaLocation="https://schemas.isotc211.org/19115/-1/mrl/1.3.0/lineage.xsd"/>
24
+ <import namespace="https://schemas.isotc211.org/19115/-1/mco/1.3" schemaLocation="https://schemas.isotc211.org/19115/-1/mco/1.3.0/constraints.xsd"/>
25
+ <import namespace="https://schemas.isotc211.org/19157/-/mdq/1.2" schemaLocation="https://schemas.isotc211.org/19157/-/mdq/1.2.0/dataQualityElement.xsd"/>
26
+ <import namespace="https://schemas.isotc211.org/19115/-1/mas/1.3" schemaLocation="https://schemas.isotc211.org/19115/-1/mas/1.3.0/applicationSchema.xsd"/>
27
+ <import namespace="https://schemas.isotc211.org/19115/-1/mrc/1.3" schemaLocation="https://schemas.isotc211.org/19115/-1/mrc/1.3.0/content.xsd"/>
28
+ <import namespace="https://schemas.isotc211.org/19115/-1/mri/1.3" schemaLocation="https://schemas.isotc211.org/19115/-1/mri/1.3.0/identification.xsd"/>
29
+ <import namespace="https://schemas.isotc211.org/19115/-1/mcc/1.3" schemaLocation="https://schemas.isotc211.org/19115/-1/mcc/1.3.0/commonClasses.xsd"/>
30
+ <import namespace="https://schemas.isotc211.org/19115/-1/gex/1.3" schemaLocation="https://schemas.isotc211.org/19115/-1/gex/1.3.0/extent.xsd"/>
31
+ <import namespace="https://schemas.isotc211.org/19115/-1/lan/1.3" schemaLocation="https://schemas.isotc211.org/19115/-1/lan/1.3.0/language.xsd"/>
32
+ <import namespace="https://schemas.isotc211.org/19115/-1/mmi/1.3" schemaLocation="https://schemas.isotc211.org/19115/-1/mmi/1.3.0/maintenance.xsd"/>
33
+ <import namespace="https://schemas.isotc211.org/19115/-1/mrs/1.3" schemaLocation="https://schemas.isotc211.org/19115/-1/mrs/1.3.0/referenceSystem.xsd"/>
34
+ <!--XML Schema document created by ShapeChange - http://shapechange.net/-->
35
+ <!--manual changes have been applied to the automatically generated xsd file from ShapeChange-->
36
+ <element name="AbbreviationEntry" type="dps:AbbreviationEntry_Type"
37
+ substitutionGroup="gco:AbstractObject">
38
+ <annotation>
39
+ <documentation>abbreviation and its full text version</documentation>
40
+ </annotation>
41
+ </element>
42
+ <complexType name="AbbreviationEntry_Type">
43
+ <complexContent>
44
+ <extension base="gco:AbstractObject_Type">
45
+ <sequence>
46
+ <element name="abbreviation" type="gco:CharacterString_PropertyType">
47
+ <annotation>
48
+ <documentation>a shortened form of a written word or phrase used in
49
+ place of the whole word or phrase</documentation>
50
+ </annotation>
51
+ </element>
52
+ <element name="longerForm" type="gco:CharacterString_PropertyType">
53
+ <annotation>
54
+ <documentation>full text version of an abbreviation</documentation>
55
+ </annotation>
56
+ </element>
57
+ </sequence>
58
+ </extension>
59
+ </complexContent>
60
+ </complexType>
61
+ <complexType name="AbbreviationEntry_PropertyType">
62
+ <sequence minOccurs="0">
63
+ <element ref="dps:AbbreviationEntry"/>
64
+ </sequence>
65
+ <attributeGroup ref="gco:ObjectReference"/>
66
+ <attribute ref="gco:nilReason"/>
67
+ </complexType>
68
+ <element name="AdditionalInformation" type="dps:AdditionalInformation_Type"
69
+ substitutionGroup="gco:AbstractObject">
70
+ <annotation>
71
+ <documentation>information on additional aspects for a certain specification
72
+ scope</documentation>
73
+ </annotation>
74
+ </element>
75
+ <complexType name="AdditionalInformation_Type">
76
+ <complexContent>
77
+ <extension base="gco:AbstractObject_Type">
78
+ <sequence>
79
+ <element name="additionalInformation" type="gco:CharacterString_PropertyType"
80
+ maxOccurs="unbounded">
81
+ <annotation>
82
+ <documentation>narrative description of one aspect</documentation>
83
+ </annotation>
84
+ </element>
85
+ <element name="additionalInformationScope"
86
+ type="dps:SpecificationScope_PropertyType">
87
+ <annotation>
88
+ <documentation>scope for the additional information</documentation>
89
+ </annotation>
90
+ </element>
91
+ </sequence>
92
+ </extension>
93
+ </complexContent>
94
+ </complexType>
95
+ <complexType name="AdditionalInformation_PropertyType">
96
+ <sequence minOccurs="0">
97
+ <element ref="dps:AdditionalInformation"/>
98
+ </sequence>
99
+ <attributeGroup ref="gco:ObjectReference"/>
100
+ <attribute ref="gco:nilReason"/>
101
+ </complexType>
102
+ <element name="AdditionalInformationSection" type="dps:AdditionalInformationSection_Type"
103
+ substitutionGroup="gco:AbstractObject">
104
+ <annotation>
105
+ <documentation>place holder for objects specifying additional information about the data
106
+ product</documentation>
107
+ </annotation>
108
+ </element>
109
+ <complexType name="AdditionalInformationSection_Type">
110
+ <complexContent>
111
+ <extension base="gco:AbstractObject_Type">
112
+ <sequence>
113
+ <element name="additionalInformation"
114
+ type="dps:AdditionalInformation_PropertyType" minOccurs="0"
115
+ maxOccurs="unbounded">
116
+ <annotation>
117
+ <documentation>additional information for the data
118
+ product</documentation>
119
+ </annotation>
120
+ </element>
121
+ </sequence>
122
+ </extension>
123
+ </complexContent>
124
+ </complexType>
125
+ <complexType name="AdditionalInformationSection_PropertyType">
126
+ <sequence minOccurs="0">
127
+ <element ref="dps:AdditionalInformationSection"/>
128
+ </sequence>
129
+ <attributeGroup ref="gco:ObjectReference"/>
130
+ <attribute ref="gco:nilReason"/>
131
+ </complexType>
132
+ <element name="ConformanceQualityLevel" type="dps:ConformanceQualityLevel_Type"
133
+ substitutionGroup="gco:AbstractObject">
134
+ <annotation>
135
+ <documentation>conformance quality level, that is, a requirement expressed as a
136
+ threshold value for a certain data quality measure</documentation>
137
+ </annotation>
138
+ </element>
139
+ <complexType name="ConformanceQualityLevel_Type">
140
+ <complexContent>
141
+ <extension base="gco:AbstractObject_Type">
142
+ <sequence>
143
+ <element name="requirementId" type="gco:CharacterString_PropertyType"
144
+ minOccurs="0">
145
+ <annotation>
146
+ <documentation>identity of the requirement, to be referred to from
147
+ metadata by an object of DQ_ConformanceResult class</documentation>
148
+ </annotation>
149
+ </element>
150
+ <element name="element" type="mdq:AbstractDQ_Element_PropertyType">
151
+ <annotation>
152
+ <documentation>specifies a data quality element that, in turn, specifies
153
+ a data quality measure and a threshold value for conformance (using
154
+ DQ_QuantitativeResult) or, alternatively, specifies a descriptive
155
+ statement (using DQ_DescriptiveResult)</documentation>
156
+ </annotation>
157
+ </element>
158
+ </sequence>
159
+ </extension>
160
+ </complexContent>
161
+ </complexType>
162
+ <complexType name="ConformanceQualityLevel_PropertyType">
163
+ <sequence minOccurs="0">
164
+ <element ref="dps:ConformanceQualityLevel"/>
165
+ </sequence>
166
+ <attributeGroup ref="gco:ObjectReference"/>
167
+ <attribute ref="gco:nilReason"/>
168
+ </complexType>
169
+ <element name="DataAcquisitionAndProcessing" type="dps:DataAcquisitionAndProcessing_Type"
170
+ substitutionGroup="gco:AbstractObject">
171
+ <annotation>
172
+ <documentation>placeholder for objects specifying sources and production steps in
173
+ producing the data product</documentation>
174
+ </annotation>
175
+ </element>
176
+ <complexType name="DataAcquisitionAndProcessing_Type">
177
+ <complexContent>
178
+ <extension base="gco:AbstractObject_Type">
179
+ <sequence>
180
+ <element name="source" type="mrl:LI_Source_PropertyType" minOccurs="0"
181
+ maxOccurs="unbounded">
182
+ <annotation>
183
+ <documentation>source data used in creating a data
184
+ product</documentation>
185
+ </annotation>
186
+ </element>
187
+ <element name="processStep" type="mrl:LI_ProcessStep_PropertyType" minOccurs="0"
188
+ maxOccurs="unbounded">
189
+ <annotation>
190
+ <documentation>steps used in producing a data product</documentation>
191
+ </annotation>
192
+ </element>
193
+ </sequence>
194
+ </extension>
195
+ </complexContent>
196
+ </complexType>
197
+ <complexType name="DataAcquisitionAndProcessing_PropertyType">
198
+ <sequence minOccurs="0">
199
+ <element ref="dps:DataAcquisitionAndProcessing"/>
200
+ </sequence>
201
+ <attributeGroup ref="gco:ObjectReference"/>
202
+ <attribute ref="gco:nilReason"/>
203
+ </complexType>
204
+ <element name="DataCapture" type="dps:DataCapture_Type" substitutionGroup="gco:AbstractObject">
205
+ <annotation>
206
+ <documentation>instructions, requirements and/or descriptions of the data capture and
207
+ production for a certain scope</documentation>
208
+ </annotation>
209
+ </element>
210
+ <complexType name="DataCapture_Type">
211
+ <complexContent>
212
+ <extension base="gco:AbstractObject_Type">
213
+ <sequence>
214
+ <element name="dataCaptureStatement" type="gco:CharacterString_PropertyType"
215
+ maxOccurs="unbounded">
216
+ <annotation>
217
+ <documentation>narrative, free text descriptions of the process for the
218
+ capture and production of the data NOTE Shall contain information
219
+ about both capture and production of data.</documentation>
220
+ </annotation>
221
+ </element>
222
+ <element name="guide" type="cit:CI_Citation_PropertyType" minOccurs="0"
223
+ maxOccurs="unbounded">
224
+ <annotation>
225
+ <documentation>reference to document describing the capture of features
226
+ and attributes from source information</documentation>
227
+ </annotation>
228
+ </element>
229
+ <element name="inclusionCriteria" type="gco:CharacterString_PropertyType"
230
+ minOccurs="0" maxOccurs="unbounded">
231
+ <annotation>
232
+ <documentation>logical rules defining when and how features and
233
+ attributes are to be included in the data</documentation>
234
+ </annotation>
235
+ </element>
236
+ <element name="dataAcquisitionAndProcessing"
237
+ type="dps:DataAcquisitionAndProcessing_PropertyType" maxOccurs="unbounded">
238
+ <annotation>
239
+ <documentation>source and/or production process used in producing a data
240
+ product</documentation>
241
+ </annotation>
242
+ </element>
243
+ <element name="dataCaptureScope" type="dps:SpecificationScope_PropertyType">
244
+ <annotation>
245
+ <documentation>scope for the data capture information</documentation>
246
+ </annotation>
247
+ </element>
248
+ </sequence>
249
+ </extension>
250
+ </complexContent>
251
+ </complexType>
252
+ <complexType name="DataCapture_PropertyType">
253
+ <sequence minOccurs="0">
254
+ <element ref="dps:DataCapture"/>
255
+ </sequence>
256
+ <attributeGroup ref="gco:ObjectReference"/>
257
+ <attribute ref="gco:nilReason"/>
258
+ </complexType>
259
+ <element name="DataCaptureSection" type="dps:DataCaptureSection_Type"
260
+ substitutionGroup="gco:AbstractObject">
261
+ <annotation>
262
+ <documentation>place holder for objects specifying instructions, requirements and/or
263
+ descriptions of the data capture and processing</documentation>
264
+ </annotation>
265
+ </element>
266
+ <complexType name="DataCaptureSection_Type">
267
+ <complexContent>
268
+ <extension base="gco:AbstractObject_Type">
269
+ <sequence>
270
+ <element name="dataCapture" type="dps:DataCapture_PropertyType" minOccurs="0"
271
+ maxOccurs="unbounded">
272
+ <annotation>
273
+ <documentation>capture information for a data product</documentation>
274
+ </annotation>
275
+ </element>
276
+ </sequence>
277
+ </extension>
278
+ </complexContent>
279
+ </complexType>
280
+ <complexType name="DataCaptureSection_PropertyType">
281
+ <sequence minOccurs="0">
282
+ <element ref="dps:DataCaptureSection"/>
283
+ </sequence>
284
+ <attributeGroup ref="gco:ObjectReference"/>
285
+ <attribute ref="gco:nilReason"/>
286
+ </complexType>
287
+ <element name="DataContentAndStructure" type="dps:DataContentAndStructure_Type"
288
+ substitutionGroup="gco:AbstractObject">
289
+ <annotation>
290
+ <documentation>provides a feature catalogue, a reference to a feature catalogue or a
291
+ coverage description and optionally an application schema of a part of, specified by
292
+ the specification scope, or the complete data product</documentation>
293
+ </annotation>
294
+ </element>
295
+ <complexType name="DataContentAndStructure_Type">
296
+ <complexContent>
297
+ <extension base="gco:AbstractObject_Type">
298
+ <sequence>
299
+ <element name="narrativeDescription" type="gco:CharacterString_PropertyType">
300
+ <annotation>
301
+ <documentation>overview description of an application schema and/or
302
+ feature catalogue for a specified scope</documentation>
303
+ </annotation>
304
+ </element>
305
+ <element name="applicationSchema"
306
+ type="mas:MD_ApplicationSchemaInformation_PropertyType" minOccurs="0">
307
+ <annotation>
308
+ <documentation>information on how to find resources that represents the
309
+ application schema</documentation>
310
+ </annotation>
311
+ </element>
312
+ <element name="featureCatalogue"
313
+ type="mrc:AbstractMD_ContentInformation_PropertyType" minOccurs="0">
314
+ <annotation>
315
+ <documentation>coverage description or feature catalogue, either by
316
+ listing each feature type according to ISO 19110 (subclass
317
+ MD_FeatureCatalogue of MD_ContentInformation) or as a reference to a
318
+ feature catalogue (using subclass MD_FeatureCatalogueDescription of
319
+ MD_ContentInformation) or, when the data is of coverage type, a
320
+ coverage description (using subclass MD_CoverageDescription of
321
+ MD_ContentInformation)</documentation>
322
+ </annotation>
323
+ </element>
324
+ <element name="contentScope" type="dps:SpecificationScope_PropertyType"/>
325
+ </sequence>
326
+ </extension>
327
+ </complexContent>
328
+ </complexType>
329
+ <complexType name="DataContentAndStructure_PropertyType">
330
+ <sequence minOccurs="0">
331
+ <element ref="dps:DataContentAndStructure"/>
332
+ </sequence>
333
+ <attributeGroup ref="gco:ObjectReference"/>
334
+ <attribute ref="gco:nilReason"/>
335
+ </complexType>
336
+ <element name="DataContentAndStructureSection" type="dps:DataContentAndStructureSection_Type"
337
+ substitutionGroup="gco:AbstractObject">
338
+ <annotation>
339
+ <documentation>place holder for objects specifying the data structure and content of a
340
+ data product</documentation>
341
+ </annotation>
342
+ </element>
343
+ <complexType name="DataContentAndStructureSection_Type">
344
+ <complexContent>
345
+ <extension base="gco:AbstractObject_Type">
346
+ <sequence>
347
+ <element name="content" type="dps:DataContentAndStructure_PropertyType"
348
+ maxOccurs="unbounded">
349
+ <annotation>
350
+ <documentation>content and structure of a data product</documentation>
351
+ </annotation>
352
+ </element>
353
+ </sequence>
354
+ </extension>
355
+ </complexContent>
356
+ </complexType>
357
+ <complexType name="DataContentAndStructureSection_PropertyType">
358
+ <sequence minOccurs="0">
359
+ <element ref="dps:DataContentAndStructureSection"/>
360
+ </sequence>
361
+ <attributeGroup ref="gco:ObjectReference"/>
362
+ <attribute ref="gco:nilReason"/>
363
+ </complexType>
364
+ <element name="DataProductSpecification" type="dps:DataProductSpecification_Type"
365
+ substitutionGroup="gco:AbstractObject">
366
+ <annotation>
367
+ <documentation>represents a single instance of a data product specification. Each
368
+ instance of a data product specification contains a constant set of section objects.
369
+ Where the specification uses the scope feature, to specify different parts of the
370
+ product, each section object relates to exactly one scope</documentation>
371
+ </annotation>
372
+ </element>
373
+ <complexType name="DataProductSpecification_Type">
374
+ <complexContent>
375
+ <extension base="gco:AbstractObject_Type">
376
+ <sequence>
377
+ <element name="overview" type="gco:CharacterString_PropertyType">
378
+ <annotation>
379
+ <documentation>short human-readable, narrative description of the data
380
+ product specification</documentation>
381
+ </annotation>
382
+ </element>
383
+ <element name="specificationDescription"
384
+ type="dps:SpecificationDescription_PropertyType" minOccurs="0">
385
+ <annotation>
386
+ <documentation>metadata about the data product specification NOTE This
387
+ information is not to be confused with what is specified in the
388
+ identification section, which addresses the data product rather than
389
+ its specification.</documentation>
390
+ </annotation>
391
+ </element>
392
+ <element name="portrayalSection" type="dps:PortrayalSection_PropertyType">
393
+ <annotation>
394
+ <documentation>data portrayal section</documentation>
395
+ </annotation>
396
+ </element>
397
+ <element name="identificationSection"
398
+ type="dps:IdentificationSection_PropertyType">
399
+ <annotation>
400
+ <documentation>identification section which identifies the data
401
+ product</documentation>
402
+ </annotation>
403
+ </element>
404
+ <element name="contentAndStructureSection"
405
+ type="dps:DataContentAndStructureSection_PropertyType">
406
+ <annotation>
407
+ <documentation>data content and structure section</documentation>
408
+ </annotation>
409
+ </element>
410
+ <element name="deliverySection" type="dps:DeliverySection_PropertyType">
411
+ <annotation>
412
+ <documentation>data delivery section</documentation>
413
+ </annotation>
414
+ </element>
415
+ <element name="maintenanceSection" type="dps:MaintenanceSection_PropertyType">
416
+ <annotation>
417
+ <documentation>data maintenance section</documentation>
418
+ </annotation>
419
+ </element>
420
+ <element name="scopeSection" type="dps:ScopeSection_PropertyType">
421
+ <annotation>
422
+ <documentation>scope section</documentation>
423
+ </annotation>
424
+ </element>
425
+ <element name="metadataSection" type="dps:MetadataSection_PropertyType">
426
+ <annotation>
427
+ <documentation>metadata section</documentation>
428
+ </annotation>
429
+ </element>
430
+ <element name="additionalInformationSection"
431
+ type="dps:AdditionalInformationSection_PropertyType">
432
+ <annotation>
433
+ <documentation>additional information section</documentation>
434
+ </annotation>
435
+ </element>
436
+ <element name="dataQualitySection" type="dps:DataQualitySection_PropertyType">
437
+ <annotation>
438
+ <documentation>data quality section</documentation>
439
+ </annotation>
440
+ </element>
441
+ <element name="dataCaptureSection" type="dps:DataCaptureSection_PropertyType">
442
+ <annotation>
443
+ <documentation>data capture and production section</documentation>
444
+ </annotation>
445
+ </element>
446
+ <element name="referenceSystemSection"
447
+ type="dps:ReferenceSystemSection_PropertyType">
448
+ <annotation>
449
+ <documentation>reference system section</documentation>
450
+ </annotation>
451
+ </element>
452
+ </sequence>
453
+ </extension>
454
+ </complexContent>
455
+ </complexType>
456
+ <complexType name="DataProductSpecification_PropertyType">
457
+ <sequence minOccurs="0">
458
+ <element ref="dps:DataProductSpecification"/>
459
+ </sequence>
460
+ <attributeGroup ref="gco:ObjectReference"/>
461
+ <attribute ref="gco:nilReason"/>
462
+ </complexType>
463
+ <element name="DataQuality" type="dps:DataQuality_Type" substitutionGroup="gco:AbstractObject">
464
+ <annotation>
465
+ <documentation>specifies the conformance quality levels applicable for a certain
466
+ specification scope</documentation>
467
+ </annotation>
468
+ </element>
469
+ <complexType name="DataQuality_Type">
470
+ <complexContent>
471
+ <extension base="gco:AbstractObject_Type">
472
+ <sequence>
473
+ <element name="dataQuality" type="dps:ConformanceQualityLevel_PropertyType"
474
+ maxOccurs="unbounded">
475
+ <annotation>
476
+ <documentation>specifies the data quality for the specification scope,
477
+ that is, either a conformance quality level or a reason for not
478
+ specifying a certain data quality aspect</documentation>
479
+ </annotation>
480
+ </element>
481
+ <element name="dataQualityScope" type="dps:SpecificationScope_PropertyType">
482
+ <annotation>
483
+ <documentation>scope for the quality information</documentation>
484
+ </annotation>
485
+ </element>
486
+ </sequence>
487
+ </extension>
488
+ </complexContent>
489
+ </complexType>
490
+ <complexType name="DataQuality_PropertyType">
491
+ <sequence minOccurs="0">
492
+ <element ref="dps:DataQuality"/>
493
+ </sequence>
494
+ <attributeGroup ref="gco:ObjectReference"/>
495
+ <attribute ref="gco:nilReason"/>
496
+ </complexType>
497
+ <element name="DataQualitySection" type="dps:DataQualitySection_Type"
498
+ substitutionGroup="gco:AbstractObject">
499
+ <annotation>
500
+ <documentation>place holder for objects specifying conformance quality levels for a data
501
+ product</documentation>
502
+ </annotation>
503
+ </element>
504
+ <complexType name="DataQualitySection_Type">
505
+ <complexContent>
506
+ <extension base="gco:AbstractObject_Type">
507
+ <sequence>
508
+ <element name="dataQuality" type="dps:DataQuality_PropertyType"
509
+ maxOccurs="unbounded">
510
+ <annotation>
511
+ <documentation>conformance quality levels applicable for a certain
512
+ specification scope</documentation>
513
+ </annotation>
514
+ </element>
515
+ </sequence>
516
+ </extension>
517
+ </complexContent>
518
+ </complexType>
519
+ <complexType name="DataQualitySection_PropertyType">
520
+ <sequence minOccurs="0">
521
+ <element ref="dps:DataQualitySection"/>
522
+ </sequence>
523
+ <attributeGroup ref="gco:ObjectReference"/>
524
+ <attribute ref="gco:nilReason"/>
525
+ </complexType>
526
+ <element name="Delivery" type="dps:Delivery_Type" substitutionGroup="gco:AbstractObject">
527
+ <annotation>
528
+ <documentation>delivery information for a certain scope of a data
529
+ product</documentation>
530
+ </annotation>
531
+ </element>
532
+ <complexType name="Delivery_Type">
533
+ <complexContent>
534
+ <extension base="gco:AbstractObject_Type">
535
+ <sequence>
536
+ <element name="deliveryMedium" type="dps:DeliveryMedium_PropertyType"
537
+ maxOccurs="unbounded">
538
+ <annotation>
539
+ <documentation>medium in which the product is delivered</documentation>
540
+ </annotation>
541
+ </element>
542
+ <element name="deliveryScope" type="dps:SpecificationScope_PropertyType">
543
+ <annotation>
544
+ <documentation>scope for the delivery information</documentation>
545
+ </annotation>
546
+ </element>
547
+ <element name="deliveryFormat" type="dps:DeliveryFormat_PropertyType"
548
+ maxOccurs="unbounded">
549
+ <annotation>
550
+ <documentation>format in which the product is delivered</documentation>
551
+ </annotation>
552
+ </element>
553
+ </sequence>
554
+ </extension>
555
+ </complexContent>
556
+ </complexType>
557
+ <complexType name="Delivery_PropertyType">
558
+ <sequence minOccurs="0">
559
+ <element ref="dps:Delivery"/>
560
+ </sequence>
561
+ <attributeGroup ref="gco:ObjectReference"/>
562
+ <attribute ref="gco:nilReason"/>
563
+ </complexType>
564
+ <element name="DeliveryFormat" type="dps:DeliveryFormat_Type"
565
+ substitutionGroup="gco:AbstractObject">
566
+ <annotation>
567
+ <documentation>datatype for description of a data format</documentation>
568
+ </annotation>
569
+ </element>
570
+ <complexType name="DeliveryFormat_Type">
571
+ <complexContent>
572
+ <extension base="gco:AbstractObject_Type">
573
+ <sequence>
574
+ <element name="formatName" type="gco:CharacterString_PropertyType">
575
+ <annotation>
576
+ <documentation>name of the data format</documentation>
577
+ </annotation>
578
+ </element>
579
+ <element name="version" type="gco:CharacterString_PropertyType" minOccurs="0">
580
+ <annotation>
581
+ <documentation>version identification string for the data format
582
+ Example: date, number</documentation>
583
+ </annotation>
584
+ </element>
585
+ <element name="specification" type="gco:CharacterString_PropertyType"
586
+ minOccurs="0">
587
+ <annotation>
588
+ <documentation>name of a subset, profile, or product specification of
589
+ the format</documentation>
590
+ </annotation>
591
+ </element>
592
+ <element name="fileStructure" type="gco:CharacterString_PropertyType"
593
+ minOccurs="0">
594
+ <annotation>
595
+ <documentation>structure of a delivery file</documentation>
596
+ </annotation>
597
+ </element>
598
+ <element name="language" type="lan:LanguageCode_PropertyType"
599
+ maxOccurs="unbounded">
600
+ <annotation>
601
+ <documentation>code for language used within the dataset NOTE The code
602
+ shall be according to ISO 639-2.</documentation>
603
+ </annotation>
604
+ </element>
605
+ <element name="characterSet" type="lan:MD_CharacterSetCode_PropertyType">
606
+ <annotation>
607
+ <documentation>full name of the character coding standard used for the
608
+ dataset</documentation>
609
+ </annotation>
610
+ </element>
611
+ </sequence>
612
+ </extension>
613
+ </complexContent>
614
+ </complexType>
615
+ <complexType name="DeliveryFormat_PropertyType">
616
+ <sequence minOccurs="0">
617
+ <element ref="dps:DeliveryFormat"/>
618
+ </sequence>
619
+ <attributeGroup ref="gco:ObjectReference"/>
620
+ <attribute ref="gco:nilReason"/>
621
+ </complexType>
622
+ <element name="DeliveryMedium" type="dps:DeliveryMedium_Type"
623
+ substitutionGroup="gco:AbstractObject">
624
+ <annotation>
625
+ <documentation>datatype for description of physical storage media and on-line services
626
+ for delivery of data</documentation>
627
+ </annotation>
628
+ </element>
629
+ <complexType name="DeliveryMedium_Type">
630
+ <complexContent>
631
+ <extension base="gco:AbstractObject_Type">
632
+ <sequence>
633
+ <element name="unitsOfDelivery" type="gco:CharacterString_PropertyType">
634
+ <annotation>
635
+ <documentation>description of the units of delivery Example tiles,
636
+ layers, geographic areas</documentation>
637
+ </annotation>
638
+ </element>
639
+ <element name="transferSize" type="gco:Real_PropertyType" minOccurs="0">
640
+ <annotation>
641
+ <documentation>estimated size of a unit in the specified format,
642
+ expressed in Mbytes</documentation>
643
+ </annotation>
644
+ </element>
645
+ <element name="mediumName" type="gco:CharacterString_PropertyType" minOccurs="0">
646
+ <annotation>
647
+ <documentation>name of the data medium</documentation>
648
+ </annotation>
649
+ </element>
650
+ <element name="otherDeliveryInformation" type="gco:CharacterString_PropertyType"
651
+ minOccurs="0">
652
+ <annotation>
653
+ <documentation>other information about the delivery
654
+ method</documentation>
655
+ </annotation>
656
+ </element>
657
+ <element name="serviceProperty" type="dps:ServiceProperty_PropertyType"
658
+ minOccurs="0" maxOccurs="unbounded">
659
+ <annotation>
660
+ <documentation>delivery service as a set of key-value
661
+ pairs</documentation>
662
+ </annotation>
663
+ </element>
664
+ </sequence>
665
+ </extension>
666
+ </complexContent>
667
+ </complexType>
668
+ <complexType name="DeliveryMedium_PropertyType">
669
+ <sequence minOccurs="0">
670
+ <element ref="dps:DeliveryMedium"/>
671
+ </sequence>
672
+ <attributeGroup ref="gco:ObjectReference"/>
673
+ <attribute ref="gco:nilReason"/>
674
+ </complexType>
675
+ <element name="DeliverySection" type="dps:DeliverySection_Type"
676
+ substitutionGroup="gco:AbstractObject">
677
+ <annotation>
678
+ <documentation>place holder for objects specifying how datasets are
679
+ delivered</documentation>
680
+ </annotation>
681
+ </element>
682
+ <complexType name="DeliverySection_Type">
683
+ <complexContent>
684
+ <extension base="gco:AbstractObject_Type">
685
+ <sequence>
686
+ <element name="delivery" type="dps:Delivery_PropertyType" minOccurs="0"
687
+ maxOccurs="unbounded">
688
+ <annotation>
689
+ <documentation>delivery information for a data product</documentation>
690
+ </annotation>
691
+ </element>
692
+ </sequence>
693
+ </extension>
694
+ </complexContent>
695
+ </complexType>
696
+ <complexType name="DeliverySection_PropertyType">
697
+ <sequence minOccurs="0">
698
+ <element ref="dps:DeliverySection"/>
699
+ </sequence>
700
+ <attributeGroup ref="gco:ObjectReference"/>
701
+ <attribute ref="gco:nilReason"/>
702
+ </complexType>
703
+ <element name="IdentificationSection" type="dps:IdentificationSection_Type"
704
+ substitutionGroup="gco:AbstractObject">
705
+ <annotation>
706
+ <documentation>for a data product there is a single object of the Identification class
707
+ and with a content that provides various ways of identifying, searching and
708
+ categorizing the data product</documentation>
709
+ </annotation>
710
+ </element>
711
+ <complexType name="IdentificationSection_Type">
712
+ <complexContent>
713
+ <extension base="gco:AbstractObject_Type">
714
+ <sequence>
715
+ <element name="title" type="gco:CharacterString_PropertyType">
716
+ <annotation>
717
+ <documentation>official designation of the data product</documentation>
718
+ </annotation>
719
+ </element>
720
+ <element name="altTitle" type="gco:CharacterString_PropertyType" minOccurs="0"
721
+ maxOccurs="unbounded">
722
+ <annotation>
723
+ <documentation>name, other than the official designation, by which the
724
+ data product is known</documentation>
725
+ </annotation>
726
+ </element>
727
+ <element name="abstract" type="gco:CharacterString_PropertyType">
728
+ <annotation>
729
+ <documentation>brief narrative summary of the content of the data
730
+ product</documentation>
731
+ </annotation>
732
+ </element>
733
+ <element name="purpose" type="dps:Purpose_PropertyType" minOccurs="0">
734
+ <annotation>
735
+ <documentation>intentions with which the data product is
736
+ developed</documentation>
737
+ </annotation>
738
+ </element>
739
+ <element name="topicCategory" type="mri:MD_TopicCategoryCode_PropertyType"
740
+ maxOccurs="unbounded">
741
+ <annotation>
742
+ <documentation>theme applicable to the data product</documentation>
743
+ </annotation>
744
+ </element>
745
+ <element name="spatialRepresentationType"
746
+ type="mcc:MD_SpatialRepresentationTypeCode_PropertyType" minOccurs="0"
747
+ maxOccurs="unbounded">
748
+ <annotation>
749
+ <documentation>form of spatial representation in the data product NOTE
750
+ An example of form of the spatial representation is vector
751
+ data.</documentation>
752
+ </annotation>
753
+ </element>
754
+ <element name="spatialResolution" type="mri:MD_Resolution_Type" minOccurs="0"
755
+ maxOccurs="unbounded">
756
+ <annotation>
757
+ <documentation>factor which provides a general understanding of the
758
+ density of spatial data</documentation>
759
+ </annotation>
760
+ </element>
761
+ <element name="supplementalInformation" type="gco:CharacterString_PropertyType"
762
+ minOccurs="0">
763
+ <annotation>
764
+ <documentation>any other descriptive information about the data
765
+ product</documentation>
766
+ </annotation>
767
+ </element>
768
+ <element name="uniqueId" type="gco:CharacterString_PropertyType" minOccurs="0">
769
+ <annotation>
770
+ <documentation>persistent uniform resource identifier for identifying
771
+ the data product</documentation>
772
+ </annotation>
773
+ </element>
774
+ <element name="keyword" type="mri:MD_Keywords_Type" minOccurs="0"
775
+ maxOccurs="unbounded">
776
+ <annotation>
777
+ <documentation>word, formalised word or phrase that is used to describe
778
+ the subject of the data product</documentation>
779
+ </annotation>
780
+ </element>
781
+ <element name="restriction" type="mco:MD_Constraints_PropertyType" minOccurs="0"
782
+ maxOccurs="unbounded">
783
+ <annotation>
784
+ <documentation>classification code describing a handling restriction on
785
+ the data product</documentation>
786
+ </annotation>
787
+ </element>
788
+ <element name="extent" type="gex:EX_Extent_PropertyType" maxOccurs="unbounded">
789
+ <annotation>
790
+ <documentation>extent of geographic area and temporal extent covered by
791
+ the data product</documentation>
792
+ </annotation>
793
+ </element>
794
+ </sequence>
795
+ </extension>
796
+ </complexContent>
797
+ </complexType>
798
+ <complexType name="IdentificationSection_PropertyType">
799
+ <sequence minOccurs="0">
800
+ <element ref="dps:IdentificationSection"/>
801
+ </sequence>
802
+ <attributeGroup ref="gco:ObjectReference"/>
803
+ <attribute ref="gco:nilReason"/>
804
+ </complexType>
805
+ <element name="Maintenance" type="dps:Maintenance_Type" substitutionGroup="gco:AbstractObject">
806
+ <annotation>
807
+ <documentation>maintenance information for a certain specification scope of a data
808
+ product</documentation>
809
+ </annotation>
810
+ </element>
811
+ <complexType name="Maintenance_Type">
812
+ <complexContent>
813
+ <extension base="gco:AbstractObject_Type">
814
+ <sequence>
815
+ <element name="maintenanceAndUpdateStatement"
816
+ type="gco:CharacterString_PropertyType" maxOccurs="unbounded">
817
+ <annotation>
818
+ <documentation>narrative, free text descriptions of the process for the
819
+ maintenance of the data</documentation>
820
+ </annotation>
821
+ </element>
822
+ <element name="maintenanceAndUpdateFrequency"
823
+ type="dps:MaintenanceAndUpdateFrequency_PropertyType" minOccurs="0">
824
+ <annotation>
825
+ <documentation>frequency with which changes and additions are made to
826
+ the data product</documentation>
827
+ </annotation>
828
+ </element>
829
+ <element name="maintenanceScope" type="dps:SpecificationScope_PropertyType">
830
+ <annotation>
831
+ <documentation>scope for the maintenance information</documentation>
832
+ </annotation>
833
+ </element>
834
+ </sequence>
835
+ </extension>
836
+ </complexContent>
837
+ </complexType>
838
+ <complexType name="Maintenance_PropertyType">
839
+ <sequence minOccurs="0">
840
+ <element ref="dps:Maintenance"/>
841
+ </sequence>
842
+ <attributeGroup ref="gco:ObjectReference"/>
843
+ <attribute ref="gco:nilReason"/>
844
+ </complexType>
845
+ <element name="MaintenanceAndUpdateFrequency" type="dps:MaintenanceAndUpdateFrequency_Type">
846
+ <annotation>
847
+ <documentation>frequency with which changes and additions are made to the data
848
+ product</documentation>
849
+ </annotation>
850
+ </element>
851
+ <complexType name="MaintenanceAndUpdateFrequency_Type">
852
+ <choice>
853
+ <element name="maintenanceAndUpdateFrequency"
854
+ type="mmi:MD_MaintenanceFrequencyCode_PropertyType" minOccurs="0">
855
+ <annotation>
856
+ <documentation>code that specifies the frequency with which changes and
857
+ additions are made to the data product NOTE If none of the predefined codes
858
+ in MD_MaintenanceFrequencyCode matches the update frequency for the data
859
+ product, the attribute userDefinedMaintenanceAndUpdateFrequency should be
860
+ used.</documentation>
861
+ </annotation>
862
+ </element>
863
+ <element name="userDefinedMaintenanceAndUpdateFrequency"
864
+ type="gco:TM_PeriodDuration_PropertyType" minOccurs="0">
865
+ <annotation>
866
+ <documentation>period of time with which changes and additions are made to the
867
+ data product NOTE This attribute should only be used if none of the
868
+ predefined codes in MD_MaintenanceFrequencyCode can be used.</documentation>
869
+ </annotation>
870
+ </element>
871
+ </choice>
872
+ </complexType>
873
+ <complexType name="MaintenanceAndUpdateFrequency_PropertyType">
874
+ <sequence minOccurs="0">
875
+ <element ref="dps:MaintenanceAndUpdateFrequency"/>
876
+ </sequence>
877
+ <attribute ref="gco:nilReason"/>
878
+ </complexType>
879
+ <element name="MaintenanceSection" type="dps:MaintenanceSection_Type"
880
+ substitutionGroup="gco:AbstractObject">
881
+ <annotation>
882
+ <documentation>place holder for objects specifying maintenance information about a data
883
+ product</documentation>
884
+ </annotation>
885
+ </element>
886
+ <complexType name="MaintenanceSection_Type">
887
+ <complexContent>
888
+ <extension base="gco:AbstractObject_Type">
889
+ <sequence>
890
+ <element name="maintenance" type="dps:Maintenance_PropertyType" minOccurs="0"
891
+ maxOccurs="unbounded">
892
+ <annotation>
893
+ <documentation>maintenance information for the data
894
+ product</documentation>
895
+ </annotation>
896
+ </element>
897
+ </sequence>
898
+ </extension>
899
+ </complexContent>
900
+ </complexType>
901
+ <complexType name="MaintenanceSection_PropertyType">
902
+ <sequence minOccurs="0">
903
+ <element ref="dps:MaintenanceSection"/>
904
+ </sequence>
905
+ <attributeGroup ref="gco:ObjectReference"/>
906
+ <attribute ref="gco:nilReason"/>
907
+ </complexType>
908
+ <element name="Metadata" type="dps:Metadata_Type" substitutionGroup="gco:AbstractObject">
909
+ <annotation>
910
+ <documentation>holds an instruction of how to use a set of metadata elements and the
911
+ specification scope for which the instruction is applicable</documentation>
912
+ </annotation>
913
+ </element>
914
+ <complexType name="Metadata_Type">
915
+ <complexContent>
916
+ <extension base="gco:AbstractObject_Type">
917
+ <sequence>
918
+ <element name="specification" type="cit:CI_Citation_PropertyType">
919
+ <annotation>
920
+ <documentation>specifies a standard, a standard profile or other
921
+ specification to be used as a base for the metadata</documentation>
922
+ </annotation>
923
+ </element>
924
+ <element name="element" type="dps:MetadataElement_PropertyType" minOccurs="0"
925
+ maxOccurs="unbounded">
926
+ <annotation>
927
+ <documentation>provides information on how to use specific metadata
928
+ elements defined by the selected standard, standard profile or
929
+ specification</documentation>
930
+ </annotation>
931
+ </element>
932
+ <element name="encoding" type="cit:CI_Citation_PropertyType" minOccurs="0">
933
+ <annotation>
934
+ <documentation>format and/or encoding for the metadata</documentation>
935
+ </annotation>
936
+ </element>
937
+ <element name="metadataScope" type="dps:SpecificationScope_PropertyType">
938
+ <annotation>
939
+ <documentation>scope for the metadata information</documentation>
940
+ </annotation>
941
+ </element>
942
+ </sequence>
943
+ </extension>
944
+ </complexContent>
945
+ </complexType>
946
+ <complexType name="Metadata_PropertyType">
947
+ <sequence minOccurs="0">
948
+ <element ref="dps:Metadata"/>
949
+ </sequence>
950
+ <attributeGroup ref="gco:ObjectReference"/>
951
+ <attribute ref="gco:nilReason"/>
952
+ </complexType>
953
+ <element name="MetadataElement" type="dps:MetadataElement_Type"
954
+ substitutionGroup="gco:AbstractObject">
955
+ <annotation>
956
+ <documentation>datatype for specification of the application of a single metadata
957
+ element</documentation>
958
+ </annotation>
959
+ </element>
960
+ <complexType name="MetadataElement_Type">
961
+ <complexContent>
962
+ <extension base="gco:AbstractObject_Type">
963
+ <sequence>
964
+ <element name="name" type="gco:CharacterString_PropertyType">
965
+ <annotation>
966
+ <documentation>identity of the metadata element</documentation>
967
+ </annotation>
968
+ </element>
969
+ <element name="application" type="gco:CharacterString_PropertyType">
970
+ <annotation>
971
+ <documentation>application of the metadata element NOTE The attribute
972
+ may for example specify elements that are required or code lists to
973
+ be used.</documentation>
974
+ </annotation>
975
+ </element>
976
+ </sequence>
977
+ </extension>
978
+ </complexContent>
979
+ </complexType>
980
+ <complexType name="MetadataElement_PropertyType">
981
+ <sequence minOccurs="0">
982
+ <element ref="dps:MetadataElement"/>
983
+ </sequence>
984
+ <attributeGroup ref="gco:ObjectReference"/>
985
+ <attribute ref="gco:nilReason"/>
986
+ </complexType>
987
+ <element name="MetadataSection" type="dps:MetadataSection_Type"
988
+ substitutionGroup="gco:AbstractObject">
989
+ <annotation>
990
+ <documentation>place holder for objects specifying metadata for datasets</documentation>
991
+ </annotation>
992
+ </element>
993
+ <complexType name="MetadataSection_Type">
994
+ <complexContent>
995
+ <extension base="gco:AbstractObject_Type">
996
+ <sequence>
997
+ <element name="metadata" type="dps:Metadata_PropertyType" maxOccurs="unbounded">
998
+ <annotation>
999
+ <documentation>metadata information for the data product</documentation>
1000
+ </annotation>
1001
+ </element>
1002
+ </sequence>
1003
+ </extension>
1004
+ </complexContent>
1005
+ </complexType>
1006
+ <complexType name="MetadataSection_PropertyType">
1007
+ <sequence minOccurs="0">
1008
+ <element ref="dps:MetadataSection"/>
1009
+ </sequence>
1010
+ <attributeGroup ref="gco:ObjectReference"/>
1011
+ <attribute ref="gco:nilReason"/>
1012
+ </complexType>
1013
+ <element name="Portrayal" type="dps:Portrayal_Type" substitutionGroup="gco:AbstractObject">
1014
+ <annotation>
1015
+ <documentation>portrayal information for a certain specification scope of the data
1016
+ product</documentation>
1017
+ </annotation>
1018
+ </element>
1019
+ <complexType name="Portrayal_Type">
1020
+ <complexContent>
1021
+ <extension base="gco:AbstractObject_Type">
1022
+ <sequence>
1023
+ <element name="portrayalCatalogueCitation" type="cit:CI_Citation_PropertyType"
1024
+ maxOccurs="unbounded">
1025
+ <annotation>
1026
+ <documentation>bibliographic reference to a portrayal
1027
+ specification</documentation>
1028
+ </annotation>
1029
+ </element>
1030
+ <element name="portrayalScope" type="dps:SpecificationScope_PropertyType">
1031
+ <annotation>
1032
+ <documentation>scope for the portrayal information</documentation>
1033
+ </annotation>
1034
+ </element>
1035
+ </sequence>
1036
+ </extension>
1037
+ </complexContent>
1038
+ </complexType>
1039
+ <complexType name="Portrayal_PropertyType">
1040
+ <sequence minOccurs="0">
1041
+ <element ref="dps:Portrayal"/>
1042
+ </sequence>
1043
+ <attributeGroup ref="gco:ObjectReference"/>
1044
+ <attribute ref="gco:nilReason"/>
1045
+ </complexType>
1046
+ <element name="PortrayalSection" type="dps:PortrayalSection_Type"
1047
+ substitutionGroup="gco:AbstractObject">
1048
+ <annotation>
1049
+ <documentation>place holder for objects specifying portrayal information of a data
1050
+ product</documentation>
1051
+ </annotation>
1052
+ </element>
1053
+ <complexType name="PortrayalSection_Type">
1054
+ <complexContent>
1055
+ <extension base="gco:AbstractObject_Type">
1056
+ <sequence>
1057
+ <element name="portrayal" type="dps:Portrayal_PropertyType" minOccurs="0"
1058
+ maxOccurs="unbounded">
1059
+ <annotation>
1060
+ <documentation>portrayal information for a data product</documentation>
1061
+ </annotation>
1062
+ </element>
1063
+ </sequence>
1064
+ </extension>
1065
+ </complexContent>
1066
+ </complexType>
1067
+ <complexType name="PortrayalSection_PropertyType">
1068
+ <sequence minOccurs="0">
1069
+ <element ref="dps:PortrayalSection"/>
1070
+ </sequence>
1071
+ <attributeGroup ref="gco:ObjectReference"/>
1072
+ <attribute ref="gco:nilReason"/>
1073
+ </complexType>
1074
+ <element name="Purpose" type="dps:Purpose_Type" substitutionGroup="gco:AbstractObject">
1075
+ <annotation>
1076
+ <documentation>information regarding the intentions with which the data product is
1077
+ developed. Information can be provided in form of a summary. In addition use cases
1078
+ may be added in order to provide purpose information in a more structured
1079
+ way</documentation>
1080
+ </annotation>
1081
+ </element>
1082
+ <complexType name="Purpose_Type">
1083
+ <complexContent>
1084
+ <extension base="gco:AbstractObject_Type">
1085
+ <sequence>
1086
+ <element name="useCase" type="dps:UseCase_PropertyType" minOccurs="0"
1087
+ maxOccurs="unbounded">
1088
+ <annotation>
1089
+ <documentation>detailed and structured description of a use case for the
1090
+ data product</documentation>
1091
+ </annotation>
1092
+ </element>
1093
+ <element name="summary" type="gco:CharacterString_PropertyType">
1094
+ <annotation>
1095
+ <documentation>summary of the intentions with which the data product is
1096
+ developed</documentation>
1097
+ </annotation>
1098
+ </element>
1099
+ </sequence>
1100
+ </extension>
1101
+ </complexContent>
1102
+ </complexType>
1103
+ <complexType name="Purpose_PropertyType">
1104
+ <sequence minOccurs="0">
1105
+ <element ref="dps:Purpose"/>
1106
+ </sequence>
1107
+ <attributeGroup ref="gco:ObjectReference"/>
1108
+ <attribute ref="gco:nilReason"/>
1109
+ </complexType>
1110
+ <element name="ReferenceSystem" type="dps:ReferenceSystem_Type"
1111
+ substitutionGroup="gco:AbstractObject">
1112
+ <annotation>
1113
+ <documentation>spatial, and optionally the temporal, reference system used for a certain
1114
+ specification scope</documentation>
1115
+ </annotation>
1116
+ </element>
1117
+ <complexType name="ReferenceSystem_Type">
1118
+ <complexContent>
1119
+ <extension base="gco:AbstractObject_Type">
1120
+ <sequence>
1121
+ <element name="spatialReferenceSystem"
1122
+ type="mrs:MD_ReferenceSystem_PropertyType">
1123
+ <annotation>
1124
+ <documentation>identifier of a spatial reference system used for the
1125
+ specified specification scope</documentation>
1126
+ </annotation>
1127
+ </element>
1128
+ <element name="temporalReferenceSystem"
1129
+ type="mrs:MD_ReferenceSystem_PropertyType" minOccurs="0">
1130
+ <annotation>
1131
+ <documentation>identifier of a temporal reference system used for the
1132
+ specified specification scope</documentation>
1133
+ </annotation>
1134
+ </element>
1135
+ <element name="referenceSystemScope" type="dps:SpecificationScope_PropertyType"
1136
+ />
1137
+ </sequence>
1138
+ </extension>
1139
+ </complexContent>
1140
+ </complexType>
1141
+ <complexType name="ReferenceSystem_PropertyType">
1142
+ <sequence minOccurs="0">
1143
+ <element ref="dps:ReferenceSystem"/>
1144
+ </sequence>
1145
+ <attributeGroup ref="gco:ObjectReference"/>
1146
+ <attribute ref="gco:nilReason"/>
1147
+ </complexType>
1148
+ <element name="ReferenceSystemSection" type="dps:ReferenceSystemSection_Type"
1149
+ substitutionGroup="gco:AbstractObject">
1150
+ <annotation>
1151
+ <documentation>place holder for objects specifying the spatial and temporal reference
1152
+ systems used in a data product</documentation>
1153
+ </annotation>
1154
+ </element>
1155
+ <complexType name="ReferenceSystemSection_Type">
1156
+ <complexContent>
1157
+ <extension base="gco:AbstractObject_Type">
1158
+ <sequence>
1159
+ <element name="referenceSystem" type="dps:ReferenceSystem_PropertyType"
1160
+ maxOccurs="unbounded">
1161
+ <annotation>
1162
+ <documentation>reference system used</documentation>
1163
+ </annotation>
1164
+ </element>
1165
+ </sequence>
1166
+ </extension>
1167
+ </complexContent>
1168
+ </complexType>
1169
+ <complexType name="ReferenceSystemSection_PropertyType">
1170
+ <sequence minOccurs="0">
1171
+ <element ref="dps:ReferenceSystemSection"/>
1172
+ </sequence>
1173
+ <attributeGroup ref="gco:ObjectReference"/>
1174
+ <attribute ref="gco:nilReason"/>
1175
+ </complexType>
1176
+ <element name="ScopeSection" type="dps:ScopeSection_Type" substitutionGroup="gco:AbstractObject">
1177
+ <annotation>
1178
+ <documentation>place holder for objects specifying the scopes of the data
1179
+ product</documentation>
1180
+ </annotation>
1181
+ </element>
1182
+ <complexType name="ScopeSection_Type">
1183
+ <complexContent>
1184
+ <extension base="gco:AbstractObject_Type">
1185
+ <sequence>
1186
+ <element name="scope" type="dps:SpecificationScope_PropertyType"
1187
+ maxOccurs="unbounded">
1188
+ <annotation>
1189
+ <documentation>scope addressing a certain part of content of a data
1190
+ product</documentation>
1191
+ </annotation>
1192
+ </element>
1193
+ </sequence>
1194
+ </extension>
1195
+ </complexContent>
1196
+ </complexType>
1197
+ <complexType name="ScopeSection_PropertyType">
1198
+ <sequence minOccurs="0">
1199
+ <element ref="dps:ScopeSection"/>
1200
+ </sequence>
1201
+ <attributeGroup ref="gco:ObjectReference"/>
1202
+ <attribute ref="gco:nilReason"/>
1203
+ </complexType>
1204
+ <element name="ServiceProperty" type="dps:ServiceProperty_Type"
1205
+ substitutionGroup="gco:AbstractObject">
1206
+ <annotation>
1207
+ <documentation>datatype describing a property of a service by providing the type of
1208
+ property and the value of that property NOTE Interface standards like WFS, WMS and
1209
+ WCS define a set of request parameters that may be used as service properties.
1210
+ Examples are SERVICE, VERSION and LAYERS.</documentation>
1211
+ </annotation>
1212
+ </element>
1213
+ <complexType name="ServiceProperty_Type">
1214
+ <complexContent>
1215
+ <extension base="gco:AbstractObject_Type">
1216
+ <sequence>
1217
+ <element name="type" type="gco:CharacterString_PropertyType">
1218
+ <annotation>
1219
+ <documentation>property that characterizes the service</documentation>
1220
+ </annotation>
1221
+ </element>
1222
+ <element name="value" type="gco:CharacterString_PropertyType">
1223
+ <annotation>
1224
+ <documentation>text that is the value of the property</documentation>
1225
+ </annotation>
1226
+ </element>
1227
+ <element name="note" type="gco:CharacterString_PropertyType" minOccurs="0">
1228
+ <annotation>
1229
+ <documentation>other information about the specific service
1230
+ property</documentation>
1231
+ </annotation>
1232
+ </element>
1233
+ </sequence>
1234
+ </extension>
1235
+ </complexContent>
1236
+ </complexType>
1237
+ <complexType name="ServiceProperty_PropertyType">
1238
+ <sequence minOccurs="0">
1239
+ <element ref="dps:ServiceProperty"/>
1240
+ </sequence>
1241
+ <attributeGroup ref="gco:ObjectReference"/>
1242
+ <attribute ref="gco:nilReason"/>
1243
+ </complexType>
1244
+ <element name="SpecificationDescription" type="dps:SpecificationDescription_Type"
1245
+ substitutionGroup="gco:AbstractObject">
1246
+ <annotation>
1247
+ <documentation>datatype for identification and description of the data product
1248
+ specification</documentation>
1249
+ </annotation>
1250
+ </element>
1251
+ <complexType name="SpecificationDescription_Type">
1252
+ <complexContent>
1253
+ <extension base="gco:AbstractObject_Type">
1254
+ <sequence>
1255
+ <element name="title" type="gco:CharacterString_PropertyType">
1256
+ <annotation>
1257
+ <documentation>the official designation of the data product
1258
+ specification</documentation>
1259
+ </annotation>
1260
+ </element>
1261
+ <element name="versionedId" type="anyURI" minOccurs="0">
1262
+ <annotation>
1263
+ <documentation>a persistent uniform resource identifier for identifying
1264
+ this version of the data product specification</documentation>
1265
+ </annotation>
1266
+ </element>
1267
+ <element name="id" type="anyURI" minOccurs="0">
1268
+ <annotation>
1269
+ <documentation>a persistent uniform resource identifier for identifying
1270
+ the latest version of the data product specification</documentation>
1271
+ </annotation>
1272
+ </element>
1273
+ <element name="date" type="cit:CI_Date_PropertyType" minOccurs="0"
1274
+ maxOccurs="unbounded">
1275
+ <annotation>
1276
+ <documentation>date for a significant event in the life cycle of the
1277
+ data product specification NOTE Such events include when the data
1278
+ product specification was created, changed, approved and
1279
+ published.</documentation>
1280
+ </annotation>
1281
+ </element>
1282
+ <element name="language" type="lan:LanguageCode_PropertyType">
1283
+ <annotation>
1284
+ <documentation>language code according to ISO 639-2 for the language
1285
+ that is used in the data product specification NOTE To provide a
1286
+ data product specification in more than one languages, there has to
1287
+ be a specification instance for each language.</documentation>
1288
+ </annotation>
1289
+ </element>
1290
+ <element name="contact" type="cit:CI_Responsibility_PropertyType" minOccurs="0">
1291
+ <annotation>
1292
+ <documentation>contact information for the party that is responsible for
1293
+ the data product specification</documentation>
1294
+ </annotation>
1295
+ </element>
1296
+ <element name="webLocation" type="anyURI" minOccurs="0">
1297
+ <annotation>
1298
+ <documentation>URL for a web site location where the data product
1299
+ specification can be downloaded</documentation>
1300
+ </annotation>
1301
+ </element>
1302
+ <element name="format" type="gco:CharacterString_PropertyType"
1303
+ maxOccurs="unbounded">
1304
+ <annotation>
1305
+ <documentation>file format in which the data product specification is
1306
+ provided</documentation>
1307
+ </annotation>
1308
+ </element>
1309
+ <element name="handlingRestriction"
1310
+ type="mco:MD_ClassificationCode_PropertyType" minOccurs="0">
1311
+ <annotation>
1312
+ <documentation>classification code specifying limitations on handling
1313
+ the data product specification</documentation>
1314
+ </annotation>
1315
+ </element>
1316
+ <element name="maintenance" type="gco:CharacterString_PropertyType"
1317
+ minOccurs="0">
1318
+ <annotation>
1319
+ <documentation>narrative description of the maintenance regime for the
1320
+ data product specification</documentation>
1321
+ </annotation>
1322
+ </element>
1323
+ <element name="term" type="dps:TermEntry_PropertyType" minOccurs="0"
1324
+ maxOccurs="unbounded">
1325
+ <annotation>
1326
+ <documentation>word or expression that is applicable to the data product
1327
+ specification</documentation>
1328
+ </annotation>
1329
+ </element>
1330
+ <element name="abbreviation" type="dps:AbbreviationEntry_PropertyType"
1331
+ minOccurs="0" maxOccurs="unbounded">
1332
+ <annotation>
1333
+ <documentation>shortened form of a written word or phrase that is
1334
+ applicable to the data product specification</documentation>
1335
+ </annotation>
1336
+ </element>
1337
+ </sequence>
1338
+ </extension>
1339
+ </complexContent>
1340
+ </complexType>
1341
+ <complexType name="SpecificationDescription_PropertyType">
1342
+ <sequence minOccurs="0">
1343
+ <element ref="dps:SpecificationDescription"/>
1344
+ </sequence>
1345
+ <attributeGroup ref="gco:ObjectReference"/>
1346
+ <attribute ref="gco:nilReason"/>
1347
+ </complexType>
1348
+ <element name="SpecificationScope" type="dps:SpecificationScope_Type"
1349
+ substitutionGroup="gco:AbstractObject">
1350
+ <annotation>
1351
+ <documentation>specification scope of a certain part of the content of the data
1352
+ product</documentation>
1353
+ </annotation>
1354
+ </element>
1355
+ <complexType name="SpecificationScope_Type">
1356
+ <complexContent>
1357
+ <extension base="gco:AbstractObject_Type">
1358
+ <sequence>
1359
+ <element name="scopeIdentification" type="gco:CharacterString_PropertyType">
1360
+ <annotation>
1361
+ <documentation>short descriptive name for identification of the
1362
+ specification scope of a data product specification</documentation>
1363
+ </annotation>
1364
+ </element>
1365
+ <element name="level" type="mcc:MD_ScopeCode_PropertyType" minOccurs="0">
1366
+ <annotation>
1367
+ <documentation>hierarchical level (by code) of the data adressed by the
1368
+ specification scope</documentation>
1369
+ </annotation>
1370
+ </element>
1371
+ <element name="levelName" type="gco:CharacterString_PropertyType" minOccurs="0">
1372
+ <annotation>
1373
+ <documentation>descriptive name of the hierarchical
1374
+ level</documentation>
1375
+ </annotation>
1376
+ </element>
1377
+ <element name="levelDescription" type="gco:CharacterString_PropertyType"
1378
+ minOccurs="0" maxOccurs="unbounded">
1379
+ <annotation>
1380
+ <documentation>narrative and detailed description of the level of the
1381
+ data specified by the specification scope</documentation>
1382
+ </annotation>
1383
+ </element>
1384
+ <element name="extent" type="gex:EX_Extent_PropertyType" minOccurs="0">
1385
+ <annotation>
1386
+ <documentation>spatial, vertical and temporal extent of the data
1387
+ specified by the specification scope</documentation>
1388
+ </annotation>
1389
+ </element>
1390
+ <element name="coverage" type="gco:CharacterString_PropertyType" minOccurs="0"
1391
+ maxOccurs="unbounded">
1392
+ <annotation>
1393
+ <documentation>coverages to which the information
1394
+ applies</documentation>
1395
+ </annotation>
1396
+ </element>
1397
+ </sequence>
1398
+ </extension>
1399
+ </complexContent>
1400
+ </complexType>
1401
+ <complexType name="SpecificationScope_PropertyType">
1402
+ <sequence minOccurs="0">
1403
+ <element ref="dps:SpecificationScope"/>
1404
+ </sequence>
1405
+ <attributeGroup ref="gco:ObjectReference"/>
1406
+ <attribute ref="gco:nilReason"/>
1407
+ </complexType>
1408
+ <element name="TermEntry" type="dps:TermEntry_Type" substitutionGroup="gco:AbstractObject">
1409
+ <annotation>
1410
+ <documentation>datatype for definition of a term</documentation>
1411
+ </annotation>
1412
+ </element>
1413
+ <complexType name="TermEntry_Type">
1414
+ <complexContent>
1415
+ <extension base="gco:AbstractObject_Type">
1416
+ <sequence>
1417
+ <element name="term" type="gco:CharacterString_PropertyType">
1418
+ <annotation>
1419
+ <documentation>the term to be used for a concept</documentation>
1420
+ </annotation>
1421
+ </element>
1422
+ <element name="definition" type="gco:CharacterString_PropertyType">
1423
+ <annotation>
1424
+ <documentation>representation of a concept by a descriptive statement
1425
+ which serves to differentiate it from related
1426
+ concepts</documentation>
1427
+ </annotation>
1428
+ </element>
1429
+ <element name="note" type="gco:CharacterString_PropertyType" minOccurs="0"
1430
+ maxOccurs="unbounded">
1431
+ <annotation>
1432
+ <documentation>notes of the concept</documentation>
1433
+ </annotation>
1434
+ </element>
1435
+ <element name="termReference" type="anyURI" minOccurs="0" maxOccurs="unbounded">
1436
+ <annotation>
1437
+ <documentation>reference to an entry in a repository</documentation>
1438
+ </annotation>
1439
+ </element>
1440
+ </sequence>
1441
+ </extension>
1442
+ </complexContent>
1443
+ </complexType>
1444
+ <complexType name="TermEntry_PropertyType">
1445
+ <sequence minOccurs="0">
1446
+ <element ref="dps:TermEntry"/>
1447
+ </sequence>
1448
+ <attributeGroup ref="gco:ObjectReference"/>
1449
+ <attribute ref="gco:nilReason"/>
1450
+ </complexType>
1451
+ <element name="UseCase" type="dps:UseCase_Type" substitutionGroup="gco:AbstractObject">
1452
+ <annotation>
1453
+ <documentation>detailed documentation of the data product's purpose related to certain
1454
+ user needs</documentation>
1455
+ </annotation>
1456
+ </element>
1457
+ <complexType name="UseCase_Type">
1458
+ <complexContent>
1459
+ <extension base="gco:AbstractObject_Type">
1460
+ <sequence>
1461
+ <element name="name" type="gco:CharacterString_PropertyType">
1462
+ <annotation>
1463
+ <documentation>name of the use case</documentation>
1464
+ </annotation>
1465
+ </element>
1466
+ <element name="version" type="gco:CharacterString_PropertyType" minOccurs="0">
1467
+ <annotation>
1468
+ <documentation>version number of the use case</documentation>
1469
+ </annotation>
1470
+ </element>
1471
+ <element name="summary" type="gco:CharacterString_PropertyType">
1472
+ <annotation>
1473
+ <documentation>comprehensive textual description of the use
1474
+ case</documentation>
1475
+ </annotation>
1476
+ </element>
1477
+ <element name="goal" type="gco:CharacterString_PropertyType">
1478
+ <annotation>
1479
+ <documentation>short description of the goal to be achieved by a
1480
+ realization of the use case</documentation>
1481
+ </annotation>
1482
+ </element>
1483
+ <element name="diagram" type="anyURI" minOccurs="0">
1484
+ <annotation>
1485
+ <documentation>use case diagram represented by an URL to an image of an
1486
+ UML use case diagram NOTE It is important to have a link to a
1487
+ diagram in form av a de-referenceable URL and not just an
1488
+ identifier.</documentation>
1489
+ </annotation>
1490
+ </element>
1491
+ <element name="actor" type="gco:CharacterString_PropertyType"
1492
+ maxOccurs="unbounded">
1493
+ <annotation>
1494
+ <documentation>designation of a user of the use case</documentation>
1495
+ </annotation>
1496
+ </element>
1497
+ <element name="stakeholder" type="gco:CharacterString_PropertyType"
1498
+ minOccurs="0" maxOccurs="unbounded">
1499
+ <annotation>
1500
+ <documentation>company, institution or interest group concerned by the
1501
+ execution of the use case</documentation>
1502
+ </annotation>
1503
+ </element>
1504
+ <element name="mainSuccessScenario" type="gco:CharacterString_PropertyType">
1505
+ <annotation>
1506
+ <documentation>numbered sequence of actions to be carried out during the
1507
+ execution of the use case</documentation>
1508
+ </annotation>
1509
+ </element>
1510
+ <element name="trigger" type="gco:CharacterString_PropertyType" minOccurs="0"
1511
+ maxOccurs="unbounded">
1512
+ <annotation>
1513
+ <documentation>event that leads to the execution of the use
1514
+ case</documentation>
1515
+ </annotation>
1516
+ </element>
1517
+ <element name="precondition" type="gco:CharacterString_PropertyType">
1518
+ <annotation>
1519
+ <documentation>description of the status that is required to start the
1520
+ execution of the use case</documentation>
1521
+ </annotation>
1522
+ </element>
1523
+ <element name="postcondition" type="gco:CharacterString_PropertyType">
1524
+ <annotation>
1525
+ <documentation>description of the status after the successful execution
1526
+ of the use case</documentation>
1527
+ </annotation>
1528
+ </element>
1529
+ </sequence>
1530
+ </extension>
1531
+ </complexContent>
1532
+ </complexType>
1533
+ <complexType name="UseCase_PropertyType">
1534
+ <sequence minOccurs="0">
1535
+ <element ref="dps:UseCase"/>
1536
+ </sequence>
1537
+ <attributeGroup ref="gco:ObjectReference"/>
1538
+ <attribute ref="gco:nilReason"/>
1539
+ </complexType>
1540
+ </schema>