feed-abstract 0.0.10 → 0.0.16
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.gitignore +1 -0
- data/README.rdoc +1 -1
- data/Rakefile +1 -1
- data/feed-abstract.gemspec +9 -6
- data/lib/feed-abstract.rb +4 -2
- data/lib/feed-abstract/channel/atom.rb +10 -4
- data/lib/feed-abstract/channel/rss.rb +2 -2
- data/lib/feed-abstract/feed.rb +3 -2
- data/lib/feed-abstract/item/atom.rb +5 -2
- data/lib/feed-abstract/mixins.rb +14 -4
- data/lib/feed-abstract/version.rb +1 -1
- data/lib/rss_atom_monkeypatches.rb +28 -0
- data/spec/feed_abstract_channel_spec.rb +37 -1
- data/spec/feed_abstract_item_spec.rb +29 -0
- data/spec/feed_abstract_spec.rb +9 -1
- data/spec/spec_helper.rb +5 -1
- data/spec/test_data/LawLibrarianBlog.atom +356 -0
- data/spec/test_data/twitter_hashtag.atom +2 -0
- metadata +48 -32
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: aa6ed71d4c69fce0113439a19e3b404bee76e11d
|
4
|
+
data.tar.gz: ffc54c285c14a3bc0bb6226964642dde96671d07
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 6846cb502e8f33d1863ff386d4f419adae8de96500948575304570f10ff8d5448577a8d970601be32256a8d3f04f724556af5ed4a68cb9ddd661ebf8231990a2
|
7
|
+
data.tar.gz: eaf6be3194c2d770a5e86b846059086d67e9a17689f1817917d4654f2dafd07acb8f516061143453c8a3dff42a3f5092e706c2770f635c99b113f87da5e127ea
|
data/.gitignore
CHANGED
data/README.rdoc
CHANGED
@@ -8,7 +8,7 @@ FeedAbstract creates a common object graph for RSS, Atom, and RDF feeds using th
|
|
8
8
|
|
9
9
|
== Usage
|
10
10
|
|
11
|
-
See FeedAbstract::Feed for basic examples. Also see the FeedAbstract::Channel and FeedAbstract::Item namespaces.
|
11
|
+
See FeedAbstract::Feed for basic examples. Also see the FeedAbstract::Channel and FeedAbstract::Item namespaces. See also the rdoc at http://rubydoc.info/gems/feed-abstract/0.0.12/frames
|
12
12
|
|
13
13
|
== Author
|
14
14
|
|
data/Rakefile
CHANGED
data/feed-abstract.gemspec
CHANGED
@@ -2,14 +2,16 @@
|
|
2
2
|
# DO NOT EDIT THIS FILE DIRECTLY
|
3
3
|
# Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
|
4
4
|
# -*- encoding: utf-8 -*-
|
5
|
+
# stub: feed-abstract 0.0.16 ruby lib
|
5
6
|
|
6
7
|
Gem::Specification.new do |s|
|
7
8
|
s.name = "feed-abstract"
|
8
|
-
s.version = "0.0.
|
9
|
+
s.version = "0.0.16"
|
9
10
|
|
10
11
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
12
|
+
s.require_paths = ["lib"]
|
11
13
|
s.authors = ["Daniel Collis-Puro"]
|
12
|
-
s.date = "
|
14
|
+
s.date = "2017-04-25"
|
13
15
|
s.description = "This library creates a common object graph for the RSS/Atom/RDF parsing classes in the ruby standard library. This allows you parse different feed formats and get back the same (or at least a very similar) set of results - item authors are accessible under an \"author(s)\" attribute, categories/tags/subjects are accessible under \"category(ies)\" attributes, etc. We do our best to make sure the data makes sense, too - RSS items lack an \"updated\" attribute, so we use \"pubDate\" to populate it. "
|
14
16
|
s.email = ["djcp@cyber.law.harvard.edu"]
|
15
17
|
s.extra_rdoc_files = [
|
@@ -34,10 +36,12 @@ Gem::Specification.new do |s|
|
|
34
36
|
"lib/feed-abstract/items/rss.rb",
|
35
37
|
"lib/feed-abstract/mixins.rb",
|
36
38
|
"lib/feed-abstract/version.rb",
|
39
|
+
"lib/rss_atom_monkeypatches.rb",
|
37
40
|
"spec/feed_abstract_channel_spec.rb",
|
38
41
|
"spec/feed_abstract_item_spec.rb",
|
39
42
|
"spec/feed_abstract_spec.rb",
|
40
43
|
"spec/spec_helper.rb",
|
44
|
+
"spec/test_data/LawLibrarianBlog.atom",
|
41
45
|
"spec/test_data/chillingeffects.xml",
|
42
46
|
"spec/test_data/djcp.rss",
|
43
47
|
"spec/test_data/djcp.rss92",
|
@@ -49,16 +53,16 @@ Gem::Specification.new do |s|
|
|
49
53
|
"spec/test_data/katanapg.atom",
|
50
54
|
"spec/test_data/oa.africa.rss",
|
51
55
|
"spec/test_data/pyblosxom.atom",
|
56
|
+
"spec/test_data/twitter_hashtag.atom",
|
52
57
|
"spec/test_data/zotero.rss"
|
53
58
|
]
|
54
59
|
s.homepage = "https://github.com/berkmancenter/feed-abstract"
|
55
60
|
s.rdoc_options = ["--charset=UTF-8"]
|
56
|
-
s.
|
57
|
-
s.rubygems_version = "1.8.10"
|
61
|
+
s.rubygems_version = "2.4.5.2"
|
58
62
|
s.summary = "Abstracts RSS/Atom/RDF stdlib parsing into a common object graph."
|
59
63
|
|
60
64
|
if s.respond_to? :specification_version then
|
61
|
-
s.specification_version =
|
65
|
+
s.specification_version = 4
|
62
66
|
|
63
67
|
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
|
64
68
|
s.add_development_dependency(%q<rspec>, [">= 0"])
|
@@ -81,4 +85,3 @@ Gem::Specification.new do |s|
|
|
81
85
|
s.add_dependency(%q<simplecov>, [">= 0"])
|
82
86
|
end
|
83
87
|
end
|
84
|
-
|
data/lib/feed-abstract.rb
CHANGED
@@ -3,9 +3,11 @@
|
|
3
3
|
$LOAD_PATH.unshift(File.dirname(__FILE__)) unless $LOAD_PATH.include?(File.dirname(__FILE__))
|
4
4
|
|
5
5
|
require 'rss'
|
6
|
-
require 'iconv'
|
6
|
+
#require 'iconv'
|
7
7
|
|
8
|
-
require
|
8
|
+
require 'rss_atom_monkeypatches'
|
9
|
+
|
10
|
+
require 'feed-abstract/version'
|
9
11
|
require 'feed-abstract/mixins'
|
10
12
|
|
11
13
|
require 'feed-abstract/channel/atom'
|
@@ -21,15 +21,21 @@ module FeedAbstract
|
|
21
21
|
end
|
22
22
|
|
23
23
|
def description
|
24
|
-
return '' if @feed.subtitle.nil?
|
25
|
-
@feed.subtitle.content
|
24
|
+
return '' if @feed.subtitle.nil? && @feed.tagline.nil?
|
25
|
+
(@feed.subtitle.nil?) ? @feed.tagline.content : @feed.subtitle.content
|
26
26
|
end
|
27
27
|
alias :subtitle :description
|
28
28
|
|
29
29
|
# A string representing the application that created this feed.
|
30
30
|
def generator
|
31
|
-
|
32
|
-
|
31
|
+
unless self.link.nil?
|
32
|
+
if self.link.match(/zotero\.org/)
|
33
|
+
return 'Zotero'
|
34
|
+
elsif self.link.match(/wordpress\.com/)
|
35
|
+
return 'WordPress'
|
36
|
+
elsif self.link.match(/https?:\/\/.*\.?twitter\.com/i)
|
37
|
+
return 'Twitter'
|
38
|
+
end
|
33
39
|
end
|
34
40
|
return '' if @feed.generator.nil?
|
35
41
|
@feed.generator.content
|
@@ -28,9 +28,9 @@ module FeedAbstract
|
|
28
28
|
def generator
|
29
29
|
if ! @feed.channel.generator.nil? && @feed.channel.generator.match(/wordpress\.org/i)
|
30
30
|
return 'WordPress'
|
31
|
-
elsif @feed.channel.link.match(/www\.delicious\.com/i)
|
31
|
+
elsif ! @feed.channel.link.nil? && @feed.channel.link.match(/www\.delicious\.com/i)
|
32
32
|
return 'Delicious'
|
33
|
-
elsif @feed.channel.link.match(/https
|
33
|
+
elsif ! @feed.channel.link.nil? && @feed.channel.link.match(/https?:\/\/.*\.?twitter\.com/i)
|
34
34
|
return 'Twitter'
|
35
35
|
end
|
36
36
|
return '' if @feed.channel.generator.nil?
|
data/lib/feed-abstract/feed.rb
CHANGED
@@ -70,16 +70,17 @@ module FeedAbstract
|
|
70
70
|
input = (xml.respond_to?(:read)) ? xml.read : xml
|
71
71
|
|
72
72
|
if options[:force_encoding]
|
73
|
-
ic = Iconv.new(options[:output_encoding].upcase + ((options[:transliterate_characters]) ? '//TRANSLIT' : '') + '//IGNORE',options[:input_encoding].upcase)
|
74
73
|
if input.respond_to?(:encoding)
|
75
74
|
# ruby 1.9
|
76
75
|
# Only transcode if the encoding isn't valid.
|
77
76
|
# See: http://po-ru.com/diary/fixing-invalid-utf-8-in-ruby-revisited/ for why we're appending the extra space.
|
78
77
|
unless (input.encoding.to_s.upcase == options[:output_encoding].upcase && input.valid_encoding?)
|
79
|
-
input
|
78
|
+
input.encode!(options[:output_encoding], options[:input_encoding])
|
80
79
|
end
|
81
80
|
else
|
82
81
|
# ruby 1.8
|
82
|
+
require 'iconv'
|
83
|
+
ic = Iconv.new(options[:output_encoding].upcase + ((options[:transliterate_characters]) ? '//TRANSLIT' : '') + '//IGNORE',options[:input_encoding].upcase)
|
83
84
|
input = ic.iconv(input << ' ')[0..-2]
|
84
85
|
end
|
85
86
|
end
|
@@ -34,14 +34,17 @@ module FeedAbstract
|
|
34
34
|
end
|
35
35
|
|
36
36
|
def summary
|
37
|
+
if self.channel.generator == 'Twitter'
|
38
|
+
return self.title
|
39
|
+
end
|
37
40
|
return '' if @item.summary.nil?
|
38
41
|
@item.summary.content
|
39
42
|
end
|
40
43
|
|
41
44
|
# A Time object
|
42
45
|
def published
|
43
|
-
return '' if @item.published.nil?
|
44
|
-
@item.published.content
|
46
|
+
return '' if @item.published.nil? && @item.created.nil?
|
47
|
+
(@item.published.nil?) ? @item.created.content : @item.published.content
|
45
48
|
end
|
46
49
|
|
47
50
|
end
|
data/lib/feed-abstract/mixins.rb
CHANGED
@@ -25,8 +25,8 @@ module FeedAbstractMixins
|
|
25
25
|
|
26
26
|
# A Time object representing when resource was updated.
|
27
27
|
def updated
|
28
|
-
return '' if @source.updated.nil?
|
29
|
-
@source.updated.content
|
28
|
+
return '' if @source.updated.nil? && @source.modified.nil?
|
29
|
+
(@source.updated.nil?) ? @source.modified.content : @source.updated.content
|
30
30
|
end
|
31
31
|
|
32
32
|
# Copyright info.
|
@@ -37,6 +37,9 @@ module FeedAbstractMixins
|
|
37
37
|
|
38
38
|
# An array of author names
|
39
39
|
def authors
|
40
|
+
if self.respond_to?(:channel) && self.channel.generator == 'Twitter'
|
41
|
+
return [@source.author.name.content.split(' ')[0]]
|
42
|
+
end
|
40
43
|
return [] if @source.authors.empty?
|
41
44
|
@source.authors.collect{|au| au.name.content}.reject{|au| au == '' || au.match(/^\s+$/)}
|
42
45
|
end
|
@@ -49,8 +52,15 @@ module FeedAbstractMixins
|
|
49
52
|
|
50
53
|
# The categories list as an array.
|
51
54
|
def categories
|
52
|
-
|
53
|
-
|
55
|
+
if self.respond_to?(:channel) && self.channel.generator == 'Twitter'
|
56
|
+
return @source.title.content.scan(/#([^#\s]+)/).flatten
|
57
|
+
end
|
58
|
+
return [] if @source.categories.empty? && @source.dc_subjects.empty?
|
59
|
+
tmp_cats = []
|
60
|
+
tmp_cats << @source.categories.collect{|c| c.term}
|
61
|
+
tmp_cats << @source.dc_subjects.collect{|c| c.content}
|
62
|
+
|
63
|
+
tmp_cats.flatten.reject{|c| c == '' || c.match(/^\s+$/)}
|
54
64
|
end
|
55
65
|
|
56
66
|
# The categories list as a string joined with a comma.
|
@@ -0,0 +1,28 @@
|
|
1
|
+
module RSS
|
2
|
+
module Atom
|
3
|
+
class Feed
|
4
|
+
class Modified < RSS::Element
|
5
|
+
include CommonModel
|
6
|
+
include DateConstruct
|
7
|
+
end
|
8
|
+
class Created < RSS::Element
|
9
|
+
include CommonModel
|
10
|
+
include DateConstruct
|
11
|
+
end
|
12
|
+
class Tagline < RSS::Element
|
13
|
+
include CommonModel
|
14
|
+
include TextConstruct
|
15
|
+
end
|
16
|
+
install_get_attribute('created', '?', :child, :content)
|
17
|
+
install_get_attribute('modified', '?', :child, :content)
|
18
|
+
install_get_attribute('tagline', nil, nil, :content)
|
19
|
+
|
20
|
+
class Entry
|
21
|
+
install_get_attribute('created', '?', :child, :content)
|
22
|
+
install_get_attribute('modified', '?', :child, :content)
|
23
|
+
Modified = RSS::Atom::Feed::Modified
|
24
|
+
Created = RSS::Atom::Feed::Created
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
@@ -20,6 +20,8 @@ module FeedAbstract
|
|
20
20
|
it { @pyblosxom.channel.should respond_to att}
|
21
21
|
it { @chill.channel.should respond_to att}
|
22
22
|
it { @twitter.channel.should respond_to att}
|
23
|
+
it { @twitter_atom.channel.should respond_to att}
|
24
|
+
it { @feedburner_atom.channel.should respond_to att}
|
23
25
|
|
24
26
|
it { @docatom.channel.send(att).should_not == false}
|
25
27
|
it { @kpgatom.channel.send(att).should_not == false}
|
@@ -32,6 +34,8 @@ module FeedAbstract
|
|
32
34
|
it { @pyblosxom.channel.send(att).should_not == false}
|
33
35
|
it { @chill.channel.send(att).should_not == false}
|
34
36
|
it { @twitter.channel.send(att).should_not == false}
|
37
|
+
it { @twitter_atom.channel.send(att).should_not == false}
|
38
|
+
it { @feedburner_atom.channel.send(att).should_not == false}
|
35
39
|
end
|
36
40
|
|
37
41
|
it "should have the correct title" do
|
@@ -46,6 +50,8 @@ module FeedAbstract
|
|
46
50
|
@pyblosxom.channel.title.should == 'Copyrighteous'
|
47
51
|
@chill.channel.title.should == 'Chilling Effects Clearinghouse Weather Reports'
|
48
52
|
@twitter.channel.title.should == 'Twitter / djcp'
|
53
|
+
@twitter_atom.channel.title.should == '#rails - Twitter Search'
|
54
|
+
@feedburner_atom.channel.title.should == 'Law Librarian Blog'
|
49
55
|
end
|
50
56
|
|
51
57
|
it "should have the correct subtitle and description" do
|
@@ -81,6 +87,12 @@ module FeedAbstract
|
|
81
87
|
|
82
88
|
@twitter.channel.description.should == 'Twitter updates from Daniel Collis Puro / djcp.'
|
83
89
|
@twitter.channel.subtitle.should == 'Twitter updates from Daniel Collis Puro / djcp.'
|
90
|
+
|
91
|
+
@twitter_atom.channel.description.should == ''
|
92
|
+
@twitter_atom.channel.subtitle.should == ''
|
93
|
+
|
94
|
+
@feedburner_atom.channel.description.should == 'A Member of the Law Professor Blogs Network'
|
95
|
+
@feedburner_atom.channel.subtitle.should == 'A Member of the Law Professor Blogs Network'
|
84
96
|
end
|
85
97
|
|
86
98
|
it "should have the correct link" do
|
@@ -95,6 +107,8 @@ module FeedAbstract
|
|
95
107
|
@pyblosxom.channel.link.should == 'http://mako.cc/copyrighteous'
|
96
108
|
@chill.channel.link.should == 'http://www.chillingeffects.org'
|
97
109
|
@twitter.channel.link.should == 'http://twitter.com/djcp'
|
110
|
+
@twitter_atom.channel.link.should == 'http://search.twitter.com/search?q=%23rails'
|
111
|
+
@feedburner_atom.channel.link.should == 'http://lawprofessors.typepad.com/law_librarian_blog/'
|
98
112
|
end
|
99
113
|
|
100
114
|
it "should have the correct generator" do
|
@@ -109,6 +123,8 @@ module FeedAbstract
|
|
109
123
|
@pyblosxom.channel.generator.should == "\nPyBlosxom http://pyblosxom.sourceforge.net/ 1.5rc2 20100803\n"
|
110
124
|
@chill.channel.generator.should == ''
|
111
125
|
@twitter.channel.generator.should == 'Twitter'
|
126
|
+
@twitter_atom.channel.generator.should == 'Twitter'
|
127
|
+
@feedburner_atom.channel.generator.should == 'TypePad'
|
112
128
|
end
|
113
129
|
|
114
130
|
it "should have the correct language" do
|
@@ -123,6 +139,8 @@ module FeedAbstract
|
|
123
139
|
@pyblosxom.channel.language.should == 'en'
|
124
140
|
@chill.channel.language.should == 'en-us'
|
125
141
|
@twitter.channel.language.should == 'en-us'
|
142
|
+
@twitter_atom.channel.language.should == 'en-US'
|
143
|
+
@feedburner_atom.channel.language.should == ''
|
126
144
|
end
|
127
145
|
|
128
146
|
it "should have the correct authors" do
|
@@ -137,6 +155,8 @@ module FeedAbstract
|
|
137
155
|
@pyblosxom.channel.authors.should == ['Benjamin Mako Hill']
|
138
156
|
@chill.channel.authors.should == ['Wendy Seltzer, wseltzer@chillingeffects.org']
|
139
157
|
@twitter.channel.authors.should == []
|
158
|
+
@twitter_atom.channel.authors.should == []
|
159
|
+
@feedburner_atom.channel.authors.should == []
|
140
160
|
|
141
161
|
@docatom.channel.author.should == 'Doc Searls'
|
142
162
|
@kpgatom.channel.author.should == 'Nick Pappas'
|
@@ -149,6 +169,8 @@ module FeedAbstract
|
|
149
169
|
@pyblosxom.channel.author.should == 'Benjamin Mako Hill'
|
150
170
|
@chill.channel.author.should == 'Wendy Seltzer, wseltzer@chillingeffects.org'
|
151
171
|
@twitter.channel.author.should == ''
|
172
|
+
@twitter_atom.channel.author.should == ''
|
173
|
+
@feedburner_atom.channel.author.should == ''
|
152
174
|
|
153
175
|
end
|
154
176
|
|
@@ -164,6 +186,8 @@ module FeedAbstract
|
|
164
186
|
@pyblosxom.channel.categories.should == []
|
165
187
|
@chill.channel.categories.should == ['Your rights online']
|
166
188
|
@twitter.channel.categories.should == []
|
189
|
+
@twitter_atom.channel.categories.should == []
|
190
|
+
@feedburner_atom.channel.categories.should == []
|
167
191
|
|
168
192
|
@docatom.channel.category.should == ''
|
169
193
|
@kpgatom.channel.category.should == 'photos'
|
@@ -176,6 +200,8 @@ module FeedAbstract
|
|
176
200
|
@pyblosxom.channel.category.should == ''
|
177
201
|
@chill.channel.category.should == 'Your rights online'
|
178
202
|
@twitter.channel.category.should == ''
|
203
|
+
@twitter_atom.channel.category.should == ''
|
204
|
+
@feedburner_atom.channel.category.should == ''
|
179
205
|
end
|
180
206
|
|
181
207
|
it "should have the correct icon" do
|
@@ -190,6 +216,8 @@ module FeedAbstract
|
|
190
216
|
@pyblosxom.channel.icon.should == ''
|
191
217
|
@chill.channel.icon.should == 'http://images.chillingeffects.org/chilling_effects.gif'
|
192
218
|
@twitter.channel.icon.should == ''
|
219
|
+
@twitter_atom.channel.icon.should == ''
|
220
|
+
@feedburner_atom.channel.icon.should == ''
|
193
221
|
end
|
194
222
|
|
195
223
|
it "should have the correct logo" do
|
@@ -204,6 +232,8 @@ module FeedAbstract
|
|
204
232
|
@pyblosxom.channel.logo.should == ''
|
205
233
|
@chill.channel.logo.should == 'http://images.chillingeffects.org/chilling_effects.gif'
|
206
234
|
@twitter.channel.logo.should == ''
|
235
|
+
@twitter_atom.channel.logo.should == ''
|
236
|
+
@feedburner_atom.channel.logo.should == ''
|
207
237
|
end
|
208
238
|
|
209
239
|
it "should have the correct rights" do
|
@@ -214,10 +244,12 @@ module FeedAbstract
|
|
214
244
|
@oa.channel.rights.should == 'Connotea 2011'
|
215
245
|
@delicious.channel.rights.should == ''
|
216
246
|
@zotero.channel.rights.should == ''
|
217
|
-
@feedburner.channel.rights.should == ' 2011 Cable News Network LP, LLLP.'
|
247
|
+
@feedburner.channel.rights.should == '© 2011 Cable News Network LP, LLLP.'
|
218
248
|
@pyblosxom.channel.rights.should == 'Creative Commons Attribution-ShareAlike'
|
219
249
|
@chill.channel.rights.should == ''
|
220
250
|
@twitter.channel.rights.should == ''
|
251
|
+
@twitter_atom.channel.rights.should == ''
|
252
|
+
@feedburner_atom.channel.rights.should == ''
|
221
253
|
end
|
222
254
|
|
223
255
|
it "should have the correct updated value" do
|
@@ -232,6 +264,8 @@ module FeedAbstract
|
|
232
264
|
@pyblosxom.channel.updated.should == Time.parse('2011-09-15T05:21:00Z')
|
233
265
|
@chill.channel.updated.should == Time.parse('2002-02-25T12:00+00:00')
|
234
266
|
@twitter.channel.updated.should == ''
|
267
|
+
@twitter_atom.channel.updated.should == Time.parse('2012-03-19 21:56:03 UTC')
|
268
|
+
@feedburner_atom.channel.updated.should == Time.parse('2012-04-16 16:25:05 UTC')
|
235
269
|
end
|
236
270
|
|
237
271
|
it "should have the correct guid" do
|
@@ -246,6 +280,8 @@ module FeedAbstract
|
|
246
280
|
@pyblosxom.channel.guid.should == 'http://mako.cc/copyrighteous/'
|
247
281
|
@chill.channel.guid.should == 'http://www.chillingeffects.org'
|
248
282
|
@twitter.channel.guid.should == 'http://twitter.com/djcp'
|
283
|
+
@twitter_atom.channel.guid.should == 'tag:search.twitter.com,2005:search/#rails'
|
284
|
+
@feedburner_atom.channel.guid.should == 'tag:typepad.com,2003:weblog-93063'
|
249
285
|
end
|
250
286
|
end
|
251
287
|
end
|
@@ -33,6 +33,8 @@ module FeedAbstract
|
|
33
33
|
@pyblosxomitem.title.should == "Anxiety\n"
|
34
34
|
@chillitem.title.should == "Takedown Complaints in the Android Marketplace"
|
35
35
|
@twitteritem.title.should == "djcp: @csoghoian @BrookingsInst and the clipboard as well, presumably. #security #keylogging"
|
36
|
+
@twitteratomitem.title.should == "Senior #Ruby on #Rails developer(s) http://t.co/rvqsIK0h #jobs"
|
37
|
+
@feedburner_atom_item.title.should == "Google's Latest CAPTCHA Codes Draws Criticism"
|
36
38
|
|
37
39
|
end
|
38
40
|
|
@@ -53,6 +55,8 @@ module FeedAbstract
|
|
53
55
|
@chillitem.summary.should == %Q$<br>\n<img src=\"//images.chillingeffects.org/thermometer.gif\" alt=\"thermometer\" width=\"35\" height=\"120\"align=left> <h2>Takedown Complaints in the Android Marketplace</h2><p>Wendy Seltzer, <i>Chilling Effects Clearinghouse</i>, March 3, 2011\n<p><i>Abstract:</i> Earlier this year, Google began sending to Chilling Effects the requests it received for takedown from the Android Marketplace. Since this represents a new source of data, we take a look at the first month's input, February 2011.<hr size=1>\n<p><hr size=1 width=\"75%\"><p>Since Apple launched its iPhone App Store, applications marketplaces have popped up with increasing prominence. Google, unlike Apple<a href=\"#note1\" name=\"back\">*</a>, does not lock Android users into purchasing from its <a href=\"https://market.android.com/\">Android Market</a>, but it does make that marketplace a convenient place to find Android applications (<a href=\"http://mashable.com/2010/10/25/android-100000-apps/\">passing 100,000 apps</a> late last year). <br><p><br>In February, Chilling Effects <a href=\"https://www.chillingeffects.org/search.cgi?search=Android\">saw</a> 206 complaints to Google regarding Android Market apps, almost evenly split between trademark and copyright.<a href=\"#note2\" name=\"back2\">*</a> Because the Android Market offers commercial transactions, its context differs somewhat from the search and blog hosting in which DMCA -- copyright -- complaints predominate. At the same time, many apps are offered free of charge.<p><br><img src=\"https://chart.googleapis.com/chart?cht=pc&chtt=Complaint+Subjects+to+Android+Market+(Feb+2011)&chs=750x400&chd=t:111,97,3|0.59,0.31,0.05,0.03,0.02,0.02,0.02,0.38,0.11,0.1,0.07,0.03,0.03,0.02,0.02,0.02,0.01,0.01,0.22&chl=[TM]|[C]||Trademark%20%20(59)|Facebook%20Trademark%20%20(31)|Bank%20Trademark%20%20(5)|SXSW%20Trademark%20%20(3)|Trademarks%20and%20Videos%20Copyright%20%20(2)|Game%20Trademark%20%20(2)|Disney%20Trademark%20and%20Copyright%20%20(2)|Game%20Copyright%20%20(38)|Software%20Copyright%20%20(11)|Logo%20Copyright%20%20(10)|Copyright%20%20(7)|Books%20Copyright%20%20(3)|Images%20Copyright%20%20(3)|Articles%20Copyright%20%20(2)|Television%20Copyright%20%20(2)|UFC%20Copyright%20%20(2)|Photo%20Copyright%20%20(1)|Website%20Copyright%20%20(1)|Other/Unidentified%20(22)&chco=0000FF,003333&chp=3.14\" title=\"Complaint Subjects to Google's Android Market, Feb. 2011\"><p>Slightly more than half of the complaints here claim trademark infringement: misleading use of a mark (word or logo) to cause consumer confusion about the application's source or sponsorship. Facebook led the way, challenging 30+ apps that borrowed its name or \"f\" logo (e.g. <a href=\"/trademark/notice.cgi?NoticeID=56735\">Facebook Trademark Complaint to Google: Android Market</a>). Banks and financial institutions challenged applications that used their logos, even to offer a mobile version of the bank's own site. Here is trademark as the law of consumer protection: you want to be sure an unauthorized Wells Fargo application won't channel your deposit into its coffers rather than your savings account. Google even filed several complaints against apps in its marketplace that were a bit too free with the Google name. Starbucks used copyright in its logo to similar end, requesting takedown or alteration of apps that used the coffee company's logo as their icon (e.g. <a href=\"/dmca512c/notice.cgi?NoticeID=60149\">Logo DMCA (Copyright) Complaint to Google: Android Market</a>). Some, including <a href=\"https://market.android.com/details?id=com.birbeck.starbuckscard\">My Coffee Card</a> (formerly Starbucks Card Widget) changed their name and icon in response.<p>Sometimes, these complaints didn't do much to allege \"likelihood of consumer confusion,\" the traditional hallmark of trademark infringement. South By SouthWest's complaint against the \"Unauthorized SXSW\" party scheduler app -- <a href=\"/trademark/notice.cgi?NoticeID=60951\">SXSW Trademark Complaint to Google: Android Market</a> -- sounds like an overstep, into nominative fair use. There's no good alternative way to refer to the big conference/music festival in Austin later in March, and \"unauthorized\" plainly indicates it's not an officially endorsed product. (Neither Unofficial SXSW nor the official \"SXSW® GO\" gets particularly high marks from reviewers yet, but that may be because the event hasn't yet kicked off to fill them with data.)<p>Another 82 complaints (less 11 \"logo\" complaints) alleged copyright infringement -- copying of code, of graphical elements or \"look and feel\" (Nintendo complained about many \"Super Mario\" derivatives), of characters (Columbia's \"Qbert\"), or of audiovisual elements including video clips, wallpapers, and eBooks. Most of these were phrased in DMCA terms, since like a blog platform, the marketplace hosts \"information residing on systems or networks at direction of users\" <a href=\"http://static.chillingeffects.org/512.html#c\">512(c)</a>. <p>Unique among the copyright complaints in its indirection, the RIAA filed three complaints naming dozens of apps that allegedly \"facilitate the unauthorized streaming and downloading of popular sound recordings, the vast majority of which are owned or controlled by RIAA members.\" Its <a href=\"/dmca512c/notice.cgi?NoticeID=61677\">complaints</a>, complete with screenshots, asked for the removal of apps for ringtone creation and MP3 listening. This is an attenuated claim. RIAA isn't alleging that Google, or even the apps, are direct infringers of member copyrights. Rather, it claims that because Google hosts apps (or in some cases, serves ads inside them) that enable end-users to make infringing copies of music, Google should be held responsible for the users' infringing conduct -- a sort of once-removed contributory or vicarious liability claim. Is there a law of contributory inducement, after <a href=\"http://w2.eff.org/IP/P2P/MGM_v_Grokster/\">Grokster</a>? <p><br>I haven't followed all of the URLs to see how Google has responded to each of these complaints, but to its credit, it does not appear to have pulled the \"Unauthorized SXSW,\" for example. Others accused of trademark infringement appear to have changed their names or logos. Because the <a href=\"https://www.chillingeffects.org/dmca512/faq\">DMCA</a> applies only to copyright, not trademark, there is less settled procedure around the trademark claims. There's no safe-harbor, but neither is there an assumption that the service provider will be liable for its users' activity (see <a href=\"http://www.eff.org/deeplinks/2010/04/tiffany-v-ebay-what-about-put-back\">Tiffany v. eBay</a>, where the Second Circuit Court of Appeals held that \"for contributory trademark infringement liability to lie, a service provider must have more than a general knowledge or reason to know that its service is being used to sell counterfeit goods.\"). <p><br><img src=\"https://chart.googleapis.com/chart?cht=p&chtt=Complaint+Senders+to+Android+Market+(Feb+2011)&chs=750x400&chd=t:0.3,0.2,0.08,0.06,0.04,0.03,0.03,0.03,0.03,0.02,0.02,0.02,0.02,0.02,0.02,0.02,0.02,0.02,0.02,0.02,1.09&chl=Facebook,%20Inc.%20(30)|Nintendo%20of%20America%20Inc.%20(20)|Google%20Inc.%20(8)|Starbucks%20Corporation%20(6)|Hatched%20Games%20(4)|RIAA%20(3)|Photo%20Hunt%20(3)|Atari,%20Inc.%20(3)|ESPN%20Inc.%20(3)|Playboy%20Enterprises%20International,%20Inc.%20(2)|Electronic%20Arts%20Inc.%20(2)|The%20Walt%20Disney%20Company%20(2)|Monotype%20Imaging%20Inc.%20(2)|Kodansha%20Ltd.%20(2)|Metro,%20a%20division%20of%20Associated%20Newspapers%20Limited%20(2)|Dorna%20Sports%20(2)|Justin.tv,%20Inc.%20(2)|Rocket%20Radar%20(2)|eBay%20Inc.%20(2)|Promevo,%20LLC%20(2)|Other/Unidentified%20(109)&chco=0000FF&chp=3.14\" title=\"Takedown Senders\"><p><a name=\"note1\" href=\"#back\">*</a> Copyright geeks will recall that the last <a href=\"http://www.loc.gov/today/pr/2010/10-169.html\">anticircumvention rulemaking</a> exempted phone jailbreaking from the circumvention rule, so iPhone owners can confidently unlock their phones to use the <a href=\"http://cydia.saurik.com/\">cydia</a> marketplace or others.<br><a name=\"note2\" href=\"#back2\">*</a> Note that this is a simple count of distinct complaint submissions, each of which may target one or multiple allegedly infringing applications. $
|
54
56
|
|
55
57
|
@twitteritem.summary.should == "djcp: @csoghoian @BrookingsInst and the clipboard as well, presumably. #security #keylogging"
|
58
|
+
@twitteratomitem.summary.should == 'Senior #Ruby on #Rails developer(s) http://t.co/rvqsIK0h #jobs'
|
59
|
+
@feedburner_atom_item.summary.should == 'Here’s a little bit more from the technology front. Google has been accused of another privacy violation. Any tech company that owns a user base numbering in the billions can make a move that draws criticism. Sometimes that criticism is...'
|
56
60
|
end
|
57
61
|
|
58
62
|
it "should have the correct content" do
|
@@ -105,6 +109,9 @@ module FeedAbstract
|
|
105
109
|
@pyblosxomitem.content.should == %Q|<div><a href='http://www.flickr.com/photos/nffcnnr/401047557/' target='_blank'><img src='http://farm1.static.flickr.com/137/401047557_1dda26e16f.jpg' width=350 alt='MailBoxes by nffcnnr, on Flickr' title='MailBoxes by nffcnnr, on Flickr' border='0'/></a><br/><a href='http://creativecommons.org/licenses/by/2.0/' target='_blank'><img src='http://i.creativecommons.org/l/by/2.0/80x15.png' alt='Creative Commons Attribution 2.0 Generic License' title='Creative Commons Attribution 2.0 Generic License' border='0' align='left'></a> by <a href='http://www.flickr.com/people/nffcnnr/' target='_blank'> nffcnnr</a><a href='http://www.imagecodr.org/' target='_blank'> </a></div><p>I am haunted by the nagging fear that I have mailboxes, tucked into a\ndark corner of an office somewhere, and perhaps even full of checks\nand important documents, that I don't know exist.</p>\n|
|
106
110
|
@chillitem.content.should == ''
|
107
111
|
@twitteritem.content.should == ""
|
112
|
+
@twitteratomitem.content.should == %Q|Senior <a href="http://search.twitter.com/search?q=%23Ruby" title="#Ruby" class=" ">#Ruby</a> on <em><a href="http://search.twitter.com/search?q=%23Rails" title="#Rails" class=" ">#Rails</a></em> developer(s) <a href="http://t.co/rvqsIK0h">http://t.co/rvqsIK0h</a> <a href="http://search.twitter.com/search?q=%23jobs" title="#jobs" class=" ">#jobs</a>|
|
113
|
+
|
114
|
+
@feedburner_atom_item.content.should == ''
|
108
115
|
end
|
109
116
|
|
110
117
|
it "should have the correct link" do
|
@@ -118,6 +125,8 @@ module FeedAbstract
|
|
118
125
|
@pyblosxomitem.link.should == 'http://mako.cc/copyrighteous/20110913-00'
|
119
126
|
@chillitem.link.should == 'https://www.chillingeffects.org/weather.cgi?WeatherID=648'
|
120
127
|
@twitteritem.link.should == 'http://twitter.com/djcp/statuses/168381896559046656'
|
128
|
+
@twitteratomitem.link.should == 'http://twitter.com/pelaphptutor/statuses/181861618911690752'
|
129
|
+
@feedburner_atom_item.link.should == 'http://feedproxy.google.com/~r/LawLibrarianBlog/~3/CgraB_He5jQ/googles-latest-captcha-codes-draws-criticism.html'
|
121
130
|
end
|
122
131
|
|
123
132
|
it "should have the correct author" do
|
@@ -131,6 +140,8 @@ module FeedAbstract
|
|
131
140
|
@pyblosxomitem.author.should == ''
|
132
141
|
@chillitem.author.should == ''
|
133
142
|
@twitteritem.author.should == 'djcp'
|
143
|
+
@twitteratomitem.author.should == 'pelaphptutor'
|
144
|
+
@feedburner_atom_item.author.should == 'Joe Hodnicki'
|
134
145
|
end
|
135
146
|
|
136
147
|
it "should have the correct authors" do
|
@@ -144,6 +155,8 @@ module FeedAbstract
|
|
144
155
|
@pyblosxomitem.authors.should == []
|
145
156
|
@chillitem.authors.should == []
|
146
157
|
@twitteritem.authors.should == ['djcp']
|
158
|
+
@twitteratomitem.authors.should == ['pelaphptutor']
|
159
|
+
@feedburner_atom_item.authors.should == ['Joe Hodnicki']
|
147
160
|
end
|
148
161
|
|
149
162
|
it "should have the correct contributor" do
|
@@ -157,6 +170,8 @@ module FeedAbstract
|
|
157
170
|
@pyblosxomitem.contributor.should == ''
|
158
171
|
@chillitem.contributor.should == ''
|
159
172
|
@twitteritem.contributor.should == ''
|
173
|
+
@twitteratomitem.contributor.should == ''
|
174
|
+
@feedburner_atom_item.contributor.should == ''
|
160
175
|
end
|
161
176
|
|
162
177
|
it "should have the correct contributors" do
|
@@ -170,6 +185,8 @@ module FeedAbstract
|
|
170
185
|
@pyblosxomitem.contributors.should == []
|
171
186
|
@chillitem.contributors.should == []
|
172
187
|
@twitteritem.contributors.should == []
|
188
|
+
@twitteratomitem.contributors.should == []
|
189
|
+
@feedburner_atom_item.contributors.should == []
|
173
190
|
end
|
174
191
|
|
175
192
|
it "should have the correct category" do
|
@@ -183,6 +200,8 @@ module FeedAbstract
|
|
183
200
|
@pyblosxomitem.category.should == ''
|
184
201
|
@chillitem.category.should == ''
|
185
202
|
@twitteritem.category.should == 'security, keylogging'
|
203
|
+
@twitteratomitem.category.should == 'Ruby, Rails, jobs'
|
204
|
+
@feedburner_atom_item.category.should == 'Web/Tech'
|
186
205
|
end
|
187
206
|
|
188
207
|
it "should have the correct categories" do
|
@@ -196,6 +215,8 @@ module FeedAbstract
|
|
196
215
|
@pyblosxomitem.categories.should == []
|
197
216
|
@chillitem.categories.should == []
|
198
217
|
@twitteritem.categories.should == ['security', 'keylogging']
|
218
|
+
@twitteratomitem.categories.should == ['Ruby', 'Rails', 'jobs']
|
219
|
+
@feedburner_atom_item.categories.should == ['Web/Tech']
|
199
220
|
end
|
200
221
|
|
201
222
|
it "should have the correct rights" do
|
@@ -209,6 +230,8 @@ module FeedAbstract
|
|
209
230
|
@pyblosxomitem.rights.should == ''
|
210
231
|
@chillitem.rights.should == ''
|
211
232
|
@twitteritem.rights.should == ''
|
233
|
+
@twitteratomitem.rights.should == ''
|
234
|
+
@feedburner_atom_item.rights.should == ''
|
212
235
|
end
|
213
236
|
|
214
237
|
it "should have been updated at the correct time" do
|
@@ -222,6 +245,8 @@ module FeedAbstract
|
|
222
245
|
@pyblosxomitem.updated.should == Time.parse('2011-09-15T05:21:00Z')
|
223
246
|
@chillitem.updated.should == ""
|
224
247
|
@twitteritem.updated.should == Time.parse('2012-02-11 12:12:27 -0500')
|
248
|
+
@twitteratomitem.updated.should == Time.parse('2012-03-19 21:56:03 UTC')
|
249
|
+
@feedburner_atom_item.updated.should == Time.parse('2012-04-16T16:25:05Z')
|
225
250
|
end
|
226
251
|
|
227
252
|
it "should have been published at the proper time" do
|
@@ -235,6 +260,8 @@ module FeedAbstract
|
|
235
260
|
@pyblosxomitem.published.should == Time.parse('2011-09-15T05:21:00Z')
|
236
261
|
@chillitem.published.should == ''
|
237
262
|
@twitteritem.published.should == Time.parse('2012-02-11 12:12:27 -0500')
|
263
|
+
@twitteratomitem.published.should == Time.parse('2012-03-19 21:56:03 UTC')
|
264
|
+
@feedburner_atom_item.published.should == Time.parse('2012-04-16T16:25:05Z')
|
238
265
|
end
|
239
266
|
|
240
267
|
it "should have the proper guid" do
|
@@ -248,6 +275,8 @@ module FeedAbstract
|
|
248
275
|
@pyblosxomitem.guid.should == 'http://mako.cc/copyrighteous/2011/09/15/20110913-00'
|
249
276
|
@chillitem.guid.should == 'https://www.chillingeffects.org/weather.cgi?WeatherID=648'
|
250
277
|
@twitteritem.guid.should == 'http://twitter.com/djcp/statuses/168381896559046656'
|
278
|
+
@twitteratomitem.guid.should == 'tag:search.twitter.com,2005:181861618911690752'
|
279
|
+
@feedburner_atom_item.guid.should == 'tag:typepad.com,2003:post-6a00d8341bfae553ef016304421f87970d'
|
251
280
|
end
|
252
281
|
|
253
282
|
end
|
data/spec/feed_abstract_spec.rb
CHANGED
@@ -9,7 +9,7 @@ module FeedAbstract
|
|
9
9
|
end
|
10
10
|
|
11
11
|
it "should be able to instantiate" do
|
12
|
-
Feed.respond_to?(:new).should == true
|
12
|
+
FeedAbstract::Feed.respond_to?(:new).should == true
|
13
13
|
end
|
14
14
|
|
15
15
|
it "should recognize atom feeds properly" do
|
@@ -36,6 +36,14 @@ module FeedAbstract
|
|
36
36
|
end
|
37
37
|
end
|
38
38
|
|
39
|
+
it "should throw a parser error on a bad feed" do
|
40
|
+
begin
|
41
|
+
f = FeedAbstract::Feed.new('asdfasdf')
|
42
|
+
rescue Exception => e
|
43
|
+
e.class.should == FeedAbstract::ParserError
|
44
|
+
end
|
45
|
+
end
|
46
|
+
|
39
47
|
end
|
40
48
|
|
41
49
|
end
|
data/spec/spec_helper.rb
CHANGED
@@ -17,8 +17,10 @@ def instantiate_feeds
|
|
17
17
|
@pyblosxom = FeedAbstract::Feed.new(File.open('spec/test_data/pyblosxom.atom'))
|
18
18
|
@chill = FeedAbstract::Feed.new(File.open('spec/test_data/chillingeffects.xml'))
|
19
19
|
@twitter = FeedAbstract::Feed.new(File.open('spec/test_data/djcp_twitter.rss'))
|
20
|
+
@twitter_atom = FeedAbstract::Feed.new(File.open('spec/test_data/twitter_hashtag.atom'))
|
21
|
+
@feedburner_atom = FeedAbstract::Feed.new(File.open('spec/test_data/LawLibrarianBlog.atom'))
|
20
22
|
|
21
|
-
@all_feeds = [@docatom, @kpgatom, @djcprss2, @djcprss92, @oa, @delicious, @zotero, @feedburner, @pyblosxom, @chill, @twitter]
|
23
|
+
@all_feeds = [@docatom, @kpgatom, @djcprss2, @djcprss92, @oa, @delicious, @zotero, @feedburner, @pyblosxom, @chill, @twitter, @twitter_atom, @feedburner_atom]
|
22
24
|
end
|
23
25
|
|
24
26
|
def instantiate_example_items
|
@@ -32,4 +34,6 @@ def instantiate_example_items
|
|
32
34
|
@pyblosxomitem = @pyblosxom.items.first
|
33
35
|
@chillitem = @chill.items.first
|
34
36
|
@twitteritem = @twitter.items.first
|
37
|
+
@twitteratomitem = @twitter_atom.items.first
|
38
|
+
@feedburner_atom_item = @feedburner_atom.items.first
|
35
39
|
end
|
@@ -0,0 +1,356 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atomfull.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://purl.org/atom/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="0.3">
|
3
|
+
<title>Law Librarian Blog</title>
|
4
|
+
<link rel="alternate" type="text/html" href="http://lawprofessors.typepad.com/law_librarian_blog/" />
|
5
|
+
<id>tag:typepad.com,2003:weblog-93063</id>
|
6
|
+
<link rel="service.post" type="application/x.atom+xml" href="http://www.typepad.com/t/atom/weblog/blog_id=93063" title="Law Librarian Blog" />
|
7
|
+
<modified>2012-04-16T16:25:05Z</modified>
|
8
|
+
<tagline>A Member of the Law Professor Blogs Network</tagline>
|
9
|
+
|
10
|
+
<generator url="http://www.typepad.com/" version="1.0">TypePad</generator>
|
11
|
+
<info type="application/xhtml+xml">
|
12
|
+
<div xmlns="http://www.w3.org/1999/xhtml">This is an Atom formatted XML site feed. It is intended to be viewed in a Newsreader or syndicated to another site. Please visit <a href="http://lawprofessors.typepad.com/law_librarian_blog/">Law Librarian Blog</a> for more info.</div>
|
13
|
+
</info>
|
14
|
+
<link rel="start" type="application/atom+xml" href="http://feeds.feedburner.com/LawLibrarianBlog" /><feedburner:info uri="lawlibrarianblog" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><feedburner:emailServiceId>LawLibrarianBlog</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><entry>
|
15
|
+
<title>Google's Latest CAPTCHA Codes Draws Criticism</title>
|
16
|
+
<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LawLibrarianBlog/~3/CgraB_He5jQ/googles-latest-captcha-codes-draws-criticism.html" />
|
17
|
+
<link rel="service.edit" type="application/x.atom+xml" href="http://www.typepad.com/t/atom/weblog/blog_id=93063/entry_id=6a00d8341bfae553ef016304421f87970d" title="Google's Latest CAPTCHA Codes Draws Criticism" />
|
18
|
+
<id>tag:typepad.com,2003:post-6a00d8341bfae553ef016304421f87970d</id>
|
19
|
+
<issued>2012-04-16T12:25:05-04:00</issued>
|
20
|
+
<modified>2012-04-16T16:25:05Z</modified>
|
21
|
+
<created>2012-04-16T16:25:05Z</created>
|
22
|
+
<summary>Here’s a little bit more from the technology front. Google has been accused of another privacy violation. Any tech company that owns a user base numbering in the billions can make a move that draws criticism. Sometimes that criticism is...</summary>
|
23
|
+
<author>
|
24
|
+
<name>Joe Hodnicki</name>
|
25
|
+
</author>
|
26
|
+
<dc:subject>Web/Tech</dc:subject>
|
27
|
+
|
28
|
+
|
29
|
+
<feedburner:origLink>http://lawprofessors.typepad.com/law_librarian_blog/2012/04/googles-latest-captcha-codes-draws-criticism.html</feedburner:origLink></entry>
|
30
|
+
<entry>
|
31
|
+
<title>Managing a Library's Electronic Collection: The Long March to an Integrated Discovery and Access Platform</title>
|
32
|
+
<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LawLibrarianBlog/~3/oKqMQQ-1E1Y/managing-a-librarys-electronic-collection-the-long-march-to-an-integrated-discovery-and-access-platf.html" />
|
33
|
+
<link rel="service.edit" type="application/x.atom+xml" href="http://www.typepad.com/t/atom/weblog/blog_id=93063/entry_id=6a00d8341bfae553ef01676527fe4b970b" title="Managing a Library's Electronic Collection: The Long March to an Integrated Discovery and Access Platform" />
|
34
|
+
<id>tag:typepad.com,2003:post-6a00d8341bfae553ef01676527fe4b970b</id>
|
35
|
+
<issued>2012-04-16T03:48:00-04:00</issued>
|
36
|
+
<modified>2012-04-16T11:40:35Z</modified>
|
37
|
+
<created>2012-04-16T07:48:00Z</created>
|
38
|
+
<summary>The Douglas County (Colorado) public library system has developed a solution for discovering and lending eBooks. Monique Sendze, Associate Director of Information Technology at Douglas County Libraries, describes the project in detail in her article The E-Book Experiment, Public Libraries...</summary>
|
39
|
+
<author>
|
40
|
+
<name>Joe Hodnicki</name>
|
41
|
+
</author>
|
42
|
+
<dc:subject>Collection Development</dc:subject>
|
43
|
+
<dc:subject>Digital Collections</dc:subject>
|
44
|
+
<dc:subject>Electronic Resource</dc:subject>
|
45
|
+
<dc:subject>Tech Services</dc:subject>
|
46
|
+
|
47
|
+
|
48
|
+
<feedburner:origLink>http://lawprofessors.typepad.com/law_librarian_blog/2012/04/managing-a-librarys-electronic-collection-the-long-march-to-an-integrated-discovery-and-access-platf.html</feedburner:origLink></entry>
|
49
|
+
<entry>
|
50
|
+
<title>Some Thoughts on the DOJ Lawsuit Against Apple and the Publishers</title>
|
51
|
+
<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LawLibrarianBlog/~3/4tzLc1JlPJI/some-thoughts-on-the-doj-lawsuit-against-apple-and-the-publishers.html" />
|
52
|
+
<link rel="service.edit" type="application/x.atom+xml" href="http://www.typepad.com/t/atom/weblog/blog_id=93063/entry_id=6a00d8341bfae553ef0168ea2e2d09970c" title="Some Thoughts on the DOJ Lawsuit Against Apple and the Publishers" />
|
53
|
+
<id>tag:typepad.com,2003:post-6a00d8341bfae553ef0168ea2e2d09970c</id>
|
54
|
+
<issued>2012-04-15T20:01:22-04:00</issued>
|
55
|
+
<modified>2012-04-16T00:01:22Z</modified>
|
56
|
+
<created>2012-04-16T00:01:22Z</created>
|
57
|
+
<summary>Now that the dust has settled on the lawsuit filed against Apple and five of the major publishers, the commentators have come out in force. The line-up of opinions seem to be, on one side, that the suit is ill-advised...</summary>
|
58
|
+
<author>
|
59
|
+
<name>Joe Hodnicki</name>
|
60
|
+
</author>
|
61
|
+
<dc:subject>Books</dc:subject>
|
62
|
+
<dc:subject>Litigation in the News</dc:subject>
|
63
|
+
|
64
|
+
|
65
|
+
<feedburner:origLink>http://lawprofessors.typepad.com/law_librarian_blog/2012/04/some-thoughts-on-the-doj-lawsuit-against-apple-and-the-publishers.html</feedburner:origLink></entry>
|
66
|
+
<entry>
|
67
|
+
<title>Round-Up of Law Practitioner Blogs</title>
|
68
|
+
<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LawLibrarianBlog/~3/JQsaq_b2vDQ/round-up-of-law-practitioner-blogs-2.html" />
|
69
|
+
<link rel="service.edit" type="application/x.atom+xml" href="http://www.typepad.com/t/atom/weblog/blog_id=93063/entry_id=6a00d8341bfae553ef0168e8a1de5b970c" title="Round-Up of Law Practitioner Blogs" />
|
70
|
+
<id>tag:typepad.com,2003:post-6a00d8341bfae553ef0168e8a1de5b970c</id>
|
71
|
+
<issued>2012-04-15T03:35:00-04:00</issued>
|
72
|
+
<modified>2012-04-15T07:35:00Z</modified>
|
73
|
+
<created>2012-04-15T07:35:00Z</created>
|
74
|
+
<summary>California Police Brutality Lawyer Blog http://www.californiapolicebrutalitylawyerblog.com/ http://www.californiapolicebrutalitylawyerblog.com/index.xml Examines police brutality cases, news, and related topics in California. Published by Okorie Okorocha Immigration Las Vegas Blog http://www.immigrationlasvegas.com/ http://www.immigrationlasvegas.com/index.xml Discusses immigration cases, news, and related topics in Nevada. Published by Goodin Law...</summary>
|
75
|
+
<author>
|
76
|
+
<name>Joe Hodnicki</name>
|
77
|
+
</author>
|
78
|
+
<dc:subject>Web Communications</dc:subject>
|
79
|
+
|
80
|
+
|
81
|
+
<feedburner:origLink>http://lawprofessors.typepad.com/law_librarian_blog/2012/04/round-up-of-law-practitioner-blogs-2.html</feedburner:origLink></entry>
|
82
|
+
<entry>
|
83
|
+
<title>Hein Adds Congressional Hearings Back to 1927 To HeinOnline</title>
|
84
|
+
<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LawLibrarianBlog/~3/SY2KLsV_VZw/hein-adds-congressional-hearings-back-to-1927-to-hein-online.html" />
|
85
|
+
<link rel="service.edit" type="application/x.atom+xml" href="http://www.typepad.com/t/atom/weblog/blog_id=93063/entry_id=6a00d8341bfae553ef0167651f3430970b" title="Hein Adds Congressional Hearings Back to 1927 To HeinOnline" />
|
86
|
+
<id>tag:typepad.com,2003:post-6a00d8341bfae553ef0167651f3430970b</id>
|
87
|
+
<issued>2012-04-14T17:20:46-04:00</issued>
|
88
|
+
<modified>2012-04-14T21:23:33Z</modified>
|
89
|
+
<created>2012-04-14T21:20:46Z</created>
|
90
|
+
<summary>As everyone knows, it's hard to keep track these days of the comings and goings of information on databases. In case anyone missed it, Hein is adding congressional hearings to its database. Here's the announcement: Access more than 3,000 of...</summary>
|
91
|
+
<author>
|
92
|
+
<name>Joe Hodnicki</name>
|
93
|
+
</author>
|
94
|
+
<dc:subject>Congress</dc:subject>
|
95
|
+
<dc:subject>Digital Collections</dc:subject>
|
96
|
+
|
97
|
+
|
98
|
+
<feedburner:origLink>http://lawprofessors.typepad.com/law_librarian_blog/2012/04/hein-adds-congressional-hearings-back-to-1927-to-hein-online.html</feedburner:origLink></entry>
|
99
|
+
<entry>
|
100
|
+
<title>Best and Worst Jobs of 2012</title>
|
101
|
+
<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LawLibrarianBlog/~3/T2lmJAX77Rc/best-and-worst-jobs-of-2012.html" />
|
102
|
+
<link rel="service.edit" type="application/x.atom+xml" href="http://www.typepad.com/t/atom/weblog/blog_id=93063/entry_id=6a00d8341bfae553ef016304157f93970d" title="Best and Worst Jobs of 2012" />
|
103
|
+
<id>tag:typepad.com,2003:post-6a00d8341bfae553ef016304157f93970d</id>
|
104
|
+
<issued>2012-04-14T07:13:00-04:00</issued>
|
105
|
+
<modified>2012-04-14T11:13:00Z</modified>
|
106
|
+
<created>2012-04-14T11:13:00Z</created>
|
107
|
+
<summary>CareerCast.com ranked 200 jobs from best to worst based on five criteria: physical demands, work environment, income, stress and hiring outlook. Ranked in first place is Software Enginer and last place is Lumberjack. Librarian is ranked 61st, just ahead of...</summary>
|
108
|
+
<author>
|
109
|
+
<name>Joe Hodnicki</name>
|
110
|
+
</author>
|
111
|
+
<dc:subject>Info - Antics or Metrics?</dc:subject>
|
112
|
+
|
113
|
+
|
114
|
+
<feedburner:origLink>http://lawprofessors.typepad.com/law_librarian_blog/2012/04/best-and-worst-jobs-of-2012.html</feedburner:origLink></entry>
|
115
|
+
<entry>
|
116
|
+
<title>What Can You Find By Rummaging in the Federal Government's Attic?</title>
|
117
|
+
<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LawLibrarianBlog/~3/QL4nAMs6t6c/what-can-you-find-by-rummaging-in-the-federal-governments-attic.html" />
|
118
|
+
<link rel="service.edit" type="application/x.atom+xml" href="http://www.typepad.com/t/atom/weblog/blog_id=93063/entry_id=6a00d8341bfae553ef016303e67468970d" title="What Can You Find By Rummaging in the Federal Government's Attic?" />
|
119
|
+
<id>tag:typepad.com,2003:post-6a00d8341bfae553ef016303e67468970d</id>
|
120
|
+
<issued>2012-04-13T03:55:00-04:00</issued>
|
121
|
+
<modified>2012-04-13T07:55:00Z</modified>
|
122
|
+
<created>2012-04-13T07:55:00Z</created>
|
123
|
+
<summary>Certainly, some interesting electronic copies of federal documents provided by Governmentattic.org via FOIA requests. For example, Collection of US Supreme Court Legal Maxims, Compiled by the Department of Justice (DOJ) Civil Division Appellate Staff, [1993 through 1998 Terms] is a...</summary>
|
124
|
+
<author>
|
125
|
+
<name>Joe Hodnicki</name>
|
126
|
+
</author>
|
127
|
+
<dc:subject>Gov Docs</dc:subject>
|
128
|
+
<dc:subject>Legal Research Instruction</dc:subject>
|
129
|
+
<dc:subject>Web Communications</dc:subject>
|
130
|
+
|
131
|
+
|
132
|
+
<feedburner:origLink>http://lawprofessors.typepad.com/law_librarian_blog/2012/04/what-can-you-find-by-rummaging-in-the-federal-governments-attic.html</feedburner:origLink></entry>
|
133
|
+
<entry>
|
134
|
+
<title>Friday Fun: All I do is skim</title>
|
135
|
+
<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LawLibrarianBlog/~3/DgQHXsdTPoU/friday-fun-all-i-do-is-skim.html" />
|
136
|
+
<link rel="service.edit" type="application/x.atom+xml" href="http://www.typepad.com/t/atom/weblog/blog_id=93063/entry_id=6a00d8341bfae553ef016303d71f1c970d" title="Friday Fun: All I do is skim" />
|
137
|
+
<id>tag:typepad.com,2003:post-6a00d8341bfae553ef016303d71f1c970d</id>
|
138
|
+
<issued>2012-04-13T03:50:00-04:00</issued>
|
139
|
+
<modified>2012-04-13T07:50:00Z</modified>
|
140
|
+
<created>2012-04-13T07:50:00Z</created>
|
141
|
+
<summary />
|
142
|
+
<author>
|
143
|
+
<name>Joe Hodnicki</name>
|
144
|
+
</author>
|
145
|
+
<dc:subject>Friday Fun</dc:subject>
|
146
|
+
|
147
|
+
|
148
|
+
<feedburner:origLink>http://lawprofessors.typepad.com/law_librarian_blog/2012/04/friday-fun-all-i-do-is-skim.html</feedburner:origLink></entry>
|
149
|
+
<entry>
|
150
|
+
<title>Federal District Court Says OK To Library Blocking Internet Content To Adults</title>
|
151
|
+
<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LawLibrarianBlog/~3/sDuyEvWWveM/federal-district-court-says-ok-to-library-blocking-internet-content-to-adults.html" />
|
152
|
+
<link rel="service.edit" type="application/x.atom+xml" href="http://www.typepad.com/t/atom/weblog/blog_id=93063/entry_id=6a00d8341bfae553ef0168ea042e0c970c" title="Federal District Court Says OK To Library Blocking Internet Content To Adults" />
|
153
|
+
<id>tag:typepad.com,2003:post-6a00d8341bfae553ef0168ea042e0c970c</id>
|
154
|
+
<issued>2012-04-12T21:06:16-04:00</issued>
|
155
|
+
<modified>2012-04-14T19:39:29Z</modified>
|
156
|
+
<created>2012-04-13T01:06:16Z</created>
|
157
|
+
<summary>Judge Edward Shea of the Eastern District of Washington issued an opinion on Tuesday in the long simmering case of Bradburn v. North Central Library Regional Library District (NCLR) (NO. CV-06-0327-EFS, via a link to PACER). The case involves the...</summary>
|
158
|
+
<author>
|
159
|
+
<name>Joe Hodnicki</name>
|
160
|
+
</author>
|
161
|
+
<dc:subject>Collection Development</dc:subject>
|
162
|
+
<dc:subject>Court Opinions</dc:subject>
|
163
|
+
<dc:subject>Web Communications</dc:subject>
|
164
|
+
|
165
|
+
|
166
|
+
<feedburner:origLink>http://lawprofessors.typepad.com/law_librarian_blog/2012/04/federal-district-court-says-ok-to-library-blocking-internet-content-to-adults.html</feedburner:origLink></entry>
|
167
|
+
<entry>
|
168
|
+
<title>Compete to Win the First Dewey B Strategic Legal Research Genius Award</title>
|
169
|
+
<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LawLibrarianBlog/~3/ZNc8wA6thz8/compete-to-win-the-first-dewey-b-strategic-legal-research-genius-award.html" />
|
170
|
+
<link rel="service.edit" type="application/x.atom+xml" href="http://www.typepad.com/t/atom/weblog/blog_id=93063/entry_id=6a00d8341bfae553ef016304057786970d" title="Compete to Win the First Dewey B Strategic Legal Research Genius Award" />
|
171
|
+
<id>tag:typepad.com,2003:post-6a00d8341bfae553ef016304057786970d</id>
|
172
|
+
<issued>2012-04-12T09:23:00-04:00</issued>
|
173
|
+
<modified>2012-04-12T13:23:00Z</modified>
|
174
|
+
<created>2012-04-12T13:23:00Z</created>
|
175
|
+
<summary>By entering the Dewey B Strategic research crossword challenge! [JH]</summary>
|
176
|
+
<author>
|
177
|
+
<name>Joe Hodnicki</name>
|
178
|
+
</author>
|
179
|
+
<dc:subject>Legal Research</dc:subject>
|
180
|
+
|
181
|
+
|
182
|
+
<feedburner:origLink>http://lawprofessors.typepad.com/law_librarian_blog/2012/04/compete-to-win-the-first-dewey-b-strategic-legal-research-genius-award.html</feedburner:origLink></entry>
|
183
|
+
<entry>
|
184
|
+
<title>ALA's 2012 State of America's Libraries Report</title>
|
185
|
+
<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LawLibrarianBlog/~3/zxdlejtqlrY/alas-2012-state-of-americas-libraries-report.html" />
|
186
|
+
<link rel="service.edit" type="application/x.atom+xml" href="http://www.typepad.com/t/atom/weblog/blog_id=93063/entry_id=6a00d8341bfae553ef0168e9f048ba970c" title="ALA's 2012 State of America's Libraries Report" />
|
187
|
+
<id>tag:typepad.com,2003:post-6a00d8341bfae553ef0168e9f048ba970c</id>
|
188
|
+
<issued>2012-04-12T03:40:00-04:00</issued>
|
189
|
+
<modified>2012-04-12T12:42:43Z</modified>
|
190
|
+
<created>2012-04-12T07:40:00Z</created>
|
191
|
+
<summary>The State of America's Libraries Report (view online or download PDF) documents trends in library usage and details the impact of library budget cuts, technology use, and the various other challenges facing U.S. libraries. The "New focus of ebooks" section...</summary>
|
192
|
+
<author>
|
193
|
+
<name>Joe Hodnicki</name>
|
194
|
+
</author>
|
195
|
+
<dc:subject>Library Associations</dc:subject>
|
196
|
+
<dc:subject>New Publications</dc:subject>
|
197
|
+
|
198
|
+
|
199
|
+
<feedburner:origLink>http://lawprofessors.typepad.com/law_librarian_blog/2012/04/alas-2012-state-of-americas-libraries-report.html</feedburner:origLink></entry>
|
200
|
+
<entry>
|
201
|
+
<title>Some Publishers Settle With The DOJ, Apple and Others To Litigate</title>
|
202
|
+
<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LawLibrarianBlog/~3/T-u6d5K37Js/some-publishers-settle-with-the-doj-apple-and-others-to-litigate.html" />
|
203
|
+
<link rel="service.edit" type="application/x.atom+xml" href="http://www.typepad.com/t/atom/weblog/blog_id=93063/entry_id=6a00d8341bfae553ef0168e9f2be30970c" title="Some Publishers Settle With The DOJ, Apple and Others To Litigate" />
|
204
|
+
<id>tag:typepad.com,2003:post-6a00d8341bfae553ef0168e9f2be30970c</id>
|
205
|
+
<issued>2012-04-11T13:35:59-04:00</issued>
|
206
|
+
<modified>2012-04-11T17:35:59Z</modified>
|
207
|
+
<created>2012-04-11T17:35:59Z</created>
|
208
|
+
<summary>From Eric Holder's prepared remarks: As part of this commitment, the Department has reached a settlement with three of the nation’s largest book publishers – and will continue to litigate against Apple, and two additional leading publishers – for conspiring...</summary>
|
209
|
+
<author>
|
210
|
+
<name>Joe Hodnicki</name>
|
211
|
+
</author>
|
212
|
+
<dc:subject>Books</dc:subject>
|
213
|
+
<dc:subject>Litigation in the News</dc:subject>
|
214
|
+
|
215
|
+
|
216
|
+
<feedburner:origLink>http://lawprofessors.typepad.com/law_librarian_blog/2012/04/some-publishers-settle-with-the-doj-apple-and-others-to-litigate.html</feedburner:origLink></entry>
|
217
|
+
<entry>
|
218
|
+
<title>Justice Department Sues Apple, Publishers on e-Book Pricing</title>
|
219
|
+
<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LawLibrarianBlog/~3/5GfgWIhJXjs/justice-department-sues-apple-publishers-on-e-book-pricing.html" />
|
220
|
+
<link rel="service.edit" type="application/x.atom+xml" href="http://www.typepad.com/t/atom/weblog/blog_id=93063/entry_id=6a00d8341bfae553ef016303fbc90d970d" title="Justice Department Sues Apple, Publishers on e-Book Pricing" />
|
221
|
+
<id>tag:typepad.com,2003:post-6a00d8341bfae553ef016303fbc90d970d</id>
|
222
|
+
<issued>2012-04-11T11:03:09-04:00</issued>
|
223
|
+
<modified>2012-04-11T17:00:30Z</modified>
|
224
|
+
<created>2012-04-11T15:03:09Z</created>
|
225
|
+
<summary>The breaking news is that the United States Justice Department is suing Apple and several publishers in a New York federal court today. There are also reports that Attorney General Eric Holder will speak later on today on an “unspecified...</summary>
|
226
|
+
<author>
|
227
|
+
<name>Joe Hodnicki</name>
|
228
|
+
</author>
|
229
|
+
<dc:subject>Books</dc:subject>
|
230
|
+
<dc:subject>Litigation in the News</dc:subject>
|
231
|
+
|
232
|
+
|
233
|
+
<feedburner:origLink>http://lawprofessors.typepad.com/law_librarian_blog/2012/04/justice-department-sues-apple-publishers-on-e-book-pricing.html</feedburner:origLink></entry>
|
234
|
+
<entry>
|
235
|
+
<title>Lately We've Seen Some Criticism of Bloomberg Law by an Anonymous Author over at 3 Greeks. Any Response to that?</title>
|
236
|
+
<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LawLibrarianBlog/~3/QNmkVr6YCf4/lately-weve-seen-some-criticism-of-bloomberg-law-by-an-anonymous-author-over-at-3-greeks-any-respons.html" />
|
237
|
+
<link rel="service.edit" type="application/x.atom+xml" href="http://www.typepad.com/t/atom/weblog/blog_id=93063/entry_id=6a00d8341bfae553ef0168e9e3bf95970c" title="Lately We've Seen Some Criticism of Bloomberg Law by an Anonymous Author over at 3 Greeks. Any Response to that?" />
|
238
|
+
<id>tag:typepad.com,2003:post-6a00d8341bfae553ef0168e9e3bf95970c</id>
|
239
|
+
<issued>2012-04-11T03:54:00-04:00</issued>
|
240
|
+
<modified>2012-04-11T07:54:00Z</modified>
|
241
|
+
<created>2012-04-11T07:54:00Z</created>
|
242
|
+
<summary>The title of this post is a take-off from an interview question to TR Legal's Mike Dahn in the context of a two-part LLB anonymous post published on LLB titled The WestSearch Straitjacket For Legal Research - Thinking Beyond The...</summary>
|
243
|
+
<author>
|
244
|
+
<name>Joe Hodnicki</name>
|
245
|
+
</author>
|
246
|
+
<dc:subject>Legal Research</dc:subject>
|
247
|
+
<dc:subject>Products & Services</dc:subject>
|
248
|
+
<dc:subject>Publishing Industry</dc:subject>
|
249
|
+
|
250
|
+
|
251
|
+
<feedburner:origLink>http://lawprofessors.typepad.com/law_librarian_blog/2012/04/lately-weve-seen-some-criticism-of-bloomberg-law-by-an-anonymous-author-over-at-3-greeks-any-respons.html</feedburner:origLink></entry>
|
252
|
+
<entry>
|
253
|
+
<title>Today is National Library Workers Day</title>
|
254
|
+
<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LawLibrarianBlog/~3/0-cCw8e98RI/today-is-national-library-workers-day.html" />
|
255
|
+
<link rel="service.edit" type="application/x.atom+xml" href="http://www.typepad.com/t/atom/weblog/blog_id=93063/entry_id=6a00d8341bfae553ef016303eda425970d" title="Today is National Library Workers Day" />
|
256
|
+
<id>tag:typepad.com,2003:post-6a00d8341bfae553ef016303eda425970d</id>
|
257
|
+
<issued>2012-04-10T10:44:00-04:00</issued>
|
258
|
+
<modified>2012-04-10T14:44:00Z</modified>
|
259
|
+
<created>2012-04-10T14:44:00Z</created>
|
260
|
+
<summary>It is one the events celebrating National Library Week. [JH]</summary>
|
261
|
+
<author>
|
262
|
+
<name>Joe Hodnicki</name>
|
263
|
+
</author>
|
264
|
+
<dc:subject>Library Associations</dc:subject>
|
265
|
+
|
266
|
+
|
267
|
+
<feedburner:origLink>http://lawprofessors.typepad.com/law_librarian_blog/2012/04/today-is-national-library-workers-day.html</feedburner:origLink></entry>
|
268
|
+
<entry>
|
269
|
+
<title>Pew Interent to Research the Changing Landscape of Library Services in First Comprehensive Examination of Reading Habits Since the Rise of eBooks</title>
|
270
|
+
<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LawLibrarianBlog/~3/-LVN5qzvZmA/pew-interent-to-research-the-changing-landscape-of-library-services-in-first-comprehensive-examinati.html" />
|
271
|
+
<link rel="service.edit" type="application/x.atom+xml" href="http://www.typepad.com/t/atom/weblog/blog_id=93063/entry_id=6a00d8341bfae553ef016303d81c1c970d" title="Pew Interent to Research the Changing Landscape of Library Services in First Comprehensive Examination of Reading Habits Since the Rise of eBooks" />
|
272
|
+
<id>tag:typepad.com,2003:post-6a00d8341bfae553ef016303d81c1c970d</id>
|
273
|
+
<issued>2012-04-10T03:50:00-04:00</issued>
|
274
|
+
<modified>2012-04-10T07:50:00Z</modified>
|
275
|
+
<created>2012-04-10T07:50:00Z</created>
|
276
|
+
<summary>Pew Research Center’s Internet & American Life Project is conducting the frist comprehensive examination of the reading habits of the general population in the digital era since eBooks came into prominence. The first installment in this Gates Foundation-funded research was...</summary>
|
277
|
+
<author>
|
278
|
+
<name>Joe Hodnicki</name>
|
279
|
+
</author>
|
280
|
+
<dc:subject>Administration</dc:subject>
|
281
|
+
<dc:subject>Collection Development</dc:subject>
|
282
|
+
<dc:subject>Electronic Resource</dc:subject>
|
283
|
+
<dc:subject>Library Associations</dc:subject>
|
284
|
+
<dc:subject>Meetings</dc:subject>
|
285
|
+
<dc:subject>Publishing Industry</dc:subject>
|
286
|
+
<dc:subject>Think Tank Reports</dc:subject>
|
287
|
+
|
288
|
+
|
289
|
+
<feedburner:origLink>http://lawprofessors.typepad.com/law_librarian_blog/2012/04/pew-interent-to-research-the-changing-landscape-of-library-services-in-first-comprehensive-examinati.html</feedburner:origLink></entry>
|
290
|
+
<entry>
|
291
|
+
<title>It's National Library Week, Time To Ban the Books</title>
|
292
|
+
<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LawLibrarianBlog/~3/qUT_LscTIaQ/its-national-library-week-time-to-ban-the-books.html" />
|
293
|
+
<link rel="service.edit" type="application/x.atom+xml" href="http://www.typepad.com/t/atom/weblog/blog_id=93063/entry_id=6a00d8341bfae553ef0168e9dcb591970c" title="It's National Library Week, Time To Ban the Books" />
|
294
|
+
<id>tag:typepad.com,2003:post-6a00d8341bfae553ef0168e9dcb591970c</id>
|
295
|
+
<issued>2012-04-09T16:41:17-04:00</issued>
|
296
|
+
<modified>2012-04-09T20:41:17Z</modified>
|
297
|
+
<created>2012-04-09T20:41:17Z</created>
|
298
|
+
<summary>The American Library Association publishes its list of most challenged books in 2011 coinciding with National Library Week: ttyl; ttfn; l8r, g8r (series), by Lauren Myracle The Color of Earth (series), by Kim Dong Hwa The Hunger Games trilogy, by...</summary>
|
299
|
+
<author>
|
300
|
+
<name>Joe Hodnicki</name>
|
301
|
+
</author>
|
302
|
+
<dc:subject>Books</dc:subject>
|
303
|
+
|
304
|
+
|
305
|
+
<feedburner:origLink>http://lawprofessors.typepad.com/law_librarian_blog/2012/04/its-national-library-week-time-to-ban-the-books.html</feedburner:origLink></entry>
|
306
|
+
<entry>
|
307
|
+
<title>Another Glimpse Into How We Are Tracked Online</title>
|
308
|
+
<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LawLibrarianBlog/~3/lYafWQ8OaAE/another-glimpse-into-how-we-are-tracked-online.html" />
|
309
|
+
<link rel="service.edit" type="application/x.atom+xml" href="http://www.typepad.com/t/atom/weblog/blog_id=93063/entry_id=6a00d8341bfae553ef016764db4eee970b" title="Another Glimpse Into How We Are Tracked Online" />
|
310
|
+
<id>tag:typepad.com,2003:post-6a00d8341bfae553ef016764db4eee970b</id>
|
311
|
+
<issued>2012-04-09T16:29:28-04:00</issued>
|
312
|
+
<modified>2012-04-09T20:29:28Z</modified>
|
313
|
+
<created>2012-04-09T20:29:28Z</created>
|
314
|
+
<summary>It’s no secret that living online brings a level of scrutiny by a host of companies and web sites. They either want to sell something to the consumer, or just as likely sell the consumer information to someone who wants...</summary>
|
315
|
+
<author>
|
316
|
+
<name>Joe Hodnicki</name>
|
317
|
+
</author>
|
318
|
+
<dc:subject>Web/Tech</dc:subject>
|
319
|
+
|
320
|
+
|
321
|
+
<feedburner:origLink>http://lawprofessors.typepad.com/law_librarian_blog/2012/04/another-glimpse-into-how-we-are-tracked-online.html</feedburner:origLink></entry>
|
322
|
+
<entry>
|
323
|
+
<title>New Editions of the Statistical Abstract To Be Published Commercially</title>
|
324
|
+
<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LawLibrarianBlog/~3/v48vKgXNCBA/new-editions-of-the-statistical-abstract-to-be-published-commercially.html" />
|
325
|
+
<link rel="service.edit" type="application/x.atom+xml" href="http://www.typepad.com/t/atom/weblog/blog_id=93063/entry_id=6a00d8341bfae553ef016764da08e6970b" title="New Editions of the Statistical Abstract To Be Published Commercially" />
|
326
|
+
<id>tag:typepad.com,2003:post-6a00d8341bfae553ef016764da08e6970b</id>
|
327
|
+
<issued>2012-04-09T13:52:37-04:00</issued>
|
328
|
+
<modified>2012-04-09T17:52:37Z</modified>
|
329
|
+
<created>2012-04-09T17:52:37Z</created>
|
330
|
+
<summary>If anyone has visited the page for the Statistical Abstract of the United States, that person would see this message: The U.S. Census Bureau is terminating the collection of data for the Statistical Compendia program effective October 1, 2011. The...</summary>
|
331
|
+
<author>
|
332
|
+
<name>Joe Hodnicki</name>
|
333
|
+
</author>
|
334
|
+
<dc:subject>Books</dc:subject>
|
335
|
+
|
336
|
+
|
337
|
+
<feedburner:origLink>http://lawprofessors.typepad.com/law_librarian_blog/2012/04/new-editions-of-the-statistical-abstract-to-be-published-commercially.html</feedburner:origLink></entry>
|
338
|
+
<entry>
|
339
|
+
<title>The New Poster Boy of AALL!</title>
|
340
|
+
<link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LawLibrarianBlog/~3/7tedaJWrFVE/the-new-poster-boy-of-aall.html" />
|
341
|
+
<link rel="service.edit" type="application/x.atom+xml" href="http://www.typepad.com/t/atom/weblog/blog_id=93063/entry_id=6a00d8341bfae553ef016303bd5475970d" title="The New Poster Boy of AALL!" />
|
342
|
+
<id>tag:typepad.com,2003:post-6a00d8341bfae553ef016303bd5475970d</id>
|
343
|
+
<issued>2012-04-09T07:40:00-04:00</issued>
|
344
|
+
<modified>2012-04-09T12:30:53Z</modified>
|
345
|
+
<created>2012-04-09T11:40:00Z</created>
|
346
|
+
<summary>I recently saw AALL's new poster boy in the latest issue of Spectrum. It's found in an ad for Boston 2012 (foreground image below, click to enlarge if you have the stomach for that). OMG, I'm thinking for AALL ad...</summary>
|
347
|
+
<author>
|
348
|
+
<name>Joe Hodnicki</name>
|
349
|
+
</author>
|
350
|
+
<dc:subject>Library Associations</dc:subject>
|
351
|
+
<dc:subject>Meetings</dc:subject>
|
352
|
+
|
353
|
+
|
354
|
+
<feedburner:origLink>http://lawprofessors.typepad.com/law_librarian_blog/2012/04/the-new-poster-boy-of-aall.html</feedburner:origLink></entry>
|
355
|
+
|
356
|
+
</feed><!-- ph=1 -->
|
@@ -0,0 +1,2 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?><feed xmlns:google="http://base.google.com/ns/1.0" xml:lang="en-US" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns="http://www.w3.org/2005/Atom" xmlns:twitter="http://api.twitter.com/" xmlns:georss="http://www.georss.org/georss"><id>tag:search.twitter.com,2005:search/#rails</id><link type="text/html" href="http://search.twitter.com/search?q=%23rails" rel="alternate"/><link type="application/atom+xml" href="http://search.twitter.com/search.atom?q=%23rails" rel="self"/><title>#rails - Twitter Search</title><link type="application/opensearchdescription+xml" href="http://twitter.com/opensearch.xml" rel="search"/><link type="application/atom+xml" href="http://search.twitter.com/search.atom?since_id=181861618911690752&q=%23rails" rel="refresh"/><updated>2012-03-19T21:56:03Z</updated><openSearch:itemsPerPage>15</openSearch:itemsPerPage><link type="application/atom+xml" href="http://search.twitter.com/search.atom?page=2&max_id=181861618911690752&q=%23rails" rel="next"/><entry><id>tag:search.twitter.com,2005:181861618911690752</id><published>2012-03-19T21:56:03Z</published><link type="text/html" href="http://twitter.com/pelaphptutor/statuses/181861618911690752" rel="alternate"/><title>Senior #Ruby on #Rails developer(s) http://t.co/rvqsIK0h #jobs</title><content type="html">Senior <a href="http://search.twitter.com/search?q=%23Ruby" title="#Ruby" class=" ">#Ruby</a> on <em><a href="http://search.twitter.com/search?q=%23Rails" title="#Rails" class=" ">#Rails</a></em> developer(s) <a href="http://t.co/rvqsIK0h">http://t.co/rvqsIK0h</a> <a href="http://search.twitter.com/search?q=%23jobs" title="#jobs" class=" ">#jobs</a></content><updated>2012-03-19T21:56:03Z</updated><link type="image/png" href="http://a0.twimg.com/profile_images/292484362/n100131847672_3877_normal.jpg" rel="image"/><twitter:geo></twitter:geo><twitter:metadata><twitter:result_type>recent</twitter:result_type></twitter:metadata><twitter:source><a href="http://www.pelaphptutorials.com/" rel="nofollow">PelaPHPTutorials</a></twitter:source><twitter:lang>en</twitter:lang><author><name>pelaphptutor (pelaphptutorials.com)</name><uri>http://twitter.com/pelaphptutor</uri></author></entry><entry><id>tag:search.twitter.com,2005:181860990592368640</id><published>2012-03-19T21:53:33Z</published><link type="text/html" href="http://twitter.com/newsxbrain/statuses/181860990592368640" rel="alternate"/><title>[2tweet] friendly_idを使ってFriendlyでRESTfulなURI設計 #Ruby #Rails - Qiita→http://t.co/UBac1Zcn</title><content type="html">[2tweet] friendly_idを使ってFriendlyでRESTfulなURI設計 <a href="http://search.twitter.com/search?q=%23Ruby" title="#Ruby" class=" ">#Ruby</a> <em><a href="http://search.twitter.com/search?q=%23Rails" title="#Rails" class=" ">#Rails</a></em> - Qiita→<a href="http://t.co/UBac1Zcn">http://t.co/UBac1Zcn</a></content><updated>2012-03-19T21:53:33Z</updated><link type="image/png" href="http://a0.twimg.com/profile_images/1704033209/_____-1_normal.gif" rel="image"/><twitter:geo></twitter:geo><twitter:metadata><twitter:result_type>recent</twitter:result_type></twitter:metadata><twitter:source><a href="http://newsxbrain.com/" rel="nofollow">newsxbrain</a></twitter:source><twitter:lang>ja</twitter:lang><author><name>newsxbrain (NEWS×BRAIN[ニュースブレイン])</name><uri>http://twitter.com/newsxbrain</uri></author></entry><entry><id>tag:search.twitter.com,2005:181860163660169217</id><published>2012-03-19T21:50:16Z</published><link type="text/html" href="http://twitter.com/pietereer/statuses/181860163660169217" rel="alternate"/><title>Blown away with how good this Rails CMS is for integration in existing Rails apps: https://t.co/Klfr217I #rails #ruby #cms #in</title><content type="html">Blown away with how good this Rails CMS is for integration in existing Rails apps: <a href="https://t.co/Klfr217I">https://t.co/Klfr217I</a> <em><a href="http://search.twitter.com/search?q=%23rails" title="#rails" class=" ">#rails</a></em> <a href="http://search.twitter.com/search?q=%23ruby" title="#ruby" class=" ">#ruby</a> <a href="http://search.twitter.com/search?q=%23cms" title="#cms" class=" ">#cms</a> <a href="http://search.twitter.com/search?q=%23in" title="#in" class=" ">#in</a></content><updated>2012-03-19T21:50:16Z</updated><link type="image/png" href="http://a0.twimg.com/profile_images/1730280321/pieter_reasonably_small_normal.jpg" rel="image"/><twitter:geo></twitter:geo><twitter:metadata><twitter:result_type>recent</twitter:result_type></twitter:metadata><twitter:source><a href="http://twitter.com/">web</a></twitter:source><twitter:lang>en</twitter:lang><author><name>pietereer (Pieter Eerlings)</name><uri>http://twitter.com/pietereer</uri></author></entry><entry><id>tag:search.twitter.com,2005:181852384232873984</id><published>2012-03-19T21:19:21Z</published><link type="text/html" href="http://twitter.com/twotoneatl/statuses/181852384232873984" rel="alternate"/><title>RT @highgroove #hacknight begins now! What @alindeman is hacking: http://t.co/s0LeWtFw // http://t.co/GCIRnxNL #rails #ruby #wolfbrain</title><content type="html">RT @<a class=" " href="http://twitter.com/highgroove">highgroove</a> <a href="http://search.twitter.com/search?q=%23hacknight" title="#hacknight" class=" ">#hacknight</a> begins now! What @alindeman is hacking: <a href="http://t.co/s0LeWtFw">http://t.co/s0LeWtFw</a> // <a href="http://t.co/GCIRnxNL">http://t.co/GCIRnxNL</a> <em><a href="http://search.twitter.com/search?q=%23rails" title="#rails" class=" ">#rails</a></em> <a href="http://search.twitter.com/search?q=%23ruby" title="#ruby" class=" ">#ruby</a> <a href="http://search.twitter.com/search?q=%23wolfbrain" title="#wolfbrain" class=" ">#wolfbrain</a></content><updated>2012-03-19T21:19:21Z</updated><link type="image/png" href="http://a0.twimg.com/profile_images/1839933674/logo_normal.png" rel="image"/><twitter:geo></twitter:geo><twitter:metadata><twitter:result_type>recent</twitter:result_type></twitter:metadata><twitter:source><a href="http://twitter.com/devices" rel="nofollow">txt</a></twitter:source><twitter:lang>en</twitter:lang><author><name>twotoneatl (Jon Woodroof)</name><uri>http://twitter.com/twotoneatl</uri></author></entry><entry><id>tag:search.twitter.com,2005:181849434706022400</id><published>2012-03-19T21:07:38Z</published><link type="text/html" href="http://twitter.com/mattmacnaughton/statuses/181849434706022400" rel="alternate"/><title>Code by the beach! We're hiring #Rails developers at PromoJam in Venice, CA. Check out our open position on GitHub https://t.co/QwBIzwuG</title><content type="html">Code by the beach! We're hiring <em><a href="http://search.twitter.com/search?q=%23Rails" title="#Rails" class=" ">#Rails</a></em> developers at PromoJam in Venice, CA. Check out our open position on GitHub <a href="https://t.co/QwBIzwuG">https://t.co/QwBIzwuG</a></content><updated>2012-03-19T21:07:38Z</updated><link type="image/png" href="http://a0.twimg.com/profile_images/951402566/profileb_W_normal.jpg" rel="image"/><twitter:geo></twitter:geo><twitter:metadata><twitter:result_type>recent</twitter:result_type></twitter:metadata><twitter:source><a href="http://twitter.com/">web</a></twitter:source><twitter:lang>en</twitter:lang><author><name>mattmacnaughton (Matt MacNaughton)</name><uri>http://twitter.com/mattmacnaughton</uri></author></entry><entry><id>tag:search.twitter.com,2005:181847777968525314</id><published>2012-03-19T21:01:03Z</published><link type="text/html" href="http://twitter.com/x_rubydevs/statuses/181847777968525314" rel="alternate"/><title>Relevance Makes the B Corp "Best for the World" List! #ruby #rails http://t.co/AtPe73gM</title><content type="html">Relevance Makes the B Corp "Best for the World" List! <a href="http://search.twitter.com/search?q=%23ruby" title="#ruby" class=" ">#ruby</a> <em><a href="http://search.twitter.com/search?q=%23rails" title="#rails" class=" ">#rails</a></em> <a href="http://t.co/AtPe73gM">http://t.co/AtPe73gM</a></content><updated>2012-03-19T21:01:03Z</updated><link type="image/png" href="http://a0.twimg.com/profile_images/1242574217/XYDO_normal.jpeg" rel="image"/><twitter:geo></twitter:geo><twitter:metadata><twitter:result_type>recent</twitter:result_type></twitter:metadata><twitter:source><a href="http://www.xydo.com" rel="nofollow">XYDOhandles</a></twitter:source><twitter:lang>en</twitter:lang><author><name>x_rubydevs (XYDO Ruby Dev)</name><uri>http://twitter.com/x_rubydevs</uri></author></entry><entry><id>tag:search.twitter.com,2005:181847089439973376</id><published>2012-03-19T20:58:19Z</published><link type="text/html" href="http://twitter.com/philipzaengle/statuses/181847089439973376" rel="alternate"/><title>Note to self: you can't run git commands within the rails console. #rails</title><content type="html">Note to self: you can't run git commands within the rails console. <em><a href="http://search.twitter.com/search?q=%23rails" title="#rails" class=" ">#rails</a></em></content><updated>2012-03-19T20:58:19Z</updated><link type="image/png" href="http://a0.twimg.com/profile_images/935161088/500x500_normal.jpg" rel="image"/><twitter:geo></twitter:geo><twitter:metadata><twitter:result_type>recent</twitter:result_type></twitter:metadata><twitter:source><a href="http://itunes.apple.com/us/app/twitter/id409789998?mt=12" rel="nofollow">Twitter for Mac</a></twitter:source><twitter:lang>en</twitter:lang><author><name>philipzaengle (Philip Zaengle)</name><uri>http://twitter.com/philipzaengle</uri></author></entry><entry><id>tag:search.twitter.com,2005:181838570946969600</id><published>2012-03-19T20:24:28Z</published><link type="text/html" href="http://twitter.com/aereal/statuses/181838570946969600" rel="alternate"/><title>friendly_idを使ってFriendlyでRESTfulなURI設計 #Ruby #Rails http://t.co/WM5zwSBY</title><content type="html">friendly_idを使ってFriendlyでRESTfulなURI設計 <a href="http://search.twitter.com/search?q=%23Ruby" title="#Ruby" class=" ">#Ruby</a> <em><a href="http://search.twitter.com/search?q=%23Rails" title="#Rails" class=" ">#Rails</a></em> <a href="http://t.co/WM5zwSBY">http://t.co/WM5zwSBY</a></content><updated>2012-03-19T20:24:28Z</updated><link type="image/png" href="http://a0.twimg.com/profile_images/1796360201/a8b842d3448ded45259dd74d452c5972_normal.png" rel="image"/><twitter:geo></twitter:geo><twitter:metadata><twitter:result_type>recent</twitter:result_type></twitter:metadata><twitter:source><a href="http://qiita.com" rel="nofollow">Qiita</a></twitter:source><twitter:lang>ja</twitter:lang><author><name>aereal (日常ツイート
|
2
|
+
)</name><uri>http://twitter.com/aereal</uri></author></entry><entry><id>tag:search.twitter.com,2005:181835236961824769</id><published>2012-03-19T20:11:13Z</published><link type="text/html" href="http://twitter.com/honeyshock/statuses/181835236961824769" rel="alternate"/><title>#people are being #trained so far off #track seems that more of us are going straight off the #rails...Tammy Wells</title><content type="html"><a href="http://search.twitter.com/search?q=%23people" title="#people" class=" ">#people</a> are being <a href="http://search.twitter.com/search?q=%23trained" title="#trained" class=" ">#trained</a> so far off <a href="http://search.twitter.com/search?q=%23track" title="#track" class=" ">#track</a> seems that more of us are going straight off the <em><a href="http://search.twitter.com/search?q=%23rails" title="#rails" class=" ">#rails</a></em>...Tammy Wells</content><updated>2012-03-19T20:11:13Z</updated><link type="image/png" href="http://a0.twimg.com/profile_images/1905722719/IMG03331-20120318-1011_normal.jpg" rel="image"/><twitter:geo></twitter:geo><twitter:metadata><twitter:result_type>recent</twitter:result_type></twitter:metadata><twitter:source><a href="http://blackberry.com/twitter" rel="nofollow">Twitter for BlackBerry®</a></twitter:source><twitter:lang>en</twitter:lang><author><name>honeyshock (Tammy Wells)</name><uri>http://twitter.com/honeyshock</uri></author></entry><entry><id>tag:search.twitter.com,2005:181834055552212992</id><published>2012-03-19T20:06:31Z</published><link type="text/html" href="http://twitter.com/rubyve/statuses/181834055552212992" rel="alternate"/><title>“@coders_vzla: Personaliza el código creado por generadores de #rails - Gema Roja http://t.co/5MPRZbSp @rubyve”</title><content type="html">“@<a class=" " href="http://twitter.com/coders_vzla">coders_vzla</a>: Personaliza el código creado por generadores de <em><a href="http://search.twitter.com/search?q=%23rails" title="#rails" class=" ">#rails</a></em> - Gema Roja <a href="http://t.co/5MPRZbSp">http://t.co/5MPRZbSp</a> @<a class=" " href="http://twitter.com/rubyve">rubyve</a>”</content><updated>2012-03-19T20:06:31Z</updated><link type="image/png" href="http://a0.twimg.com/profile_images/1153697142/ruby-pintado_normal.jpg" rel="image"/><twitter:geo></twitter:geo><twitter:metadata><twitter:result_type>recent</twitter:result_type></twitter:metadata><twitter:source><a href="http://itunes.apple.com/us/app/twitter/id409789998?mt=12" rel="nofollow">Twitter for Mac</a></twitter:source><twitter:lang>es</twitter:lang><author><name>rubyve (RubyVE)</name><uri>http://twitter.com/rubyve</uri></author></entry><entry><id>tag:search.twitter.com,2005:181833803856228352</id><published>2012-03-19T20:05:31Z</published><link type="text/html" href="http://twitter.com/scicasoft/statuses/181833803856228352" rel="alternate"/><title>enfiiiiinnnnnnn #ruby marche installing #rails :-) @hassanemoustaph</title><content type="html">enfiiiiinnnnnnn <a href="http://search.twitter.com/search?q=%23ruby" title="#ruby" class=" ">#ruby</a> marche installing <em><a href="http://search.twitter.com/search?q=%23rails" title="#rails" class=" ">#rails</a></em> :-) @<a class=" " href="http://twitter.com/hassanemoustaph">hassanemoustaph</a></content><updated>2012-03-19T20:05:31Z</updated><link type="image/png" href="http://a0.twimg.com/profile_images/634703361/Code-Lyoko-11_389x506_normal.jpg" rel="image"/><twitter:geo></twitter:geo><twitter:metadata><twitter:result_type>recent</twitter:result_type></twitter:metadata><twitter:source><a href="http://twitter.com/">web</a></twitter:source><twitter:lang>de</twitter:lang><author><name>scicasoft (Cheikh Sidya Camara)</name><uri>http://twitter.com/scicasoft</uri></author></entry><entry><id>tag:search.twitter.com,2005:181832307542466560</id><published>2012-03-19T19:59:35Z</published><link type="text/html" href="http://twitter.com/dexterous/statuses/181832307542466560" rel="alternate"/><title>@srshti @pathsny @tdinkar @markhneedham how does a vanilla #rails app substitute an in-memory instance of a #mysql db for tests?</title><content type="html">@<a class=" " href="http://twitter.com/srshti">srshti</a> @<a class=" " href="http://twitter.com/pathsny">pathsny</a> @<a class=" " href="http://twitter.com/tdinkar">tdinkar</a> @<a class=" " href="http://twitter.com/markhneedham">markhneedham</a> how does a vanilla <em><a href="http://search.twitter.com/search?q=%23rails" title="#rails" class=" ">#rails</a></em> app substitute an in-memory instance of a <a href="http://search.twitter.com/search?q=%23mysql" title="#mysql" class=" ">#mysql</a> db for tests?</content><updated>2012-03-19T19:59:35Z</updated><link type="image/png" href="http://a0.twimg.com/profile_images/1367401855/IMG_3076_normal.JPG" rel="image"/><twitter:geo></twitter:geo><twitter:metadata><twitter:result_type>recent</twitter:result_type></twitter:metadata><twitter:source><a href="http://twitter.com/">web</a></twitter:source><twitter:lang>en</twitter:lang><author><name>dexterous (Saager Mhatre)</name><uri>http://twitter.com/dexterous</uri></author></entry><entry><id>tag:search.twitter.com,2005:181832161400324097</id><published>2012-03-19T19:59:00Z</published><link type="text/html" href="http://twitter.com/ohmyshirt/statuses/181832161400324097" rel="alternate"/><title>RT @KCITP: Rails’ new seamless integration with Amazon’s DynamoDB and S3 http://t.co/f6hXVK5n // #Rails</title><content type="html">RT @<a class=" " href="http://twitter.com/KCITP">KCITP</a>: Rails’ new seamless integration with Amazon’s DynamoDB and S3 <a href="http://t.co/f6hXVK5n">http://t.co/f6hXVK5n</a> // <em><a href="http://search.twitter.com/search?q=%23Rails" title="#Rails" class=" ">#Rails</a></em></content><updated>2012-03-19T19:59:00Z</updated><link type="image/png" href="http://a0.twimg.com/profile_images/1881675087/423482_10100161366557141_22007281_41947547_1603094433_n_normal.jpeg" rel="image"/><twitter:geo></twitter:geo><twitter:metadata><twitter:result_type>recent</twitter:result_type></twitter:metadata><twitter:source><a href="http://www.tweetdeck.com" rel="nofollow">TweetDeck</a></twitter:source><twitter:lang>en</twitter:lang><author><name>ohmyshirt (Mikey)</name><uri>http://twitter.com/ohmyshirt</uri></author></entry><entry><id>tag:search.twitter.com,2005:181831123637248000</id><published>2012-03-19T19:54:52Z</published><link type="text/html" href="http://twitter.com/Veraticus/statuses/181831123637248000" rel="alternate"/><title>Added association names... Next Dynamoid feature is going to be indexes through associations! https://t.co/1j5FONY5 #dynamodb #ruby #rails</title><content type="html">Added association names... Next Dynamoid feature is going to be indexes through associations! <a href="https://t.co/1j5FONY5">https://t.co/1j5FONY5</a> <a href="http://search.twitter.com/search?q=%23dynamodb" title="#dynamodb" class=" ">#dynamodb</a> <a href="http://search.twitter.com/search?q=%23ruby" title="#ruby" class=" ">#ruby</a> <em><a href="http://search.twitter.com/search?q=%23rails" title="#rails" class=" ">#rails</a></em></content><updated>2012-03-19T19:54:52Z</updated><link type="image/png" href="http://a0.twimg.com/profile_images/1844017969/My_HipstaPrint_0-1_normal.jpg" rel="image"/><twitter:geo></twitter:geo><twitter:metadata><twitter:result_type>recent</twitter:result_type></twitter:metadata><twitter:source><a href="http://twitter.com/">web</a></twitter:source><twitter:lang>en</twitter:lang><author><name>Veraticus (Josh Symonds)</name><uri>http://twitter.com/Veraticus</uri></author></entry><entry><id>tag:search.twitter.com,2005:181830550754045952</id><published>2012-03-19T19:52:36Z</published><link type="text/html" href="http://twitter.com/ticean/statuses/181830550754045952" rel="alternate"/><title>Code by the beach! I'm hiring #Rails developers for a fun project in LA. https://t.co/4I5pOO5p</title><content type="html">Code by the beach! I'm hiring <em><a href="http://search.twitter.com/search?q=%23Rails" title="#Rails" class=" ">#Rails</a></em> developers for a fun project in LA. <a href="https://t.co/4I5pOO5p">https://t.co/4I5pOO5p</a></content><updated>2012-03-19T19:52:36Z</updated><link type="image/png" href="http://a0.twimg.com/profile_images/1227437269/2007-07-24-235346_normal.jpg" rel="image"/><twitter:geo></twitter:geo><twitter:metadata><twitter:result_type>recent</twitter:result_type></twitter:metadata><twitter:source><a href="http://twitter.com/">web</a></twitter:source><twitter:lang>en</twitter:lang><author><name>ticean (Ticean Bennett)</name><uri>http://twitter.com/ticean</uri></author></entry></feed>
|
metadata
CHANGED
@@ -1,72 +1,86 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: feed-abstract
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
5
|
-
prerelease:
|
4
|
+
version: 0.0.16
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- Daniel Collis-Puro
|
9
8
|
autorequire:
|
10
9
|
bindir: bin
|
11
10
|
cert_chain: []
|
12
|
-
date:
|
11
|
+
date: 2017-04-25 00:00:00.000000000 Z
|
13
12
|
dependencies:
|
14
13
|
- !ruby/object:Gem::Dependency
|
15
14
|
name: rspec
|
16
|
-
requirement:
|
17
|
-
none: false
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
18
16
|
requirements:
|
19
|
-
- -
|
17
|
+
- - ">="
|
20
18
|
- !ruby/object:Gem::Version
|
21
19
|
version: '0'
|
22
20
|
type: :development
|
23
21
|
prerelease: false
|
24
|
-
version_requirements:
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - ">="
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '0'
|
25
27
|
- !ruby/object:Gem::Dependency
|
26
28
|
name: rdoc
|
27
|
-
requirement:
|
28
|
-
none: false
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
29
30
|
requirements:
|
30
|
-
- -
|
31
|
+
- - ">="
|
31
32
|
- !ruby/object:Gem::Version
|
32
33
|
version: '0'
|
33
34
|
type: :development
|
34
35
|
prerelease: false
|
35
|
-
version_requirements:
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - ">="
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '0'
|
36
41
|
- !ruby/object:Gem::Dependency
|
37
42
|
name: bundler
|
38
|
-
requirement:
|
39
|
-
none: false
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
40
44
|
requirements:
|
41
|
-
- -
|
45
|
+
- - ">="
|
42
46
|
- !ruby/object:Gem::Version
|
43
47
|
version: '0'
|
44
48
|
type: :development
|
45
49
|
prerelease: false
|
46
|
-
version_requirements:
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - ">="
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '0'
|
47
55
|
- !ruby/object:Gem::Dependency
|
48
56
|
name: jeweler
|
49
|
-
requirement:
|
50
|
-
none: false
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
51
58
|
requirements:
|
52
|
-
- -
|
59
|
+
- - ">="
|
53
60
|
- !ruby/object:Gem::Version
|
54
61
|
version: '0'
|
55
62
|
type: :development
|
56
63
|
prerelease: false
|
57
|
-
version_requirements:
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - ">="
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '0'
|
58
69
|
- !ruby/object:Gem::Dependency
|
59
70
|
name: simplecov
|
60
|
-
requirement:
|
61
|
-
none: false
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
62
72
|
requirements:
|
63
|
-
- -
|
73
|
+
- - ">="
|
64
74
|
- !ruby/object:Gem::Version
|
65
75
|
version: '0'
|
66
76
|
type: :development
|
67
77
|
prerelease: false
|
68
|
-
version_requirements:
|
69
|
-
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - ">="
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: '0'
|
83
|
+
description: 'This library creates a common object graph for the RSS/Atom/RDF parsing
|
70
84
|
classes in the ruby standard library. This allows you parse different feed formats
|
71
85
|
and get back the same (or at least a very similar) set of results - item authors
|
72
86
|
are accessible under an "author(s)" attribute, categories/tags/subjects are accessible
|
@@ -80,7 +94,7 @@ extensions: []
|
|
80
94
|
extra_rdoc_files:
|
81
95
|
- README.rdoc
|
82
96
|
files:
|
83
|
-
- .gitignore
|
97
|
+
- ".gitignore"
|
84
98
|
- Gemfile
|
85
99
|
- README.rdoc
|
86
100
|
- Rakefile
|
@@ -98,10 +112,12 @@ files:
|
|
98
112
|
- lib/feed-abstract/items/rss.rb
|
99
113
|
- lib/feed-abstract/mixins.rb
|
100
114
|
- lib/feed-abstract/version.rb
|
115
|
+
- lib/rss_atom_monkeypatches.rb
|
101
116
|
- spec/feed_abstract_channel_spec.rb
|
102
117
|
- spec/feed_abstract_item_spec.rb
|
103
118
|
- spec/feed_abstract_spec.rb
|
104
119
|
- spec/spec_helper.rb
|
120
|
+
- spec/test_data/LawLibrarianBlog.atom
|
105
121
|
- spec/test_data/chillingeffects.xml
|
106
122
|
- spec/test_data/djcp.rss
|
107
123
|
- spec/test_data/djcp.rss92
|
@@ -113,30 +129,30 @@ files:
|
|
113
129
|
- spec/test_data/katanapg.atom
|
114
130
|
- spec/test_data/oa.africa.rss
|
115
131
|
- spec/test_data/pyblosxom.atom
|
132
|
+
- spec/test_data/twitter_hashtag.atom
|
116
133
|
- spec/test_data/zotero.rss
|
117
134
|
homepage: https://github.com/berkmancenter/feed-abstract
|
118
135
|
licenses: []
|
136
|
+
metadata: {}
|
119
137
|
post_install_message:
|
120
138
|
rdoc_options:
|
121
|
-
- --charset=UTF-8
|
139
|
+
- "--charset=UTF-8"
|
122
140
|
require_paths:
|
123
141
|
- lib
|
124
142
|
required_ruby_version: !ruby/object:Gem::Requirement
|
125
|
-
none: false
|
126
143
|
requirements:
|
127
|
-
- -
|
144
|
+
- - ">="
|
128
145
|
- !ruby/object:Gem::Version
|
129
146
|
version: '0'
|
130
147
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
131
|
-
none: false
|
132
148
|
requirements:
|
133
|
-
- -
|
149
|
+
- - ">="
|
134
150
|
- !ruby/object:Gem::Version
|
135
151
|
version: '0'
|
136
152
|
requirements: []
|
137
153
|
rubyforge_project:
|
138
|
-
rubygems_version:
|
154
|
+
rubygems_version: 2.6.13
|
139
155
|
signing_key:
|
140
|
-
specification_version:
|
156
|
+
specification_version: 4
|
141
157
|
summary: Abstracts RSS/Atom/RDF stdlib parsing into a common object graph.
|
142
158
|
test_files: []
|