refworks 0.0.2 → 0.0.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +8 -8
- data/README.md +4 -4
- data/lib/refworks/reference.rb +357 -1
- data/lib/refworks/reference/add/reference_add_request.rb +63 -0
- data/lib/refworks/reference/add/reference_add_response.rb +3 -0
- data/lib/refworks/reference/addcomment/reference_addcomment_request.rb +41 -0
- data/lib/refworks/reference/addcomment/reference_addcomment_response.rb +2 -0
- data/lib/refworks/reference/delete/reference_delete_request.rb +25 -0
- data/lib/refworks/reference/delete/reference_delete_response.rb +2 -0
- data/lib/refworks/reference/edit/reference_edit_request.rb +35 -0
- data/lib/refworks/reference/edit/reference_edit_response.rb +3 -0
- data/lib/refworks/version.rb +1 -1
- metadata +10 -2
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
MWIwYjRiNzYzNDMyMjhmMTM4NzVkNTUwNWQwZjJjNzNjODI0OGRjZA==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
ZDdmNWIzNjgzM2Y2MTY5ZWQ0MDg5NWYwYTM5MDk0YTY4ZDI3OGU4YQ==
|
7
7
|
SHA512:
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
ZWNjMzZjZmNlMTc0MGYwODkwOGZhZjUzMTljOTg3Y2I5ZTFlZWRmNTJjNDIz
|
10
|
+
ZWE2ZDNmYjkxZWZiNDQwOTE4YWNjZThkNTY5MTcxYmM0MWM3YjMyMjNjNzVm
|
11
|
+
OTk5ZmIzY2QxMzAwYTZiMThmYzFjYWI4YWNkYmY5M2Y2NDIyMmI=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
NTNhYmQ2ZjhjYTA3OWI1YTc3MjEzYjYyZGE3NDVmZjA5MTUzY2FhZTFhOGU0
|
14
|
+
MjY2MzE5MTA2YmEzNTJhYjEwODJkNTNmZTg2OTVmMWU3NmQ0ZjM5NGMxYzNl
|
15
|
+
NzNmNTU5ZDVjMGFjMzk5M2YyMTcyMmE3ZjU4M2JiZjMyMDY0N2U=
|
data/README.md
CHANGED
@@ -29,7 +29,7 @@ Authentication
|
|
29
29
|
- newrefsharesess not implemented.
|
30
30
|
|
31
31
|
Authors,Descriptors,Periodicals,Folders
|
32
|
-
- all
|
32
|
+
- all, search are implemented.
|
33
33
|
- addref (GET), addref (POST), clear, create, delete, edit, removeref (GET), removeref (POST) are not implemented.
|
34
34
|
- note that in the code, these are broken out into four different classes.
|
35
35
|
|
@@ -60,12 +60,12 @@ PubMed
|
|
60
60
|
- Nothing implemented.
|
61
61
|
|
62
62
|
Reference
|
63
|
-
- get implemented.
|
64
|
-
-
|
63
|
+
- get, add, addcomment, delete (GET), edit implemented.
|
64
|
+
- delete (POST), deletecomment, editcomment, globaledit, import,
|
65
65
|
importendnote, importpreview, openurl not implemented.
|
66
66
|
|
67
67
|
Retrieve
|
68
|
-
- advancesearch, all, author, byid, count, descriptor, dup, folder, modsince, nofolder, periodical, quick,
|
68
|
+
- advancesearch, all, author, byid (GET), count, descriptor, dup, folder, modsince, nofolder, periodical, quick,
|
69
69
|
saved, specialfolder implemented.
|
70
70
|
- byid (POST), openurl not implemented.
|
71
71
|
|
data/lib/refworks/reference.rb
CHANGED
@@ -3,7 +3,7 @@ require "mash"
|
|
3
3
|
|
4
4
|
#noinspection RubyTooManyInstanceVariablesInspection,RubyTooManyMethodsInspection
|
5
5
|
class Reference
|
6
|
-
|
6
|
+
attr_accessor :rt, :rt_num, :rt_string, :sr, :id, :a1, :t1, :jf, :jo, :yr, :fd,
|
7
7
|
:vo, :is, :sp, :op, :k1, :ab, :no, :a2, :t2, :ed, :pb, :pp, :a3,
|
8
8
|
:a4, :a5, :t3, :sn, :av, :ad, :an, :la, :cl, :sf, :ot, :lk, :do,
|
9
9
|
:cn, :db, :ds, :ip, :rd, :st, :u1, :u2, :u3, :u4, :u5, :u6, :u7,
|
@@ -144,6 +144,86 @@ class Reference
|
|
144
144
|
@md = ref[:md]
|
145
145
|
end
|
146
146
|
|
147
|
+
# method to produce RefWorks XML format
|
148
|
+
def to_refworks_xml
|
149
|
+
@xml = "<reference>"
|
150
|
+
|
151
|
+
@xml << "<rt>#{rt_string}</rt>" if @rt
|
152
|
+
@xml << "<sr>#{sr}</sr>" if @sr
|
153
|
+
@xml << "<id>#{id}</id>" if @id
|
154
|
+
a1.each {|a| @xml << "<a1>#{a}</a1>"} if @a1
|
155
|
+
@xml << "<t1>#{t1}</t1>" if @t1
|
156
|
+
@xml << "<jf>#{jf}</jf>" if @jf
|
157
|
+
@xml << "<jo>#{jo}</jo>" if @jo
|
158
|
+
@xml << "<yr>#{yr}</yr>" if @yr
|
159
|
+
@xml << "<fd>#{fd}</fd>" if @fd
|
160
|
+
@xml << "<vo>#{vo}</vo>" if @vo
|
161
|
+
@xml << "<is>#{is}</is>" if @is
|
162
|
+
@xml << "<sp>#{sp}</sp>" if @sp
|
163
|
+
@xml << "<op>#{op}</op>" if @op
|
164
|
+
k1.each {|k| @xml << "<k1>#{k1}</k1>"} if @k1
|
165
|
+
@xml << "<ab>#{ab}</ab>" if @ab
|
166
|
+
@xml << "<no>#{no}</no>" if @no
|
167
|
+
a2.each {|a| @xml << "<a2>#{a}</a2>"} if @a2
|
168
|
+
@xml << "<t2>#{t2}</t2>" if @t2
|
169
|
+
@xml << "<ed>#{ed}</ed>" if @ed
|
170
|
+
@xml << "<pb>#{pb}</pb>" if @pb
|
171
|
+
@xml << "<pp>#{pp}</pp>" if @pp
|
172
|
+
a3.each {|a| @xml << "<a3>#{a}</a3>"} if @a3
|
173
|
+
a4.each {|a| @xml << "<a4>#{a}</a4>"} if @a4
|
174
|
+
a5.each {|a| @xml << "<a5>#{a}</a5>"} if @a5
|
175
|
+
@xml << "<t3>#{t3}</t3>" if @t3
|
176
|
+
@xml << "<sn>#{sn}</sn>" if @sn
|
177
|
+
@xml << "<av>#{av}</av>" if @av
|
178
|
+
@xml << "<ad>#{ad}</ad>" if @ad
|
179
|
+
@xml << "<an>#{an}</an>" if @an
|
180
|
+
@xml << "<la>#{la}</la>" if @la
|
181
|
+
@xml << "<cl>#{cl}</cl>" if @cl
|
182
|
+
@xml << "<sf>#{sf}</sf>" if @sf
|
183
|
+
@xml << "<ot>#{ot}</ot>" if @ot
|
184
|
+
@xml << "<lk>#{lk}</lk>" if @lk
|
185
|
+
@xml << "<do>#{@do}</do>" if @do
|
186
|
+
@xml << "<cn>#{cn}</cn>" if @cn
|
187
|
+
@xml << "<db>#{db}</db>" if @db
|
188
|
+
@xml << "<ds>#{ds}</ds>" if @ds
|
189
|
+
@xml << "<ip>#{ip}</ip>" if @ip
|
190
|
+
@xml << "<rd>#{rd}</rd>" if @rd
|
191
|
+
@xml << "<st>#{st}</st>" if @st
|
192
|
+
@xml << "<u1>#{u1}</u1>" if @u1
|
193
|
+
@xml << "<u2>#{u2}</u2>" if @u2
|
194
|
+
@xml << "<u3>#{u3}</u3>" if @u3
|
195
|
+
@xml << "<u4>#{u4}</u4>" if @u4
|
196
|
+
@xml << "<u5>#{u5}</u5>" if @u5
|
197
|
+
@xml << "<u6>#{u6}</u6>" if @u6
|
198
|
+
@xml << "<u7>#{u7}</u7>" if @u7
|
199
|
+
@xml << "<u8>#{u8}</u8>" if @u8
|
200
|
+
@xml << "<u9>#{u9}</u9>" if @u9
|
201
|
+
@xml << "<u10>#{u10}</u10>" if @u10
|
202
|
+
@xml << "<u11>#{u11}</u11>" if @u11
|
203
|
+
@xml << "<u12>#{u12}</u12>" if @u12
|
204
|
+
@xml << "<u13>#{u13}</u13>" if @u13
|
205
|
+
@xml << "<u14>#{u14}</u14>" if @u14
|
206
|
+
@xml << "<u15>#{u15}</u15>" if @u15
|
207
|
+
@xml << "<ul>#{ul}</ul>" if @ul
|
208
|
+
@xml << "<sl>#{sl}</sl>" if @sl
|
209
|
+
@xml << "<ll>#{ll}</ll>" if @ll
|
210
|
+
@xml << "<cr>#{cr}</cr>" if @cr
|
211
|
+
@xml << "<wt>#{wt}</wt>" if @wt
|
212
|
+
a6.each {|a| @xml << "<a6>#{a}</a6>"} if @a6
|
213
|
+
@xml << "<wv>#{wv}</wv>" if @wv
|
214
|
+
@xml << "<wp>#{wp}</wp>" if @wp
|
215
|
+
@xml << "<ol>#{ol}</ol>" if @ol
|
216
|
+
@xml << "<pmid>#{pmid}</pmid>" if @pmid
|
217
|
+
@xml << "<pmcid>#{pmcid}</pmcid>" if @pmcid
|
218
|
+
# suppressing these - they are not part of the spec and RW trips if you try to add a ref with these
|
219
|
+
#@xml << "<fl>#{fl}</fl>" if @fl
|
220
|
+
#@xml << "<cd>#{cd}</cd>" if @cd
|
221
|
+
#@xml << "<md>#{md}</md>" if @md
|
222
|
+
|
223
|
+
@xml << "</reference>"
|
224
|
+
@xml
|
225
|
+
end
|
226
|
+
|
147
227
|
# setup human-readable aliases as accessors
|
148
228
|
# I've been consistent with the RefWorks tagged format legend (see end of this file)
|
149
229
|
# plus I added some additional ones (like "authors" as a synonym for "primary_authors")
|
@@ -153,6 +233,10 @@ class Reference
|
|
153
233
|
rt
|
154
234
|
end
|
155
235
|
|
236
|
+
def reference_type=(val)
|
237
|
+
rt = val
|
238
|
+
end
|
239
|
+
|
156
240
|
# extension
|
157
241
|
def reference_type_num
|
158
242
|
rt_num
|
@@ -167,275 +251,547 @@ class Reference
|
|
167
251
|
sr
|
168
252
|
end
|
169
253
|
|
254
|
+
def source_type=(val)
|
255
|
+
sr = val
|
256
|
+
end
|
257
|
+
|
170
258
|
def primary_authors
|
171
259
|
a1
|
172
260
|
end
|
173
261
|
|
262
|
+
def primary_authors=(val)
|
263
|
+
a1 = val
|
264
|
+
end
|
265
|
+
|
174
266
|
# alias
|
175
267
|
def authors
|
176
268
|
a1
|
177
269
|
end
|
178
270
|
|
271
|
+
# alias
|
272
|
+
def authors=(val)
|
273
|
+
a1 = val
|
274
|
+
end
|
275
|
+
|
179
276
|
def primary_title
|
180
277
|
t1
|
181
278
|
end
|
182
279
|
|
280
|
+
def primary_title=(val)
|
281
|
+
t1 = val
|
282
|
+
end
|
283
|
+
|
183
284
|
# alias
|
184
285
|
def title
|
185
286
|
t1
|
186
287
|
end
|
187
288
|
|
289
|
+
def title=(val)
|
290
|
+
t1=val
|
291
|
+
end
|
292
|
+
|
188
293
|
def periodical_full
|
189
294
|
jf
|
190
295
|
end
|
191
296
|
|
297
|
+
def periodical_full=(val)
|
298
|
+
jf=val
|
299
|
+
end
|
300
|
+
|
192
301
|
def periodical_abbrev
|
193
302
|
jo
|
194
303
|
end
|
195
304
|
|
305
|
+
def periodical_abbrev=(val)
|
306
|
+
jo=val
|
307
|
+
end
|
308
|
+
|
196
309
|
def publication_year
|
197
310
|
yr
|
198
311
|
end
|
199
312
|
|
313
|
+
def publication_year=(val)
|
314
|
+
yr=val
|
315
|
+
end
|
316
|
+
|
200
317
|
def publication_data_free_form
|
201
318
|
fd
|
202
319
|
end
|
203
320
|
|
321
|
+
def publication_data_free_form=(val)
|
322
|
+
fd=val
|
323
|
+
end
|
324
|
+
|
204
325
|
def volume
|
205
326
|
vo
|
206
327
|
end
|
207
328
|
|
329
|
+
def volume=(val)
|
330
|
+
vo=val
|
331
|
+
end
|
332
|
+
|
208
333
|
def issue
|
209
334
|
is
|
210
335
|
end
|
211
336
|
|
337
|
+
def issue=(val)
|
338
|
+
is=val
|
339
|
+
end
|
340
|
+
|
212
341
|
def start_page
|
213
342
|
sp
|
214
343
|
end
|
215
344
|
|
345
|
+
def start_page=(val)
|
346
|
+
sp=val
|
347
|
+
end
|
348
|
+
|
216
349
|
def other_pages
|
217
350
|
op
|
218
351
|
end
|
219
352
|
|
353
|
+
def other_pages=(val)
|
354
|
+
op=val
|
355
|
+
end
|
356
|
+
|
220
357
|
def keyword
|
221
358
|
k1
|
222
359
|
end
|
223
360
|
|
361
|
+
def keyword=(val)
|
362
|
+
k1=val
|
363
|
+
end
|
364
|
+
|
224
365
|
def keywords
|
225
366
|
k1
|
226
367
|
end
|
227
368
|
|
369
|
+
def keywords=(val)
|
370
|
+
k1=val
|
371
|
+
end
|
372
|
+
|
228
373
|
def abstract
|
229
374
|
ab
|
230
375
|
end
|
231
376
|
|
377
|
+
def abstract=(val)
|
378
|
+
ab=val
|
379
|
+
end
|
380
|
+
|
232
381
|
def notes
|
233
382
|
no
|
234
383
|
end
|
235
384
|
|
385
|
+
def notes=(val)
|
386
|
+
no=val
|
387
|
+
end
|
388
|
+
|
236
389
|
def secondary_authors
|
237
390
|
a2
|
238
391
|
end
|
239
392
|
|
393
|
+
def secondary_authors=(val)
|
394
|
+
a2=val
|
395
|
+
end
|
396
|
+
|
240
397
|
def secondary_title
|
241
398
|
t2
|
242
399
|
end
|
243
400
|
|
401
|
+
def secondary_title=(val)
|
402
|
+
t2=val
|
403
|
+
end
|
404
|
+
|
244
405
|
def edition
|
245
406
|
ed
|
246
407
|
end
|
247
408
|
|
409
|
+
def edition=(val)
|
410
|
+
ed=val
|
411
|
+
end
|
412
|
+
|
248
413
|
def publisher
|
249
414
|
pb
|
250
415
|
end
|
251
416
|
|
417
|
+
def publisher=(val)
|
418
|
+
pb=val
|
419
|
+
end
|
420
|
+
|
252
421
|
def place_of_publication
|
253
422
|
pp
|
254
423
|
end
|
255
424
|
|
425
|
+
def place_of_publication=(val)
|
426
|
+
pp=val
|
427
|
+
end
|
428
|
+
|
256
429
|
def tertiary_authors
|
257
430
|
a3
|
258
431
|
end
|
259
432
|
|
433
|
+
def tertiary_authors=(val)
|
434
|
+
a3=val
|
435
|
+
end
|
436
|
+
|
260
437
|
def quaternary_authors
|
261
438
|
a4
|
262
439
|
end
|
263
440
|
|
441
|
+
def quaternary_authors=(val)
|
442
|
+
a4=val
|
443
|
+
end
|
444
|
+
|
264
445
|
def quinary_authors
|
265
446
|
a5
|
266
447
|
end
|
267
448
|
|
449
|
+
def quinary_authors=(val)
|
450
|
+
a5=val
|
451
|
+
end
|
452
|
+
|
268
453
|
def tertiary_title
|
269
454
|
t3
|
270
455
|
end
|
271
456
|
|
457
|
+
def tertiary_title=(val)
|
458
|
+
t3=val
|
459
|
+
end
|
460
|
+
|
272
461
|
def issn_isbn
|
273
462
|
sn
|
274
463
|
end
|
275
464
|
|
465
|
+
def issn_isbn=(val)
|
466
|
+
sn=val
|
467
|
+
end
|
468
|
+
|
276
469
|
def availability
|
277
470
|
av
|
278
471
|
end
|
279
472
|
|
473
|
+
def availability=(val)
|
474
|
+
av=val
|
475
|
+
end
|
476
|
+
|
280
477
|
def author_address
|
281
478
|
ad
|
282
479
|
end
|
283
480
|
|
481
|
+
def author_address=(val)
|
482
|
+
ad=val
|
483
|
+
end
|
484
|
+
|
284
485
|
def accession_number
|
285
486
|
an
|
286
487
|
end
|
287
488
|
|
489
|
+
def accession_number=(val)
|
490
|
+
an=val
|
491
|
+
end
|
492
|
+
|
288
493
|
def language
|
289
494
|
la
|
290
495
|
end
|
291
496
|
|
497
|
+
def language=(val)
|
498
|
+
la=val
|
499
|
+
end
|
500
|
+
|
292
501
|
def classification
|
293
502
|
cl
|
294
503
|
end
|
295
504
|
|
505
|
+
def classification=(val)
|
506
|
+
cl=val
|
507
|
+
end
|
508
|
+
|
296
509
|
def subfile_database
|
297
510
|
sf
|
298
511
|
end
|
299
512
|
|
513
|
+
def subfile_database=(val)
|
514
|
+
sf=val
|
515
|
+
end
|
516
|
+
|
300
517
|
def original_foreign_title
|
301
518
|
ot
|
302
519
|
end
|
303
520
|
|
521
|
+
def original_foreign_title=(val)
|
522
|
+
ot=val
|
523
|
+
end
|
524
|
+
|
304
525
|
def links
|
305
526
|
lk
|
306
527
|
end
|
307
528
|
|
529
|
+
def links=(val)
|
530
|
+
lk=val
|
531
|
+
end
|
532
|
+
|
308
533
|
def digital_object_identifier
|
309
534
|
# @ sign to avoid collision with Ruby keyword 'do'
|
310
535
|
@do
|
311
536
|
end
|
312
537
|
|
538
|
+
def digital_object_identifier=(val)
|
539
|
+
# @ sign to avoid collision with Ruby keyword 'do'
|
540
|
+
@do=val
|
541
|
+
end
|
542
|
+
|
313
543
|
# alias
|
314
544
|
def doi
|
315
545
|
# @ sign to avoid collision with Ruby keyword 'do'
|
316
546
|
@do
|
317
547
|
end
|
318
548
|
|
549
|
+
# alias
|
550
|
+
def doi=(val)
|
551
|
+
# @ sign to avoid collision with Ruby keyword 'do'
|
552
|
+
@do=val
|
553
|
+
end
|
554
|
+
|
319
555
|
def call_number
|
320
556
|
cn
|
321
557
|
end
|
322
558
|
|
559
|
+
def call_number=(val)
|
560
|
+
cn=val
|
561
|
+
end
|
562
|
+
|
323
563
|
def database
|
324
564
|
db
|
325
565
|
end
|
326
566
|
|
567
|
+
def database=(val)
|
568
|
+
db=val
|
569
|
+
end
|
570
|
+
|
327
571
|
def data_source
|
328
572
|
ds
|
329
573
|
end
|
330
574
|
|
575
|
+
def data_source=(val)
|
576
|
+
ds=val
|
577
|
+
end
|
578
|
+
|
331
579
|
def identifying_phrase
|
332
580
|
ip
|
333
581
|
end
|
334
582
|
|
583
|
+
def identifying_phrase=(val)
|
584
|
+
ip=val
|
585
|
+
end
|
586
|
+
|
335
587
|
def retrieved_date
|
336
588
|
rd
|
337
589
|
end
|
338
590
|
|
591
|
+
def retrieved_date=(val)
|
592
|
+
rd=val
|
593
|
+
end
|
594
|
+
|
339
595
|
def shortened_title
|
340
596
|
st
|
341
597
|
end
|
342
598
|
|
599
|
+
def shortened_title=(val)
|
600
|
+
st=val
|
601
|
+
end
|
602
|
+
|
343
603
|
def user_1
|
344
604
|
u1
|
345
605
|
end
|
346
606
|
|
607
|
+
def user_1=(val)
|
608
|
+
u1=val
|
609
|
+
end
|
610
|
+
|
347
611
|
def user_2
|
348
612
|
u2
|
349
613
|
end
|
350
614
|
|
615
|
+
def user_2=(val)
|
616
|
+
u2=val
|
617
|
+
end
|
618
|
+
|
351
619
|
def user_3
|
352
620
|
u3
|
353
621
|
end
|
354
622
|
|
623
|
+
def user_3=(val)
|
624
|
+
u3=val
|
625
|
+
end
|
626
|
+
|
355
627
|
def user_4
|
356
628
|
u4
|
357
629
|
end
|
358
630
|
|
631
|
+
def user_4=(val)
|
632
|
+
u4=val
|
633
|
+
end
|
634
|
+
|
359
635
|
def user_5
|
360
636
|
u5
|
361
637
|
end
|
362
638
|
|
639
|
+
def user_5=(val)
|
640
|
+
u5=val
|
641
|
+
end
|
642
|
+
|
363
643
|
def user_6
|
364
644
|
u6
|
365
645
|
end
|
366
646
|
|
647
|
+
def user_6=(val)
|
648
|
+
u6=val
|
649
|
+
end
|
650
|
+
|
367
651
|
def user_7
|
368
652
|
u7
|
369
653
|
end
|
370
654
|
|
655
|
+
def user_7=(val)
|
656
|
+
u7=val
|
657
|
+
end
|
658
|
+
|
371
659
|
def user_8
|
372
660
|
u8
|
373
661
|
end
|
374
662
|
|
663
|
+
def user_8=(val)
|
664
|
+
u8=val
|
665
|
+
end
|
666
|
+
|
375
667
|
def user_9
|
376
668
|
u9
|
377
669
|
end
|
378
670
|
|
671
|
+
def user_9=(val)
|
672
|
+
u9=val
|
673
|
+
end
|
674
|
+
|
379
675
|
def user_10
|
380
676
|
u10
|
381
677
|
end
|
382
678
|
|
679
|
+
def user_10=(val)
|
680
|
+
u10=val
|
681
|
+
end
|
682
|
+
|
383
683
|
def user_11
|
384
684
|
u11
|
385
685
|
end
|
386
686
|
|
687
|
+
def user_11=(val)
|
688
|
+
u11=val
|
689
|
+
end
|
690
|
+
|
387
691
|
def user_12
|
388
692
|
u12
|
389
693
|
end
|
390
694
|
|
695
|
+
def user_12=(val)
|
696
|
+
u12=val
|
697
|
+
end
|
698
|
+
|
391
699
|
def user_13
|
392
700
|
u13
|
393
701
|
end
|
394
702
|
|
703
|
+
def user_13=(val)
|
704
|
+
u13=val
|
705
|
+
end
|
706
|
+
|
395
707
|
def user_14
|
396
708
|
u14
|
397
709
|
end
|
398
710
|
|
711
|
+
def user_14=(val)
|
712
|
+
u14=val
|
713
|
+
end
|
714
|
+
|
399
715
|
def user_15
|
400
716
|
u15
|
401
717
|
end
|
402
718
|
|
719
|
+
def user_15=(val)
|
720
|
+
u15=val
|
721
|
+
end
|
722
|
+
|
403
723
|
def url
|
404
724
|
ul
|
405
725
|
end
|
406
726
|
|
727
|
+
def url=(val)
|
728
|
+
ul=val
|
729
|
+
end
|
730
|
+
|
407
731
|
def sponsoring_library
|
408
732
|
sl
|
409
733
|
end
|
410
734
|
|
735
|
+
def sponsoring_library=(val)
|
736
|
+
sl=val
|
737
|
+
end
|
738
|
+
|
411
739
|
def sponsoring_library_location
|
412
740
|
ll
|
413
741
|
end
|
414
742
|
|
743
|
+
def sponsoring_library_location=(val)
|
744
|
+
ll=val
|
745
|
+
end
|
746
|
+
|
415
747
|
def cited_references
|
416
748
|
cr
|
417
749
|
end
|
418
750
|
|
751
|
+
def cited_references=(val)
|
752
|
+
cr=val
|
753
|
+
end
|
754
|
+
|
419
755
|
def website_title
|
420
756
|
wt
|
421
757
|
end
|
422
758
|
|
759
|
+
def website_title=(val)
|
760
|
+
wt=val
|
761
|
+
end
|
762
|
+
|
423
763
|
def website_editors
|
424
764
|
a6
|
425
765
|
end
|
426
766
|
|
767
|
+
def website_editors=(val)
|
768
|
+
a6=val
|
769
|
+
end
|
770
|
+
|
427
771
|
def website_version
|
428
772
|
wv
|
429
773
|
end
|
430
774
|
|
775
|
+
def website_version=(val)
|
776
|
+
wv=val
|
777
|
+
end
|
778
|
+
|
431
779
|
def date_of_electronic_publication
|
432
780
|
wp
|
433
781
|
end
|
434
782
|
|
783
|
+
def date_of_electronic_publication=(val)
|
784
|
+
wp=val
|
785
|
+
end
|
786
|
+
|
435
787
|
def output_language
|
436
788
|
ol
|
437
789
|
end
|
438
790
|
|
791
|
+
def output_language=(val)
|
792
|
+
ol=val
|
793
|
+
end
|
794
|
+
|
439
795
|
# extension
|
440
796
|
def folder
|
441
797
|
fl
|
@@ -0,0 +1,63 @@
|
|
1
|
+
class ReferenceAddRequest < ReferenceRequest
|
2
|
+
def self.call_method
|
3
|
+
'add'
|
4
|
+
end
|
5
|
+
|
6
|
+
def self.http_request_verb
|
7
|
+
'POST'
|
8
|
+
end
|
9
|
+
|
10
|
+
def self.generate_request_info(params)
|
11
|
+
|
12
|
+
# get common Reference parameters
|
13
|
+
class_params = generate_class_params(params)
|
14
|
+
|
15
|
+
# query parameters for the add call
|
16
|
+
method_params = { :method => call_method,
|
17
|
+
:folder => params[:folder], # this is optional
|
18
|
+
:returnrefs => params[:returnrefs] || "0", # this is technically optional but I'm explicitly passing default of 0
|
19
|
+
}
|
20
|
+
|
21
|
+
query_string_params = class_params.merge(method_params)
|
22
|
+
# add has a POST payload
|
23
|
+
|
24
|
+
# construct XML payload
|
25
|
+
xml_payload = '<RWRequest class="reference" method="add"><RWRefData><refworks xmlns:refworks="www.refworks.com/xml/">'
|
26
|
+
params[:references].each do |ref|
|
27
|
+
xml_payload << ref.to_refworks_xml
|
28
|
+
end
|
29
|
+
# xml_payload << '<reference>
|
30
|
+
#<rt>Book, Whole</rt>
|
31
|
+
#<sr>Print(0)</sr>
|
32
|
+
#<id>330</id>
|
33
|
+
#<t1>
|
34
|
+
#4898816 <B>Mediat</B><>ors for bioelectrochemical <SUP>cells</SUP> h20 to test for microbiologlklklkicakkkl activity. <U>Anthony</U> P F Turner, Ann Swain, Graha <I>Ramsay</I>, Marc Cardosi, Bernard H Schneider, www.refworks.com?a=23&b=34 Cranfield, United Kingdom assigned to Paul de la Pena Limitedl
|
35
|
+
#</t1>
|
36
|
+
#<jf>Biotechnology Advances</jf>
|
37
|
+
#<jo>Biotechnol.Adv.</jo>
|
38
|
+
#<yr>1990</yr>
|
39
|
+
#<vo>8</vo>
|
40
|
+
#<is>3</is>
|
41
|
+
#<sp>613</sp>
|
42
|
+
#<no>JID: 8403708; <I>ppublish</I></no>
|
43
|
+
#<a1>Aggarwal,A.</a1>
|
44
|
+
#<a1>Schneider,D. J.</a1>
|
45
|
+
#<a1>Sobel,B. E.</a1>
|
46
|
+
#<a1>Dauerman,H. L.</a1>
|
47
|
+
#<t3>this is a title</t3>
|
48
|
+
#<sn>0734-9750</sn>
|
49
|
+
#<an>14549739; 0</an>
|
50
|
+
#<la>ENG</la>
|
51
|
+
#<sf>JOURNAL ARTICLE</sf>
|
52
|
+
#<do>073497509090779B [pii]</do>
|
53
|
+
#<st>this is a <U>shortened</U> title</st>
|
54
|
+
#<ol>Unknown(0)</ol>
|
55
|
+
#</reference>'
|
56
|
+
xml_payload << '</refworks></RWRefData></RWRequest>'
|
57
|
+
|
58
|
+
message_body = xml_payload
|
59
|
+
|
60
|
+
# return the request info
|
61
|
+
{:params => query_string_params, :body => message_body, :headers => {'Content-type' => 'text/xml'}}
|
62
|
+
end
|
63
|
+
end
|
@@ -0,0 +1,41 @@
|
|
1
|
+
class ReferenceAddcommentRequest < ReferenceRequest
|
2
|
+
def self.call_method
|
3
|
+
'addcomment'
|
4
|
+
end
|
5
|
+
|
6
|
+
def self.http_request_verb
|
7
|
+
'POST'
|
8
|
+
end
|
9
|
+
|
10
|
+
def self.generate_request_info(params)
|
11
|
+
|
12
|
+
# get common Reference parameters
|
13
|
+
class_params = generate_class_params(params)
|
14
|
+
|
15
|
+
# query parameters for the addcomment call
|
16
|
+
method_params = { :method => call_method,
|
17
|
+
:id => params[:id],
|
18
|
+
}
|
19
|
+
|
20
|
+
query_string_params = class_params.merge(method_params)
|
21
|
+
# addcomment has a POST payload
|
22
|
+
|
23
|
+
# construct XML payload
|
24
|
+
xml_payload = '<RWRequest class="reference" method="addcomment">'
|
25
|
+
params[:comments].each do |cmnt|
|
26
|
+
title = cmnt[:title]
|
27
|
+
name = cmnt[:name]
|
28
|
+
inetinfo = cmnt[:inetinfo]
|
29
|
+
comment = cmnt[:comment]
|
30
|
+
parentid = cmnt[:parentid] || "-1"
|
31
|
+
xml_payload << "<comment id=\"\" title=\"#{title}\" name=\"#{name}\" inetinfo=\"#{inetinfo}\" created=\"\" comment=\"#{comment}\" parentid=\"#{parentid}\"/>"
|
32
|
+
end
|
33
|
+
|
34
|
+
xml_payload << '</RWRequest>'
|
35
|
+
|
36
|
+
message_body = xml_payload
|
37
|
+
|
38
|
+
# return the request info
|
39
|
+
{:params => query_string_params, :body => message_body, :headers => {'Content-type' => 'text/xml'}}
|
40
|
+
end
|
41
|
+
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
class ReferenceDeleteRequest < ReferenceRequest
|
2
|
+
def self.call_method
|
3
|
+
'delete'
|
4
|
+
end
|
5
|
+
|
6
|
+
def self.http_request_verb
|
7
|
+
'GET'
|
8
|
+
end
|
9
|
+
|
10
|
+
def self.generate_request_info(params)
|
11
|
+
|
12
|
+
# get common Reference parameters
|
13
|
+
class_params = generate_class_params(params)
|
14
|
+
|
15
|
+
# query parameters for the delete call
|
16
|
+
method_params = { :method => call_method,
|
17
|
+
:id => params[:ids],
|
18
|
+
}
|
19
|
+
|
20
|
+
query_string_params = class_params.merge(method_params)
|
21
|
+
|
22
|
+
# return the request info
|
23
|
+
{:params => query_string_params}
|
24
|
+
end
|
25
|
+
end
|
@@ -0,0 +1,35 @@
|
|
1
|
+
class ReferenceEditRequest < ReferenceRequest
|
2
|
+
def self.call_method
|
3
|
+
'edit'
|
4
|
+
end
|
5
|
+
|
6
|
+
def self.http_request_verb
|
7
|
+
'POST'
|
8
|
+
end
|
9
|
+
|
10
|
+
def self.generate_request_info(params)
|
11
|
+
|
12
|
+
# get common Reference parameters
|
13
|
+
class_params = generate_class_params(params)
|
14
|
+
|
15
|
+
# query parameters for the edit call
|
16
|
+
method_params = { :method => call_method,
|
17
|
+
}
|
18
|
+
|
19
|
+
query_string_params = class_params.merge(method_params)
|
20
|
+
# add has a POST payload
|
21
|
+
|
22
|
+
# construct XML payload
|
23
|
+
xml_payload = '<RWRequest class="reference" method="edit"><RWRefData><refworks xmlns:refworks="www.refworks.com/xml/">'
|
24
|
+
params[:references].each do |ref|
|
25
|
+
xml_payload << ref.to_refworks_xml
|
26
|
+
end
|
27
|
+
|
28
|
+
xml_payload << '</refworks></RWRefData></RWRequest>'
|
29
|
+
|
30
|
+
message_body = xml_payload
|
31
|
+
|
32
|
+
# return the request info
|
33
|
+
{:params => query_string_params, :body => message_body, :headers => {'Content-type' => 'text/xml'}}
|
34
|
+
end
|
35
|
+
end
|
data/lib/refworks/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: refworks
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Fran Fabrizio
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-01-
|
11
|
+
date: 2014-01-24 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: httparty
|
@@ -152,6 +152,14 @@ files:
|
|
152
152
|
- lib/refworks/properties/typelabels/properties_typelabels_response.rb
|
153
153
|
- lib/refworks/properties/typelabels/typelabel.rb
|
154
154
|
- lib/refworks/reference.rb
|
155
|
+
- lib/refworks/reference/add/reference_add_request.rb
|
156
|
+
- lib/refworks/reference/add/reference_add_response.rb
|
157
|
+
- lib/refworks/reference/addcomment/reference_addcomment_request.rb
|
158
|
+
- lib/refworks/reference/addcomment/reference_addcomment_response.rb
|
159
|
+
- lib/refworks/reference/delete/reference_delete_request.rb
|
160
|
+
- lib/refworks/reference/delete/reference_delete_response.rb
|
161
|
+
- lib/refworks/reference/edit/reference_edit_request.rb
|
162
|
+
- lib/refworks/reference/edit/reference_edit_response.rb
|
155
163
|
- lib/refworks/reference/get/reference_get_request.rb
|
156
164
|
- lib/refworks/reference/get/reference_get_response.rb
|
157
165
|
- lib/refworks/reference/reference_request.rb
|