big_register 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
data/.gitignore ADDED
@@ -0,0 +1,22 @@
1
+ *.gem
2
+ *.rbc
3
+ .bundle
4
+ .config
5
+ coverage
6
+ InstalledFiles
7
+ lib/bundler/man
8
+ pkg
9
+ rdoc
10
+ spec/reports
11
+ test/tmp
12
+ test/version_tmp
13
+ tmp
14
+ rspec.html
15
+
16
+ # RBX files
17
+ .rbx/
18
+
19
+ # YARD artifacts
20
+ .yardoc
21
+ _yardoc
22
+ doc/
data/.rspec ADDED
@@ -0,0 +1 @@
1
+ --color
data/.travis.yml ADDED
@@ -0,0 +1,4 @@
1
+ language: ruby
2
+ rvm:
3
+ - 1.9.3
4
+ script: ./script/ci
data/Gemfile ADDED
@@ -0,0 +1,4 @@
1
+ source 'https://rubygems.org'
2
+
3
+ # Specify your gem's dependencies in logs_tf.gemspec
4
+ gemspec
data/Gemfile.lock ADDED
@@ -0,0 +1,74 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ big_register (0.0.1)
5
+
6
+ GEM
7
+ remote: https://rubygems.org/
8
+ specs:
9
+ addressable (2.3.2)
10
+ akami (1.2.0)
11
+ gyoku (>= 0.4.0)
12
+ nokogiri (>= 1.4.0)
13
+ builder (3.1.4)
14
+ coderay (1.0.8)
15
+ crack (0.3.2)
16
+ diff-lcs (1.1.3)
17
+ gyoku (1.0.0)
18
+ builder (>= 2.1.2)
19
+ httpi (2.0.2)
20
+ rack
21
+ method_source (0.8.1)
22
+ multi_json (1.6.1)
23
+ nokogiri (1.5.6)
24
+ nori (2.0.3)
25
+ pry (0.9.12)
26
+ coderay (~> 1.0.5)
27
+ method_source (~> 0.8)
28
+ slop (~> 3.4)
29
+ pry-nav (0.2.3)
30
+ pry (~> 0.9.10)
31
+ rack (1.5.2)
32
+ rspec (2.12.0)
33
+ rspec-core (~> 2.12.0)
34
+ rspec-expectations (~> 2.12.0)
35
+ rspec-mocks (~> 2.12.0)
36
+ rspec-core (2.12.2)
37
+ rspec-expectations (2.12.1)
38
+ diff-lcs (~> 1.1.3)
39
+ rspec-mocks (2.12.2)
40
+ savon (2.1.0)
41
+ akami (~> 1.2.0)
42
+ builder (>= 2.1.2)
43
+ gyoku (~> 1.0.0)
44
+ httpi (~> 2.0.2)
45
+ nokogiri (>= 1.4.0)
46
+ nori (~> 2.0.3)
47
+ wasabi (~> 3.0.0)
48
+ simplecov (0.7.1)
49
+ multi_json (~> 1.0)
50
+ simplecov-html (~> 0.7.1)
51
+ simplecov-html (0.7.1)
52
+ slop (3.4.3)
53
+ spec_coverage (0.0.5)
54
+ rspec (~> 2.0)
55
+ simplecov
56
+ vcr (2.4.0)
57
+ wasabi (3.0.0)
58
+ httpi (~> 2.0)
59
+ nokogiri (>= 1.4.0)
60
+ webmock (1.9.0)
61
+ addressable (>= 2.2.7)
62
+ crack (>= 0.1.7)
63
+
64
+ PLATFORMS
65
+ ruby
66
+
67
+ DEPENDENCIES
68
+ big_register!
69
+ pry-nav (~> 0.2.3)
70
+ rspec (~> 2.12.0)
71
+ savon (~> 2.1.0)
72
+ spec_coverage (~> 0.0.5)
73
+ vcr (~> 2.4.0)
74
+ webmock
data/README.md ADDED
@@ -0,0 +1,4 @@
1
+ big_register
2
+ ============
3
+
4
+ Gem to query the BIG register
@@ -0,0 +1,24 @@
1
+ # -*- encoding: utf-8 -*-
2
+ require File.expand_path('../lib/big_register/version', __FILE__)
3
+
4
+ Gem::Specification.new do |gem|
5
+ gem.name = 'big_register'
6
+ gem.version = BIGRegister::VERSION
7
+ gem.date = '2013-02-19'
8
+ gem.summary = "A gem to query the BIG register"
9
+ gem.description = "A gem to query the BIG register"
10
+ gem.authors = ["Arie"]
11
+ gem.email = 'rubygems@ariekanarie.nl'
12
+ gem.files = `git ls-files`.split($\)
13
+ gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
14
+ gem.require_paths = ["lib"]
15
+ gem.homepage = 'http://github.com/finalist/big_register'
16
+
17
+ gem.add_dependency "savon", "~> 2.1.0"
18
+
19
+ gem.add_development_dependency "pry-nav", "~> 0.2.3"
20
+ gem.add_development_dependency "rspec", "~> 2.12.0"
21
+ gem.add_development_dependency "spec_coverage", "~> 0.0.5"
22
+ gem.add_development_dependency "vcr", "~> 2.4.0"
23
+ gem.add_development_dependency "webmock"
24
+ end
@@ -0,0 +1,63 @@
1
+ module BIGRegister
2
+ class Client
3
+
4
+ SPECIALISM = {"2" => "Allergologie", "3" => "Anesthesiologie","4" => "Algemene gezondheidszorg",
5
+ "5" => "Medische milieukunde", "6" => "Tuberculosebestrijding", "7" => "Arbeid en gezondheid",
6
+ "8" => "Arbeid en gezondheid - bedrijfsgeneeskunde", "10" => "Cardiologie", "11" => "Cardio-thoracale chirurgie",
7
+ "12" => "Dermatologie en venerologie", "13" => "Leer van maag-darm-leverziekten", "14" => "Heelkunde",
8
+ "15" => "Huisartsgeneeskunde", "16" => "Inwendige geneeskunde", "17" => "Jeugdgezondheidszorg", "18" => "Keel- neus- oorheelkunde",
9
+ "19" => "Kindergeneeskunde", "20" => "Klinische chemie", "21" => "Klinische genetica", "22" => "Klinische geriatrie",
10
+ "23" => "Longziekten en tuberculose", "24" => "Medische microbiologie", "25" => "Neurochirurgie",
11
+ "26" => "Neurologie", "30" => "Nucleaire geneeskunde", "31" => "Oogheelkunde", "32" => "Orthopedie",
12
+ "33" => "Pathologie", "34" => "Plastische chirurgie", "35" => "Psychiatrie", "39" => "Radiologie",
13
+ "40" => "Radiotherapie", "41" => "Reumatologie", "42" => "Revalidatiegeneeskunde", "43" => "Maatschappij en gezondheid",
14
+ "44" => "Sportgeneeskunde", "45" => "Urologie", "46" => "Obstetrie en gynaecologie", "47" => "Verpleeghuisgeneeskunde",
15
+ "48" => "Arbeid en gezondheid - verzekeringsgeneeskunde", "50" => "Zenuw- en zielsziekten", "53" => "Dento-maxillaire orthopaedie",
16
+ "54" => "Mondziekten en kaakchirurgie", "55" => "Maatschappij en gezondheid", "56" => "Medische zorg voor verstandelijke gehandicapten",
17
+ "60" => "Ziekenhuisfarmacie", "61" => "Klinische psychologie", "62" => "Interne geneeskunde-allergologie"
18
+ }
19
+
20
+ def initialize
21
+ wsdl = "http://webservices-acc.cibg.nl/Ribiz/OpenbaarV2.asmx?wsdl"
22
+ @client = Savon.client(wsdl: wsdl, log: false)
23
+ end
24
+
25
+ def list_hcp(initials, name, gender, specialism)
26
+ message = create_message(initials, name, gender, specialism)
27
+ response = @client.call(:list_hcp_approx3, message: message)
28
+ result = format_response(response)
29
+ result = [result] if result.class == Hash
30
+ result
31
+ end
32
+
33
+ def find_by_big_number(big_number)
34
+ message = {
35
+ "WebSite" => "Ribiz",
36
+ "RegistrationNumber" => big_number
37
+ }
38
+ response = @client.call(:list_hcp_approx3, message: message)
39
+ format_response(response)
40
+ end
41
+
42
+ private
43
+
44
+ def create_message(initials, name, gender, specialism)
45
+ message = {
46
+ "WebSite" => "Ribiz",
47
+ "ProfessionalGroup" => "01",
48
+ }
49
+ message["Initials"] = initials unless initials.blank?
50
+ message["Name"] = name unless name.blank?
51
+ message["Gender"] = gender unless gender.blank?
52
+ message["TypeOfSpecialism"] = specialism.to_i unless specialism.blank?
53
+ message
54
+ end
55
+
56
+ def format_response(response)
57
+ result = response.body[:list_hcp_approx3_result][:list_hcp_approx] ||= []
58
+ result = result[:list_hcp_approx3] unless result.empty?
59
+ result
60
+ end
61
+
62
+ end
63
+ end
@@ -0,0 +1,3 @@
1
+ module BIGRegister
2
+ VERSION = "0.0.1"
3
+ end
@@ -0,0 +1,3 @@
1
+ require "savon"
2
+ require "big_register/version"
3
+ Dir[File.dirname(__FILE__) + '/big_register/*.rb'].each {|file| require file }
data/script/bundler ADDED
@@ -0,0 +1,10 @@
1
+ #!/bin/bash
2
+ set -e
3
+
4
+ echo "--- Making sure bundler is installed"
5
+
6
+ gem which bundler &> /dev/null || gem install bundler --no-ri --no-rdoc
7
+
8
+ echo "--- Installing gems"
9
+
10
+ bundle check --no-color || time bundle install --no-color
data/script/ci ADDED
@@ -0,0 +1,22 @@
1
+ run() {
2
+ time bundle exec $*
3
+ }
4
+
5
+ echo "--- Starting continuous integration build"
6
+
7
+ ./script/bundler
8
+
9
+ if [[ -d coverage ]]; then
10
+ echo "Removing old coverage report"
11
+ rm -r coverage
12
+ fi
13
+
14
+ echo "--- Running RSpec"
15
+
16
+ run rspec --color spec --format SpecCoverage --format progress --format html --out rspec.html
17
+ rspec=$?
18
+
19
+ if [[ $rspec -ne 0 ]]; then
20
+ echo "--- Some tests have failed."
21
+ exit 1
22
+ fi
@@ -0,0 +1,313 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: http://webservices-acc.cibg.nl/Ribiz/OpenbaarV2.asmx?wsdl
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ Accept:
11
+ - ! '*/*'
12
+ User-Agent:
13
+ - Ruby
14
+ response:
15
+ status:
16
+ code: 200
17
+ message: OK
18
+ headers:
19
+ Cache-Control:
20
+ - private, max-age=0
21
+ Content-Type:
22
+ - text/xml; charset=utf-8
23
+ Server:
24
+ - Microsoft-IIS/7.5
25
+ X-Aspnet-Version:
26
+ - 2.0.50727
27
+ X-Powered-By:
28
+ - ASP.NET
29
+ Date:
30
+ - Tue, 19 Feb 2013 12:33:51 GMT
31
+ Transfer-Encoding:
32
+ - chunked
33
+ Proxy-Connection:
34
+ - Keep-Alive
35
+ Connection:
36
+ - Keep-Alive
37
+ body:
38
+ encoding: US-ASCII
39
+ string: ! "<?xml version=\"1.0\" encoding=\"utf-8\"?>\r\n<wsdl:definitions xmlns:s=\"http://www.w3.org/2001/XMLSchema\"
40
+ xmlns:soap12=\"http://schemas.xmlsoap.org/wsdl/soap12/\" xmlns:mime=\"http://schemas.xmlsoap.org/wsdl/mime/\"
41
+ xmlns:tns=\"http://services.cibg.nl/ExternalUser\" xmlns:soap=\"http://schemas.xmlsoap.org/wsdl/soap/\"
42
+ xmlns:tm=\"http://microsoft.com/wsdl/mime/textMatching/\" xmlns:http=\"http://schemas.xmlsoap.org/wsdl/http/\"
43
+ xmlns:soapenc=\"http://schemas.xmlsoap.org/soap/encoding/\" targetNamespace=\"http://services.cibg.nl/ExternalUser\"
44
+ xmlns:wsdl=\"http://schemas.xmlsoap.org/wsdl/\">\r\n <wsdl:types>\r\n <s:schema
45
+ elementFormDefault=\"qualified\" targetNamespace=\"http://services.cibg.nl/ExternalUser\">\r\n
46
+ \ <s:element name=\"listHcpApproxRequest\" type=\"tns:ListHcpApproxRequest\"
47
+ />\r\n <s:complexType name=\"ListHcpApproxRequest\">\r\n <s:sequence>\r\n
48
+ \ <s:element minOccurs=\"1\" maxOccurs=\"1\" name=\"WebSite\" type=\"tns:SourceWebSite\"
49
+ />\r\n <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"Name\" type=\"s:string\"
50
+ />\r\n <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"Initials\"
51
+ type=\"s:string\" />\r\n <s:element minOccurs=\"0\" maxOccurs=\"1\"
52
+ name=\"Prefix\" type=\"s:string\" />\r\n <s:element minOccurs=\"0\"
53
+ maxOccurs=\"1\" name=\"Street\" type=\"s:string\" />\r\n <s:element
54
+ minOccurs=\"0\" maxOccurs=\"1\" name=\"Gender\" type=\"s:string\" />\r\n <s:element
55
+ minOccurs=\"0\" maxOccurs=\"1\" name=\"HouseNumber\" type=\"s:string\" />\r\n
56
+ \ <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"Postalcode\" type=\"s:string\"
57
+ />\r\n <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"City\" type=\"s:string\"
58
+ />\r\n <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"RegistrationNumber\"
59
+ type=\"s:string\" />\r\n <s:element minOccurs=\"0\" maxOccurs=\"1\"
60
+ name=\"DateOfBirth\" type=\"s:string\" />\r\n <s:element minOccurs=\"0\"
61
+ maxOccurs=\"1\" name=\"ProfessionalGroup\" type=\"s:string\" />\r\n <s:element
62
+ minOccurs=\"0\" maxOccurs=\"1\" name=\"TypeOfSpecialism\" type=\"s:string\"
63
+ />\r\n </s:sequence>\r\n </s:complexType>\r\n <s:simpleType
64
+ name=\"SourceWebSite\">\r\n <s:restriction base=\"s:string\">\r\n <s:enumeration
65
+ value=\"None\" />\r\n <s:enumeration value=\"Ribiz\" />\r\n <s:enumeration
66
+ value=\"Skp\" />\r\n </s:restriction>\r\n </s:simpleType>\r\n
67
+ \ <s:element name=\"ListHcpApprox3Result\" type=\"tns:ListHcpApproxResponse3\"
68
+ />\r\n <s:complexType name=\"ListHcpApproxResponse3\">\r\n <s:sequence>\r\n
69
+ \ <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"ListHcpApprox\"
70
+ type=\"tns:ArrayOfListHcpApprox3\" />\r\n </s:sequence>\r\n </s:complexType>\r\n
71
+ \ <s:complexType name=\"ArrayOfListHcpApprox3\">\r\n <s:sequence>\r\n
72
+ \ <s:element minOccurs=\"0\" maxOccurs=\"unbounded\" name=\"ListHcpApprox3\"
73
+ nillable=\"true\" type=\"tns:ListHcpApprox3\" />\r\n </s:sequence>\r\n
74
+ \ </s:complexType>\r\n <s:complexType name=\"ListHcpApprox3\">\r\n
75
+ \ <s:sequence>\r\n <s:element minOccurs=\"1\" maxOccurs=\"1\"
76
+ name=\"HcpNumber\" type=\"s:decimal\" />\r\n <s:element minOccurs=\"0\"
77
+ maxOccurs=\"1\" name=\"BirthSurname\" type=\"s:string\" />\r\n <s:element
78
+ minOccurs=\"0\" maxOccurs=\"1\" name=\"MailingName\" type=\"s:string\" />\r\n
79
+ \ <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"Prefix\" type=\"s:string\"
80
+ />\r\n <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"PartnerName\"
81
+ type=\"s:string\" />\r\n <s:element minOccurs=\"0\" maxOccurs=\"1\"
82
+ name=\"PartnerNamePrefix\" type=\"s:string\" />\r\n <s:element minOccurs=\"0\"
83
+ maxOccurs=\"1\" name=\"Initial\" type=\"s:string\" />\r\n <s:element
84
+ minOccurs=\"0\" maxOccurs=\"1\" name=\"Gender\" type=\"s:string\" />\r\n <s:element
85
+ minOccurs=\"0\" maxOccurs=\"1\" name=\"WorkAddress1\" type=\"tns:Address\"
86
+ />\r\n <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"WorkAddress2\"
87
+ type=\"tns:Address\" />\r\n <s:element minOccurs=\"0\" maxOccurs=\"1\"
88
+ name=\"WorkAddress3\" type=\"tns:Address\" />\r\n <s:element minOccurs=\"0\"
89
+ maxOccurs=\"1\" name=\"ArticleRegistration\" type=\"tns:ArrayOfArticleRegistrationExtApp\"
90
+ />\r\n <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"Specialism\"
91
+ type=\"tns:ArrayOfSpecialismExtApp\" />\r\n <s:element minOccurs=\"0\"
92
+ maxOccurs=\"1\" name=\"Mention\" type=\"tns:ArrayOfMentionExtApp\" />\r\n
93
+ \ <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"JudgmentProvision\"
94
+ type=\"tns:ArrayOfJudgmentProvisionExtApp\" />\r\n <s:element minOccurs=\"0\"
95
+ maxOccurs=\"1\" name=\"Limitation\" type=\"tns:ArrayOfLimitationExtApp\" />\r\n
96
+ \ </s:sequence>\r\n </s:complexType>\r\n <s:complexType name=\"Address\">\r\n
97
+ \ <s:sequence>\r\n <s:element minOccurs=\"0\" maxOccurs=\"1\"
98
+ name=\"AddressTo\" type=\"s:string\" />\r\n <s:element minOccurs=\"0\"
99
+ maxOccurs=\"1\" name=\"StreetName\" type=\"s:string\" />\r\n <s:element
100
+ minOccurs=\"0\" maxOccurs=\"1\" name=\"HouseNumber\" type=\"s:string\" />\r\n
101
+ \ <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"HouseNumberAddition\"
102
+ type=\"s:string\" />\r\n <s:element minOccurs=\"0\" maxOccurs=\"1\"
103
+ name=\"PostalCode\" type=\"s:string\" />\r\n <s:element minOccurs=\"0\"
104
+ maxOccurs=\"1\" name=\"City\" type=\"s:string\" />\r\n <s:element
105
+ minOccurs=\"0\" maxOccurs=\"1\" name=\"ForeignAddress\" type=\"s:string\"
106
+ />\r\n <s:element minOccurs=\"1\" maxOccurs=\"1\" name=\"CountryCode\"
107
+ nillable=\"true\" type=\"s:decimal\" />\r\n <s:element minOccurs=\"0\"
108
+ maxOccurs=\"1\" name=\"Email\" type=\"s:string\" />\r\n <s:element
109
+ minOccurs=\"0\" maxOccurs=\"1\" name=\"TelephoneNumber\" type=\"s:string\"
110
+ />\r\n </s:sequence>\r\n </s:complexType>\r\n <s:complexType
111
+ name=\"ArrayOfArticleRegistrationExtApp\">\r\n <s:sequence>\r\n <s:element
112
+ minOccurs=\"0\" maxOccurs=\"unbounded\" name=\"ArticleRegistrationExtApp\"
113
+ nillable=\"true\" type=\"tns:ArticleRegistrationExtApp\" />\r\n </s:sequence>\r\n
114
+ \ </s:complexType>\r\n <s:complexType name=\"ArticleRegistrationExtApp\">\r\n
115
+ \ <s:sequence>\r\n <s:element minOccurs=\"1\" maxOccurs=\"1\"
116
+ name=\"ArticleRegistrationNumber\" type=\"s:decimal\" />\r\n <s:element
117
+ minOccurs=\"1\" maxOccurs=\"1\" name=\"ArticleRegistrationStartDate\" type=\"s:dateTime\"
118
+ />\r\n <s:element minOccurs=\"1\" maxOccurs=\"1\" name=\"ArticleRegistrationEndDate\"
119
+ type=\"s:dateTime\" />\r\n <s:element minOccurs=\"0\" maxOccurs=\"1\"
120
+ name=\"ProfessionalGroupCode\" type=\"s:string\" />\r\n </s:sequence>\r\n
121
+ \ </s:complexType>\r\n <s:complexType name=\"ArrayOfSpecialismExtApp\">\r\n
122
+ \ <s:sequence>\r\n <s:element minOccurs=\"0\" maxOccurs=\"unbounded\"
123
+ name=\"SpecialismExtApp\" nillable=\"true\" type=\"tns:SpecialismExtApp\"
124
+ />\r\n </s:sequence>\r\n </s:complexType>\r\n <s:complexType
125
+ name=\"SpecialismExtApp\">\r\n <s:sequence>\r\n <s:element
126
+ minOccurs=\"1\" maxOccurs=\"1\" name=\"SpecialismId\" type=\"s:decimal\" />\r\n
127
+ \ <s:element minOccurs=\"1\" maxOccurs=\"1\" name=\"ArticleRegistrationNumber\"
128
+ type=\"s:decimal\" />\r\n <s:element minOccurs=\"1\" maxOccurs=\"1\"
129
+ name=\"StartDate\" type=\"s:dateTime\" />\r\n <s:element minOccurs=\"1\"
130
+ maxOccurs=\"1\" name=\"EndDate\" nillable=\"true\" type=\"s:dateTime\" />\r\n
131
+ \ <s:element minOccurs=\"1\" maxOccurs=\"1\" name=\"TypeOfSpecialismId\"
132
+ type=\"s:decimal\" />\r\n </s:sequence>\r\n </s:complexType>\r\n
133
+ \ <s:complexType name=\"ArrayOfMentionExtApp\">\r\n <s:sequence>\r\n
134
+ \ <s:element minOccurs=\"0\" maxOccurs=\"unbounded\" name=\"MentionExtApp\"
135
+ nillable=\"true\" type=\"tns:MentionExtApp\" />\r\n </s:sequence>\r\n
136
+ \ </s:complexType>\r\n <s:complexType name=\"MentionExtApp\">\r\n
137
+ \ <s:sequence>\r\n <s:element minOccurs=\"1\" maxOccurs=\"1\"
138
+ name=\"MentionId\" type=\"s:decimal\" />\r\n <s:element minOccurs=\"1\"
139
+ maxOccurs=\"1\" name=\"ArticleRegistrationNumber\" type=\"s:decimal\" />\r\n
140
+ \ <s:element minOccurs=\"1\" maxOccurs=\"1\" name=\"TypeOfMentionId\"
141
+ type=\"s:decimal\" />\r\n <s:element minOccurs=\"1\" maxOccurs=\"1\"
142
+ name=\"StartDate\" type=\"s:dateTime\" />\r\n <s:element minOccurs=\"1\"
143
+ maxOccurs=\"1\" name=\"EndDate\" nillable=\"true\" type=\"s:dateTime\" />\r\n
144
+ \ </s:sequence>\r\n </s:complexType>\r\n <s:complexType name=\"ArrayOfJudgmentProvisionExtApp\">\r\n
145
+ \ <s:sequence>\r\n <s:element minOccurs=\"0\" maxOccurs=\"unbounded\"
146
+ name=\"JudgmentProvisionExtApp\" nillable=\"true\" type=\"tns:JudgmentProvisionExtApp\"
147
+ />\r\n </s:sequence>\r\n </s:complexType>\r\n <s:complexType
148
+ name=\"JudgmentProvisionExtApp\">\r\n <s:sequence>\r\n <s:element
149
+ minOccurs=\"1\" maxOccurs=\"1\" name=\"ArticleNumber\" type=\"s:decimal\"
150
+ />\r\n <s:element minOccurs=\"1\" maxOccurs=\"1\" name=\"Id\" type=\"s:decimal\"
151
+ />\r\n <s:element minOccurs=\"1\" maxOccurs=\"1\" name=\"StartDate\"
152
+ type=\"s:dateTime\" />\r\n <s:element minOccurs=\"0\" maxOccurs=\"1\"
153
+ name=\"PublicDescription\" type=\"s:string\" />\r\n <s:element minOccurs=\"1\"
154
+ maxOccurs=\"1\" name=\"EndDate\" nillable=\"true\" type=\"s:dateTime\" />\r\n
155
+ \ <s:element minOccurs=\"1\" maxOccurs=\"1\" name=\"Public\" type=\"s:boolean\"
156
+ />\r\n </s:sequence>\r\n </s:complexType>\r\n <s:complexType
157
+ name=\"ArrayOfLimitationExtApp\">\r\n <s:sequence>\r\n <s:element
158
+ minOccurs=\"0\" maxOccurs=\"unbounded\" name=\"LimitationExtApp\" nillable=\"true\"
159
+ type=\"tns:LimitationExtApp\" />\r\n </s:sequence>\r\n </s:complexType>\r\n
160
+ \ <s:complexType name=\"LimitationExtApp\">\r\n <s:sequence>\r\n
161
+ \ <s:element minOccurs=\"1\" maxOccurs=\"1\" name=\"LimitationId\"
162
+ type=\"s:decimal\" />\r\n <s:element minOccurs=\"1\" maxOccurs=\"1\"
163
+ name=\"ArticleRegistrationNumber\" type=\"s:decimal\" />\r\n <s:element
164
+ minOccurs=\"1\" maxOccurs=\"1\" name=\"CompetenceRegistrationId\" type=\"s:decimal\"
165
+ />\r\n <s:element minOccurs=\"1\" maxOccurs=\"1\" name=\"TypeLimitationId\"
166
+ type=\"s:decimal\" />\r\n <s:element minOccurs=\"0\" maxOccurs=\"1\"
167
+ name=\"Description\" type=\"s:string\" />\r\n <s:element minOccurs=\"1\"
168
+ maxOccurs=\"1\" name=\"StartDate\" nillable=\"true\" type=\"s:dateTime\" />\r\n
169
+ \ <s:element minOccurs=\"1\" maxOccurs=\"1\" name=\"EndDate\" nillable=\"true\"
170
+ type=\"s:dateTime\" />\r\n <s:element minOccurs=\"1\" maxOccurs=\"1\"
171
+ name=\"ExpirationEndDate\" nillable=\"true\" type=\"s:dateTime\" />\r\n <s:element
172
+ minOccurs=\"1\" maxOccurs=\"1\" name=\"MonthsValid\" type=\"s:int\" />\r\n
173
+ \ <s:element minOccurs=\"1\" maxOccurs=\"1\" name=\"YearsValid\" type=\"s:int\"
174
+ />\r\n </s:sequence>\r\n </s:complexType>\r\n <s:element
175
+ name=\"GetRibizReferenceData\">\r\n <s:complexType>\r\n <s:sequence>\r\n
176
+ \ <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"getCibgReferenceDataRequest\"
177
+ type=\"tns:GetRibizReferenceDataRequest\" />\r\n </s:sequence>\r\n
178
+ \ </s:complexType>\r\n </s:element>\r\n <s:complexType name=\"GetRibizReferenceDataRequest\"
179
+ />\r\n <s:element name=\"GetRibizReferenceDataResponse\">\r\n <s:complexType>\r\n
180
+ \ <s:sequence>\r\n <s:element minOccurs=\"0\" maxOccurs=\"1\"
181
+ name=\"GetRibizReferenceDataResult\" type=\"tns:GetRibizReferenceDataResponse\"
182
+ />\r\n </s:sequence>\r\n </s:complexType>\r\n </s:element>\r\n
183
+ \ <s:complexType name=\"GetRibizReferenceDataResponse\">\r\n <s:sequence>\r\n
184
+ \ <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"ProfessionalGroups\"
185
+ type=\"tns:ArrayOfProfessionalGroup\" />\r\n <s:element minOccurs=\"0\"
186
+ maxOccurs=\"1\" name=\"TypeOfSpecialisms\" type=\"tns:ArrayOfTypeOfSpecialism\"
187
+ />\r\n </s:sequence>\r\n </s:complexType>\r\n <s:complexType
188
+ name=\"ArrayOfProfessionalGroup\">\r\n <s:sequence>\r\n <s:element
189
+ minOccurs=\"0\" maxOccurs=\"unbounded\" name=\"ProfessionalGroup\" nillable=\"true\"
190
+ type=\"tns:ProfessionalGroup\" />\r\n </s:sequence>\r\n </s:complexType>\r\n
191
+ \ <s:complexType name=\"ProfessionalGroup\">\r\n <s:sequence>\r\n
192
+ \ <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"Code\" type=\"s:string\"
193
+ />\r\n <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"Description\"
194
+ type=\"s:string\" />\r\n <s:element minOccurs=\"0\" maxOccurs=\"1\"
195
+ name=\"DescriptionEnglish\" type=\"s:string\" />\r\n <s:element minOccurs=\"0\"
196
+ maxOccurs=\"1\" name=\"Title\" type=\"s:string\" />\r\n <s:element
197
+ minOccurs=\"1\" maxOccurs=\"1\" name=\"Article3\" type=\"s:boolean\" />\r\n
198
+ \ <s:element minOccurs=\"1\" maxOccurs=\"1\" name=\"Article34\" type=\"s:boolean\"
199
+ />\r\n <s:element minOccurs=\"1\" maxOccurs=\"1\" name=\"BusinessOwner\"
200
+ type=\"s:decimal\" />\r\n <s:element minOccurs=\"1\" maxOccurs=\"1\"
201
+ name=\"RequiredHoursForReregistration\" type=\"s:int\" />\r\n </s:sequence>\r\n
202
+ \ </s:complexType>\r\n <s:complexType name=\"ArrayOfTypeOfSpecialism\">\r\n
203
+ \ <s:sequence>\r\n <s:element minOccurs=\"0\" maxOccurs=\"unbounded\"
204
+ name=\"TypeOfSpecialism\" nillable=\"true\" type=\"tns:TypeOfSpecialism\"
205
+ />\r\n </s:sequence>\r\n </s:complexType>\r\n <s:complexType
206
+ name=\"TypeOfSpecialism\">\r\n <s:sequence>\r\n <s:element
207
+ minOccurs=\"1\" maxOccurs=\"1\" name=\"Code\" type=\"s:decimal\" />\r\n <s:element
208
+ minOccurs=\"0\" maxOccurs=\"1\" name=\"Description\" type=\"s:string\" />\r\n
209
+ \ <s:element minOccurs=\"0\" maxOccurs=\"1\" name=\"DescriptionEn\"
210
+ type=\"s:string\" />\r\n <s:element minOccurs=\"0\" maxOccurs=\"1\"
211
+ name=\"TitleOfSpecialist\" type=\"s:string\" />\r\n <s:element minOccurs=\"0\"
212
+ maxOccurs=\"1\" name=\"TitleOfSpecialistEn\" type=\"s:string\" />\r\n <s:element
213
+ minOccurs=\"0\" maxOccurs=\"1\" name=\"Register\" type=\"s:string\" />\r\n
214
+ \ <s:element minOccurs=\"1\" maxOccurs=\"1\" name=\"EndDate\" nillable=\"true\"
215
+ type=\"s:dateTime\" />\r\n <s:element minOccurs=\"0\" maxOccurs=\"1\"
216
+ name=\"ProfessionalGroupCode\" type=\"s:string\" />\r\n </s:sequence>\r\n
217
+ \ </s:complexType>\r\n </s:schema>\r\n </wsdl:types>\r\n <wsdl:message
218
+ name=\"ListHcpApprox3SoapIn\">\r\n <wsdl:part name=\"listHcpApproxRequest\"
219
+ element=\"tns:listHcpApproxRequest\" />\r\n </wsdl:message>\r\n <wsdl:message
220
+ name=\"ListHcpApprox3SoapOut\">\r\n <wsdl:part name=\"ListHcpApprox3Result\"
221
+ element=\"tns:ListHcpApprox3Result\" />\r\n </wsdl:message>\r\n <wsdl:message
222
+ name=\"GetRibizReferenceDataSoapIn\">\r\n <wsdl:part name=\"parameters\"
223
+ element=\"tns:GetRibizReferenceData\" />\r\n </wsdl:message>\r\n <wsdl:message
224
+ name=\"GetRibizReferenceDataSoapOut\">\r\n <wsdl:part name=\"parameters\"
225
+ element=\"tns:GetRibizReferenceDataResponse\" />\r\n </wsdl:message>\r\n
226
+ \ <wsdl:portType name=\"PublicV3Soap\">\r\n <wsdl:operation name=\"ListHcpApprox3\">\r\n
227
+ \ <wsdl:documentation xmlns:wsdl=\"http://schemas.xmlsoap.org/wsdl/\">Search
228
+ for health care professionals based on approx match</wsdl:documentation>\r\n
229
+ \ <wsdl:input message=\"tns:ListHcpApprox3SoapIn\" />\r\n <wsdl:output
230
+ message=\"tns:ListHcpApprox3SoapOut\" />\r\n </wsdl:operation>\r\n <wsdl:operation
231
+ name=\"GetRibizReferenceData\">\r\n <wsdl:documentation xmlns:wsdl=\"http://schemas.xmlsoap.org/wsdl/\">Returns
232
+ the RIBIZ reference data</wsdl:documentation>\r\n <wsdl:input message=\"tns:GetRibizReferenceDataSoapIn\"
233
+ />\r\n <wsdl:output message=\"tns:GetRibizReferenceDataSoapOut\" />\r\n
234
+ \ </wsdl:operation>\r\n </wsdl:portType>\r\n <wsdl:binding name=\"PublicV3Soap\"
235
+ type=\"tns:PublicV3Soap\">\r\n <soap:binding transport=\"http://schemas.xmlsoap.org/soap/http\"
236
+ />\r\n <wsdl:operation name=\"ListHcpApprox3\">\r\n <soap:operation
237
+ soapAction=\"http://services.cibg.nl/ExternalUser/ListHcpApprox3\" style=\"document\"
238
+ />\r\n <wsdl:input>\r\n <soap:body use=\"literal\" />\r\n </wsdl:input>\r\n
239
+ \ <wsdl:output>\r\n <soap:body use=\"literal\" />\r\n </wsdl:output>\r\n
240
+ \ </wsdl:operation>\r\n <wsdl:operation name=\"GetRibizReferenceData\">\r\n
241
+ \ <soap:operation soapAction=\"http://services.cibg.nl/ExternalUser/GetRibizReferenceData\"
242
+ style=\"document\" />\r\n <wsdl:input>\r\n <soap:body use=\"literal\"
243
+ />\r\n </wsdl:input>\r\n <wsdl:output>\r\n <soap:body use=\"literal\"
244
+ />\r\n </wsdl:output>\r\n </wsdl:operation>\r\n </wsdl:binding>\r\n
245
+ \ <wsdl:binding name=\"PublicV3Soap12\" type=\"tns:PublicV3Soap\">\r\n <soap12:binding
246
+ transport=\"http://schemas.xmlsoap.org/soap/http\" />\r\n <wsdl:operation
247
+ name=\"ListHcpApprox3\">\r\n <soap12:operation soapAction=\"http://services.cibg.nl/ExternalUser/ListHcpApprox3\"
248
+ style=\"document\" />\r\n <wsdl:input>\r\n <soap12:body use=\"literal\"
249
+ />\r\n </wsdl:input>\r\n <wsdl:output>\r\n <soap12:body use=\"literal\"
250
+ />\r\n </wsdl:output>\r\n </wsdl:operation>\r\n <wsdl:operation
251
+ name=\"GetRibizReferenceData\">\r\n <soap12:operation soapAction=\"http://services.cibg.nl/ExternalUser/GetRibizReferenceData\"
252
+ style=\"document\" />\r\n <wsdl:input>\r\n <soap12:body use=\"literal\"
253
+ />\r\n </wsdl:input>\r\n <wsdl:output>\r\n <soap12:body use=\"literal\"
254
+ />\r\n </wsdl:output>\r\n </wsdl:operation>\r\n </wsdl:binding>\r\n
255
+ \ <wsdl:service name=\"PublicV3\">\r\n <wsdl:port name=\"PublicV3Soap\"
256
+ binding=\"tns:PublicV3Soap\">\r\n <soap:address location=\"http://webservices-acc.cibg.nl/Ribiz/OpenbaarV2.asmx\"
257
+ />\r\n </wsdl:port>\r\n <wsdl:port name=\"PublicV3Soap12\" binding=\"tns:PublicV3Soap12\">\r\n
258
+ \ <soap12:address location=\"http://webservices-acc.cibg.nl/Ribiz/OpenbaarV2.asmx\"
259
+ />\r\n </wsdl:port>\r\n </wsdl:service>\r\n</wsdl:definitions>"
260
+ http_version:
261
+ recorded_at: Tue, 19 Feb 2013 12:33:51 GMT
262
+ - request:
263
+ method: post
264
+ uri: http://webservices-acc.cibg.nl/Ribiz/OpenbaarV2.asmx
265
+ body:
266
+ encoding: US-ASCII
267
+ string: <?xml version="1.0" encoding="UTF-8"?><env:Envelope xmlns:xsd="http://www.w3.org/2001/XMLSchema"
268
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:tns="http://services.cibg.nl/ExternalUser"
269
+ xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"><env:Body><tns:listHcpApproxRequest><tns:WebSite>Ribiz</tns:WebSite><tns:RegistrationNumber>29021600101</tns:RegistrationNumber></tns:listHcpApproxRequest></env:Body></env:Envelope>
270
+ headers:
271
+ Soapaction:
272
+ - ! '"http://services.cibg.nl/ExternalUser/ListHcpApprox3"'
273
+ Content-Type:
274
+ - text/xml;charset=UTF-8
275
+ Content-Length:
276
+ - '435'
277
+ Accept:
278
+ - ! '*/*'
279
+ User-Agent:
280
+ - Ruby
281
+ response:
282
+ status:
283
+ code: 200
284
+ message: OK
285
+ headers:
286
+ Cache-Control:
287
+ - private, max-age=0
288
+ Content-Type:
289
+ - text/xml; charset=utf-8
290
+ Server:
291
+ - Microsoft-IIS/7.5
292
+ X-Aspnet-Version:
293
+ - 2.0.50727
294
+ X-Powered-By:
295
+ - ASP.NET
296
+ Date:
297
+ - Tue, 19 Feb 2013 12:33:51 GMT
298
+ Content-Length:
299
+ - '1002'
300
+ Proxy-Connection:
301
+ - Keep-Alive
302
+ Connection:
303
+ - Keep-Alive
304
+ body:
305
+ encoding: US-ASCII
306
+ string: <?xml version="1.0" encoding="utf-8"?><soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
307
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><soap:Body><ListHcpApprox3Result
308
+ xmlns="http://services.cibg.nl/ExternalUser"><ListHcpApprox><ListHcpApprox3><HcpNumber>216001</HcpNumber><BirthSurname>Hollander</BirthSurname><MailingName>A.M.
309
+ den Hollander</MailingName><Prefix>den</Prefix><Initial>A.M.</Initial><Gender>M</Gender><ArticleRegistration><ArticleRegistrationExtApp><ArticleRegistrationNumber>29021600101</ArticleRegistrationNumber><ArticleRegistrationStartDate>1998-02-20T00:00:00</ArticleRegistrationStartDate><ArticleRegistrationEndDate>0001-01-01T00:00:00</ArticleRegistrationEndDate><ProfessionalGroupCode>01</ProfessionalGroupCode></ArticleRegistrationExtApp></ArticleRegistration><Specialism
310
+ /><Mention /><JudgmentProvision /><Limitation /></ListHcpApprox3></ListHcpApprox></ListHcpApprox3Result></soap:Body></soap:Envelope>
311
+ http_version:
312
+ recorded_at: Tue, 19 Feb 2013 12:33:51 GMT
313
+ recorded_with: VCR 2.4.0