openehr 1.3.0 → 2.0.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 (78) hide show
  1. checksums.yaml +4 -4
  2. data/README.rdoc +93 -12
  3. data/lib/openehr/am/archetype/constraint_model/primitive.rb +204 -6
  4. data/lib/openehr/am/archetype/constraint_model.rb +228 -4
  5. data/lib/openehr/am/archetype/ontology.rb +2 -2
  6. data/lib/openehr/am/archetype.rb +101 -2
  7. data/lib/openehr/am/openehr_profile/data_types/basic.rb +28 -0
  8. data/lib/openehr/am/openehr_profile/data_types/quantity.rb +88 -0
  9. data/lib/openehr/am/openehr_profile/data_types/text.rb +23 -0
  10. data/lib/openehr/am/template.rb +25 -3
  11. data/lib/openehr/aql/engine/binding.rb +13 -0
  12. data/lib/openehr/aql/engine/contains_resolver.rb +161 -0
  13. data/lib/openehr/aql/engine/dataset.rb +122 -0
  14. data/lib/openehr/aql/engine/path_evaluator.rb +137 -0
  15. data/lib/openehr/aql/engine/predicate_evaluator.rb +65 -0
  16. data/lib/openehr/aql/engine.rb +119 -0
  17. data/lib/openehr/aql/errors.rb +27 -0
  18. data/lib/openehr/aql/lexer.rb +295 -0
  19. data/lib/openehr/aql/model/containment.rb +45 -0
  20. data/lib/openehr/aql/model/from_clause.rb +35 -0
  21. data/lib/openehr/aql/model/function_call.rb +56 -0
  22. data/lib/openehr/aql/model/identified_path.rb +20 -0
  23. data/lib/openehr/aql/model/literal.rb +15 -0
  24. data/lib/openehr/aql/model/object_path.rb +34 -0
  25. data/lib/openehr/aql/model/order_by_and_limit.rb +50 -0
  26. data/lib/openehr/aql/model/predicate.rb +84 -0
  27. data/lib/openehr/aql/model/query.rb +24 -0
  28. data/lib/openehr/aql/model/select_clause.rb +29 -0
  29. data/lib/openehr/aql/model/where_clause.rb +105 -0
  30. data/lib/openehr/aql/model.rb +14 -0
  31. data/lib/openehr/aql/parser.rb +484 -0
  32. data/lib/openehr/aql/result_set.rb +54 -0
  33. data/lib/openehr/aql.rb +28 -0
  34. data/lib/openehr/assumed_library_types.rb +68 -17
  35. data/lib/openehr/parser/adl_grammar.tt +29 -13
  36. data/lib/openehr/parser/adl_parser.rb +18 -4
  37. data/lib/openehr/parser/archetype_validator.rb +126 -0
  38. data/lib/openehr/parser/exception.rb +13 -0
  39. data/lib/openehr/parser/opt_parser.rb +162 -9
  40. data/lib/openehr/parser.rb +2 -0
  41. data/lib/openehr/path.rb +195 -0
  42. data/lib/openehr/rm/common/archetyped.rb +116 -6
  43. data/lib/openehr/rm/common/change_control.rb +3 -8
  44. data/lib/openehr/rm/common/directory.rb +4 -0
  45. data/lib/openehr/rm/common/generic.rb +24 -10
  46. data/lib/openehr/rm/composition/content/entry.rb +24 -5
  47. data/lib/openehr/rm/composition/content/navigation.rb +2 -1
  48. data/lib/openehr/rm/composition.rb +19 -2
  49. data/lib/openehr/rm/data_structures/history.rb +3 -0
  50. data/lib/openehr/rm/data_structures/item_structure/representation.rb +13 -9
  51. data/lib/openehr/rm/data_structures/item_structure.rb +28 -15
  52. data/lib/openehr/rm/data_types/encapsulated.rb +23 -3
  53. data/lib/openehr/rm/data_types/quantity/date_time.rb +9 -1
  54. data/lib/openehr/rm/data_types/quantity.rb +66 -14
  55. data/lib/openehr/rm/data_types/text.rb +8 -0
  56. data/lib/openehr/rm/data_types/time_specification.rb +5 -4
  57. data/lib/openehr/rm/demographic.rb +4 -3
  58. data/lib/openehr/rm/ehr.rb +20 -1
  59. data/lib/openehr/rm/factory.rb +234 -6
  60. data/lib/openehr/rm/integration.rb +1 -0
  61. data/lib/openehr/rm/support/identification.rb +37 -8
  62. data/lib/openehr/rm/support/measurement.rb +32 -0
  63. data/lib/openehr/rm/type_name.rb +90 -0
  64. data/lib/openehr/rm.rb +3 -0
  65. data/lib/openehr/serializer/adl_serializer.rb +335 -0
  66. data/lib/openehr/serializer/base.rb +20 -0
  67. data/lib/openehr/serializer/opt_serializer.rb +49 -0
  68. data/lib/openehr/serializer/rm_json_serializer.rb +62 -0
  69. data/lib/openehr/serializer/xml_serializer.rb +260 -0
  70. data/lib/openehr/serializer.rb +5 -291
  71. data/lib/openehr/terminology_service.rb +44 -0
  72. data/lib/openehr/version.rb +1 -1
  73. data/lib/openehr.rb +5 -2
  74. metadata +35 -7
  75. data/lib/openehr/parser/validator.rb +0 -18
  76. data/lib/openehr/parser/xml_parser.rb +0 -13
  77. data/lib/openehr/rm/data_types/charset_extract.rb +0 -24
  78. data/lib/openehr/writer.rb +0 -12
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: openehr
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.0
4
+ version: 2.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Shinji KOBAYASHI
@@ -299,15 +299,38 @@ files:
299
299
  - lib/openehr/am/openehr_profile/data_types/quantity.rb
