oddb.org 1.0.0 → 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (141) hide show
  1. data/.gemtest +0 -0
  2. data/Guide.txt +23 -17
  3. data/{README → INSTALL_from_Source.txt} +64 -75
  4. data/Manifest.txt +110 -4
  5. data/README.txt +4 -2
  6. data/Rakefile +5 -0
  7. data/doc/favicon.ico +0 -0
  8. data/doc/index.rbx +15 -0
  9. data/doc/resources/anthroposophy/favicon.ico +0 -0
  10. data/doc/resources/anthroposophy/logo.png +0 -0
  11. data/doc/resources/atupri/logo.gif +0 -0
  12. data/doc/resources/desitin/logo.jpg +0 -0
  13. data/doc/resources/downloads/datadesc/analysis.csv.txt +57 -0
  14. data/doc/resources/downloads/datadesc/doctors.csv.txt +43 -0
  15. data/doc/resources/downloads/datadesc/doctors.yaml.txt +52 -0
  16. data/doc/resources/downloads/datadesc/fachinfo.yaml.txt +107 -0
  17. data/doc/resources/downloads/datadesc/generics.xls.txt +42 -0
  18. data/doc/resources/downloads/datadesc/index_therapeuticus.txt +38 -0
  19. data/doc/resources/downloads/datadesc/interactions.yaml.txt +78 -0
  20. data/doc/resources/downloads/datadesc/migel.csv.txt +84 -0
  21. data/doc/resources/downloads/datadesc/narcotics.csv.txt +49 -0
  22. data/doc/resources/downloads/datadesc/narcotics.yaml.txt +40 -0
  23. data/doc/resources/downloads/datadesc/oddb.csv.txt +98 -0
  24. data/doc/resources/downloads/datadesc/oddb.yaml.txt +255 -0
  25. data/doc/resources/downloads/datadesc/oddb2.csv.txt +94 -0
  26. data/doc/resources/downloads/datadesc/oddbdat.txt +228 -0
  27. data/doc/resources/downloads/datadesc/patents.xls.txt +29 -0
  28. data/doc/resources/downloads/datadesc/patinfo.yaml.txt +79 -0
  29. data/doc/resources/downloads/datadesc/price_history.csv.txt +43 -0
  30. data/doc/resources/downloads/datadesc/price_history.yaml.txt +55 -0
  31. data/doc/resources/downloads/datadesc/s31x.txt +40 -0
  32. data/doc/resources/downloads/datadesc/swissdrug-update.xls.txt +59 -0
  33. data/doc/resources/downloads/examples/Inderal.Preisvergleich.csv +19 -0
  34. data/doc/resources/downloads/examples/analysis.csv +35 -0
  35. data/doc/resources/downloads/examples/compendium_ch.oddb.org.firefox.epub +0 -0
  36. data/doc/resources/downloads/examples/compendium_ch.oddb.org.htc.prc +0 -0
  37. data/doc/resources/downloads/examples/compendium_ch.oddb.org.kindle.mobi +0 -0
  38. data/doc/resources/downloads/examples/compendium_ch.oddb.org.stanza.epub +0 -0
  39. data/doc/resources/downloads/examples/doctors.csv +13 -0
  40. data/doc/resources/downloads/examples/doctors.yaml +238 -0
  41. data/doc/resources/downloads/examples/fachinfo.yaml +1255 -0
  42. data/doc/resources/downloads/examples/fachinfos_de.pdf +51565 -0
  43. data/doc/resources/downloads/examples/fachinfos_fr.pdf +52072 -0
  44. data/doc/resources/downloads/examples/generics.xls +0 -0
  45. data/doc/resources/downloads/examples/index_therapeuticus.tar.gz +0 -0
  46. data/doc/resources/downloads/examples/interactions.yaml +161 -0
  47. data/doc/resources/downloads/examples/migel.csv +36 -0
  48. data/doc/resources/downloads/examples/narcotics.yaml +92 -0
  49. data/doc/resources/downloads/examples/oddb.csv +1378 -0
  50. data/doc/resources/downloads/examples/oddb.yaml +14976 -0
  51. data/doc/resources/downloads/examples/oddb2.csv +1566 -0
  52. data/doc/resources/downloads/examples/oddbdat.tar.gz +0 -0
  53. data/doc/resources/downloads/examples/patents.xls +0 -0
  54. data/doc/resources/downloads/examples/patinfo.yaml +2505 -0
  55. data/doc/resources/downloads/examples/price_history.csv +99 -0
  56. data/doc/resources/downloads/examples/price_history.yaml +431 -0
  57. data/doc/resources/downloads/examples/swissdrug-update.xls +0 -0
  58. data/doc/resources/errors/appdown.html +50 -0
  59. data/doc/resources/errors/logo.png +0 -0
  60. data/doc/resources/errors/logo_de.gif +0 -0
  61. data/doc/resources/gcc/banner.gif +0 -0
  62. data/doc/resources/gcc/logo.png +0 -0
  63. data/doc/resources/gcc/logo_de.gif +0 -0
  64. data/doc/resources/gcc/logo_doc.gif +0 -0
  65. data/doc/resources/gcc/logo_fr.gif +0 -0
  66. data/doc/resources/gcc/logo_rss.png +0 -0
  67. data/doc/resources/generika/favicon.ico +0 -0
  68. data/doc/resources/generika/logo.gif +0 -0
  69. data/doc/resources/generika/logo_de.gif +0 -0
  70. data/doc/resources/generika/logo_fr.gif +0 -0
  71. data/doc/resources/homeopathy/favicon.ico +0 -0
  72. data/doc/resources/homeopathy/logo.png +0 -0
  73. data/doc/resources/icon_twitter.gif +0 -0
  74. data/doc/resources/innova/logo.gif +0 -0
  75. data/doc/resources/innova/logo_de.gif +0 -0
  76. data/doc/resources/javascript/admin.js +14 -0
  77. data/doc/resources/javascript/autofill.js +21 -0
  78. data/doc/resources/javascript/bit.ly.js +29 -0
  79. data/doc/resources/javascript/company.js +22 -0
  80. data/doc/resources/javascript/dojo/Editor.js +219 -0
  81. data/doc/resources/javascript/dojo/HtmlEditorToolbar.html +163 -0
  82. data/doc/resources/javascript/dojo/sigma.gif +0 -0
  83. data/doc/resources/javascript/widget/SymbolPalette.js +162 -0
  84. data/doc/resources/javascript/widget/Tooltip.js +85 -0
  85. data/doc/resources/javascript/widget/__package__.js +2 -0
  86. data/doc/resources/livemarks16.png +0 -0
  87. data/doc/resources/mail.gif +0 -0
  88. data/doc/resources/mobile/logo.png +0 -0
  89. data/doc/resources/paypal_donate.gif +0 -0
  90. data/doc/resources/phyto-pharma/favicon.ico +0 -0
  91. data/doc/resources/phyto-pharma/logo.png +0 -0
  92. data/doc/resources/plugins/Generika.cc.gif +0 -0
  93. data/doc/resources/plugins/Generika.cc.html +34 -0
  94. data/doc/resources/plugins/Generika.cc.src +34 -0
  95. data/doc/resources/plugins/oddb.org.gif +0 -0
  96. data/doc/resources/plugins/oddb.org.html +34 -0
  97. data/doc/resources/plugins/oddb.org.src +34 -0
  98. data/doc/resources/print.css +33 -0
  99. data/doc/resources/provita/logo_de.gif +0 -0
  100. data/doc/resources/santesuisse/logo_de.gif +0 -0
  101. data/doc/resources/schoenenberger/logo_de.gif +0 -0
  102. data/doc/resources/swissmedic/logo.png +0 -0
  103. data/doc/resources/swissmedic/logo_de.gif +0 -0
  104. data/doc/resources/swissmedic/logo_doc.gif +0 -0
  105. data/doc/resources/swissmedic/logo_fr.gif +0 -0
  106. data/doc/resources/sympany/logo.gif +0 -0
  107. data/doc/robots.txt +29 -0
  108. data/ext/export/src/generics_xls.rb +29 -5
  109. data/ext/export/src/oddbdat.rb +1 -1
  110. data/ext/export/test/test_generics_xls.rb +216 -0
  111. data/ext/export/test/test_oddbdat.rb +880 -0
  112. data/lib/oddb.org.rb +1 -1
  113. data/src/model/package.rb +3 -2
  114. data/src/plugin/analysis.rb +2 -0
  115. data/src/plugin/bsv_xml.rb +1 -1
  116. data/src/plugin/hospitals.rb +1 -0
  117. data/src/plugin/oddbdat_export.rb +12 -2
  118. data/src/plugin/text_info.rb +16 -29
  119. data/src/util/exporter.rb +21 -1
  120. data/src/util/log.rb +3 -0
  121. data/src/util/oddbapp.rb +1 -1
  122. data/src/util/oddbconfig.rb +1 -1
  123. data/src/util/updater.rb +9 -1
  124. data/test/data/html/interaction/flockhart/prepared_table.asp +820 -0
  125. data/test/data/html/interaction/flockhart/table.asp +820 -0
  126. data/test/data/html/text_info/News.html +18 -93
  127. data/test/suite.rb +78 -4
  128. data/test/test_model/package.rb +38 -0
  129. data/test/test_plugin/bsv_xml.rb +4 -2
  130. data/test/test_plugin/flockhart.rb +1 -1
  131. data/test/test_plugin/oddbdat_export.rb +79 -658
  132. data/test/test_plugin/ouwerkerk.rb +2 -2
  133. data/test/test_plugin/suite.rb +8 -6
  134. data/test/test_plugin/text_info.rb +40 -52
  135. data/test/test_plugin/{doctors.rb → zdoctor.rb} +0 -0
  136. data/test/test_util/exporter.rb +500 -0
  137. data/test/test_util/suite.rb +8 -6
  138. data/test/test_util/{log.rb → zlog.rb} +19 -0
  139. data/test/test_view/{search.rb → asearch.rb} +0 -0
  140. data/test/test_view/suite.rb +8 -6
  141. metadata +143 -14
