gravitext-xmlprod 1.3.0-java → 1.4.0-java

Sign up to get free protection for your applications and to get access to all the features.
data/History.rdoc CHANGED
@@ -1,3 +1,11 @@
1
+ === 1.4.0 (2010-12-11)
2
+ * New extensible XML tree package.
3
+ * Tag, Attribute, Namespace final methods instead of final classes.
4
+ * New NamespaceCache (incl Tag/Attribute) used throughout.
5
+ * Don't produce the intrinsic xml Namespaces (prefixes xml:, xmlns:,
6
+ etc.).
7
+ * Upgrade to gravitext-util ~> 1.5.0 (gem/java)
8
+
1
9
  === 1.3.0 (2010-5-8)
2
10
  * New DOMWalker for writing W3C DOM fragments via an XMLProducer.
3
11
  * XMLProducer supports start/end tag by String name and optional
data/Manifest.txt CHANGED
@@ -7,4 +7,7 @@ pom.xml
7
7
  bin/gravitext-xmlprod-perftest
8
8
  lib/gravitext-xmlprod/version.rb
9
9
  lib/gravitext-xmlprod.rb
10
- lib/gravitext-xmlprod/gravitext-xmlprod-1.3.0.jar
10
+ test/test_dom.rb
11
+ test/test_tree.rb
12
+ test/xml/huffingtonpost.full.atom.xml
13
+ lib/gravitext-xmlprod/gravitext-xmlprod-1.4.0.jar
data/README.rdoc CHANGED
@@ -1,18 +1,18 @@
1
1
  = gravitext-xmlprod
2
2
 
3
3
  * http://gravitext.rubyforge.org
4
- * http://gravitext.com/oss/gravitext-xmlprod
5
4
  * http://github.com/dekellum/gravitext
5
+ * http://gravitext.com/oss/gravitext-xmlprod
6
+ * http://rubygems.org/gems/gravitext-xmlprod
6
7
 
7
8
  == Description
8
9
 
9
- A fast and simple XML streaming production package in java.
10
+ XML utilities, includes a fast XML streaming producer and an
11
+ extensible XML tree representation in Java.
10
12
 
11
13
  == Dependencies
12
14
 
13
15
  * Java 1.5+
14
- * gravitext-util 1.3+ (perf testing)
15
- * rjack-jdom (perf testing)
16
16
 
17
17
  == License
18
18
 
