libxml-ruby 0.8.1-x86-mswin32-60 → 0.8.2-x86-mswin32-60
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/CHANGES +21 -0
- data/RAKEFILE +213 -0
- data/README +32 -11
- data/doc/rdoc/classes/LibXML.html +4 -0
- data/doc/rdoc/classes/LibXML/XML.html +7 -0
- data/doc/rdoc/classes/LibXML/XML/Attr.html +187 -177
- data/doc/rdoc/classes/LibXML/XML/Attributes.html +62 -61
- data/doc/rdoc/classes/LibXML/XML/Document.html +318 -254
- data/doc/rdoc/classes/LibXML/XML/Dtd.html +62 -8
- data/doc/rdoc/classes/LibXML/XML/Error.html +6 -0
- data/doc/rdoc/classes/LibXML/XML/HTMLParser.html +59 -41
- data/doc/rdoc/classes/LibXML/XML/InputCallbacks.html +12 -6
- data/doc/rdoc/classes/LibXML/XML/NS.html +65 -50
- data/doc/rdoc/classes/LibXML/XML/Node.html +671 -630
- data/doc/rdoc/classes/LibXML/XML/Node/FailedModify.html +12 -0
- data/doc/rdoc/classes/LibXML/XML/Node/Set.html +64 -60
- data/doc/rdoc/classes/LibXML/XML/Node/SetNamespace.html +12 -0
- data/doc/rdoc/classes/LibXML/XML/Node/UnknownType.html +12 -0
- data/doc/rdoc/classes/LibXML/XML/Parser.html +407 -383
- data/doc/rdoc/classes/LibXML/XML/Parser/Context.html +241 -219
- data/doc/rdoc/classes/LibXML/XML/Parser/ParseError.html +12 -0
- data/doc/rdoc/classes/LibXML/XML/Reader.html +421 -331
- data/doc/rdoc/classes/LibXML/XML/RelaxNG.html +237 -0
- data/doc/rdoc/classes/LibXML/XML/SaxParser.html +79 -60
- data/doc/rdoc/classes/LibXML/XML/Schema.html +109 -22
- data/doc/rdoc/classes/LibXML/XML/State.html +6 -0
- data/doc/rdoc/classes/LibXML/XML/XInclude.html +6 -0
- data/doc/rdoc/classes/LibXML/XML/XInclude/Error.html +6 -0
- data/doc/rdoc/classes/LibXML/XML/XPath.html +4 -48
- data/doc/rdoc/classes/LibXML/XML/XPath/Context.html +6 -5
- data/doc/rdoc/classes/LibXML/XML/XPath/InvalidPath.html +61 -0
- data/doc/rdoc/classes/LibXML/XML/XPath/Object.html +12 -8
- data/doc/rdoc/classes/LibXML/XML/XPointer.html +14 -8
- data/doc/rdoc/classes/LibXML/XML/XPointer/Context.html +6 -0
- data/doc/rdoc/classes/LibXML/XML/XPointer/Context/InvalidPath.html +6 -0
- data/doc/rdoc/classes/LibXML/XML/XPointer/InvalidExpression.html +13 -0
- data/doc/rdoc/created.rid +1 -1
- data/doc/rdoc/files/CHANGES.html +38 -10
- data/doc/rdoc/files/LICENSE.html +1 -1
- data/doc/rdoc/files/README.html +57 -23
- data/doc/rdoc/files/VERSION.html +1 -1
- data/doc/rdoc/files/ext/libxml/cbg_c.html +1 -1
- data/doc/rdoc/files/ext/libxml/libxml_c.html +1 -1
- data/doc/rdoc/files/ext/libxml/ruby_xml_attr_c.html +1 -1
- data/doc/rdoc/files/ext/libxml/ruby_xml_attributes_c.html +1 -1
- data/doc/rdoc/files/ext/libxml/ruby_xml_document_c.html +1 -1
- data/doc/rdoc/files/ext/libxml/ruby_xml_dtd_c.html +1 -1
- data/doc/rdoc/files/ext/libxml/ruby_xml_html_parser_c.html +1 -1
- data/doc/rdoc/files/ext/libxml/ruby_xml_input_cbg_c.html +1 -1
- data/doc/rdoc/files/ext/libxml/ruby_xml_node_c.html +1 -1
- data/doc/rdoc/files/ext/libxml/ruby_xml_node_set_c.html +1 -1
- data/doc/rdoc/files/ext/libxml/ruby_xml_ns_c.html +1 -1
- data/doc/rdoc/files/ext/libxml/ruby_xml_parser_c.html +1 -1
- data/doc/rdoc/files/ext/libxml/ruby_xml_parser_context_c.html +1 -1
- data/doc/rdoc/files/ext/libxml/ruby_xml_reader_c.html +1 -1
- data/doc/rdoc/{classes/XML.html → files/ext/libxml/ruby_xml_relaxng_c.html} +16 -35
- data/doc/rdoc/files/ext/libxml/ruby_xml_sax_parser_c.html +1 -1
- data/doc/rdoc/files/ext/libxml/ruby_xml_schema_c.html +1 -1
- data/doc/rdoc/files/ext/libxml/ruby_xml_state_c.html +1 -1
- data/doc/rdoc/files/ext/libxml/ruby_xml_xinclude_c.html +1 -1
- data/doc/rdoc/files/ext/libxml/ruby_xml_xpath_c.html +1 -1
- data/doc/rdoc/files/ext/libxml/ruby_xml_xpath_context_c.html +1 -1
- data/doc/rdoc/files/ext/libxml/ruby_xml_xpath_object_c.html +1 -1
- data/doc/rdoc/files/ext/libxml/ruby_xml_xpointer_c.html +1 -1
- data/doc/rdoc/files/ext/libxml/ruby_xml_xpointer_context_c.html +1 -1
- data/doc/rdoc/files/lib/libxml/attr_rb.html +1 -1
- data/doc/rdoc/files/lib/libxml/attributes_rb.html +1 -1
- data/doc/rdoc/files/lib/libxml/document_rb.html +1 -1
- data/doc/rdoc/files/lib/libxml/node_rb.html +1 -1
- data/doc/rdoc/files/lib/libxml/node_set_rb.html +1 -1
- data/doc/rdoc/files/lib/libxml/parser_options_rb.html +1 -1
- data/doc/rdoc/files/lib/libxml/parser_rb.html +1 -1
- data/doc/rdoc/files/lib/libxml/properties_rb.html +1 -1
- data/doc/rdoc/files/lib/libxml/tree_rb.html +1 -1
- data/doc/rdoc/files/lib/libxml_rb.html +2 -2
- data/doc/rdoc/files/lib/xml/libxml_rb.html +12 -2
- data/doc/rdoc/files/lib/xml_rb.html +134 -0
- data/doc/rdoc/fr_class_index.html +1 -1
- data/doc/rdoc/fr_file_index.html +2 -0
- data/doc/rdoc/fr_method_index.html +349 -344
- data/ext/libxml/libxml.c +2 -1
- data/ext/libxml/ruby_libxml.h +1 -0
- data/ext/libxml/ruby_xml_attr.c +8 -2
- data/ext/libxml/ruby_xml_attributes.c +5 -5
- data/ext/libxml/ruby_xml_document.c +41 -2
- data/ext/libxml/ruby_xml_dtd.c +169 -169
- data/ext/libxml/ruby_xml_html_parser.c +449 -449
- data/ext/libxml/ruby_xml_input_cbg.c +165 -165
- data/ext/libxml/ruby_xml_node.c +1 -1
- data/ext/libxml/ruby_xml_node_set.c +172 -172
- data/ext/libxml/ruby_xml_ns.c +145 -145
- data/ext/libxml/ruby_xml_parser.c +1398 -1398
- data/ext/libxml/ruby_xml_parser_context.c +697 -697
- data/ext/libxml/ruby_xml_reader.c +44 -0
- data/ext/libxml/ruby_xml_reader.h +14 -14
- data/ext/libxml/ruby_xml_relaxng.c +97 -0
- data/ext/libxml/ruby_xml_relaxng.h +15 -0
- data/ext/libxml/ruby_xml_sax_parser.c +486 -486
- data/ext/libxml/ruby_xml_schema.c +1 -1
- data/ext/libxml/ruby_xml_state.c +4 -4
- data/ext/libxml/ruby_xml_xinclude.c +21 -21
- data/ext/libxml/ruby_xml_xpath.c +89 -89
- data/ext/libxml/ruby_xml_xpath_context.c +283 -283
- data/ext/libxml/ruby_xml_xpath_object.c +5 -5
- data/ext/libxml/ruby_xml_xpointer.c +104 -104
- data/ext/libxml/ruby_xml_xpointer_context.c +22 -22
- data/ext/libxml/version.h +2 -2
- data/ext/libxml/version.h.rej +17 -0
- data/ext/mingw/Rakefile +41 -0
- data/{mingw → lib}/libiconv-2.dll +0 -0
- data/lib/libxml.rb +15 -4
- data/lib/libxml2-2.dll +0 -0
- data/lib/libxml_ruby.dll.a +0 -0
- data/lib/libxml_ruby.so +0 -0
- data/lib/xml.rb +14 -0
- data/lib/xml/libxml.rb +4 -1
- data/test/etc_doc_to_s.rb +1 -1
- data/test/ets_copy_bug.rb +1 -1
- data/test/ets_copy_bug3.rb +1 -1
- data/test/ets_doc_file.rb +1 -1
- data/test/ets_doc_to_s.rb +1 -1
- data/test/ets_node_gc.rb +1 -1
- data/test/ets_tsr.rb +1 -1
- data/test/model/shiporder.rnc +28 -0
- data/test/model/shiporder.rng +86 -0
- data/test/{tc_xml_attributes.rb → tc_attributes.rb} +1 -10
- data/test/{tc_xml_document.rb → tc_document.rb} +1 -1
- data/test/{tc_xml_document_write.rb → tc_document_write.rb} +1 -1
- data/test/{tc_xml_dtd.rb → tc_dtd.rb} +1 -1
- data/test/{tc_xml_html_parser.rb → tc_html_parser.rb} +1 -1
- data/test/{tc_xml_node.rb → tc_node.rb} +1 -1
- data/test/{tc_xml_node_attr.rb → tc_node_attr.rb} +1 -1
- data/test/{tc_xml_node_cdata.rb → tc_node_cdata.rb} +24 -5
- data/test/{tc_xml_node_comment.rb → tc_node_comment.rb} +1 -1
- data/test/{tc_xml_node_copy.rb → tc_node_copy.rb} +1 -1
- data/test/{tc_xml_node_edit.rb → tc_node_edit.rb} +1 -1
- data/test/{tc_xml_node_set.rb → tc_node_set.rb} +1 -1
- data/test/{tc_xml_node_set2.rb → tc_node_set2.rb} +1 -1
- data/test/{tc_xml_node_text.rb → tc_node_text.rb} +1 -1
- data/test/{tc_xml_node_xlink.rb → tc_node_xlink.rb} +2 -2
- data/test/{tc_xml_parser.rb → tc_parser.rb} +1 -1
- data/test/{tc_xml_parser_context.rb → tc_parser_context.rb} +1 -1
- data/test/{tc_xml_properties.rb → tc_properties.rb} +1 -7
- data/test/{tc_xml_reader.rb → tc_reader.rb} +1 -1
- data/test/tc_relaxng.rb +39 -0
- data/test/{tc_xml_sax_parser.rb → tc_sax_parser.rb} +1 -1
- data/test/{tc_xml_schema.rb → tc_schema.rb} +1 -1
- data/test/{tc_xml_traversal.rb → tc_traversal.rb} +1 -1
- data/test/{tc_xml_xinclude.rb → tc_xinclude.rb} +1 -1
- data/test/{tc_xml_xpath.rb → tc_xpath.rb} +1 -1
- data/test/{tc_xml_xpath_context.rb → tc_xpath_context.rb} +1 -1
- data/test/{tc_xml_xpointer.rb → tc_xpointer.rb} +1 -1
- data/test/test_suite.rb +26 -25
- metadata +103 -100
- data/benchmark/depixelate.rb +0 -632
- data/benchmark/hamlet.xml +0 -9055
- data/benchmark/sock_entries.xml +0 -507
- data/benchmark/throughput.rb +0 -39
- data/benchmark/xml_benchmarks.rb +0 -227
- data/mingw/libxml2-2.dll +0 -0
- data/mingw/libxml_ruby.so +0 -0
- data/test/gc.log +0 -0
- data/vc/libxml_ruby.sln +0 -20
- data/vc/libxml_ruby.vcproj +0 -389
@@ -78,6 +78,12 @@
|
|
78
78
|
|
79
79
|
<div id="contextContent">
|
80
80
|
|
81
|
+
<div id="description">
|
82
|
+
<p>
|
83
|
+
Please see the LICENSE file for copyright and distribution information
|
84
|
+
</p>
|
85
|
+
|
86
|
+
</div>
|
81
87
|
|
82
88
|
|
83
89
|
</div>
|
@@ -86,7 +92,7 @@
|
|
86
92
|
<h3 class="section-bar">Methods</h3>
|
87
93
|
|
88
94
|
<div class="name-list">
|
89
|
-
<a href="#
|
95
|
+
<a href="#M000314">range</a>
|
90
96
|
</div>
|
91
97
|
</div>
|
92
98
|
|
@@ -115,11 +121,11 @@ Class <a href="XPointer/InvalidExpression.html" class="link">LibXML::XML::XPoint
|
|
115
121
|
<div id="methods">
|
116
122
|
<h3 class="section-bar">Public Class methods</h3>
|
117
123
|
|
118
|
-
<div id="method-
|
119
|
-
<a name="
|
124
|
+
<div id="method-M000314" class="method-detail">
|
125
|
+
<a name="M000314"></a>
|
120
126
|
|
121
127
|
<div class="method-heading">
|
122
|
-
<a href="#
|
128
|
+
<a href="#M000314" class="method-signature">
|
123
129
|
<span class="method-name">XML::XPointer.range(start_node, end_node) → xpath<br />
|
124
130
|
</span>
|
125
131
|
</a>
|
@@ -127,12 +133,12 @@ Class <a href="XPointer/InvalidExpression.html" class="link">LibXML::XML::XPoint
|
|
127
133
|
|
128
134
|
<div class="method-description">
|
129
135
|
<p>
|
130
|
-
Create an xpath representing the range
|
131
|
-
node.
|
136
|
+
Create an xpath representing the <a href="XPointer.html#M000314">range</a>
|
137
|
+
between the supplied start and end node.
|
132
138
|
</p>
|
133
139
|
<p><a class="source-toggle" href="#"
|
134
|
-
onclick="toggleCode('
|
135
|
-
<div class="method-source-code" id="
|
140
|
+
onclick="toggleCode('M000314-source');return false;">[Source]</a></p>
|
141
|
+
<div class="method-source-code" id="M000314-source">
|
136
142
|
<pre>
|
137
143
|
/*
|
138
144
|
* call-seq:
|
@@ -78,6 +78,19 @@
|
|
78
78
|
|
79
79
|
<div id="contextContent">
|
80
80
|
|
81
|
+
<div id="description">
|
82
|
+
<p>
|
83
|
+
call-seq:
|
84
|
+
</p>
|
85
|
+
<pre>
|
86
|
+
XML::XPointer.range(start_node, end_node) -> xpath
|
87
|
+
</pre>
|
88
|
+
<p>
|
89
|
+
Create an xpath representing the range between the supplied start and end
|
90
|
+
node.
|
91
|
+
</p>
|
92
|
+
|
93
|
+
</div>
|
81
94
|
|
82
95
|
|
83
96
|
</div>
|
data/doc/rdoc/created.rid
CHANGED
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
Mon, 21 Jul 2008 22:36:18 -0600
|
data/doc/rdoc/files/CHANGES.html
CHANGED
@@ -56,7 +56,7 @@
|
|
56
56
|
</tr>
|
57
57
|
<tr class="top-aligned-row">
|
58
58
|
<td><strong>Last Update:</strong></td>
|
59
|
-
<td>
|
59
|
+
<td>Mon Jul 21 20:01:08 -0600 2008</td>
|
60
60
|
</tr>
|
61
61
|
</table>
|
62
62
|
</div>
|
@@ -73,6 +73,36 @@
|
|
73
73
|
(See log/ChangeLog for more detailed changes derived directly from source
|
74
74
|
control.)
|
75
75
|
</p>
|
76
|
+
<h2>0.8.2 / 2008-07-21 Charlie Savage</h2>
|
77
|
+
<ul>
|
78
|
+
<li>To use <a href="../classes/LibXML.html">LibXML</a> you can either require
|
79
|
+
‘xml’ or require ‘libxml’. The differences is that
|
80
|
+
require ‘xml’ mixes the <a
|
81
|
+
href="../classes/LibXML.html">LibXML</a> module into the global namespace,
|
82
|
+
thereby allowing you to write code such as document = XML::Document.new.
|
83
|
+
Note that this is different from 0.8.0 and 0.8.1 and may require updating
|
84
|
+
your code.
|
85
|
+
|
86
|
+
</li>
|
87
|
+
<li>Support RelaxNG validation (thanks to Morus Walter)
|
88
|
+
|
89
|
+
</li>
|
90
|
+
<li>Support passing IO objects to XmlReaders (thanks to Tom Hughes)
|
91
|
+
|
92
|
+
</li>
|
93
|
+
<li>Fix segmentation fault caused by adding an attribute to a CDATA node
|
94
|
+
|
95
|
+
</li>
|
96
|
+
<li>Moved node checking functions from C to Ruby
|
97
|
+
|
98
|
+
</li>
|
99
|
+
<li>Improved Windows support - libxml-ruby should now work out of the box.
|
100
|
+
|
101
|
+
</li>
|
102
|
+
<li>Improved Windows support - turned on libxml‘s zlib and iconv support.
|
103
|
+
|
104
|
+
</li>
|
105
|
+
</ul>
|
76
106
|
<h2>0.8.1 / 2008-07-09 Charlie Savage</h2>
|
77
107
|
<ul>
|
78
108
|
<li>Reimplmented Node#each_attr for backwards compatability
|
@@ -148,7 +178,7 @@ and attributes
|
|
148
178
|
the same library that allocates memory must free it. Thus ALLOC calls must
|
149
179
|
be matched to ruby_xfree calls, which they were not. In addition, in one
|
150
180
|
case Ruby was allocating memory to be freed by libxml. On Windows,
|
151
|
-
that&#
|
181
|
+
that‘s a segmentation fault. On Linux it might fly, but still seems
|
152
182
|
like a bad idea.
|
153
183
|
|
154
184
|
</li>
|
@@ -162,7 +192,7 @@ segmentation faults and fixes for various memory leaks
|
|
162
192
|
<li>Cleaned up a number of compiler warnings
|
163
193
|
|
164
194
|
</li>
|
165
|
-
<li>Renamed libxml_so.so to libxml_ruby.so (same for xslt). That wasn&#
|
195
|
+
<li>Renamed libxml_so.so to libxml_ruby.so (same for xslt). That wasn‘t
|
166
196
|
actually my original intention, but um, it kind of sort of happened. It
|
167
197
|
should not be noticeable from an end-user perspective.
|
168
198
|
|
@@ -171,7 +201,7 @@ should not be noticeable from an end-user perspective.
|
|
171
201
|
|
172
202
|
</li>
|
173
203
|
<li>Added rake files for packing gems. Note that I did this outside the
|
174
|
-
existing rake tasks because I didn&#
|
204
|
+
existing rake tasks because I didn‘t see how they were actually
|
175
205
|
building the gems.
|
176
206
|
|
177
207
|
</li>
|
@@ -185,14 +215,14 @@ Tracker and mailing list.
|
|
185
215
|
</ul>
|
186
216
|
<h3>2007-11-16 "Dan Janowski" <danj at 3skel.com></h3>
|
187
217
|
<ul>
|
188
|
-
<li>Merged Dan&#
|
218
|
+
<li>Merged Dan‘s MEM2 branch to trunk.
|
189
219
|
|
190
220
|
</li>
|
191
221
|
</ul>
|
192
222
|
<h2>0.5.3 /</h2>
|
193
223
|
<h3>2007-11-16 "Dan Janowski" <danj at 3skel.com></h3>
|
194
224
|
<ul>
|
195
|
-
<li>Merged Dan&#
|
225
|
+
<li>Merged Dan‘s MEM2 branch to trunk.
|
196
226
|
|
197
227
|
</li>
|
198
228
|
</ul>
|
@@ -227,8 +257,7 @@ Tracker and mailing list.
|
|
227
257
|
<li>Integrated and tested community patches.
|
228
258
|
|
229
259
|
</li>
|
230
|
-
<li>Defined XML::Node (hash) equality in terms of
|
231
|
-
href="../classes/XML.html">XML</a> representation.
|
260
|
+
<li>Defined XML::Node (hash) equality in terms of XML representation.
|
232
261
|
|
233
262
|
</li>
|
234
263
|
</ul>
|
@@ -327,8 +356,7 @@ setting the value of an already existing attribute.
|
|
327
356
|
</ul>
|
328
357
|
<h3>2004-03-17 "Lukas Svoboda" <luks@fi.muni.cz></h3>
|
329
358
|
<ul>
|
330
|
-
<li>ruby_xml_node.c: ruby_xml_node_to_s now returns
|
331
|
-
href="../classes/XML.html">XML</a> subtree dump.
|
359
|
+
<li>ruby_xml_node.c: ruby_xml_node_to_s now returns XML subtree dump.
|
332
360
|
|
333
361
|
</li>
|
334
362
|
</ul>
|
data/doc/rdoc/files/LICENSE.html
CHANGED
data/doc/rdoc/files/README.html
CHANGED
@@ -56,7 +56,7 @@
|
|
56
56
|
</tr>
|
57
57
|
<tr class="top-aligned-row">
|
58
58
|
<td><strong>Last Update:</strong></td>
|
59
|
-
<td>
|
59
|
+
<td>Mon Jul 21 20:37:43 -0600 2008</td>
|
60
60
|
</tr>
|
61
61
|
</table>
|
62
62
|
</div>
|
@@ -72,9 +72,8 @@
|
|
72
72
|
<h1><a href="../classes/LibXML.html">LibXML</a> Ruby</h1>
|
73
73
|
<h2>Overview</h2>
|
74
74
|
<p>
|
75
|
-
The libxml gem provides Ruby language bindings for GNOME&#
|
76
|
-
|
77
|
-
under the MIT License.
|
75
|
+
The libxml gem provides Ruby language bindings for GNOME‘s Libxml2
|
76
|
+
XML toolkit. It is free software, released under the MIT License.
|
78
77
|
</p>
|
79
78
|
<p>
|
80
79
|
libxml-ruby provides several advantages over REXML:
|
@@ -84,12 +83,11 @@ libxml-ruby provides several advantages over REXML:
|
|
84
83
|
|
85
84
|
</li>
|
86
85
|
<li>Features - libxml provides a number of additional features over REXML,
|
87
|
-
including
|
88
|
-
|
86
|
+
including XML Schema Validation, RelaxNg validation, xslt (see
|
87
|
+
libxslt-ruby)
|
89
88
|
|
90
89
|
</li>
|
91
|
-
<li>Conformance - libxml passes all 1800+ tests from the OASIS
|
92
|
-
href="../classes/XML.html">XML</a> Tests Suite
|
90
|
+
<li>Conformance - libxml passes all 1800+ tests from the OASIS XML Tests Suite
|
93
91
|
|
94
92
|
</li>
|
95
93
|
</ul>
|
@@ -113,7 +111,7 @@ libraries to function properly:
|
|
113
111
|
</li>
|
114
112
|
</ul>
|
115
113
|
<p>
|
116
|
-
If you are running Linux or Unix you&#
|
114
|
+
If you are running Linux or Unix you‘ll need a C compiler so the
|
117
115
|
extension can be compiled when it is installed. If you are running Windows,
|
118
116
|
then install the Windows specific RubyGem which includes an already built
|
119
117
|
extension.
|
@@ -128,21 +126,20 @@ The easiest way to install libxml-ruby is via Ruby Gems. To install:
|
|
128
126
|
<p>
|
129
127
|
If you are running Windows, make sure to install the Win32 RubyGem which
|
130
128
|
includes an already built binary file. The binary is built against libxml2
|
131
|
-
version 2.6.32 and iconv version 1.
|
129
|
+
version 2.6.32 and iconv version 1.11. Both of these are also included as
|
132
130
|
pre-built binaries, and should be put either in the libxml/lib directory or
|
133
131
|
on the Windows path.
|
134
132
|
</p>
|
135
133
|
<p>
|
136
|
-
The Windows binaries are
|
137
|
-
Microsoft VC++
|
138
|
-
libxml-ruby on Windows, then it is highly
|
134
|
+
The Windows binaries are built with MingW and include libxml-ruby, libxml2
|
135
|
+
and iconv. The gem also includes a Microsoft VC++ 2008 solution. If you
|
136
|
+
wish to run a debug version of libxml-ruby on Windows, then it is highly
|
137
|
+
recommended you use VC++.
|
139
138
|
</p>
|
140
139
|
<h2>Functionality</h2>
|
141
140
|
<p>
|
142
|
-
libxml is a highly conformant
|
143
|
-
|
144
|
-
href="../classes/XML.html">XML</a> Tests Suite. In addition, it includes
|
145
|
-
rich functionality such as:
|
141
|
+
libxml is a highly conformant XML parser, passing all 1800+ tests from the
|
142
|
+
OASIS XML Tests Suite. In addition, it includes rich functionality such as:
|
146
143
|
</p>
|
147
144
|
<ul>
|
148
145
|
<li>SAX
|
@@ -150,6 +147,9 @@ rich functionality such as:
|
|
150
147
|
</li>
|
151
148
|
<li>DOM
|
152
149
|
|
150
|
+
</li>
|
151
|
+
<li>HTML Parsing
|
152
|
+
|
153
153
|
</li>
|
154
154
|
<li>XMLReader
|
155
155
|
|
@@ -160,10 +160,13 @@ rich functionality such as:
|
|
160
160
|
<li>XPointer
|
161
161
|
|
162
162
|
</li>
|
163
|
-
<li
|
163
|
+
<li>DTDs
|
164
|
+
|
165
|
+
</li>
|
166
|
+
<li>RelaxNG Schemas
|
164
167
|
|
165
168
|
</li>
|
166
|
-
<li>
|
169
|
+
<li>XML Schema
|
167
170
|
|
168
171
|
</li>
|
169
172
|
<li>XSLT (split into the libxslt-ruby bindings)
|
@@ -171,7 +174,7 @@ rich functionality such as:
|
|
171
174
|
</li>
|
172
175
|
</ul>
|
173
176
|
<p>
|
174
|
-
libxml-ruby provides impressive coverage of libxml&#
|
177
|
+
libxml-ruby provides impressive coverage of libxml‘s functionality
|
175
178
|
through an easy-to-use C api.
|
176
179
|
</p>
|
177
180
|
<h2>Performance</h2>
|
@@ -204,14 +207,45 @@ href="https://svn.concord.org/svn/projects/trunk/common/ruby/xml_benchmarks">svn
|
|
204
207
|
<h2>USAGE</h2>
|
205
208
|
<p>
|
206
209
|
For in-depth information about using libxml-ruby please refer to its online
|
207
|
-
Rdoc documentation.
|
210
|
+
Rdoc documentation.
|
211
|
+
</p>
|
212
|
+
<p>
|
213
|
+
All libxml classes are in the <a
|
214
|
+
href="../classes/LibXML/XML.html">LibXML::XML</a> module. The simplest way
|
215
|
+
to use libxml is to require ‘xml’. This will mixin the <a
|
216
|
+
href="../classes/LibXML.html">LibXML</a> module into the global namespace,
|
217
|
+
allowing you to write code like this:
|
218
|
+
</p>
|
219
|
+
<p>
|
220
|
+
require ‘xml’ document = XML::Document.new
|
221
|
+
</p>
|
222
|
+
<p>
|
223
|
+
If you prefer not to add the <a href="../classes/LibXML.html">LibXML</a>
|
224
|
+
module to the global namepace, then write your code like this:
|
225
|
+
</p>
|
226
|
+
<p>
|
227
|
+
require ‘libxml‘
|
228
|
+
</p>
|
229
|
+
<p>
|
230
|
+
class MyClass
|
231
|
+
</p>
|
232
|
+
<pre>
|
233
|
+
def some_method
|
234
|
+
document = LibXML::XML::Document.new
|
235
|
+
end
|
236
|
+
</pre>
|
237
|
+
<p>
|
238
|
+
end
|
239
|
+
</p>
|
240
|
+
<p>
|
241
|
+
Some simple examples are shown below.
|
208
242
|
</p>
|
209
243
|
<h3>READING</h3>
|
210
244
|
<p>
|
211
245
|
There are several ways to read xml documents.
|
212
246
|
</p>
|
213
247
|
<pre>
|
214
|
-
require '
|
248
|
+
require 'xml'
|
215
249
|
doc = XML::Document.file('output.xml')
|
216
250
|
root = doc.root
|
217
251
|
|
@@ -246,7 +280,7 @@ And your terminal should look like:
|
|
246
280
|
To write a simple document:
|
247
281
|
</p>
|
248
282
|
<pre>
|
249
|
-
require '
|
283
|
+
require 'xml'
|
250
284
|
|
251
285
|
doc = XML::Document.new()
|
252
286
|
doc.root = XML::Node.new('root_node')
|
data/doc/rdoc/files/VERSION.html
CHANGED