300
300
  - lib/openehr/am/openehr_profile/data_types/text.rb
301
301
  - lib/openehr/am/template.rb
302
+ - lib/openehr/aql.rb
303
+ - lib/openehr/aql/engine.rb
304
+ - lib/openehr/aql/engine/binding.rb
305
+ - lib/openehr/aql/engine/contains_resolver.rb
306
+ - lib/openehr/aql/engine/dataset.rb
307
+ - lib/openehr/aql/engine/path_evaluator.rb
308
+ - lib/openehr/aql/engine/predicate_evaluator.rb
309
+ - lib/openehr/aql/errors.rb
310
+ - lib/openehr/aql/lexer.rb
311
+ - lib/openehr/aql/model.rb
312
+ - lib/openehr/aql/model/containment.rb
313
+ - lib/openehr/aql/model/from_clause.rb
314
+ - lib/openehr/aql/model/function_call.rb
315
+ - lib/openehr/aql/model/identified_path.rb
316
+ - lib/openehr/aql/model/literal.rb
317
+ - lib/openehr/aql/model/object_path.rb
318
+ - lib/openehr/aql/model/order_by_and_limit.rb
319
+ - lib/openehr/aql/model/predicate.rb
320
+ - lib/openehr/aql/model/query.rb
321
+ - lib/openehr/aql/model/select_clause.rb
322
+ - lib/openehr/aql/model/where_clause.rb
323
+ - lib/openehr/aql/parser.rb
324
+ - lib/openehr/aql/result_set.rb
302
325
  - lib/openehr/assumed_library_types.rb
303
326
  - lib/openehr/parser.rb
304
327
  - lib/openehr/parser/adl_grammar.tt
305
328
  - lib/openehr/parser/adl_helper.rb
306
329
  - lib/openehr/parser/adl_parser.rb
330
+ - lib/openehr/parser/archetype_validator.rb
307
331
  - lib/openehr/parser/exception.rb
308
332
  - lib/openehr/parser/opt_parser.rb