data/Rakefile CHANGED
@@ -13,7 +13,7 @@ t = RJack::TarPit.new( 'gravitext-xmlprod',
13
13
 
14
14
  t.specify do |h|
15
15
  h.developer( "David Kellum", "dek-oss@gravitext.com" )
16
- h.extra_deps << [ 'gravitext-util', '~> 1.3' ]
16
+ h.extra_deps << [ 'gravitext-util', '~> 1.5.0' ]
17
17
  h.extra_dev_deps << [ 'rjack-jdom', '~> 1.1.0.0' ]
18
18
  h.rubyforge_name = "gravitext"
19
19
  end
@@ -1,5 +1,6 @@
1
1
  #!/usr/bin/env jruby
2
2
  # -*- ruby -*-
3
+
3
4
  #--
4
5
  # Copyright (c) 2008-2010 David Kellum
5
6
  #
@@ -17,33 +18,43 @@
17
18
  #++
18
19
 
19
20
  $LOAD_PATH.unshift File.join( File.dirname(__FILE__), "..", "lib" )
20
- require 'gravitext-xmlprod'
21
21
 
22
22
  require 'rubygems'
23
+
24
+ require 'gravitext-xmlprod'
23
25
  require 'gravitext-util/perftest'
24
- require 'rjack-jdom'
26
+ require 'optparse'
25
27
 
26
28
  require 'java'
27
29
 
28
- module TestCollection
30
+ class TestCollection
29
31
  include Gravitext
30
32
  include Gravitext::Concurrent
31
33
 
32
34
  import 'com.gravitext.xml.producer.perftests.PerfTestFactory'
33
35
  import 'com.gravitext.xml.producer.perftests.StringBufferEncodePerfTest'
36
+ import 'com.gravitext.xml.tree.TreePerfTest'
37
+
38
+ def run
39
+ options = {}
40
+ OptionParser.new do |opts|
41
+ opts.banner = "Usage: gravitext-xmlprod-perftest [options] <test>"
42
+ opts.on("-t", "--threads N", Integer, "Test with thread count" ) do |n|
43
+ options[ :threads ] = n
44
+ end
45
+ end.parse!
34
46
 
35
- def self.run
36
- tests = TestCollection::lookup_factories( ARGV[0] || 'producer' )
47
+ tests = lookup_factories( ARGV.shift || 'producer' )
37
48
 
38
49
  harness = PerfTest::Harness.new( tests )
39
- # harness.thread_count = 2
40
-
50
+ harness.thread_count = options[ :threads ] if options[ :threads ]
41
51
  harness.execute
42
52
  end
43
53
 
44
- def self.lookup_factories( name )
54
+ def lookup_factories( name )
45
55
  case name
46
56
  when 'producer'
57
+ require 'rjack-jdom'
47
58
 
48
59
  tests = PerfTestFactory::Serializer.values.map do |s|
49
60
  PerfTestFactory.new( s )
@@ -61,10 +72,28 @@ module TestCollection
61
72
  tests = Array.new(2) { StringBufferEncodePerfTest.new }
62
73
  tests.zip( [ false, true ] ) { |test,b| test.use_char_buffer = b }
63
74
  tests
75
+
76
+ when 'tree', 'tree_write'
77
+
78
+ if ARGV.empty?
79
+ ddir = File.join( File.dirname(__FILE__), '..', 'test', 'xml' )
80
+ files = Dir.glob( File.join( ddir, "*.xml" ) )
81
+ else
82
+ files = ARGV
83
+ end
84
+
85
+ xml = files.map do |xfile|
86
+ IO.read( xfile ).to_java_bytes
87
+ end
88
+
89
+ TreePerfTest::Impl.values.map do |s|
90
+ TreePerfTest.new( xml, s, ( name == 'tree_write' ) )
91
+ end
92
+ else
93
+ raise "No test named #{name}."
64
94
  end
65
95
 
66
96
  end
67
-
68
97
  end
69
98
 
70
- TestCollection.run
99
+ TestCollection.new.run
@@ -17,6 +17,8 @@
17
17
  require 'gravitext-xmlprod/version'
18
18
  require 'java'
19
19
 
20
+ require 'gravitext-util'
21
+
20
22
  module Gravitext
21
23
 
22
24
  module XMLProd
@@ -16,7 +16,7 @@
16
16
 
17
17
  module Gravitext
18
18
  module XMLProd
19
- VERSION = '1.3.0'
19
+ VERSION = '1.4.0'
20
20
 
21
21
  LIB_DIR = File.dirname(__FILE__) # :nodoc:
22
22
  end
data/pom.xml CHANGED
@@ -4,7 +4,7 @@
4
4
  <groupId>com.gravitext</groupId>
5
5
  <artifactId>gravitext-xmlprod</artifactId>
6
6
  <packaging>jar</packaging>
7
- <version>1.3.0</version>
7
+ <version>1.4.0</version>
8
8
  <name>Gravitext XML Producer</name>
9
9
  <url>http://gravitext.com/oss/gravitext-xmlprod</url>
10
10
 
@@ -32,7 +32,7 @@
32
32
  <parent>
33
33
  <groupId>com.gravitext</groupId>
34
34
  <artifactId>gravitext-parent</artifactId>
35
- <version>1.5</version>
35
+ <version>1.6</version>
36
36
  <relativePath>../gravitext-parent/pom.xml</relativePath>
37
37
  </parent>
38
38
 
@@ -49,9 +49,7 @@
49
49
  <dependency>
50
50
  <groupId>com.gravitext</groupId>
51
51
  <artifactId>gravitext-util</artifactId>
52
- <version>1.4.0</version>
53
- <scope>compile</scope>
54
- <optional>true</optional>
52
+ <version>[1.5.0,1.6.0)</version>
55
53
  </dependency>
56
54
 
57
55
  <dependency>
data/test/test_dom.rb ADDED
@@ -0,0 +1,98 @@
1
+ #!/usr/bin/env jruby
2
+ #.hashdot.profile += jruby-shortlived
3
+
4
+ #--
5
+ # Copyright (c) 2010 David Kellum
6
+ #
7
+ # Licensed under the Apache License, Version 2.0 (the "License"); you
8
+ # may not use this file except in compliance with the License. You
9
+ # may obtain a copy of the License at
10
+ #
11
+ # http://www.apache.org/licenses/LICENSE-2.0
12
+ #
13
+ # Unless required by applicable law or agreed to in writing, software
14
+ # distributed under the License is distributed on an "AS IS" BASIS,
15
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
16
+ # implied. See the License for the specific language governing
17
+ # permissions and limitations under the License.
18
+ #++
19
+
20
+ require 'rubygems'
21
+ require 'test/unit'
22
+
23
+ $LOAD_PATH.unshift File.join( File.dirname(__FILE__), "..", "lib" )
24
+
25
+ require 'gravitext-xmlprod'
26
+
27
+ class TestDOM < Test::Unit::TestCase
28
+ import 'com.gravitext.xml.tree.TreeUtils'
29
+ import 'com.gravitext.xml.tree.DOMUtils'
30
+ import 'com.gravitext.xml.tree.Node'
31
+ import 'com.gravitext.xml.producer.Indentor'
32
+
33
+ TEST_XML = {}
34
+
35
+ TEST_XML[ :basic ] = <<XML
36
+ <doc>
37
+ <a>with &lt;>entities</a>
38
+ </doc>
39
+ XML
40
+
41
+ TEST_XML[ :atts ] = <<XML
42
+ <doc>
43
+ <a att1="a1value"/>
44
+ <b att2="a2value"/>
45
+ </doc>
46
+ XML
47
+
48
+ TEST_XML[ :namespace_1 ] = <<XML
49
+ <doc xmlns="foo" xmlns:s="bar" att1="a1value">
50
+ <s:a s:att2="a2value"/>
51
+ </doc>
52
+ XML
53
+
54
+ TEST_XML[ :namespace_2 ] = <<XML
55
+ <doc>
56
+ <s:e xmlns:s="bar" s:att1="a1value"/>
57
+ <s:e xmlns:s="bar" s:att2="a2value"/>
58
+ </doc>
59
+ XML
60
+
61
+ TEST_XML[ :namespace_3 ] = <<XML
62
+ <doc xmlns="top">
63
+ <o:outer xmlns:o="out" o:att1="a1value">
64
+ <inner o:att1="a2value"/>
65
+ </o:outer>
66
+ </doc>
67
+ XML
68
+
69
+ TEST_XML[ :namespace_4 ] = <<XML
70
+ <doc xmlns="top">
71
+ <outer xmlns="out" att1="a1value">
72
+ <i:inner xmlns:i="top" att1="a2value"/>
73
+ </outer>
74
+ </doc>
75
+ XML
76
+
77
+ TEST_XML[ :namespace_5 ] = <<XML
78
+ <doc xmlns:s="ns" a1="v1" s:a2="v2"/>
79
+ XML
80
+
81
+ TEST_XML[ :namespace_xml ] = <<XML
82
+ <doc>
83
+ <content type="html" xml:base="http://www.huffingtonpost.com/thenewswire" xml:lang="en"/>
84
+ </doc>
85
+ XML
86
+
87
+ TEST_XML.each do | name, xml |
88
+ define_method( "test_dom_#{name}" ) do
89
+ assert_xml( xml, DOMUtils::domParse( xml.to_java_bytes ) )
90
+ end
91
+ end
92
+
93
+ def assert_xml( xml, root )
94
+ assert_equal( xml.rstrip,
95
+ DOMUtils::produceString( root, Indentor::COMPRESSED ) )
96
+ end
97
+
98
+ end
data/test/test_tree.rb ADDED
@@ -0,0 +1,149 @@
1
+ #!/usr/bin/env jruby
2
+ #.hashdot.profile += jruby-shortlived
3
+
4
+ #--
5
+ # Copyright (c) 2010 David Kellum
6
+ #
7
+ # Licensed under the Apache License, Version 2.0 (the "License"); you
8
+ # may not use this file except in compliance with the License. You
9
+ # may obtain a copy of the License at
10
+ #
11
+ # http://www.apache.org/licenses/LICENSE-2.0
12
+ #
13
+ # Unless required by applicable law or agreed to in writing, software
14
+ # distributed under the License is distributed on an "AS IS" BASIS,
15
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
16
+ # implied. See the License for the specific language governing
17
+ # permissions and limitations under the License.
18
+ #++
19
+
20
+ require 'rubygems'
21
+ require 'test/unit'
22
+
23
+ $LOAD_PATH.unshift File.join( File.dirname(__FILE__), "..", "lib" )
24
+
25
+ require 'gravitext-xmlprod'
26
+
27
+ class TestTree < Test::Unit::TestCase
28
+ import 'com.gravitext.xml.tree.TreeUtils'
29
+ import 'com.gravitext.xml.tree.SAXUtils'
30
+ import 'com.gravitext.xml.tree.StAXUtils'
31
+ import 'com.gravitext.xml.producer.Indentor'
32
+ import 'com.gravitext.xml.producer.Tag'
33
+
34
+ TEST_XML = {}
35
+
36
+ TEST_XML[ :basic ] = <<XML
37
+ <doc>
38
+ <a>
39
+ with &lt;>entities
40
+ </a>
41
+ </doc>
42
+ XML
43
+
44
+ TEST_XML[ :atts ] = <<XML
45
+ <doc>
46
+ <a att1="a1value"/>
47
+ <b att2="a2value"/>
48
+ </doc>
49
+ XML
50
+
51
+ TEST_XML[ :namespace_1 ] = <<XML
52
+ <doc xmlns="foo" xmlns:s="bar" att1="a1value">
53
+ <s:a s:att2="a2value"/>
54
+ </doc>
55
+ XML
56
+
57
+ TEST_XML[ :namespace_2 ] = <<XML
58
+ <doc>
59
+ <s:e xmlns:s="bar" s:att1="a1value"/>
60
+ <s:e xmlns:s="bar" s:att2="a2value"/>
61
+ </doc>
62
+ XML
63
+
64
+ TEST_XML[ :namespace_3 ] = <<XML
65
+ <doc xmlns="top">
66
+ <o:outer xmlns:o="out" o:att1="a1value">
67
+ <inner o:att1="a2value"/>
68
+ </o:outer>
69
+ </doc>
70
+ XML
71
+
72
+ TEST_XML[ :namespace_4 ] = <<XML
73
+ <doc xmlns="top">
74
+ <outer xmlns="out" att1="a1value">
75
+ <i:inner xmlns:i="top" att1="a2value"/>
76
+ </outer>
77
+ </doc>
78
+ XML
79
+
80
+ TEST_XML[ :namespace_5 ] = <<XML
81
+ <doc xmlns:s="ns" a1="v1" s:a2="v2"/>
82
+ XML
83
+
84
+ TEST_XML[ :namespace_xml ] = <<XML
85
+ <doc>
86
+ <content type="html" xml:lang="en" xml:base="http://www.huffingtonpost.com/thenewswire"/>
87
+ </doc>
88
+ XML
89
+
90
+ TEST_XML.each do | name, xml |
91
+ define_method( "test_sax_#{name}" ) do
92
+ assert_xml( xml, SAXUtils::saxParse( SAXUtils::saxInput( xml ) ) )
93
+ end
94
+ define_method( "test_stax_#{name}" ) do
95
+ assert_xml( xml, StAXUtils::staxParse( StAXUtils::staxInput( xml ) ) )
96
+ end
97
+ end
98
+
99
+ def assert_xml( xml, root )
100
+ assert_equal( xml.rstrip,
101
+ TreeUtils::produceString( root, Indentor::COMPRESSED ),
102
+ show_node( root ) )
103
+ end
104
+
105
+ def test_find
106
+ xml = <<XML
107
+ <doc>
108
+ <o1>
109
+ <i1>text</i1>
110
+ <i2>next</i2>
111
+ </o1>
112
+ <o1/>
113
+ <o2>
114
+ <o2>
115
+ <i3/>
116
+ </o2>
117
+ </o2>
118
+ </doc>
119
+ XML
120
+ root = StAXUtils::staxParse( StAXUtils::staxInput( xml ) )
121
+ assert_equal( 'text', first( root, :o1, :i1 ).characters )
122
+ assert_equal( 'next', first( root, :o1, :i2 ).characters )
123
+
124
+ assert( first( root, :o2 ) )
125
+ assert( first( root, :o2, :o2, :i3 ) )
126
+
127
+ assert_nil( first( root, :o2, :i1 ) )
128
+ assert_nil( first( root, :o3 ) )
129
+ end
130
+
131
+ def first( root, *tags )
132
+ root.first_element( *( tags.map { |s| Tag.new( s.to_s ) } ) )
133
+ end
134
+
135
+ def show_node( n, d = 0, out = "" )
136
+ if n.asElement
137
+ out << ( ' ' * d + '<' + n.name + ' ' +
138
+ n.namespace_declarations.to_a.map { |ns|
139
+ 'ns:%s=%s' % [ ns.prefix.to_s, ns.nameIRI ] }.join( ' ' ) +
140
+ ' ' + n.attributes.map { |av| av.attribute.name }.join( ' ' ) )
141
+ n.children.each { |c| show_node( c, d+1, out ) }
142
+ out << ( ' ' * d + '</' + n.name )
143
+ else
144
+ out << ( ' ' * d + '[' + n.characters.to_s + ']' )
145
+ end
146
+ out
147
+ end
148
+
149
+ end
@@ -0,0 +1,482 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.huffingtonpost.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom">
3
+ <title>The Huffington Post | Full News Feed</title>
4
+ <link rel="alternate" type="text/html" href="http://www.huffingtonpost.com/thenewswire/" />
5
+
6
+ <id>tag:www.huffingtonpost.com,2010:/thenewswire/2</id>
7
+ <updated>2010-08-20T02:36:03Z</updated>
8
+ <subtitle>The latest news from the Huffington Post</subtitle>
9
+ <generator uri="http://www.sixapart.com/movabletype/">Movable Type 3.2</generator>
10
+
11
+
12
+ <atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/atom+xml" href="http://feeds.huffingtonpost.com/huffingtonpost/LatestNews" /><feedburner:info xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" uri="huffingtonpost/latestnews" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><entry>
13
+ <title>Mohammad Zia Salehi, Karzai Aide, Part of Wider Afghan Corruption Probe</title>
14
+ <link rel="alternate" type="text/html" href="http://www.huffingtonpost.com/2010/08/19/mohammad-zia-salehi-karza_n_688488.html" />
15
+ <id>tag:www.huffingtonpost.com,2010:/thenewswire//2.688488</id>
16
+
17
+ <published>2010-08-20T02:27:12Z</published>
18
+ <updated>2010-08-20T02:36:03Z</updated>
19
+ <author>
20
+ <name>The Huffington Post News Editors</name>
21
+ <uri>http://www.huffingtonpost.com/thenewswire/</uri>
22
+ </author>
23
+ <content type="html" xml:lang="en" xml:base="http://www.huffingtonpost.com/thenewswire/">
24
+ &lt;p&gt;A close adviser to President Hamid Karzai, arrested last month on charges of soliciting a bribe, was also under investigation for allegedly providing luxury vehicles and cash to presidential allies and over telephone contacts with Taliban insurgents, according to Afghan officials familiar with the case.&lt;/p&gt;
25
+
26
+ More on Afghanistan
27
+
28
+
29
+ &lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~at/z_lHhm7YjTTAfX51BKRfgibCYU0/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~at/z_lHhm7YjTTAfX51BKRfgibCYU0/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
30
+ &lt;a href="http://feedads.g.doubleclick.net/~at/z_lHhm7YjTTAfX51BKRfgibCYU0/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~at/z_lHhm7YjTTAfX51BKRfgibCYU0/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
31
+ &lt;a href="http://feeds.huffingtonpost.com/~ff/huffingtonpost/LatestNews?a=4NZS2urs-XU:nW42P6ZSQIU:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/huffingtonpost/LatestNews?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.huffingtonpost.com/~ff/huffingtonpost/LatestNews?a=4NZS2urs-XU:nW42P6ZSQIU:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/huffingtonpost/LatestNews?i=4NZS2urs-XU:nW42P6ZSQIU:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.huffingtonpost.com/~ff/huffingtonpost/LatestNews?a=4NZS2urs-XU:nW42P6ZSQIU:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/huffingtonpost/LatestNews?i=4NZS2urs-XU:nW42P6ZSQIU:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
32
+ &lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/huffingtonpost/LatestNews/~4/4NZS2urs-XU" height="1" width="1"/&gt;</content>
33
+ </entry>
34
+
35
+ <entry>
36
+ <title />
37
+ <link rel="alternate" type="text/html" href="http://www.huffingtonpost.com/2010/08/19/post_498_n_688479.html" />
38
+ <id>tag:www.huffingtonpost.com,2010:/thenewswire//2.688479</id>
39
+
40
+ <published>2010-08-20T02:00:41Z</published>
41
+ <updated>2010-08-20T02:06:06Z</updated>
42
+ <author>
43
+ <name>The Huffington Post News Editors</name>
44
+ <uri>http://www.huffingtonpost.com/thenewswire/</uri>
45
+ </author>
46
+ <content type="html" xml:lang="en" xml:base="http://www.huffingtonpost.com/thenewswire/">
47
+ &lt;p&gt;&lt;/p&gt;
48
+
49
+ &lt;center&gt;&lt;div class="videowrapper vid462"&gt;&lt;div class="videoinner"&gt; &lt;script type="text/javascript"&gt;
50
+ function onAd() {
51
+ return '';
52
+ }
53
+ function getLinkUrl() {
54
+ return location.href;
55
+ }
56
+ &lt;/script&gt;
57
+ &lt;object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab"
58
+ id="playerWrapper" width="462" height="390"&gt;
59
+ &lt;param name="movie" value="&lt;?=$base_link?&gt;/video/2/video/rplayer.swf"&gt;&lt;/param&gt;
60
+ &lt;param name="flashvars" value="videoid=2938&amp;services=&lt;?=urlencode(str_replace(':80', '', 'http://'.$_SERVER['HTTP_HOST']));?&gt;&amp;extension=%2Fvideo%2F2&amp;frontcolor=&lt;?=$vPlayerColor[0]?&gt;&amp;backcolor=&lt;?=$vPlayerColor[1]?&gt;&amp;skin=vplayer.swf&amp;autostart=true&amp;plugins=postrollmenu%2Cbug%2Canalyticsv2"&gt;&lt;/param&gt;
61
+ &lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;
62
+ &lt;param name="allowScriptAccess" value="always"&gt;&lt;/param&gt;
63
+ &lt;param name="bgcolor" value="#FFFFFF"&gt;&lt;/param&gt;
64
+
65
+ &lt;embed src="&lt;?=$base_link?&gt;/video/2/video/rplayer.swf"
66
+ flashvars="videoid=2938&amp;services=&lt;?=urlencode('http://'.$_SERVER['HTTP_HOST']);?&gt;&amp;extension=%2Fvideo%2F2&amp;frontcolor=&lt;?=$vPlayerColor[0]?&gt;&amp;backcolor=&lt;?=$vPlayerColor[1]?&gt;&amp;skin=vplayer.swf&amp;autostart=true&amp;plugins=postrollmenu%2Cbug%2Canalyticsv2"
67
+ type="application/x-shockwave-flash" allowfullscreen="true" allowScriptAccess="always" width="462" height="390" bgcolor="#FFFFFF"&gt;&lt;/embed&gt;&lt;/object&gt;
68
+ &lt;/div&gt;&lt;/div&gt;
69
+
70
+
71
+
72
+ &lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~at/CKG9ntzg6tKTqxbuaOCFWkD5cb8/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~at/CKG9ntzg6tKTqxbuaOCFWkD5cb8/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
73
+ &lt;a href="http://feedads.g.doubleclick.net/~at/CKG9ntzg6tKTqxbuaOCFWkD5cb8/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~at/CKG9ntzg6tKTqxbuaOCFWkD5cb8/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
74
+ &lt;a href="http://feeds.huffingtonpost.com/~ff/huffingtonpost/LatestNews?a=V2CuRLBaibg:vRfXA9cBis8:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/huffingtonpost/LatestNews?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.huffingtonpost.com/~ff/huffingtonpost/LatestNews?a=V2CuRLBaibg:vRfXA9cBis8:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/huffingtonpost/LatestNews?i=V2CuRLBaibg:vRfXA9cBis8:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.huffingtonpost.com/~ff/huffingtonpost/LatestNews?a=V2CuRLBaibg:vRfXA9cBis8:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/huffingtonpost/LatestNews?i=V2CuRLBaibg:vRfXA9cBis8:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
75
+ &lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/huffingtonpost/LatestNews/~4/V2CuRLBaibg" height="1" width="1"/&gt;</content>
76
+ </entry>
77
+
78
+ <entry>
79
+ <title>France Sends Scores OF Gypsies Back To Romania</title>
80
+ <link rel="alternate" type="text/html" href="http://www.huffingtonpost.com/2010/08/19/france-sends-scores-of-gy_n_688465.html" />
81
+ <id>tag:www.huffingtonpost.com,2010:/thenewswire//2.688465</id>
82
+
83
+ <published>2010-08-20T01:24:09Z</published>
84
+ <updated>2010-08-20T01:46:06Z</updated>
85
+ <author>
86
+ <name>The Huffington Post News Editors</name>
87
+ <uri>http://www.huffingtonpost.com/thenewswire/</uri>
88
+ </author>
89
+ <content type="html" xml:lang="en" xml:base="http://www.huffingtonpost.com/thenewswire/">
90
+ &lt;p&gt;PARIS &amp;mdash; France expelled nearly 100 Gypsies, or Roma, to their native Romania on Thursday as part of a very public effort by conservative President Nicolas Sarkozy to dismantle Roma camps and sweep them out of the country, the Immigration Ministry said.&lt;/p&gt;
91
+
92
+ &lt;p&gt;France chartered a flight to Bucharest, which left from the southeastern city of Lyon with 79 Roma aboard, Immigration Ministry officials said. However, Romanian border police official Cristian Ene, at Bucharest's Aurel Vlaicu airport, said only 61 people were aboard. The French Immigration Ministry was unable to immediately explain the discrepancy.&lt;/p&gt;
93
+ &lt;p&gt;Fourteen other people were repatriated to Romania aboard a commercial flight from the Paris region earlier in the day, the French officials said, adding that another Romania-bound repatriation flight was expected Friday. Additional flights were scheduled for later this month and September, Romania's Foreign Ministry said.&lt;/p&gt;
94
+
95
+ &lt;p&gt;Those repatriated Thursday left "on a voluntary basis" and were given small sums of money &amp;ndash; euro300 ($386) for each adult and euro100 for children &amp;ndash; to help them get back on their feet in their home country, a standard French practice, officials said.&lt;/p&gt;
96
+
97
+ &lt;p&gt;Roma advocates countered that the repatriations were hardly voluntary, claiming that those who refused the deal would end up in holding centers and eventually be sent home without funds.&lt;/p&gt;
98
+
99
+ &lt;p&gt;Alexandre Le Cleve, a spokesman for Rom Europe, said the expulsions were pointless because nothing prevented those sent back from immediately returning to France, as many have done in the past.&lt;/p&gt;
100
+
101
+ &lt;p&gt;"For those who left this morning, they can certainly take a plane as early as tonight and come back to France. There's nothing to prevent this," Le Cleve told Associated Press Television News in an interview. "Obviously, these people come back, they are brought to the Romanian border, then come back to France, can leave again and so on. There are some Roma people who have been sent back seven or eight times, each time receiving the famous euro300."&lt;/p&gt;
102
+
103
+ &lt;p&gt;Adrian Paraipan, a 37-year-old who was aboard the Lyon flight along with his wife and three children, said he planned to return to France.&lt;/p&gt;
104
+
105
+ &lt;p&gt;"In two weeks, I will leave again," he said, adding that his family was unable to make a living in Romania. Another person on the flight, Maria Serban, a 29-year-old mother of four, said her family will also consider going back.&lt;/p&gt;
106
+
107
+ &lt;p&gt;France is allowed to repatriate Gypsies from Romania &amp;ndash; who as citizens of an EU member state are allowed to circulate freely within the 27-member bloc &amp;ndash; if they are unable to prove they can support themselves while in France, Le Cleve said.&lt;/p&gt;
108
+
109
+ &lt;p&gt;He suggested, as human rights activists have done in the past, that the voluntary departures help inflate the total number of annual expulsions, a figure the government releases to the media with much fanfare.&lt;/p&gt;
110
+
111
+ &lt;p&gt;Foreign-born Gypsies are often seen begging on the streets of France's cities, often with small children or puppies, and many French people consider them a nuisance, or worse.&lt;/p&gt;
112
+
113
+ &lt;p&gt;Sarkozy has linked Roma to crime, calling their camps sources of trafficking, exploitation of children and prostitution. On July 28, he pledged that illegal Gypsy camps would be "systematically evacuated." Some 50 camps have been emptied since then, including at least two on Thursday, local officials said.&lt;/p&gt;
114
+
115
+ &lt;p&gt;In the southeastern town of Saint-Martin d'Heres, near Grenoble, about 150 riot police removed about 100 Roma adults and 45 children Thursday. That evacuation went smoothly, and no incidents were reported, local officials said. Another 25 Roma were taken from their camp near Lille early Thursday, officials said.&lt;/p&gt;
116
+
117
+ &lt;p&gt;Sarkozy's crackdown on Gypsies came on the heels of much-publicized unrest by French Roma, who attacked a police station in the center of the country after the death of Gypsy youth there. The measures are also part of a raft of new hard-line security measures by Sarkozy, who won election in 2007 on a tough-on-crime platform.&lt;/p&gt;
118
+
119
+ &lt;p&gt;The policy is attracting increasing concern, both at home and abroad, from those who fear it discriminates against one of the European Union's most vulnerable and impoverished communities.&lt;/p&gt;
120
+
121
+ &lt;p&gt;Romanian President Traian Basescu said, "We understand the problems created by the Roma camps outside the French cities" but insisted on the "right of every European citizen to move freely in the EU." Romania, one of Europe's poorest countries, joined the EU in 2007.&lt;/p&gt;
122
+
123
+ &lt;p&gt;Basescu, who was speaking Thursday in the eastern city of Iasi, pledged to "cooperate with France to find solutions."&lt;/p&gt;
124
+
125
+ &lt;p&gt;Some critics contend the French crackdown is a cynical ploy to divert attention from France's economic woes and attract far-right voters in the run-up to the 2012 presidential election. Sarkozy's approval ratings have been weak and a financial scandal has embroiled a top government official.&lt;/p&gt;
126
+
127
+ &lt;p&gt;Officials insist they are not stigmatizing Roma &amp;ndash; though Sarkozy's stance had chilling undertones in a country where authorities sent French Gypsies to internment camps in France during the occupation. They were kept there until 1946, about two years after France's liberation from the Nazis.&lt;/p&gt;
128
+
129
+ &lt;p&gt;Interior Minister Brice Hortefeux insisted France is being careful "not to stigmatize any community," but said the government can't just let people occupy land illegally.&lt;/p&gt;
130
+
131
+ &lt;p&gt;"Simply, everyone understands we are enforcing simple rules: One cannot just illegally occupy land without authorization," Hortefeux told journalists during a visit Thursday to the town of Crecy-la-Chapelle, east of Paris.&lt;/p&gt;
132
+
133
+ &lt;p&gt;The government is also facing criticism from French-born Gypsies, known here as "traveling folk," who have lived in France for centuries and are loath to be confused with Eastern European Roma.&lt;/p&gt;
134
+
135
+ &lt;p&gt;Hundreds of traveling folk are locked in a stand off with the mayor in Bordeaux, after officials in the Atlantic coastal city forced them to vacate an encampment there. The city offered them two alternative sites to set up camp in, but the families refused, citing inadequate facilities.&lt;/p&gt;
136
+
137
+ &lt;p&gt;___&lt;/p&gt;
138
+
139
+ &lt;p&gt;Associated Press writers Alina Wolfe Murray in Bucharest, Oleg Cetinic in Crecy-la-Chapelle, France, and Jenny Barchfield in Paris contributed to this report.&lt;/p&gt;
140
+ More on France
141
+
142
+
143
+ &lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~at/qeQ1CpYj3Ls7jcfWLFUinRYGMx8/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~at/qeQ1CpYj3Ls7jcfWLFUinRYGMx8/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
144
+ &lt;a href="http://feedads.g.doubleclick.net/~at/qeQ1CpYj3Ls7jcfWLFUinRYGMx8/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~at/qeQ1CpYj3Ls7jcfWLFUinRYGMx8/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
145
+ &lt;a href="http://feeds.huffingtonpost.com/~ff/huffingtonpost/LatestNews?a=NyCFkquZQaM:15Z3s05kAEg:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/huffingtonpost/LatestNews?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.huffingtonpost.com/~ff/huffingtonpost/LatestNews?a=NyCFkquZQaM:15Z3s05kAEg:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/huffingtonpost/LatestNews?i=NyCFkquZQaM:15Z3s05kAEg:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.huffingtonpost.com/~ff/huffingtonpost/LatestNews?a=NyCFkquZQaM:15Z3s05kAEg:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/huffingtonpost/LatestNews?i=NyCFkquZQaM:15Z3s05kAEg:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
146
+ &lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/huffingtonpost/LatestNews/~4/NyCFkquZQaM" height="1" width="1"/&gt;</content>
147
+ </entry>
148
+
149
+ <entry>
150
+ <title>My Morning Jacket Donates $1 Per Ticket To Local Charities</title>
151
+ <link rel="alternate" type="text/html" href="http://www.huffingtonpost.com/2010/08/19/my-morning-jacket-donates_n_688448.html" />
152
+ <id>tag:www.huffingtonpost.com,2010:/thenewswire//2.688448</id>
153
+
154
+ <published>2010-08-20T01:17:21Z</published>
155
+ <updated>2010-08-20T01:20:17Z</updated>
156
+ <author>
157
+ <name>The Huffington Post News Editors</name>
158
+ <uri>http://www.huffingtonpost.com/thenewswire/</uri>
159
+ </author>
160
+ <content type="html" xml:lang="en" xml:base="http://www.huffingtonpost.com/thenewswire/">
161
+ &lt;p&gt;Kentucky-based rock band &lt;a href="http://www.mymorningjacket.com/" target="_hplink"&gt;My Morning Jacket&lt;/a&gt; has a master plan. For nearly every show on their current tour, they're donating a dollar of every ticket sold to a local nonprofit. The majority of the nonprofits are arts and education focused.&lt;/p&gt;
162
+
163
+ &lt;p&gt;MMJ is working in partnership with &lt;a href="http://www.atctower.net/" target="_hplink"&gt;Air Traffic Control&lt;/a&gt;, an organization that connects musicians with nonprofits and actions relevant to their causes.&lt;/p&gt;
164
+
165
+ &lt;p&gt;Causecast &lt;a href="http://www.youtube.com/watch?v=xbTBBUH4LGo" target="_hplink"&gt;interviewed&lt;/a&gt; My Morning Jacket before their show at Los Angeles' Greek Theatre on August 12. Donations from that show went to L.A.-based &lt;a href="http://www.schoolonwheels.org/" target="_hplink"&gt;School On Wheels&lt;/a&gt;. Frontman Jim James discusses the bands causes, the connection between music and activism, and why they aren't hippies.&lt;/p&gt;
166
+
167
+ &lt;p&gt;&lt;strong&gt;WATCH:&lt;/strong&gt;&lt;/p&gt;
168
+
169
+ &lt;center&gt;&lt;object width="570" height="343"&gt;&lt;param name="movie" value="http://www.youtube.com/v/xbTBBUH4LGo?fs=1&amp;amp;hl=en_US"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/xbTBBUH4LGo?fs=1&amp;amp;hl=en_US" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="570" height="343"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/center&gt;
170
+
171
+ &lt;p&gt;My Morning Jacket is also participating in the upcoming "Dear New Orleans" &lt;a href="http://www.spinner.com/2010/08/19/my-morning-jacket-tom-morello-dear-new-orleans/" target="_hplink"&gt;benefit album&lt;/a&gt;, sales of which will go to New Orleans nonprofits. OK Go, Bonnie "Prince" Billy, Stever Earle and Tom Morello also appear on the compilation.&lt;/p&gt;
172
+
173
+ &lt;div id="ccw_widget"&gt;&lt;script type="text/javascript" src="http://ec2-67-202-7-75.compute-1.amazonaws.com/widget/school on wheels"&gt;&lt;/script&gt;&lt;/div&gt;
174
+
175
+
176
+
177
+ &lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~at/Q7j_isGBVxrToWPuN-qdatYveaY/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~at/Q7j_isGBVxrToWPuN-qdatYveaY/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
178
+ &lt;a href="http://feedads.g.doubleclick.net/~at/Q7j_isGBVxrToWPuN-qdatYveaY/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~at/Q7j_isGBVxrToWPuN-qdatYveaY/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
179
+ &lt;a href="http://feeds.huffingtonpost.com/~ff/huffingtonpost/LatestNews?a=4KVkjyCm8Sc:mkqJ5w_Q--Y:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/huffingtonpost/LatestNews?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.huffingtonpost.com/~ff/huffingtonpost/LatestNews?a=4KVkjyCm8Sc:mkqJ5w_Q--Y:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/huffingtonpost/LatestNews?i=4KVkjyCm8Sc:mkqJ5w_Q--Y:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.huffingtonpost.com/~ff/huffingtonpost/LatestNews?a=4KVkjyCm8Sc:mkqJ5w_Q--Y:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/huffingtonpost/LatestNews?i=4KVkjyCm8Sc:mkqJ5w_Q--Y:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
180
+ &lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/huffingtonpost/LatestNews/~4/4KVkjyCm8Sc" height="1" width="1"/&gt;</content>
181
+ </entry>
182
+
183
+ <entry>
184
+ <title>Gregory Taylor Released From Prison After Serving 13 Years For Food Theft</title>
185
+ <link rel="alternate" type="text/html" href="http://www.huffingtonpost.com/2010/08/19/gregory-taylor-released-f_n_688449.html" />
186
+ <id>tag:www.huffingtonpost.com,2010:/thenewswire//2.688449</id>
187
+
188
+ <published>2010-08-20T01:08:36Z</published>
189
+ <updated>2010-08-20T01:23:32Z</updated>
190
+ <author>
191
+ <name>The Huffington Post News Editors</name>
192
+ <uri>http://www.huffingtonpost.com/thenewswire/</uri>
193
+ </author>
194
+ <content type="html" xml:lang="en" xml:base="http://www.huffingtonpost.com/thenewswire/">
195
+ &lt;p&gt;LOS ANGELES (AP); A homeless man is free after spending 13 years behind bars for trying to steal food from a Los Angeles church kitchen.&lt;/p&gt;
196
+
197
+ &lt;p&gt;Gregory Taylor became an example of the harsh sentences allowed by California's three-strikes law when he was ordered to spend 25 years in prison because of his two prior robbery convictions.&lt;/p&gt;
198
+
199
+ &lt;center&gt;
200
+ &amp;nbsp;&lt;embed type='application/x-shockwave-flash' salign='l' flashvars='&amp;amp;titleAvailable=true&amp;amp;playerAvailable=true&amp;amp;searchAvailable=false&amp;amp;shareFlag=N&amp;amp;singleURL=http://ktla.vidcms.trb.com/alfresco/service/edge/content/5fba4a87-11b5-4141-96ef-a330c0996aa9&amp;amp;propName=ktla.com&amp;amp;hostURL=http://www.ktla.com&amp;amp;swfPath=http://ktla.vid.trb.com/player/&amp;amp;omAccount=tribglobal&amp;amp;omnitureServer=ktla.com' allowscriptaccess='always' allowfullscreen='true' menu='true' name='PaperVideoTest' bgcolor='#ffffff' devicefont='false' wmode='transparent' scale='showall' loop='true' play='true' pluginspage='http://www.macromedia.com/go/getflashplayer' quality='high' src='http://ktla.vid.trb.com/player/PaperVideoTest.swf' align='middle' height='450' width='300'&gt;&lt;/embed&gt;&lt;/center&gt;
201
+ &lt;p&gt;On Monday, a Superior Court judge reduced his sentence to eight years already served.&lt;/p&gt;
202
+
203
+ &lt;p&gt;Taylor was greeted by happy family members Thursday as he left jail.&lt;/p&gt;
204
+
205
+ &lt;p&gt;He plans to work for his brother's food pantry.&lt;/p&gt;
206
+
207
+
208
+ &lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~at/6qii31KiUSwJYru1aEU6d39KSnU/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~at/6qii31KiUSwJYru1aEU6d39KSnU/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
209
+ &lt;a href="http://feedads.g.doubleclick.net/~at/6qii31KiUSwJYru1aEU6d39KSnU/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~at/6qii31KiUSwJYru1aEU6d39KSnU/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
210
+ &lt;a href="http://feeds.huffingtonpost.com/~ff/huffingtonpost/LatestNews?a=Q7RUw0JyfLk:waEdasmbmL0:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/huffingtonpost/LatestNews?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.huffingtonpost.com/~ff/huffingtonpost/LatestNews?a=Q7RUw0JyfLk:waEdasmbmL0:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/huffingtonpost/LatestNews?i=Q7RUw0JyfLk:waEdasmbmL0:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.huffingtonpost.com/~ff/huffingtonpost/LatestNews?a=Q7RUw0JyfLk:waEdasmbmL0:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/huffingtonpost/LatestNews?i=Q7RUw0JyfLk:waEdasmbmL0:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
211
+ &lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/huffingtonpost/LatestNews/~4/Q7RUw0JyfLk" height="1" width="1"/&gt;</content>
212
+ </entry>
213
+
214
+ <entry>
215
+ <title>Spiciest Food In Los Angeles: Hot And Spicy Food Day</title>
216
+ <link rel="alternate" type="text/html" href="http://www.huffingtonpost.com/2010/08/19/spiciest-food-in-los-ange_n_687720.html" />
217
+ <id>tag:www.huffingtonpost.com,2010:/thenewswire//2.687720</id>
218
+
219
+ <published>2010-08-20T00:40:39Z</published>
220
+ <updated>2010-08-20T00:43:26Z</updated>
221
+ <author>
222
+ <name>The Huffington Post News Editors</name>
223
+ <uri>http://www.huffingtonpost.com/thenewswire/</uri>
224
+ </author>
225
+ <content type="html" xml:lang="en" xml:base="http://www.huffingtonpost.com/thenewswire/">
226
+ &lt;p&gt;Today is Hot and Spicy Food Day, and for those of us that can't get enough of the tear-inducing, tongue-numbing good stuff, here's a list of the Top 10 spiciest foods in Los Angeles. Restaurants like &lt;a href="http://jitladala.wordpress.com/" target="_hplink"&gt;Jitlada&lt;/a&gt;, Babita's, and Bombay Cafe dare thrill-seekers with menu items marked "challenge" or "warning," with Orochon Ramen even offering a "Wall of Bravery" for people who conquer the jalapeno-topped chilli ramen in 30 minutes or less. Are you up for the challenge?&lt;/p&gt;
227
+
228
+ &lt;p&gt;&lt;HH--236SLIDEPOLLAJAX--9726--HH&gt;&lt;/p&gt;
229
+
230
+
231
+
232
+ &lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~at/B2j-GBI0EeqJoyNDR8GogKA7pNc/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~at/B2j-GBI0EeqJoyNDR8GogKA7pNc/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
233
+ &lt;a href="http://feedads.g.doubleclick.net/~at/B2j-GBI0EeqJoyNDR8GogKA7pNc/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~at/B2j-GBI0EeqJoyNDR8GogKA7pNc/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
234
+ &lt;a href="http://feeds.huffingtonpost.com/~ff/huffingtonpost/LatestNews?a=71IyTVsj6DU:UyGWUgiOqEQ:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/huffingtonpost/LatestNews?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.huffingtonpost.com/~ff/huffingtonpost/LatestNews?a=71IyTVsj6DU:UyGWUgiOqEQ:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/huffingtonpost/LatestNews?i=71IyTVsj6DU:UyGWUgiOqEQ:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.huffingtonpost.com/~ff/huffingtonpost/LatestNews?a=71IyTVsj6DU:UyGWUgiOqEQ:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/huffingtonpost/LatestNews?i=71IyTVsj6DU:UyGWUgiOqEQ:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
235
+ &lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/huffingtonpost/LatestNews/~4/71IyTVsj6DU" height="1" width="1"/&gt;</content>
236
+ </entry>
237
+
238
+ <entry>
239
+ <title>Bill O'Reilly Used To Sell Investment Scam -- WITHOUT His Knowledge</title>
240
+ <link rel="alternate" type="text/html" href="http://www.huffingtonpost.com/2010/08/19/bill-oreilly-duped-into-s_n_688304.html" />
241
+ <id>tag:www.huffingtonpost.com,2010:/thenewswire//2.688304</id>
242
+
243
+ <published>2010-08-20T00:17:15Z</published>
244
+ <updated>2010-08-20T00:25:39Z</updated>
245
+ <author>
246
+ <name>The Huffington Post News Editors</name>
247
+ <uri>http://www.huffingtonpost.com/thenewswire/</uri>
248
+ </author>
249
+ <content type="html" xml:lang="en" xml:base="http://www.huffingtonpost.com/thenewswire/">
250
+ &lt;p&gt;An interview with Bill O'Reilly was used to sell a financially dubious investment scheme--without his knowledge, he says.&lt;/p&gt;
251
+
252
+ &lt;p&gt;&lt;a href="http://mediadecoder.blogs.nytimes.com/2010/08/19/bill-oreilly-used-unknowlingly-to-sell-investment-scheme/?partner=rss&amp;emc=rss" target="_hplink"&gt;The New York Times reported Thursday&lt;/a&gt; that O'Reilly had become mixed up in an online scheme that a financial columnist, Kathy Kristof, dubbed "investment flim-flam" &lt;a href="http://moneywatch.bnet.com/saving-money/blog/devil-details/bill-oreilly-duped-by-faux-news/2724/" target="_hplink"&gt;in a column for CBS MoneyWatch&lt;/a&gt;.&lt;/p&gt;
253
+
254
+ &lt;p&gt;The scheme was promoted by conservative magazine Newsmax. It involved an email titled "Watch Fox News' Bill O'Reilly and Esteemed Accountant Bill Spetrino Reveal Safe and Ultra-Profitable Steps You Need to Take Right Now to Protect Yourself From the IRS' Multibillion-Dollar Tax Onslaught!"&lt;/p&gt;
255
+
256
+ &lt;p&gt;The email was sent to Kristof, who was the first to raise questions about O'Reilly's participation. It linked to a video featuring an interview with O'Reilly, who talked about which investments he thought viewers should make. (Sample: buy stocks that "are beaten up.")&lt;/p&gt;
257
+
258
+ &lt;p&gt;In her column, Kristof described what happened next in the video:&lt;/p&gt;
259
+
260
+ &lt;blockquote&gt;The next "guest" is a smarmy-looking "accountant" named Bill Spetrino, who purports to agree with O'Reilly and offers a newsletter called "The Dividend Machine." But he adds that he has "something even better." Spetrino maintains that he's written a report about a "forgotten, seven-state Constitutional Clause" that guarantees generous tax-free "IRS payouts" of $1,196 or more. And, he's agreed to provide this report "free" to viewers of the show produced by Newsmax.&lt;/blockquote&gt;
261
+
262
+ &lt;p&gt;It turned out that Spetrino was advising viewers to invest in municipal bonds. All he was asking, he said, was $1 for a 60-day trial of the report. However, that $1 automatically turns into $99 a year once the trial period is over.&lt;/p&gt;
263
+
264
+ &lt;p&gt;Kristof said that investments that seek to exploit "forgotten" loopholes are usually scams. "My guess is that [O'Reilly] was an unwitting dupe in a clever product pitch designed to look like a news show," she wrote.&lt;/p&gt;
265
+
266
+ &lt;p&gt;In an interview with the Times, Fox News executive vice president Bill Shine said that the interview with O'Reilly had been set up by his personal agent, Don Walker, not through Fox. He also said that O'Reilly was unaware that the interview would be used to sell anything.&lt;/p&gt;
267
+
268
+ &lt;p&gt;Walker told the paper that O'Reilly had explicitly told Newsmax they could not use his interview to promote any products. &lt;/p&gt;
269
+
270
+ &lt;p&gt;The video went up in late June, and stayed there until Kristof raised questions about it on Tuesday. After her column, the video was yanked from the Newsmax site and all references to O'Reilly were removed.&lt;/p&gt;
271
+
272
+ &lt;p&gt;O'Reilly is not the first Fox News host to be accused of helping to pitch financially dubious products. Most prominently, Glenn Beck has &lt;a href="http://www.huffingtonpost.com/2010/05/19/anthony-weiner-glenn-beck_n_581563.html" target="_hplink"&gt;come under criticism&lt;/a&gt; for his participation in ads for Goldline, a gold dealer that many accuse of intentionally scaring consumers so they will buy gold at inflated prices.&lt;/p&gt;
273
+
274
+ More on Bill O'Reilly
275
+
276
+
277
+ &lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~at/tpHxS8QAnc-BixqMLrl0U8J7iak/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~at/tpHxS8QAnc-BixqMLrl0U8J7iak/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
278
+ &lt;a href="http://feedads.g.doubleclick.net/~at/tpHxS8QAnc-BixqMLrl0U8J7iak/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~at/tpHxS8QAnc-BixqMLrl0U8J7iak/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
279
+ &lt;a href="http://feeds.huffingtonpost.com/~ff/huffingtonpost/LatestNews?a=gwSJ1LUCtsY:2ahvS9vQXYc:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/huffingtonpost/LatestNews?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.huffingtonpost.com/~ff/huffingtonpost/LatestNews?a=gwSJ1LUCtsY:2ahvS9vQXYc:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/huffingtonpost/LatestNews?i=gwSJ1LUCtsY:2ahvS9vQXYc:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.huffingtonpost.com/~ff/huffingtonpost/LatestNews?a=gwSJ1LUCtsY:2ahvS9vQXYc:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/huffingtonpost/LatestNews?i=gwSJ1LUCtsY:2ahvS9vQXYc:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
280
+ &lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/huffingtonpost/LatestNews/~4/gwSJ1LUCtsY" height="1" width="1"/&gt;</content>
281
+ </entry>
282
+
283
+ <entry>
284
+ <title>Circuit City Plane Crash Settlement Reached</title>
285
+ <link rel="alternate" type="text/html" href="http://www.huffingtonpost.com/2010/08/19/circuit-city-plane-crash-_n_688390.html" />
286
+ <id>tag:www.huffingtonpost.com,2010:/thenewswire//2.688390</id>
287
+
288
+ <published>2010-08-20T00:04:05Z</published>
289
+ <updated>2010-08-20T00:10:03Z</updated>
290
+ <author>
291
+ <name>The Huffington Post News Editors</name>
292
+ <uri>http://www.huffingtonpost.com/thenewswire/</uri>
293
+ </author>
294
+ <content type="html" xml:lang="en" xml:base="http://www.huffingtonpost.com/thenewswire/">
295
+ &lt;p&gt;DENVER &amp;mdash; Court records say family members who sued over a fatal Colorado crash of a jet owned by Circuit City Stores Inc. have reached settlements of their lawsuits.&lt;/p&gt;
296
+
297
+ &lt;p&gt;A document filed Thursday in federal court in Denver didn't disclose terms.&lt;/p&gt;
298
+ &lt;p&gt;The crash in February 2005 killed the jet's two pilots and six passengers. The National Transportation Safety Board ruled the pilots were dealing with ice on the wings and a runway change as they approached the Pueblo airport and didn't notice the plane had slowed to an unsafe speed.&lt;/p&gt;
299
+
300
+ &lt;p&gt;Some of the victims' survivors sued Cessna Aircraft Co., federal government agencies, and Martinair Inc., alleging they also were partly to blame. The defendants disputed the claims.&lt;/p&gt;
301
+
302
+
303
+ &lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~at/0lHWG6lBvDDdme9CNORYFo1xeBI/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~at/0lHWG6lBvDDdme9CNORYFo1xeBI/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
304
+ &lt;a href="http://feedads.g.doubleclick.net/~at/0lHWG6lBvDDdme9CNORYFo1xeBI/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~at/0lHWG6lBvDDdme9CNORYFo1xeBI/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
305
+ &lt;a href="http://feeds.huffingtonpost.com/~ff/huffingtonpost/LatestNews?a=IyAMcj8RPDs:mdYq0JLJYq0:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/huffingtonpost/LatestNews?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.huffingtonpost.com/~ff/huffingtonpost/LatestNews?a=IyAMcj8RPDs:mdYq0JLJYq0:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/huffingtonpost/LatestNews?i=IyAMcj8RPDs:mdYq0JLJYq0:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.huffingtonpost.com/~ff/huffingtonpost/LatestNews?a=IyAMcj8RPDs:mdYq0JLJYq0:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/huffingtonpost/LatestNews?i=IyAMcj8RPDs:mdYq0JLJYq0:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
306
+ &lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/huffingtonpost/LatestNews/~4/IyAMcj8RPDs" height="1" width="1"/&gt;</content>
307
+ </entry>
308
+
309
+ <entry>
310
+ <title>Guide To Monterey Bay: The Little Bay That Could</title>
311
+ <link rel="alternate" type="text/html" href="http://www.huffingtonpost.com/2010/08/19/monterey-the-little-bay-t_n_680682.html" />
312
+ <id>tag:www.huffingtonpost.com,2010:/thenewswire//2.680682</id>
313
+
314
+ <published>2010-08-20T00:00:04Z</published>
315
+ <updated>2010-08-19T23:59:54Z</updated>
316
+ <author>
317
+ <name>The Huffington Post News Editors</name>
318
+ <uri>http://www.huffingtonpost.com/thenewswire/</uri>
319
+ </author>
320
+ <content type="html" xml:lang="en" xml:base="http://www.huffingtonpost.com/thenewswire/">
321
+ &lt;p&gt;Text courtesy of &lt;a href="http://yourdailythread.com/2010/07/27/monterey-the-little-bay-that-could/" target="_hplink"&gt;Your Daily Thread.&lt;/a&gt; Check it out for more of the best in Los Angeles green living. &lt;/p&gt;
322
+
323
+ &lt;p&gt;&lt;strong&gt;By Tracy Hepler &lt;/strong&gt;&lt;/p&gt;
324
+
325
+ &lt;p&gt;John Steinbeck had much to say about Cannery Row, and we have more to add for modern times from when YDT hit the sleepy coastal town of Monterey to see what all the fuss was about. Homebase of the Monterey Bay Aquarium (the peeps behind Seafood Watch) and situated next to rolling hills, organic farms and vineyards, we filled our hearts' desire with pristine California Coastlines and guilt-free, delicious, sustainable seafood, wine, cookies and the list goes on and on.&lt;/p&gt;
326
+
327
+ &lt;p&gt;&lt;HH--236SLIDEPOLLAJAX--9533--HH&gt;&lt;/p&gt;
328
+
329
+
330
+
331
+ &lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~at/ZtXJ7Db-JstEHu26sX0njhm4VOk/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~at/ZtXJ7Db-JstEHu26sX0njhm4VOk/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
332
+ &lt;a href="http://feedads.g.doubleclick.net/~at/ZtXJ7Db-JstEHu26sX0njhm4VOk/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~at/ZtXJ7Db-JstEHu26sX0njhm4VOk/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
333
+ &lt;a href="http://feeds.huffingtonpost.com/~ff/huffingtonpost/LatestNews?a=q2xezpwfQUg:7Wr9llBaolA:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/huffingtonpost/LatestNews?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.huffingtonpost.com/~ff/huffingtonpost/LatestNews?a=q2xezpwfQUg:7Wr9llBaolA:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/huffingtonpost/LatestNews?i=q2xezpwfQUg:7Wr9llBaolA:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.huffingtonpost.com/~ff/huffingtonpost/LatestNews?a=q2xezpwfQUg:7Wr9llBaolA:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/huffingtonpost/LatestNews?i=q2xezpwfQUg:7Wr9llBaolA:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
334
+ &lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/huffingtonpost/LatestNews/~4/q2xezpwfQUg" height="1" width="1"/&gt;</content>
335
+ </entry>
336
+
337
+ <entry>
338
+ <title>Wyclef Jean NOT On Haiti's Presidential Candidates List, Reuters Reports</title>
339
+ <link rel="alternate" type="text/html" href="http://www.huffingtonpost.com/2010/08/19/wyclef-jean-not-on-haitis_n_688356.html" />
340
+ <id>tag:www.huffingtonpost.com,2010:/thenewswire//2.688356</id>
341
+
342
+ <published>2010-08-19T23:39:50Z</published>
343
+ <updated>2010-08-19T23:53:53Z</updated>
344
+ <author>
345
+ <name>The Huffington Post News Editors</name>
346
+ <uri>http://www.huffingtonpost.com/thenewswire/</uri>
347
+ </author>
348
+ <content type="html" xml:lang="en" xml:base="http://www.huffingtonpost.com/thenewswire/">
349
+ &lt;p&gt;Haitian-born hip-hop star Wyclef Jean's bid to become the next president of Haiti has been quashed.&lt;/p&gt;
350
+
351
+ More on Haiti Earthquake
352
+
353
+
354
+ &lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~at/Y8VXr4FdGSrfw3r2CarvXZWJAW8/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~at/Y8VXr4FdGSrfw3r2CarvXZWJAW8/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
355
+ &lt;a href="http://feedads.g.doubleclick.net/~at/Y8VXr4FdGSrfw3r2CarvXZWJAW8/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~at/Y8VXr4FdGSrfw3r2CarvXZWJAW8/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
356
+ &lt;a href="http://feeds.huffingtonpost.com/~ff/huffingtonpost/LatestNews?a=v3LT0WgMm-M:npVpE7iowI4:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/huffingtonpost/LatestNews?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.huffingtonpost.com/~ff/huffingtonpost/LatestNews?a=v3LT0WgMm-M:npVpE7iowI4:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/huffingtonpost/LatestNews?i=v3LT0WgMm-M:npVpE7iowI4:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.huffingtonpost.com/~ff/huffingtonpost/LatestNews?a=v3LT0WgMm-M:npVpE7iowI4:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/huffingtonpost/LatestNews?i=v3LT0WgMm-M:npVpE7iowI4:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
357
+ &lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/huffingtonpost/LatestNews/~4/v3LT0WgMm-M" height="1" width="1"/&gt;</content>
358
+ </entry>
359
+
360
+ <entry>
361
+ <title>LA's Worst Trader Joe's Parking Lots</title>
362
+ <link rel="alternate" type="text/html" href="http://www.huffingtonpost.com/2010/08/19/las-worst-trader-joes-par_n_688343.html" />
363
+ <id>tag:www.huffingtonpost.com,2010:/thenewswire//2.688343</id>
364
+
365
+ <published>2010-08-19T23:27:49Z</published>
366
+ <updated>2010-08-19T23:35:45Z</updated>
367
+ <author>
368
+ <name>The Huffington Post News Editors</name>
369
+ <uri>http://www.huffingtonpost.com/thenewswire/</uri>
370
+ </author>
371
+ <content type="html" xml:lang="en" xml:base="http://www.huffingtonpost.com/thenewswire/">
372
+ &lt;p&gt;Trader Joe's is a beloved mainstay of Southern California life for many, yet the dream of inexplicably cheap wine and delicious frozen burritos can quickly turn into a nightmare when it comes to parking. Years ago, I made peace with the notion that I will likely meet my demise in a Trader Joe's parking lot, and it is reassuring to see that I am not alone in this sentiment. &lt;a href="http://blogging.la/2010/08/19/the-5-worst-trader-joe%E2%80%99s-parking-lots-in-la/" target="_hplink"&gt;Blogging LA&lt;/a&gt; has taken a scientific (enough) look at the phenomenon of nightmare TJ's parking scenarios, and compiled a list of LA's 5 worst. Topping the list: the original Arroyo Parkway location: &lt;blockquote&gt; This is the OG TJ's, circa 1967. The template of its future stores, including, apparently, its horrible parking. The lot is a labyrinth and the parking slots are tiny beyond tiny (as my friend pointed out, "only a clown car" could squeeze in the spots). Overall, the lot is ill-equipped to handle the density of traffic and the vanity of Los Angeles (gigantormous Lexus SUVs hogging 2+ spaces, I am looking at you). &lt;/blockquote&gt;&lt;/p&gt;
373
+
374
+ &lt;p&gt;Be sure to see the rest of the list &lt;a href="http://blogging.la/2010/08/19/the-5-worst-trader-joe%E2%80%99s-parking-lots-in-la/" target="_hplink"&gt;here&lt;/a&gt;.&lt;/p&gt;
375
+
376
+ &lt;p&gt;(H/T &lt;a href="http://la.curbed.com/archives/2010/08/tjs_clustercuss.php" target="_hplink"&gt;Curbed LA&lt;/a&gt;)&lt;/p&gt;
377
+
378
+
379
+
380
+ &lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~at/iiwJkczFGz-Mub8ub_rfCSQ_BVc/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~at/iiwJkczFGz-Mub8ub_rfCSQ_BVc/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
381
+ &lt;a href="http://feedads.g.doubleclick.net/~at/iiwJkczFGz-Mub8ub_rfCSQ_BVc/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~at/iiwJkczFGz-Mub8ub_rfCSQ_BVc/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
382
+ &lt;a href="http://feeds.huffingtonpost.com/~ff/huffingtonpost/LatestNews?a=u8XxPETnG0U:-RJQywiza4I:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/huffingtonpost/LatestNews?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.huffingtonpost.com/~ff/huffingtonpost/LatestNews?a=u8XxPETnG0U:-RJQywiza4I:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/huffingtonpost/LatestNews?i=u8XxPETnG0U:-RJQywiza4I:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.huffingtonpost.com/~ff/huffingtonpost/LatestNews?a=u8XxPETnG0U:-RJQywiza4I:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/huffingtonpost/LatestNews?i=u8XxPETnG0U:-RJQywiza4I:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
383
+ &lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/huffingtonpost/LatestNews/~4/u8XxPETnG0U" height="1" width="1"/&gt;</content>
384
+ </entry>
385
+
386
+ <entry>
387
+ <title>Miranda Kerr Pregnant: 'I'm Four Months Along'</title>
388
+ <link rel="alternate" type="text/html" href="http://www.huffingtonpost.com/2010/08/19/miranda-kerr-pregnant-im-_n_688329.html" />
389
+ <id>tag:www.huffingtonpost.com,2010:/thenewswire//2.688329</id>
390
+
391
+ <published>2010-08-19T23:10:01Z</published>
392
+ <updated>2010-08-20T02:11:33Z</updated>
393
+ <author>
394
+ <name>The Huffington Post News Editors</name>
395
+ <uri>http://www.huffingtonpost.com/thenewswire/</uri>
396
+ </author>
397
+ <content type="html" xml:lang="en" xml:base="http://www.huffingtonpost.com/thenewswire/">
398
+ &lt;p&gt;"Yes, I am pregnant. Four months along," says Kerr, 27, confirming much buzz about a possible baby after the couple announced their engagement in June, then quietly wed in July. &lt;/p&gt;
399
+
400
+ More on Models
401
+
402
+
403
+ &lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~at/hsJxWusKw9TlLc1iqU7hIUJAbnI/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~at/hsJxWusKw9TlLc1iqU7hIUJAbnI/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
404
+ &lt;a href="http://feedads.g.doubleclick.net/~at/hsJxWusKw9TlLc1iqU7hIUJAbnI/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~at/hsJxWusKw9TlLc1iqU7hIUJAbnI/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
405
+ &lt;a href="http://feeds.huffingtonpost.com/~ff/huffingtonpost/LatestNews?a=1VUFzzWI2NU:wOM119wEhCo:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/huffingtonpost/LatestNews?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.huffingtonpost.com/~ff/huffingtonpost/LatestNews?a=1VUFzzWI2NU:wOM119wEhCo:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/huffingtonpost/LatestNews?i=1VUFzzWI2NU:wOM119wEhCo:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.huffingtonpost.com/~ff/huffingtonpost/LatestNews?a=1VUFzzWI2NU:wOM119wEhCo:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/huffingtonpost/LatestNews?i=1VUFzzWI2NU:wOM119wEhCo:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
406
+ &lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/huffingtonpost/LatestNews/~4/1VUFzzWI2NU" height="1" width="1"/&gt;</content>
407
+ </entry>
408
+
409
+ <entry>
410
+ <title>Gilbert Knowles Guilty Of Killing The Son Of Bryan Owens, His Former Best Friend</title>
411
+ <link rel="alternate" type="text/html" href="http://www.huffingtonpost.com/2010/08/19/gilbert-knowles-guilty-of_n_688315.html" />
412
+ <id>tag:www.huffingtonpost.com,2010:/thenewswire//2.688315</id>
413
+
414
+ <published>2010-08-19T23:08:50Z</published>
415
+ <updated>2010-08-19T23:46:00Z</updated>
416
+ <author>
417
+ <name>The Huffington Post News Editors</name>
418
+ <uri>http://www.huffingtonpost.com/thenewswire/</uri>
419
+ </author>
420
+ <content type="html" xml:lang="en" xml:base="http://www.huffingtonpost.com/thenewswire/">
421
+ &lt;p&gt;A 35-year-old Joliet man accused of brutally beating to death his former best friend's 2-year-old boy was found guilty of first-degree murder this morning by a Will County judge. &lt;br /&gt;
422
+ &lt;/p&gt;
423
+
424
+
425
+
426
+ &lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~at/cyuTdDM-Rzwt6onmwsyGOfXMIpU/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~at/cyuTdDM-Rzwt6onmwsyGOfXMIpU/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
427
+ &lt;a href="http://feedads.g.doubleclick.net/~at/cyuTdDM-Rzwt6onmwsyGOfXMIpU/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~at/cyuTdDM-Rzwt6onmwsyGOfXMIpU/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
428
+ &lt;a href="http://feeds.huffingtonpost.com/~ff/huffingtonpost/LatestNews?a=cxKXB63qcD0:SbGZARVCosI:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/huffingtonpost/LatestNews?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.huffingtonpost.com/~ff/huffingtonpost/LatestNews?a=cxKXB63qcD0:SbGZARVCosI:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/huffingtonpost/LatestNews?i=cxKXB63qcD0:SbGZARVCosI:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.huffingtonpost.com/~ff/huffingtonpost/LatestNews?a=cxKXB63qcD0:SbGZARVCosI:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/huffingtonpost/LatestNews?i=cxKXB63qcD0:SbGZARVCosI:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
429
+ &lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/huffingtonpost/LatestNews/~4/cxKXB63qcD0" height="1" width="1"/&gt;</content>
430
+ </entry>
431
+
432
+ <entry>
433
+ <title>7 Reasons Why You SHOULDN'T Buy a Home: James Altucher</title>
434
+ <link rel="alternate" type="text/html" href="http://www.huffingtonpost.com/2010/08/19/7-reasons-why-you-shouldnt-buy-a-home_n_688292.html" />
435
+ <id>tag:www.huffingtonpost.com,2010:/thenewswire//2.688292</id>
436
+
437
+ <published>2010-08-19T22:53:58Z</published>
438
+ <updated>2010-08-19T23:01:24Z</updated>
439
+ <author>
440
+ <name>The Huffington Post News Editors</name>
441
+ <uri>http://www.huffingtonpost.com/thenewswire/</uri>
442
+ </author>
443
+ <content type="html" xml:lang="en" xml:base="http://www.huffingtonpost.com/thenewswire/">
444
+ &lt;p&gt;This article is going to be a contradiction. After the fall that housing has suffered, I think that that, as an asset class, housing will probably be a decent investment going forward. But nobody should ever consider owning a home.&lt;/p&gt;
445
+
446
+ &lt;p&gt;One of the biggest scams perpetrated on the American public is that owning a home is the "American Dream." It's more nightmare than dream as millions of Americans now know. But it has always been that way. Here's why.&lt;br /&gt;
447
+ &lt;/p&gt;
448
+
449
+ More on Real Estate
450
+
451
+
452
+ &lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~at/gZu3mfMKlq4uIKvmDAeFkhjWQgU/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~at/gZu3mfMKlq4uIKvmDAeFkhjWQgU/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
453
+ &lt;a href="http://feedads.g.doubleclick.net/~at/gZu3mfMKlq4uIKvmDAeFkhjWQgU/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~at/gZu3mfMKlq4uIKvmDAeFkhjWQgU/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
454
+ &lt;a href="http://feeds.huffingtonpost.com/~ff/huffingtonpost/LatestNews?a=14zhGXxbiLc:ZCKOSlTPdEg:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/huffingtonpost/LatestNews?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.huffingtonpost.com/~ff/huffingtonpost/LatestNews?a=14zhGXxbiLc:ZCKOSlTPdEg:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/huffingtonpost/LatestNews?i=14zhGXxbiLc:ZCKOSlTPdEg:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.huffingtonpost.com/~ff/huffingtonpost/LatestNews?a=14zhGXxbiLc:ZCKOSlTPdEg:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/huffingtonpost/LatestNews?i=14zhGXxbiLc:ZCKOSlTPdEg:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
455
+ &lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/huffingtonpost/LatestNews/~4/14zhGXxbiLc" height="1" width="1"/&gt;</content>
456
+ </entry>
457
+
458
+ <entry>
459
+ <title>Kids' Books: Snooki Can Do It So Anyone Can, Right?</title>
460
+ <link rel="alternate" type="text/html" href="http://www.huffingtonpost.com/2010/08/19/kids-books-snooki_n_687802.html" />
461
+ <id>tag:www.huffingtonpost.com,2010:/thenewswire//2.687802</id>
462
+
463
+ <published>2010-08-19T22:53:04Z</published>
464
+ <updated>2010-08-19T22:54:04Z</updated>
465
+ <author>
466
+ <name>The Huffington Post News Editors</name>
467
+ <uri>http://www.huffingtonpost.com/thenewswire/</uri>
468
+ </author>
469
+ <content type="html" xml:lang="en" xml:base="http://www.huffingtonpost.com/thenewswire/">
470
+ &lt;p&gt;So there you have it, the perfect recipe for a children's book -- a bunch of animals acting strangely and a plot that doesn't make much sense. &lt;/p&gt;
471
+
472
+ More on Writing
473
+
474
+
475
+ &lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~at/jKq6V2iNXKFQH15EVBRUpZNoNMI/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~at/jKq6V2iNXKFQH15EVBRUpZNoNMI/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
476
+ &lt;a href="http://feedads.g.doubleclick.net/~at/jKq6V2iNXKFQH15EVBRUpZNoNMI/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~at/jKq6V2iNXKFQH15EVBRUpZNoNMI/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
477
+ &lt;a href="http://feeds.huffingtonpost.com/~ff/huffingtonpost/LatestNews?a=copSO8ZYEls:kVT3DjCKXiM:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/huffingtonpost/LatestNews?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.huffingtonpost.com/~ff/huffingtonpost/LatestNews?a=copSO8ZYEls:kVT3DjCKXiM:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/huffingtonpost/LatestNews?i=copSO8ZYEls:kVT3DjCKXiM:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.huffingtonpost.com/~ff/huffingtonpost/LatestNews?a=copSO8ZYEls:kVT3DjCKXiM:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/huffingtonpost/LatestNews?i=copSO8ZYEls:kVT3DjCKXiM:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
478
+ &lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/huffingtonpost/LatestNews/~4/copSO8ZYEls" height="1" width="1"/&gt;</content>
479
+ </entry>
480
+
481
+
482
+ </feed>
metadata CHANGED
@@ -1,7 +1,12 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gravitext-xmlprod
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.0
4
+ prerelease: false
5
+ segments:
6
+ - 1
7
+ - 4
8
+ - 0
9
+ version: 1.4.0
5
10
  platform: java
6
11
  authors:
7
12
  - David Kellum
@@ -9,40 +14,55 @@ autorequire:
9
14
  bindir: bin
10
15
  cert_chain: []
11
16
 
12
- date: 2010-05-08 00:00:00 -07:00
17
+ date: 2010-12-11 00:00:00 -08:00
13
18
  default_executable:
14
19
  dependencies:
15
20
  - !ruby/object:Gem::Dependency
16
21
  name: gravitext-util
17
- type: :runtime
18
- version_requirement:
19
- version_requirements: !ruby/object:Gem::Requirement
22
+ prerelease: false
23
+ requirement: &id001 !ruby/object:Gem::Requirement
20
24
  requirements:
21
25
  - - ~>
22
26
  - !ruby/object:Gem::Version
23
- version: "1.3"
24
- version:
27
+ segments:
28
+ - 1
29
+ - 5
30
+ - 0
31
+ version: 1.5.0
32
+ type: :runtime
33
+ version_requirements: *id001
25
34
  - !ruby/object:Gem::Dependency
26
35
  name: rjack-jdom
27
- type: :development
28
- version_requirement:
29
- version_requirements: !ruby/object:Gem::Requirement
36
+ prerelease: false
37
+ requirement: &id002 !ruby/object:Gem::Requirement
30
38
  requirements:
31
39
  - - ~>
32
40
  - !ruby/object:Gem::Version
41
+ segments:
42
+ - 1
43
+ - 1
44
+ - 0
45
+ - 0
33
46
  version: 1.1.0.0
34
- version:
47
+ type: :development
48
+ version_requirements: *id002
35
49
  - !ruby/object:Gem::Dependency
36
50
  name: rjack-tarpit
37
- type: :development
38
- version_requirement:
39
- version_requirements: !ruby/object:Gem::Requirement
51
+ prerelease: false
52
+ requirement: &id003 !ruby/object:Gem::Requirement
40
53
  requirements:
41
54
  - - ~>
42
55
  - !ruby/object:Gem::Version
43
- version: 1.2.1
44
- version:
45
- description: A fast and simple XML streaming production package in java.
56
+ segments:
57
+ - 1
58
+ - 2
59
+ - 2
60
+ version: 1.2.2
61
+ type: :development
62
+ version_requirements: *id003
63
+ description: |-
64
+ XML utilities, includes a fast XML streaming producer and an
65
+ extensible XML tree representation in Java.
46
66
  email:
47
67
  - dek-oss@gravitext.com
48
68
  executables:
@@ -52,8 +72,8 @@ extensions: []
52
72
  extra_rdoc_files:
53
73
  - Manifest.txt
54
74
  - NOTICE.txt
55
- - README.rdoc
56
75
  - History.rdoc
76
+ - README.rdoc
57
77
  files:
58
78
  - History.rdoc
59
79
  - Manifest.txt
@@ -64,7 +84,10 @@ files:
64
84
  - bin/gravitext-xmlprod-perftest
65
85
  - lib/gravitext-xmlprod/version.rb
66
86
  - lib/gravitext-xmlprod.rb
67
- - lib/gravitext-xmlprod/gravitext-xmlprod-1.3.0.jar
87
+ - test/test_dom.rb
88
+ - test/test_tree.rb
89
+ - test/xml/huffingtonpost.full.atom.xml
90
+ - lib/gravitext-xmlprod/gravitext-xmlprod-1.4.0.jar
68
91
  has_rdoc: true
69
92
  homepage: http://gravitext.rubyforge.org
70
93
  licenses: []
@@ -79,20 +102,23 @@ required_ruby_version: !ruby/object:Gem::Requirement
79
102
  requirements:
80
103
  - - ">="
81
104
  - !ruby/object:Gem::Version
105
+ segments:
106
+ - 0
82
107
  version: "0"
83
- version:
84
108
  required_rubygems_version: !ruby/object:Gem::Requirement
85
109
  requirements:
86
110
  - - ">="
87
111
  - !ruby/object:Gem::Version
112
+ segments:
113
+ - 0
88
114
  version: "0"
89
- version:
90
115
  requirements: []
91
116
 
92
117
  rubyforge_project: gravitext
93
- rubygems_version: 1.3.5
118
+ rubygems_version: 1.3.6
94
119
  signing_key:
95
120
  specification_version: 3
96
- summary: A fast and simple XML streaming production package in java.
97
- test_files: []
98
-
121
+ summary: XML utilities, includes a fast XML streaming producer and an extensible XML tree representation in Java.
122
+ test_files:
123
+ - test/test_dom.rb
124
+ - test/test_tree.rb