@@ -0,0 +1,84 @@
1
+ Datenbeschrieb migel.csv
2
+
3
+ Version: 2.2
4
+ Geändert: 12.03.2009 (2.2) durch hwyss@ywesee.com
5
+ Geändert: 17.04.2007 (2.1) durch hwyss@ywesee.com
6
+ Geändert: 30.09.2005 (2.0.2) durch hwyss@ywesee.com
7
+ Geändert: 28.09.2005 (2.0.1) durch ffricker@ywesee.com
8
+ Geändert: 27.09.2005 (2.0) durch ffricker@ywesee.com
9
+ Erstellt: 26.09.2005 (1.0) durch ffricker@ywesee.com
10
+
11
+ ## Struktur ##
12
+ Encoding: UTF-8
13
+ Record-Separator: \n (Für New-Lines in Feldern siehe Glossar: New-Line)
14
+ Field-Separator: ;
15
+
16
+ Migel-Record:
17
+ 00: migel_code (GG.UU.PP.ZZ.V) -> Migel-Code, siehe Glossar (Migel-Code)
18
+ 01: group_code (GG) -> Migel-Group-Code
19
+ 02: group_de (*) -> Gruppen-Bezeichnung De.
20
+ 03: group_fr (*) -> Gruppen-Bezeichnung Fr.
21
+ 04: group_it (*) -> Gruppen-Bezeichnung It.
22
+ 05: group_limitation_de (*) -> Gruppen-Limitation De.
23
+ 06: group_limitation_fr (*) -> Gruppen-Limitation Fr.
24
+ 07: group_limitation_it (*) -> Gruppen-Limitation It.
25
+ 08: subgroup_code (UU) -> Gruppen-Code
26
+ 09: subgroup_de (*) -> Untergruppen-Bezeichnung De.
27
+ 10: subgroup_fr (*) -> Untergruppen-Bezeichnung Fr.
28
+ 11: subgroup_it (*) -> Untergruppen-Bezeichnung It.
29
+ 12: subgroup_limitation_de (*) -> Limitation-Untergruppe De.
30
+ 13: subgroup_limitation_fr (*) -> Limitation-Untergruppe Fr.
31
+ 14: subgroup_limitation_it (*) -> Limitation-Untergruppe It.
32
+ 15: product_code (PP) -> Produkte Code
33
+ 16: product_de (*) -> Produkt-Bezeichnung De.
34
+ 17: product_fr (*) -> Produkt-Bezeichnung Fr.
35
+ 18: product_it (*) -> Produkt-Bezeichnung It.
36
+ 19: accessory_code (ZZ.V) -> Zubehör-Code
37
+ 20: accessory_de (*) -> Zubehör De.
38
+ 21: accessory_fr (*) -> Zubehör Fr.
39
+ 22: accessory_it (*) -> Zubehör It.
40
+ 23: product_limitation_de (*) -> Produkt-Limitation De.
41
+ 24: product_limitation_fr (*) -> Produkt-Limitation Fr.
42
+ 25: product_limitation_it (*) -> Produkt-Limitation It.
43
+ 26: price (Float) -> Preis
44
+ 27: qty (Integer) -> Anzahl
45
+ 28: unit_de (*) -> Einheit De.
46
+ 29: unit_fr (*) -> Einheit Fr.
47
+ 30: unit_it (*) -> Einheit It.
48
+ 31: limitation_flag (Boolean) -> Limitations Zeichen, siehe Glossar (Limitations Zeichen)
49
+ 32: date (DD.MM.YYYY) -> Aufnahme Datum
50
+
51
+ ## Glossar ##
52
+ * Sprachen
53
+ De. - Deutsch
54
+ Fr. - Französisch
55
+ It. - Italienisch
56
+
57
+ * Migel-Code
58
+ 03.03.02.02.2
59
+ | | | | |
60
+ | | | | Verkaufsart
61
+ | | | |
62
+ | | | Zubehör
63
+ | | |
64
+ | | Produkt
65
+ | |
66
+ | Untergruppe
67
+ |
68
+ Produkt-Gruppe
69
+
70
+ * New-Line
71
+ In den Ausgangsdaten wurden Zeilenumbrüche mit ASCII-11 (Vertical Tab)
72
+ formatiert. In unseren Datenbanksystemen sind diese Daten jedoch als
73
+ ACSCII-10 (Line-Feed) gespeichert.
74
+ Aufgrund der Tatsache, das viele CSV-Parser mühe haben, Record-Seperators
75
+ innerhalb von Fields anzutreffen, sind die Daten im CSV-Export mit den
76
+ Vertical-Tabs formatiert.
77
+
78
+ * Version
79
+ Versionsnummern bezeichnen Änderungen nach dem Schema "Major.Minor.Documentation"
80
+ - Major: Komplett neuer Aufbau des Exports
81
+ - Minor: Kleinere Änderungen am Export (z.B. Refactoring von Adressangaben in eine Address2-Klasse)
82
+ - Documentation: Ergänzungen und Änderungen im Datenbeschrieb, die keine Änderung des Exports als Ursache haben.
83
+ Die komplette Version-History ist zu finden unter:
84
+ http://scm.ywesee.com/?p=oddb.org;a=history;f=doc/resources/downloads/datadesc/migel.csv.txt
@@ -0,0 +1,49 @@
1
+ Datenbeschrieb narcotics.csv
2
+
3
+ Version: 1.1.0
4
+ Geändert: 12.03.2009 (1.1.0) durch hwyss@ywesee.com
5
+ Erstellt: 25.11.2005 (1.0.0) durch hwyss@ywesee.com
6
+
7
+ ## Struktur ##
8
+ Encoding: UTF-8
9
+ Record-Separator: \n (Für New-Lines in Feldern siehe Glossar: New-Line)
10
+ Field-Separator: ;
11
+
12
+ Narcotic-Record:
13
+ 00: cas-rn (*) -> CAS-Registry Number
14
+ 01: smcd (*) -> Swissmedic-Code
15
+ 02: substance_de (*) -> Substanz-Bezeichnung De.
16
+ 03: substance_fr (*) -> Substanz-Bezeichnung Fr.
17
+ 04: category (b-d) -> siehe Glossar: Kategorie
18
+ 05: reservation_de (*) -> Vorbehaltstext De.
19
+ 06: reservation_fr (*) -> Vorbehaltstext Fr.
20
+
21
+ ## Glossar ##
22
+ * CAS Registry Number
23
+ http://www.cas.org/EO/regsys.html
24
+
25
+ * Kategorie
26
+ b) von der Kontrolle teilweise Ausgenommen
27
+ c) in kleinen Mengen ohne ärztliche Verschreibung erhältlich und von
28
+ der Kontrolle teilweise Ausgenommen
29
+ d) verboten
30
+
31
+ * Sprachen
32
+ De. - Deutsch
33
+ Fr. - Französisch
34
+
35
+ * New-Line
36
+ In den Ausgangsdaten wurden Zeilenumbrüche mit ASCII-11 (Vertical Tab)
37
+ formatiert. In unseren Datenbanksystemen sind diese Daten jedoch als
38
+ ACSCII-10 (Line-Feed) gespeichert.
39
+ Aufgrund der Tatsache, das viele CSV-Parser mühe haben, Record-Seperators
40
+ innerhalb von Fields anzutreffen, sind die Daten im CSV-Export mit den
41
+ Vertical-Tabs formatiert.
42
+
43
+ * Version
44
+ Versionsnummern bezeichnen Änderungen nach dem Schema "Major.Minor.Documentation"
45
+ - Major: Komplett neuer Aufbau des Exports
46
+ - Minor: Kleinere Änderungen am Export (z.B. Refactoring von Adressangaben in eine Address2-Klasse)
47
+ - Documentation: Ergänzungen und Änderungen im Datenbeschrieb, die keine Änderung des Exports als Ursache haben.
48
+ Die komplette Version-History ist zu finden unter:
49
+ http://scm.ywesee.com/?p=oddb.org;a=history;f=doc/resources/downloads/datadesc/narcotics.csv.txt
@@ -0,0 +1,40 @@
1
+ Datenbeschrieb narcotics.yaml
2
+
3
+ Version: 1.2.0
4
+ Geändert: 12.03.2009 (1.2.0) durch hwyss@ywesee.com
5
+ Geändert: 18.02.2009 (1.1.0) durch hwyss@ywesee.com
6
+ Erstellt: 25.11.2005 (1.0.0) durch hwyss@ywesee.com
7
+
8
+ ## Struktur ##
9
+ Encoding: UTF-8
10
+
11
+ Top-Level:
12
+ - Stream von voneinander unabhängigen YAML-Documents, wovon jedes ein Narcotic beschreibt.
13
+
14
+ Narcotic:
15
+ - oid (Integer, NOT NULL) -> Unique Identifier
16
+ - casrn (String) -> CAS-Registry Number
17
+ - substances (Array (Substance)) -> Substanzen
18
+ - packages (Array (String)) -> Verknüpfungen zu Package
19
+
20
+ Substance:
21
+ - oid (Integer, NOT NULL) -> Unique Identifier
22
+ - descriptions (SimpleLanguage::Descriptions (String, String)) -> Sprache, Indikationstext. siehe Glossar (SimpleLanguage::Descriptions)
23
+ - synonyms (Array (String)) -> Weitere bezeichnungen
24
+ - effective_form (Substance) -> Wirkform
25
+ - narcotic (String) -> CAS-Registry Number
26
+
27
+ ## Glossar ##
28
+ * CAS Registry Number
29
+ http://www.cas.org/EO/regsys.html
30
+
31
+ * YAML
32
+ Yet Another Markup Language. Offener Standard, beschrieben unter http://www.yaml.org
33
+
34
+ * Version
35
+ Versionsnummern bezeichnen Änderungen nach dem Schema "Major.Minor.Documentation"
36
+ - Major: Komplett neuer Aufbau des Exports
37
+ - Minor: Kleinere Änderungen am Export (z.B. Refactoring von Adressangaben in eine Address2-Klasse)
38
+ - Documentation: Ergänzungen und Änderungen im Datenbeschrieb, die keine Änderung des Exports als Ursache haben.
39
+ Die komplette Version-History ist zu finden unter:
40
+ http://scm.ywesee.com/?p=oddb.org;a=history;f=doc/resources/downloads/datadesc/narcotics.yaml.txt
@@ -0,0 +1,98 @@
1
+ Datenbeschrieb oddb.csv
2
+
3
+ Version: 1.5.0
4
+ Geändert: 07.05.2010 (1.5.0) durch hwyss@ywesee.com
5
+ Geändert: 28.04.2010 (1.4.0) durch hwyss@ywesee.com
6
+ Geändert: 12.03.2009 (1.3.0) durch hwyss@ywesee.com
7
+ Geändert: 06.06.2006 (1.2.0) durch hwyss@ywesee.com
8
+ Geändert: 27.02.2006 (1.1.0) durch hwyss@ywesee.com
9
+ Geändert: 09.12.2005 (1.0.3) durch hwyss@ywesee.com
10
+ Geändert: 30.09.2005 (1.0.2) durch hwyss@ywesee.com
11
+ Geändert: 02.09.2005 (1.0.1) durch hwyss@ywesee.com
12
+ Erstellt: 01.09.2005 (1.0.0) durch hwyss@ywesee.com
13
+
14
+ ## Struktur ##
15
+ Encoding: UTF-8
16
+ Record-Separator: \n
17
+ Field-Separator: ;
18
+
19
+ Es kommen zwei Record-Arten vor: ATC-Record und Produkt-Record
20
+
21
+ ATC-Record: alle folgenden Produkt-Records gehören zu diesem ATC-Code
22
+ 00: rectype (#MGroup), CONST -> Record-Type
23
+ 01: code (1-7), NOT NULL -> Atc-Code. siehe Glossar (AtcCode)
24
+ 02: de (*) -> Deutsche Bezeichnung
25
+
26
+ Produkt-Record:
27
+ 00: rectype (#Medi), CONST -> Record-Type
28
+ 01: iksnr (Integer (5)), NOT NULL -> Registrationsnummer der Swissmedic
29
+ 02: ikscd (Integer (3)), NOT NULL -> Packungsnummer der Swissmedic
30
+ 03: ikskey (Integer (8)), NOT NULL -> Swissmedic-Nr, zusammengesetzt aus iksnr und ikscd
31
+ 04: barcode (Integer (13)), NOT NULL -> Packungs-Barcode, zusammengesetzt aus iksnr und ikscd
32
+ 05: bsv_dossier (Integer) -> BSV-Dossier
33
+ 06: pharmacode (Integer) -> Pharmacode, wo vorhanden
34
+ 07: name_base (*) -> Hauptname der Sequenz aus der Registrationsurkunde, enthält z.T. Dosisangaben.
35
+ 08: galenic_form (*) -> Galenische Form, Deutsche Bezeichnung
36
+ 09: dose (*) -> Dosierung. Wird falls möglich aus dem Namen gewonnen, andernfalls aus der Zusammensetzung.
37
+ 10: size (*) -> Packungsgrösse (z.B. 5 x 28 Tabletten)
38
+ 11: numerical_size (Integer) -> Packungsgrösse, verrechnet (z.B. 140)
39
+ 12: price_exfactory (Float) -> Exfactorypreis in Franken und Rappen
40
+ 13: price_public (Float) -> Publikumspreis in Franken und Rappen
41
+ 14: company (*) -> Registrationsinhaber
42
+ 15: ikscat (*) -> Abgabekategorie. A-E. siehe Glossar (Abgabekategorie)
43
+ 16: sl_entry (Ja/Nein) -> Eintrag in der SL
44
+ 17: introduction_date (dd.mm.yyyy) -> Datum der Aufnahme in die Spezialitätenliste
45
+ 18: limitation (Ja/Nein) -> Limitation
46
+ 19: limitation_points (Integer) -> Limitationspunkte
47
+ 20: limitation_text (*) -> Limitationstext in Deutsch
48
+ 21: lppv (Ja/Nein) -> Eintrag in der LPPV
49
+ 22: registration_date (dd.mm.yyyy) -> Datum der ersten Zulassung in der Schweiz
50
+ 23: inactive_date (dd.mm.yyyy) -> Falls ein Produkt unabhängig von der Swissmedic ausser Handel genommen wird: Datum der Ausserhandelnahme
51
+ 24: export_flag (*) -> Wenn gesetzt: Produkt ist nur für den Export Bestimmt
52
+ 25: narcotic (*) -> Wenn gesetzt: CAS Registry Number des Eintrags in der Betäubungsmittelliste
53
+ 26: generic_type (O/G) -> O: Original, G: Generikum
54
+ 27: has_generic (Ja/Nein) -> Wenn Ja: es ist mindestens ein Generikum zu diesem Produkt bekannt
55
+ 28: deductible (10%/20%) -> Selbstbehalt für SL-Produkte
56
+ 29: out_of_trade (Ja/Nein) -> Ausser Handel laut http://www.refdata.ch ?
57
+ 30: complementary (C/A/H/P) -> Komplementärprodukt,siehe Glossar (Komplementärprodukt)
58
+ 31: index_therapeuticus (*) -> Index Therapeuticus Code (BAG)
59
+ 31: ith_swissmedic (*) -> Index Therapeuticus Code (Swissmedic)
60
+ 33: narcotic (Ja/Nein) -> Wenn Ja: das Produkt ist ein Betäubungsmittel und untersteht besonderen Abgabevorschriften
61
+ 34: vaccine (Ja/Nein) -> Wenn Ja: das Produkt ist ein Impfstoff oder Blutprodukt und untersteht besonderen Vorschriften
62
+
63
+ ## Glossar ##
64
+ * AtcCode:
65
+ Anatomisch-Therapeutisch-Chemischer Code der durch die WHO vergeben wird. Hat 5 Ebenen:
66
+ Level 1: C -> Anatomische Gruppierung, z.B. A: Alimentäres System und Stoffwechsel
67
+ Level 2: +NN -> Therapeutische Gruppierung, z.B. A02: Mittel bei Säure bedingten Erkrankungen
68
+ Level 3: +C -> Therapeutische Untergruppe, z.B. A02A: Antacida
69
+ Level 4: +C -> Chemische Gruppierung, z.B. A02AA: Magnesium-haltige Verbindungen
70
+ Level 5: +NN -> Wirkstoff(-Kombination), z.B. A02AA01: Magnesiumcarbonat
71
+
72
+ * Abgabekategorie
73
+ A: verschärft Rezeptpflichtig
74
+ B: Rezeptpflichtig
75
+ C: erhältlich in Apotheken ohne Rezept
76
+ D: erhältlich in Apotheken und Drogerien
77
+ http://www.trichema.ch/D/faq.php#15
78
+
79
+ * CAS Registry Number:
80
+ http://www.cas.org/EO/regsys.html
81
+
82
+ * Index Therapeuticus Code:
83
+ Index Therapeuticus gemäss http://www.galinfo.net, bestehend aus 3
84
+ Gruppierungs-Ebenen die der Regular Expression "(\d{2}\.){1,3}" entsprechen.
85
+
86
+ * Komplementärprodukt:
87
+ C: Komplementärprodukt
88
+ A: Antroposophisches Heilmittel
89
+ H: Homöopathisches Heilmittel
90
+ P: Phytotherapeutisches Heilmittel
91
+
92
+ * Version
93
+ Versionsnummern bezeichnen Änderungen nach dem Schema "Major.Minor.Documentation"
94
+ - Major: Komplett neuer Aufbau des Exports
95
+ - Minor: Kleinere Änderungen am Export (z.B. Refactoring von Adressangaben in eine Address2-Klasse)
96
+ - Documentation: Ergänzungen und Änderungen im Datenbeschrieb, die keine Änderung des Exports als Ursache haben.
97
+ Die komplette Version-History ist zu finden unter:
98
+ http://scm.ywesee.com/?p=oddb.org;a=history;f=doc/resources/downloads/datadesc/oddb.csv.txt
@@ -0,0 +1,255 @@
1
+ Datenbeschrieb oddb.yaml
2
+
3
+ Version: 1.8.0
4
+ Geändert: 28.10.2009 (1.8.0) durch hwyss@ywesee.com
5
+ Geändert: 29.09.2009 (1.7.0) durch hwyss@ywesee.com
6
+ Geändert: 12.03.2009 (1.6.0) durch hwyss@ywesee.com
7
+ Geändert: 10.02.2009 (1.5.1) durch hwyss@ywesee.com
8
+ Geändert: 04.12.2008 (1.5.0) durch hwyss@ywesee.com
9
+ Geändert: 22.11.2007 (1.4.0) durch hwyss@ywesee.com
10
+ Geändert: 20.09.2007 (1.3.2) durch hwyss@ywesee.com
11
+ Geändert: 21.03.2007 (1.3.1) durch hwyss@ywesee.com
12
+ Geändert: 09.12.2005 (1.3.0) durch hwyss@ywesee.com
13
+ Geändert: 14.11.2005 (1.2.0) durch hwyss@ywesee.com
14
+ Geändert: 30.09.2005 (1.1.3) durch hwyss@ywesee.com
15
+ Geändert: 02.09.2005 (1.1.2) durch hwyss@ywesee.com
16
+ Geändert: 01.09.2005 (1.1.1) durch hwyss@ywesee.com
17
+ Geändert: 23.08.2005 (1.1.0) durch hwyss@ywesee.com
18
+ Erstellt: 26.07.2005 (1.0.0) durch hwyss@ywesee.com
19
+
20
+ ## Struktur ##
21
+ Encoding: UTF-8
22
+
23
+ Top-Level:
24
+ - Hash (Company.oid, Company)
25
+
26
+ Company:
27
+ - oid (Integer, NOT NULL) -> Unique Identifier
28
+ - ean13 (String) -> Ean13 der Firma
29
+ - name (String) -> Name der Firma
30
+ - business_area (String) -> Geschäftsbereich
31
+ - generic_type (Symbol) -> siehe Glossar (GenericType)
32
+ - registrations (Array (Registration)) -> Produkte der Firma (siehe Registration)
33
+ - url (String) -> Allgemeine Internet-Adresse
34
+ - email (String) -> Allgemeine Email-Adresse
35
+ - addresses (Array (Address2)) -> Sammlung von Adressen für diese Firma (i.A. aus der Swissmedic-Registrationsurkunde)
36
+ - contact (String) -> Vorname und Name der Kontaktperson
37
+ - contact_email (String) -> Kontakt-Email
38
+
39
+ Address2:
40
+ - type (String) -> Adresstyp: at_work | at_private | at_praxis
41
+ - title (String) -> Titel und/oder Anrede
42
+ - name (String) -> Name wie in der Adresse gewünscht
43
+ - additional_lines (Array (String)) -> Zusätzliche Adresszeilen vor Strasse/Nr.
44
+ - address (String) -> Strasse/Nr. (französische Schweiz: Nr./Strasse)
45
+ - location (String) -> PLZ/Ort
46
+ - canton (String) -> 2-Stelliges Kantonskürzel
47
+ - fon (Array (String)) -> Mit dieser Adresse verbundene Telefonnummern
48
+ - fax (Array (String)) -> Mit dieser Adresse verbundene Faxnummern
49
+
50
+ Registration:
51
+ - iksnr (String(5) NOT NULL) -> Registrations-Id der Swissmedic (ehemals IKS)
52
+ - registration_date (Date) -> Datum der ersten Zulassung in der Schweiz
53
+ - revision_date (Date) -> Datum der letzen gültigen Registrationsurkunde
54
+ - expiration_date (Date) -> Ende der Gültigkeit der letzen gültigen Registrationsurkunde
55
+ - inactive_date (Date) -> Falls ein Produkt unabhängig der Swissmedic ausser Handel genommen wird: Datum der Ausserhandelnahme
56
+ - sequences (Hash (Sequence.seqnr, Sequence)) -> Sequenzen der Registration (siehe Sequence)
57
+ - indication (Indication) -> Indikationsbezeichnung aus der Registrationsurkunde
58
+ - generic_type (Symbol) -> siehe Glossar (GenericType)
59
+ - complementary_type(Symbol) -> siehe Glossar (ComplementaryType)
60
+ - export_flag (Boolean) -> Produkt ist nur für den Export bestimmt
61
+ - fachinfo_oid (Integer) -> Verbindungsschlüssel zur Fachinformation (in fachinfo.yaml)
62
+
63
+ Sequence:
64
+ - seqnr (String, NOT NULL) -> Sequenznumerierung aus der Registrationsurkunde
65
+ - name_base (String) -> Hauptname der Sequenz aus der Registrationsurkunde, enthält z.T. Dosisangaben.
66
+ - name_descr (String) -> Zusatzname der Sequenz aus der Registrationsurkunde, z.B. 'Tabletten'
67
+ - atc_class (AtcClass) -> Atc-Klassierung der Sequenz (siehe AtcClass)
68
+ - composition_text (String) -> Text der Zusammensetzung.
69
+ - compositions (Array (Composition)) -> Zusammensetzungen (siehe Composition)
70
+ - packages (Hash (Package.ikscd, Package) -> Packungen der Sequenz (siehe Package)
71
+
72
+ Composition:
73
+ - galenic_form (GalenicForm) -> Galenische Form
74
+ - active_agents (Array (ActiveAgent) -> Wirkstoff/Dosis
75
+
76
+ Package:
77
+ - ikscd (String(3), NOT NULL) -> Packungsnummer. Ergibt zusammen mit Registration.iksnr die 8-Stellige Swissmedic-Nummer.
78
+ - descr (String) -> Zusätzlicher Beschreibungstext. Selten.
79
+ - ikscat (String) -> Abgabekategorie. A-E
80
+ - parts (Array (Part)) -> Packungsbestandteile (siehe Part)
81
+ - out_of_trade (Boolean) -> Nicht im Handel erhältlich
82
+ - price_exfactory (Integer) -> Exfactorypreis in Rappen
83
+ - price_public (Integer) -> Publikumspreis in Rappen
84
+ - sl_entry (SlEntry) -> Eintrag in der SL, NULL = Nein, SlEntry = Ja.
85
+ - ean13 (String) -> Ean13 des Produkts
86
+ - narcotics (Array (String)) -> Betäubungsmitteleinträge: CAS Registry Numbers
87
+ - pharmacode (String) -> Pharmacode gemäss RefData
88
+ - lppv (Boolean) -> Produkt ist in LPPV
89
+ - has_generic (Boolean) -> Es gibt Generika zu diesem Produkt
90
+ - deductible (Integer) -> Selbstbehalt in Prozent
91
+
92
+ Part:
93
+ - composition (Composition) -> Zusammensetzung dieses Bestandteils
94
+ - multi: (Integer) -> _5_ x 10 + 10 Ampullen à 15 ml
95
+ - count: (Integer) -> 5 x _10_ + 10 Ampullen à 15 ml
96
+ - addition: (Integer) -> 5 x 10 + _10_ Ampullen à 15 ml
97
+ - commercial_form: (CommercialForm) -> 5 x 10 + 10 _Ampullen_ à 15 ml
98
+ - measure: (Dose) -> 5 x 10 + 10 Ampullen à _15 ml_
99
+
100
+ CommercialForm:
101
+ - oid (Integer, NOT NULL) -> Unique Identifier
102
+ - descriptions (SimpleLanguage::Descriptions (String, String)) -> Sprache, Bezeichnung. siehe Glossar (SimpleLanguage::Descriptions)
103
+
104
+ AtcClass:
105
+ - code (String(1-7), NOT NULL)-> Atc-Code. siehe Glossar (AtcCode)
106
+ - descriptions (SimpleLanguage::Descriptions (String, String)) -> Sprache, Bezeichnung. siehe Glossar (SimpleLanguage::Descriptions)
107
+ - guidelines (Text::Document) -> Guidelines der WHO zum Atc-Code. Sprache: en
108
+ - ddd_guidelines (Text::Document) -> Guidelines der WHO zu den DailyDoses. Sprache: en
109
+ - ddds (Hash (DDD.administration_route, DDD) -> DailyDrugDose Informationen der WHO. siehe Glossar (DailyDrugDose)
110
+
111
+ GalenicForm:
112
+ - oid (Integer, NOT NULL) -> Unique Identifier
113
+ - descriptions (SimpleLanguage::Descriptions (String, String)) -> Sprache, Bezeichnung. siehe Glossar (SimpleLanguage::Descriptions)
114
+ - galenic_group (GalenicGroup) -> siehe Glossar (GalenicGroup)
115
+
116
+ ActiveAgent:
117
+ - substance (Substance, NOT NULL) -> Substanz/Wirkstoff
118
+ - dose (Dose) -> Dosis
119
+
120
+ SlEntry:
121
+ - bsv_dossier (String) -> BSV-Dossier-Nummer
122
+ - introduction_date (Date) -> Datum der Aufnahme in die Spezialitätenliste
123
+ - limitation (Boolean) -> Limitation Ja/Nein
124
+ - limitation_points (Integer) -> Limitationspunkte
125
+ - limitation_text (LimitationText) -> Limitationstexte in 3 Sprachen: de/it/fr
126
+
127
+ Indication:
128
+ - oid (Integer, NOT NULL) -> Unique Identifier
129
+ - descriptions (SimpleLanguage::Descriptions (String, String)) -> Sprache, Indikationstext. siehe Glossar (SimpleLanguage::Descriptions)
130
+
131
+ Substance:
132
+ - oid (Integer, NOT NULL) -> Unique Identifier
133
+ - descriptions (SimpleLanguage::Descriptions (String, String)) -> Sprache, Substanzname. siehe Glossar (SimpleLanguage::Descriptions)
134
+ - synonyms (Array (String)) -> Weitere bezeichnungen
135
+ - effective_form (Substance) -> Wirkform
136
+ - narcotic (String) -> CAS Registry Number
137
+ - swissmedic_code (String) -> Substanz-Code der Swissmedic. siehe Glossar (Swissmedic-Code)
138
+
139
+ Dose:
140
+ - not_normalized (String) -> Ursprüngliche Text-repräsentation
141
+ - val (Float, NOT NULL) -> Wert/Grösse der Dosis (normalisiert, siehe Glossar)
142
+ - unit (String) -> Einheit der Dosis
143
+ - scale (Dose) -> Skalierungsfaktor (Umkehrung des Normalisierungsfaktors)
144
+
145
+ AtcClass::DDD:
146
+ - administration_route (String, NOT NULL) -> Route of Administration, Codiert gemäss WHO. Diverse Werte.
147
+ - dose (Dose) -> Empfohlene Tagesdosis für diese Route of Administration gemäss WHO.
148
+ - note (String) -> Bemerkung zu dieser DDD. Sprache: en
149
+
150
+ LimitationText:
151
+ - descriptions (SimpleLanguage::Descriptions (String, String)) -> Sprache, Limitationstext. siehe Glossar (SimpleLanguage::Descriptions)
152
+
153
+ GalenicGroup:
154
+ - oid (Integer, NOT NULL) -> Unique Identifier
155
+ - descriptions (SimpleLanguage::Descriptions (String, String)) -> Sprache, Bezeichnung. siehe Glossar (SimpleLanguage::Descriptions)
156
+
157
+ Text::Document:
158
+ - descriptions (SimpleLanguage::Descriptions (String, Text::Chapter)) -> Sprache, Formatierter Text
159
+
160
+ Text::Chapter:
161
+ - heading (String) -> Titel
162
+ - sections (Array (Text::Section)) -> Abschnitte
163
+
164
+ Text::Section:
165
+ - subheading (String) -> Abschnitt-Titel
166
+ - paragraphs (Array (Text::Paragraph)) -> Absätze
167
+
168
+ Text::Paragraph:
169
+ - formats (Array (Text::Format)) -> Formatdefinitionen
170
+ - text (String) -> unformatierter Text
171
+ - preformatted (Boolean) -> Wenn ja, sollte whitespace 1:1 übernommen werden.
172
+
173
+ Text::Format:
174
+ - values (Array (Symbol)) -> mögliche Werte: alle Kombinationen von :bold, :italic und :symbol. Wenn Symbol, dann ist der Betreffende Text im Symbol-Font darzustellen.
175
+ - start (Integer NOT NULL) -> 0-N Char-Position innerhalb des Paragraphs an welchem das Format beginnt.
176
+ - end (Integer NOT NULL) -> 1-N, -1. Wenn -1, gilt das Format bis zum Ende des Paragraphs.
177
+
178
+
179
+ ## Glossar ##
180
+ * AtcCode:
181
+ Anatomisch-Therapeutisch-Chemischer Code der durch die WHO vergeben wird. Hat 5 Ebenen:
182
+ Level 1: C -> Anatomische Gruppierung, z.B. A: Alimentäres System und Stoffwechsel
183
+ Level 2: +NN -> Therapeutische Gruppierung, z.B. A02: Mittel bei Säure bedingten Erkrankungen
184
+ Level 3: +C -> Therapeutische Untergruppe, z.B. A02A: Antacida
185
+ Level 4: +C -> Chemische Gruppierung, z.B. A02AA: Magnesium-haltige Verbindungen
186
+ Level 5: +NN -> Wirkstoff(-Kombination), z.B. A02AA01: Magnesiumcarbonat
187
+
188
+ * CAS Registry Number
189
+ http://www.cas.org/EO/regsys.html
190
+
191
+ * ComplementaryType:
192
+ Komplementärprodukt-Typ. Kann in Company oder Registration gesetzt sein zu einem von 5 Werten:
193
+ - :complementary -> Komplementärprodukte (allgemein)
194
+ - :homeopathy -> Homöopathische Produkte
195
+ - :anthroposophy -> Heilmittel auf Grundlage antroposophischer Erkenntnis
196
+ - :phytotherapy -> Phytotherapeutische Produkte
197
+ - :unknown / NULL -> Unbekannt / nicht gesetzt
198
+
199
+ * DailyDrugDose
200
+ Richtlinien der WHO zur Dosierung von Medikamenten: http://www.whocc.no/atcddd/
201
+
202
+ * Date:
203
+ serialisiert in der Form YYYY-MM-DD
204
+
205
+ * GalenicGroup:
206
+ Gruppierung von Galenischen Formen. Alle Galenischen Formen mit der gleichen Galenischen Gruppe gelten für Vergleichszwecke als equivalent.
207
+ Ausnahme: die Galenischen Formen in der Galenischen Gruppe mit der oid 1 ('Unbekannt') sind nicht equivalent.
208
+
209
+ * GenericType:
210
+ Produkt-Typ. Kann in Company oder Registration gesetzt sein zu einem von 4 Werten:
211
+ - :original -> Originalprodukt
212
+ - :generic -> Generikum
213
+ - :complementary -> Produkt der Komplementärmedizin
214
+ - :unknown / NULL -> Unbekannt / nicht gesetzt
215
+
216
+ Ist Registration.generic_type gesetzt, so gilt immer dieser.
217
+ Ist Registration.generic_type nicht gesetzt, und Company.generic_type ist gesetzt so gilt Company.generic_type.
218
+ Ist weder Registration.generic_type noch Company.generic_type gesetzt, so ist der Produkt-Typ :unknown.
219
+
220
+ * Hash
221
+ Hash-Table. Unsortierte, indexierte Collection.
222
+
223
+ * Normalisiert
224
+ Dosis-Werte, die einen Nenner != 1 haben, werden normalisiert. So wird aus
225
+ 5mg/2ml der normalisierte Wert 2.5 mg/ml. Multipliziert mit dem Skalierungsfaktor
226
+ 2ml ergibt dies die absolute Wirkstoffmenge von 5mg.
227
+
228
+ * Sequence, Sequenz:
229
+ Bezeichnung für die Gruppierung aller Packungsgrössen einer Registration, deren Dosierung/Zusammensetzung identisch ist.
230
+
231
+ * SimpleLanguage::Descriptions:
232
+ Subklasse von Hash. Key-Value pairs für Sprache/Text, wobei folgende Werte als Schlüssel vorkommen:
233
+ - de -> Deutsch
234
+ - fr -> Französisch
235
+ - it -> Italienisch
236
+ - en -> Englisch
237
+ - lt -> Latein
238
+
239
+ * Swissmedic-Code
240
+ Substanz-Code der Swissmedic. Datenquelle: Betäubungsmittelliste (als GTIN).
241
+ GTIN = 7611 + swissmedic_code + Prüfziffer.
242
+
243
+ * Symbol:
244
+ Interne Repräsentation eines Namens. In anderen Programmiersprachen auch Atom.
245
+
246
+ * YAML
247
+ Yet Another Markup Language. Offener Standard, beschrieben unter http://www.yaml.org
248
+
249
+ * Version
250
+ Versionsnummern bezeichnen Änderungen nach dem Schema "Major.Minor.Documentation"
251
+ - Major: Komplett neuer Aufbau des Exports
252
+ - Minor: Kleinere Änderungen am Export (z.B. Refactoring von Adressangaben in eine Address2-Klasse)
253
+ - Documentation: Ergänzungen und Änderungen im Datenbeschrieb, die keine Änderung des Exports als Ursache haben.
254
+ Die komplette Version-History ist zu finden unter:
255
+ http://scm.ywesee.com/?p=oddb.org;a=history;f=doc/resources/downloads/datadesc/oddb.yaml.txt