309
- - lib/openehr/parser/validator.rb
310
- - lib/openehr/parser/xml_parser.rb
333
+ - lib/openehr/path.rb
311
334
  - lib/openehr/rm.rb
312
335
  - lib/openehr/rm/common/archetyped.rb
313
336
  - lib/openehr/rm/common/change_control.rb
@@ -324,7 +347,6 @@ files:
324
347
  - lib/openehr/rm/data_structures/item_structure/representation.rb
325
348
  - lib/openehr/rm/data_types/basic.rb
326
349
  - lib/openehr/rm/data_types/charset.lst
327
- - lib/openehr/rm/data_types/charset_extract.rb
328
350
  - lib/openehr/rm/data_types/encapsulated.rb
329
351
  - lib/openehr/rm/data_types/quantity.rb
330
352
  - lib/openehr/rm/data_types/quantity/date_time.rb
@@ -339,9 +361,15 @@ files:
339
361
  - lib/openehr/rm/support/definition.rb
340
362
  - lib/openehr/rm/support/identification.rb
341
363
  - lib/openehr/rm/support/measurement.rb
364
+ - lib/openehr/rm/type_name.rb
342
365
  - lib/openehr/serializer.rb
366
+ - lib/openehr/serializer/adl_serializer.rb
367
+ - lib/openehr/serializer/base.rb
368
+ - lib/openehr/serializer/opt_serializer.rb
369
+ - lib/openehr/serializer/rm_json_serializer.rb
370
+ - lib/openehr/serializer/xml_serializer.rb
371
+ - lib/openehr/terminology_service.rb
343
372
  - lib/openehr/version.rb
344
- - lib/openehr/writer.rb
345
373
  homepage: http://openehr.jp
346
374
  licenses:
347
375
  - Apache 2.0
@@ -353,14 +381,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
353
381
  requirements:
354
382
  - - ">="
355
383
  - !ruby/object:Gem::Version
356
- version: '0'
384
+ version: '3.1'
357
385
  required_rubygems_version: !ruby/object:Gem::Requirement
358
386
  requirements:
359
387
  - - ">="
360
388
  - !ruby/object:Gem::Version
361
389
  version: '0'
362
390
  requirements: []
363
- rubygems_version: 3.6.7
391
+ rubygems_version: 4.0.18
364
392
  specification_version: 4
365
393
  summary: Ruby implementation of the openEHR specification
366
394
  test_files: []
@@ -1,18 +0,0 @@
1
- require_relative '../parser'
2
-
3
- module OpenEHR
4
- module ADL
5
-
6
- class Validator
7
- def initialize(parser)
8
- @parser = parser
9
- end
10
-
11
- def validate(input_string, name = nil)
12
- @parser.parse(input_string, name)
13
- end
14
- end
15
-
16
- end
17
- end
18
-
@@ -1,13 +0,0 @@
1
- module OpenEHR
2
- module Parser
3
- class XMLPaser
4
- def initialize(source)
5
- @source = source
6
- end
7
-
8
- def parse
9
-
10
- end
11
- end
12
- end
13
- end
@@ -1,24 +0,0 @@
1
- #! /usr/bin/env ruby
2
- # charactor sets extraction from download file from
3
- # http://www.iana.org/assignments/character-sets
4
- # as character-sets
5
-
6
- class CharacterSets
7
- def self.get_list
8
- list = Array.new
9
- open('character-sets') do |file|
10
- while line = file.gets
11
- if /^((Name:)|(Alias:)) (\S+)/ =~ line
12
- list << $4 unless $4 == "None"
13
- end
14
- end
15
- end
16
- return list
17
- end
18
- end
19
-
20
- open('charset.lst','w') do |f|
21
- CharacterSets.get_list.each do |line|
22
- f.puts(line)
23
- end
24
- end
@@ -1,12 +0,0 @@
1
- module OpenEHR
2
- module Writer
3
- class BaseWriter
4
- def initiailze(source, target)
5
- end
6
-
7
- def out
8
- end
9
- end
10
- end
11
- end
12
-