libxml-ruby 0.7.0-x86-mswin32-60 → 0.8.0-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.
Files changed (188) hide show
  1. data/CHANGES +24 -1
  2. data/README +48 -3
  3. data/benchmark/depixelate.rb +632 -0
  4. data/benchmark/hamlet.xml +9055 -0
  5. data/benchmark/sock_entries.xml +507 -0
  6. data/benchmark/throughput.rb +39 -0
  7. data/benchmark/xml_benchmarks.rb +222 -0
  8. data/doc/classes/LibXML.html +237 -0
  9. data/doc/classes/LibXML/XML.html +178 -0
  10. data/doc/classes/{XML → LibXML/XML}/Attr.html +213 -182
  11. data/doc/classes/{XML → LibXML/XML}/Attributes.html +126 -54
  12. data/doc/classes/{XML → LibXML/XML}/Document.html +299 -297
  13. data/doc/classes/{XML → LibXML/XML}/Dtd.html +10 -10
  14. data/doc/classes/{XML/XInclude → LibXML/XML}/Error.html +4 -4
  15. data/doc/classes/{XML → LibXML/XML}/HTMLParser.html +40 -40
  16. data/doc/classes/{XML → LibXML/XML}/InputCallbacks.html +10 -10
  17. data/doc/classes/{XML → LibXML/XML}/NS.html +46 -46
  18. data/doc/classes/{XML → LibXML/XML}/Node.html +935 -788
  19. data/doc/classes/LibXML/XML/Node/FailedModify.html +111 -0
  20. data/doc/classes/{XML → LibXML/XML}/Node/Set.html +69 -68
  21. data/doc/classes/{XML → LibXML/XML}/Node/SetNamespace.html +4 -4
  22. data/doc/classes/{XML/Node/FailedModify.html → LibXML/XML/Node/UnknownType.html} +4 -4
  23. data/doc/classes/{XML → LibXML/XML}/Parser.html +426 -389
  24. data/doc/classes/{XML → LibXML/XML}/Parser/Context.html +208 -208
  25. data/doc/classes/{XML → LibXML/XML}/Parser/ParseError.html +4 -4
  26. data/doc/classes/{XML → LibXML/XML}/Reader.html +288 -287
  27. data/doc/classes/{XML → LibXML/XML}/SaxParser.html +52 -52
  28. data/doc/classes/{XML/XPath/Context.html → LibXML/XML/Schema.html} +60 -32
  29. data/doc/classes/{XML → LibXML/XML}/State.html +4 -4
  30. data/doc/classes/{XML/Node/UnknownType.html → LibXML/XML/Tree.html} +5 -5
  31. data/doc/classes/{XML → LibXML/XML}/XInclude.html +5 -5
  32. data/doc/classes/{XML → LibXML/XML/XInclude}/Error.html +5 -5
  33. data/doc/classes/{XML → LibXML/XML}/XMLParserOptions.html +5 -5
  34. data/doc/classes/{XML → LibXML/XML}/XPath.html +23 -64
  35. data/doc/classes/LibXML/XML/XPath/Context.html +403 -0
  36. data/doc/classes/{XML/XPointer/Context → LibXML/XML/XPath}/InvalidPath.html +4 -4
  37. data/doc/classes/LibXML/XML/XPath/Object.html +623 -0
  38. data/doc/classes/{XML → LibXML/XML}/XPointer.html +12 -12
  39. data/doc/classes/{XML → LibXML/XML}/XPointer/Context.html +5 -5
  40. data/doc/classes/{XML/XPath → LibXML/XML/XPointer/Context}/InvalidPath.html +5 -5
  41. data/doc/classes/{XML → LibXML/XML}/XPointer/InvalidExpression.html +4 -4
  42. data/doc/classes/XML.html +17 -123
  43. data/doc/created.rid +1 -1
  44. data/doc/files/CHANGES.html +49 -25
  45. data/doc/files/LICENSE.html +1 -1
  46. data/doc/files/README.html +79 -4
  47. data/doc/files/VERSION.html +2 -2
  48. data/doc/files/ext/libxml/cbg_c.html +1 -1
  49. data/doc/files/ext/libxml/libxml_c.html +1 -1
  50. data/doc/files/ext/libxml/ruby_xml_attr_c.html +1 -1
  51. data/doc/files/ext/libxml/ruby_xml_attributes_c.html +1 -1
  52. data/doc/files/ext/libxml/ruby_xml_document_c.html +1 -1
  53. data/doc/files/ext/libxml/ruby_xml_dtd_c.html +1 -1
  54. data/doc/files/ext/libxml/ruby_xml_html_parser_c.html +1 -1
  55. data/doc/files/ext/libxml/ruby_xml_input_cbg_c.html +1 -1
  56. data/doc/files/ext/libxml/ruby_xml_node_c.html +1 -1
  57. data/doc/files/ext/libxml/ruby_xml_node_set_c.html +1 -1
  58. data/doc/files/ext/libxml/ruby_xml_ns_c.html +1 -1
  59. data/doc/files/ext/libxml/ruby_xml_parser_c.html +1 -1
  60. data/doc/files/ext/libxml/ruby_xml_parser_context_c.html +1 -1
  61. data/doc/files/ext/libxml/ruby_xml_reader_c.html +1 -1
  62. data/doc/files/ext/libxml/ruby_xml_sax_parser_c.html +1 -1
  63. data/doc/files/ext/libxml/ruby_xml_schema_c.html +1 -1
  64. data/doc/files/ext/libxml/ruby_xml_state_c.html +1 -1
  65. data/doc/files/ext/libxml/ruby_xml_xinclude_c.html +1 -1
  66. data/doc/files/ext/libxml/ruby_xml_xpath_c.html +1 -1
  67. data/doc/files/ext/libxml/ruby_xml_xpath_context_c.html +1 -1
  68. data/doc/files/ext/libxml/ruby_xml_xpath_object_c.html +1 -1
  69. data/doc/files/ext/libxml/ruby_xml_xpointer_c.html +1 -1
  70. data/doc/files/ext/libxml/ruby_xml_xpointer_context_c.html +1 -1
  71. data/doc/files/lib/libxml/attr_rb.html +108 -0
  72. data/doc/files/lib/libxml/attributes_rb.html +108 -0
  73. data/doc/files/lib/libxml/document_rb.html +108 -0
  74. data/doc/files/lib/libxml/node_rb.html +108 -0
  75. data/doc/files/lib/libxml/node_set_rb.html +108 -0
  76. data/doc/files/lib/libxml/parser_options_rb.html +107 -0
  77. data/doc/files/{ext/libxml/ruby_xml_tree_c.html → lib/libxml/parser_rb.html} +4 -4
  78. data/doc/files/lib/libxml/properties_rb.html +108 -0
  79. data/doc/files/lib/libxml/tree_rb.html +107 -0
  80. data/doc/files/lib/libxml_rb.html +12 -3
  81. data/doc/fr_class_index.html +34 -32
  82. data/doc/fr_file_index.html +9 -1
  83. data/doc/fr_method_index.html +362 -347
  84. data/ext/libxml/cbg.c +76 -76
  85. data/ext/libxml/libxml.c +4 -3
  86. data/ext/libxml/ruby_libxml.h +1 -1
  87. data/ext/libxml/ruby_xml_attr.c +4 -3
  88. data/ext/libxml/ruby_xml_attr.h +16 -16
  89. data/ext/libxml/ruby_xml_attributes.c +267 -266
  90. data/ext/libxml/ruby_xml_attributes.h +17 -17
  91. data/ext/libxml/ruby_xml_document.c +30 -59
  92. data/ext/libxml/ruby_xml_document.h +27 -27
  93. data/ext/libxml/ruby_xml_dtd.c +2 -1
  94. data/ext/libxml/ruby_xml_dtd.h +17 -17
  95. data/ext/libxml/ruby_xml_html_parser.c +3 -2
  96. data/ext/libxml/ruby_xml_html_parser.h +29 -29
  97. data/ext/libxml/ruby_xml_input_cbg.c +2 -1
  98. data/ext/libxml/ruby_xml_input_cbg.h +20 -20
  99. data/ext/libxml/ruby_xml_node.c +127 -470
  100. data/ext/libxml/ruby_xml_node.h +17 -17
  101. data/ext/libxml/ruby_xml_node_set.c +5 -4
  102. data/ext/libxml/ruby_xml_node_set.h +20 -20
  103. data/ext/libxml/ruby_xml_ns.c +3 -2
  104. data/ext/libxml/ruby_xml_ns.h +12 -12
  105. data/ext/libxml/ruby_xml_parser.c +20 -48
  106. data/ext/libxml/ruby_xml_parser.h +31 -31
  107. data/ext/libxml/ruby_xml_parser_context.c +3 -2
  108. data/ext/libxml/ruby_xml_parser_context.h +20 -20
  109. data/ext/libxml/ruby_xml_reader.c +2 -1
  110. data/ext/libxml/ruby_xml_sax_parser.c +3 -2
  111. data/ext/libxml/ruby_xml_sax_parser.h +56 -56
  112. data/ext/libxml/ruby_xml_schema.c +6 -0
  113. data/ext/libxml/ruby_xml_schema.h +16 -16
  114. data/ext/libxml/ruby_xml_state.c +13 -12
  115. data/ext/libxml/ruby_xml_state.h +1 -1
  116. data/ext/libxml/ruby_xml_xinclude.c +3 -2
  117. data/ext/libxml/ruby_xml_xinclude.h +13 -13
  118. data/ext/libxml/ruby_xml_xpath.c +35 -228
  119. data/ext/libxml/ruby_xml_xpath.h +22 -23
  120. data/ext/libxml/ruby_xml_xpath_context.c +223 -62
  121. data/ext/libxml/ruby_xml_xpath_context.h +15 -20
  122. data/ext/libxml/ruby_xml_xpath_object.c +63 -19
  123. data/ext/libxml/ruby_xml_xpointer.c +19 -15
  124. data/ext/libxml/ruby_xml_xpointer.h +27 -27
  125. data/ext/libxml/ruby_xml_xpointer_context.c +3 -2
  126. data/ext/libxml/ruby_xml_xpointer_context.h +18 -18
  127. data/ext/libxml/version.h +9 -9
  128. data/lib/libxml.rb +16 -128
  129. data/lib/libxml/attr.rb +45 -0
  130. data/lib/libxml/attributes.rb +15 -0
  131. data/lib/libxml/document.rb +54 -0
  132. data/lib/libxml/node.rb +132 -0
  133. data/lib/libxml/node_set.rb +27 -0
  134. data/lib/libxml/parser.rb +42 -0
  135. data/lib/libxml/parser_options.rb +25 -0
  136. data/lib/libxml/properties.rb +19 -0
  137. data/lib/libxml/tree.rb +29 -0
  138. data/lib/libxml_ruby.so +0 -0
  139. data/mingw/libxml_ruby.so +0 -0
  140. data/{work/task/setup → setup.rb} +1585 -1616
  141. data/test/gc.log +0 -0
  142. data/test/model/books.xml +147 -0
  143. data/{work/test/runner.rb → test/model/default_validation_bug.rb} +0 -0
  144. data/test/model/merge_bug_data.xml +58 -0
  145. data/test/model/rubynet.xml +78 -0
  146. data/test/model/rubynet_project +1 -0
  147. data/test/model/saxtest.xml +5 -0
  148. data/test/model/shiporder.xml +23 -0
  149. data/test/model/shiporder.xsd +31 -0
  150. data/test/model/simple.xml +7 -0
  151. data/test/model/soap.xml +27 -0
  152. data/test/model/xinclude.xml +5 -0
  153. data/test/tc_deprecated_require.rb +13 -0
  154. data/test/tc_xml_document.rb +57 -16
  155. data/test/tc_xml_document_write.rb +125 -10
  156. data/test/tc_xml_dtd.rb +22 -1
  157. data/test/tc_xml_node.rb +13 -0
  158. data/test/tc_xml_node_edit.rb +1 -1
  159. data/test/tc_xml_node_xlink.rb +1 -1
  160. data/test/tc_xml_parser.rb +64 -7
  161. data/test/tc_xml_properties.rb +42 -0
  162. data/test/tc_xml_reader.rb +4 -4
  163. data/test/tc_xml_sax_parser.rb +50 -50
  164. data/test/tc_xml_schema.rb +2 -2
  165. data/test/tc_xml_traversal.rb +220 -0
  166. data/test/tc_xml_xinclude.rb +12 -15
  167. data/test/tc_xml_xpath.rb +74 -6
  168. data/test/tc_xml_xpath_context.rb +72 -0
  169. data/test/test_suite.rb +6 -4
  170. data/vc/libxml_ruby.vcproj +1 -9
  171. metadata +92 -65
  172. data/doc/classes/XML/SiblingEnum.html +0 -142
  173. data/doc/classes/XML/Tree.html +0 -224
  174. data/doc/classes/XML/XPath/Object.html +0 -439
  175. data/ext/libxml/ruby_xml_tree.c +0 -43
  176. data/ext/libxml/ruby_xml_tree.h +0 -12
  177. data/test/ets_copy_bug2.rb +0 -21
  178. data/test/tc_xml_document_write2.rb +0 -54
  179. data/test/tc_xml_document_write3.rb +0 -96
  180. data/test/tc_xml_sax_parser2.rb +0 -51
  181. data/work/Rakefile +0 -247
  182. data/work/task/make +0 -26
  183. data/work/task/memory +0 -37
  184. data/work/task/rdoc +0 -39
  185. data/work/task/test +0 -29
  186. data/work/test/ets_runner.rb +0 -33
  187. data/work/test/libxml_test.rb +0 -3
  188. data/work/test/runner_ets.rb +0 -33
data/CHANGES CHANGED
@@ -1,5 +1,28 @@
1
1
  (See log/ChangeLog for more detailed changes derived directly from source control.)
2
2
 
3
+ == 0.7.1 / 2008-07-09 Charlie Savage
4
+
5
+ * Fixed bug in returning attributes from XPath results
6
+
7
+ * Fixed DOM traversal methods
8
+
9
+ * Changed Node#children to return an array of nodes
10
+
11
+ * Fixed bug in returning attributes from XPath results
12
+
13
+ * Refactored XPath support, providing more user hooks in the XPath::Context class
14
+
15
+ * Added Node#properties for backwards compatibility
16
+
17
+ * Updated setup.rb
18
+
19
+ * Added more tests
20
+
21
+ * Updated rdocs and README file
22
+
23
+ * Moved libxml into LibXML namespace
24
+
25
+
3
26
  == 0.7.0 / 2008-07-09 Charlie Savage
4
27
 
5
28
  * Added new attributes class to provide a more natural way of working with attributes
@@ -12,7 +35,7 @@
12
35
 
13
36
  * Cleaned up tests and added new test suite
14
37
 
15
- * Updated rdocs
38
+ * Updated rdocs and README file
16
39
 
17
40
  * Cleaned out most of the bug list
18
41
 
data/README CHANGED
@@ -9,7 +9,7 @@ libxml-ruby provides several advantages over REXML:
9
9
 
10
10
  * Speed - libxml is many times faster than REXML
11
11
  * Features - libxml provides a number of additional features over REXML, including XML Schema Validation, RelaxNg validation, xslt (see libxslt-ruby)
12
- * Correctness - libxml passes all 1800+ tests from the OASIS XML Tests Suite
12
+ * Conformance - libxml passes all 1800+ tests from the OASIS XML Tests Suite
13
13
 
14
14
 
15
15
  == Requirements
@@ -29,7 +29,7 @@ includes an already built extension.
29
29
 
30
30
  == INSTALLATION
31
31
 
32
- The easiest way to install ruby-prof is by using Ruby Gems. To install:
32
+ The easiest way to install libxml-ruby is via Ruby Gems. To install:
33
33
 
34
34
  <tt>gem install libxml-ruby</tt>
35
35
 
@@ -45,9 +45,49 @@ of libxml-ruby on Windows, then it is highly recommended
45
45
  you use VC++.
46
46
 
47
47
 
48
+ == Functionality
49
+ libxml is a highly conformant XML parser, passing all 1800+ tests
50
+ from the OASIS XML Tests Suite. In addition, it includes rich
51
+ functionality such as:
52
+
53
+ * SAX
54
+ * DOM
55
+ * XMLReader
56
+ * XPath
57
+ * XPointer
58
+ * XML Schema
59
+ * DTDs
60
+ * XSLT (split into the libxslt-ruby bindings)
61
+
62
+ libxml-ruby provides impressive coverage of libxml's functionality
63
+ through an easy-to-use C api.
64
+
65
+ == Performance
66
+ In addition to being feature rich and conformation, the main reason
67
+ people use libxml-ruby is for performance. Here are the results
68
+ of a couple simple benchmarks recently blogged about on the
69
+ Web (you can find them in the benchmark directory of the
70
+ libxml distribution).
71
+
72
+ From http://depixelate.com/2008/4/23/ruby-xml-parsing-benchmarks
73
+
74
+ user system total real
75
+ libxml 0.032000 0.000000 0.032000 ( 0.031000)
76
+ Hpricot 0.640000 0.031000 0.671000 ( 0.890000)
77
+ REXML 1.813000 0.047000 1.860000 ( 2.031000)
78
+
79
+ From https://svn.concord.org/svn/projects/trunk/common/ruby/xml_benchmarks/
80
+
81
+ user system total real
82
+ libxml 0.641000 0.031000 0.672000 ( 0.672000)
83
+ hpricot 5.359000 0.062000 5.421000 ( 5.516000)
84
+ rexml 22.859000 0.047000 22.906000 ( 23.203000)
85
+
48
86
  == USAGE
49
87
 
50
- Basic usage for reading and writing documents.
88
+ For in-depth information about using libxml-ruby please refer
89
+ to its online Rdoc documentation. Some simple examples
90
+ are shown below.
51
91
 
52
92
  === READING
53
93
 
@@ -138,7 +178,12 @@ The file output.xml contains:
138
178
  </foo>
139
179
  </root_node>
140
180
 
181
+ == DOCUMENTATION
182
+
183
+ RDoc comments are included - run 'rake doc' to generate documentation.
184
+ You can find the latest documentation at:
141
185
 
186
+ * http://libxml.rubyforge.org/rdoc/
142
187
 
143
188
  == License
144
189
 
@@ -0,0 +1,632 @@
1
+ require 'rubygems'
2
+ require 'benchmark'
3
+ require 'hpricot'
4
+ require 'rexml/document'
5
+ require 'libxml'
6
+
7
+
8
+ # Taken from http://depixelate.com/2008/4/23/ruby-xml-parsing-benchmarks
9
+
10
+ XML_STRING = DATA.read
11
+
12
+ class Parse
13
+ def self.libxml
14
+ doc = XML::Parser.string(XML_STRING).parse
15
+ ary = []
16
+ doc.find('/*/*/*').each do |node|
17
+ case node.name
18
+ when 'ItemQueryRs'
19
+ node.each_element do |child|
20
+ ary << child.find_first('./ListID')
21
+ end
22
+ end
23
+ end
24
+ ary
25
+ end
26
+
27
+ def self.rexml
28
+ doc = REXML::Document.new(XML_STRING)
29
+ ary = []
30
+ REXML::XPath.each(doc, '/*/*/*') do |node|
31
+ case node.name
32
+ when 'ItemQueryRs'
33
+ node.elements.each do |element|
34
+ ary << rexml_fetch(element, 'ListID')
35
+ end
36
+ end
37
+ end
38
+ ary
39
+ end
40
+
41
+ def self.hpricot
42
+ doc = Hpricot.XML(XML_STRING)
43
+ ary = []
44
+ response_element = doc.search('/*/*/*').each do |node|
45
+ next unless node.elem?
46
+ case node.name
47
+ when 'ItemQueryRs'
48
+ node.containers.each do |element|
49
+ ary << hpricot_fetch(element/'ListID')
50
+ end
51
+ end
52
+ end
53
+ ary
54
+ end
55
+
56
+ # rexml helper
57
+ def self.rexml_fetch(node, name)
58
+ e = REXML::XPath.first(node, name)
59
+ e ? e.text : nil
60
+ end
61
+
62
+ # hpricot helper
63
+ def self.hpricot_fetch(path)
64
+ return nil if path.nil? || path.empty?
65
+ path = path.first if path.is_a?(Array)
66
+ path.innerHTML
67
+ end
68
+ end
69
+
70
+ TIMES = 10
71
+ Benchmark.bmbm do |x|
72
+ x.report('libxml') { TIMES.times { Parse.libxml } }
73
+ x.report('Hpricot') { TIMES.times { Parse.hpricot } }
74
+ x.report('REXML') { TIMES.times { Parse.rexml } }
75
+ end
76
+
77
+ __END__
78
+ <?xml version="1.0"?>
79
+ <QBXML>
80
+ <QBXMLMsgsRs>
81
+ <ItemQueryRs requestID="1" statusCode="0" statusSeverity="Info" statusMessage="Status OK">
82
+ <ItemServiceRet>
83
+ <ListID>240000-1071531214</ListID>
84
+ <TimeCreated>2003-12-15T15:33:34-08:00</TimeCreated>
85
+ <TimeModified>2003-12-15T15:34:51-08:00</TimeModified>
86
+ <EditSequence>1071531291</EditSequence>
87
+ <Name>Delivery</Name>
88
+ <FullName>Delivery</FullName>
89
+ <IsActive>true</IsActive>
90
+ <Sublevel>0</Sublevel>
91
+ <SalesTaxCodeRef>
92
+ <ListID>20000-999021789</ListID>
93
+ <FullName>Non</FullName>
94
+ </SalesTaxCodeRef>
95
+ <SalesOrPurchase>
96
+ <Desc>Delivery Service Fee (free for orders over $100)</Desc>
97
+ <Price>15.00</Price>
98
+ <AccountRef>
99
+ <ListID>610001-1071531179</ListID>
100
+ <FullName>Service</FullName>
101
+ </AccountRef>
102
+ </SalesOrPurchase>
103
+ </ItemServiceRet>
104
+ <ItemServiceRet>
105
+ <ListID>10000-934380927</ListID>
106
+ <TimeCreated>1999-08-11T07:15:27-08:00</TimeCreated>
107
+ <TimeModified>1999-08-11T07:15:27-08:00</TimeModified>
108
+ <EditSequence>934380927</EditSequence>
109
+ <Name>Design</Name>
110
+ <FullName>Design</FullName>
111
+ <IsActive>true</IsActive>
112
+ <Sublevel>0</Sublevel>
113
+ <SalesTaxCodeRef>
114
+ <ListID>20000-999021789</ListID>
115
+ <FullName>Non</FullName>
116
+ </SalesTaxCodeRef>
117
+ <SalesOrPurchase>
118
+ <Desc>Custom Landscape Design</Desc>
119
+ <Price>55.00</Price>
120
+ <AccountRef>
121
+ <ListID>150000-934380913</ListID>
122
+ <FullName>Landscaping Services:Design Services</FullName>
123
+ </AccountRef>
124
+ </SalesOrPurchase>
125
+ </ItemServiceRet>
126
+ <ItemServiceRet>
127
+ <ListID>20000-934380927</ListID>
128
+ <TimeCreated>1999-08-11T07:15:27-08:00</TimeCreated>
129
+ <TimeModified>1999-08-11T08:59:12-08:00</TimeModified>
130
+ <EditSequence>934387152</EditSequence>
131
+ <Name>Gardening</Name>
132
+ <FullName>Gardening</FullName>
133
+ <IsActive>true</IsActive>
134
+ <Sublevel>0</Sublevel>
135
+ <SalesTaxCodeRef>
136
+ <ListID>20000-999021789</ListID>
137
+ <FullName>Non</FullName>
138
+ </SalesTaxCodeRef>
139
+ <SalesOrPurchase>
140
+ <Desc>Weekly gardening services</Desc>
141
+ <Price>0.00</Price>
142
+ <AccountRef>
143
+ <ListID>1F0000-934380913</ListID>
144
+ <FullName>Landscaping Services:Labor:Installation</FullName>
145
+ </AccountRef>
146
+ </SalesOrPurchase>
147
+ </ItemServiceRet>
148
+ <ItemServiceRet>
149
+ <ListID>30000-934380927</ListID>
150
+ <TimeCreated>1999-08-11T07:15:27-08:00</TimeCreated>
151
+ <TimeModified>1999-08-11T07:15:27-08:00</TimeModified>
152
+ <EditSequence>934380927</EditSequence>
153
+ <Name>Installation</Name>
154
+ <FullName>Installation</FullName>
155
+ <IsActive>true</IsActive>
156
+ <Sublevel>0</Sublevel>
157
+ <SalesTaxCodeRef>
158
+ <ListID>20000-999021789</ListID>
159
+ <FullName>Non</FullName>
160
+ </SalesTaxCodeRef>
161
+ <SalesOrPurchase>
162
+ <Desc>Installation of landscape design</Desc>
163
+ <Price>35.00</Price>
164
+ <AccountRef>
165
+ <ListID>1F0000-934380913</ListID>
166
+ <FullName>Landscaping Services:Labor:Installation</FullName>
167
+ </AccountRef>
168
+ </SalesOrPurchase>
169
+ </ItemServiceRet>
170
+ <ItemServiceRet>
171
+ <ListID>40000-934380927</ListID>
172
+ <TimeCreated>1999-08-11T07:15:27-08:00</TimeCreated>
173
+ <TimeModified>1999-08-11T07:15:27-08:00</TimeModified>
174
+ <EditSequence>934380927</EditSequence>
175
+ <Name>Pest Control</Name>
176
+ <FullName>Pest Control</FullName>
177
+ <IsActive>true</IsActive>
178
+ <Sublevel>0</Sublevel>
179
+ <SalesTaxCodeRef>
180
+ <ListID>20000-999021789</ListID>
181
+ <FullName>Non</FullName>
182
+ </SalesTaxCodeRef>
183
+ <SalesOrPurchase>
184
+ <Desc>Pest control services</Desc>
185
+ <Price>0.00</Price>
186
+ <AccountRef>
187
+ <ListID>200000-934380913</ListID>
188
+ <FullName>Landscaping Services:Labor:Maintenance &amp; Repairs</FullName>
189
+ </AccountRef>
190
+ </SalesOrPurchase>
191
+ </ItemServiceRet>
192
+ <ItemServiceRet>
193
+ <ListID>2E0000-1071514896</ListID>
194
+ <TimeCreated>2003-12-15T11:01:36-08:00</TimeCreated>
195
+ <TimeModified>2003-12-15T14:42:51-08:00</TimeModified>
196
+ <EditSequence>1071528171</EditSequence>
197
+ <Name>Tree Removal</Name>
198
+ <FullName>Tree Removal</FullName>
199
+ <IsActive>true</IsActive>
200
+ <Sublevel>0</Sublevel>
201
+ <SalesTaxCodeRef>
202
+ <ListID>20000-999021789</ListID>
203
+ <FullName>Non</FullName>
204
+ </SalesTaxCodeRef>
205
+ <SalesOrPurchase>
206
+ <Desc>Tree Removal Service</Desc>
207
+ <Price>0.00</Price>
208
+ <AccountRef>
209
+ <ListID>610001-1071531179</ListID>
210
+ <FullName>Service</FullName>
211
+ </AccountRef>
212
+ </SalesOrPurchase>
213
+ </ItemServiceRet>
214
+ <ItemServiceRet>
215
+ <ListID>50000-934380927</ListID>
216
+ <TimeCreated>1999-08-11T07:15:27-08:00</TimeCreated>
217
+ <TimeModified>1999-08-11T07:15:27-08:00</TimeModified>
218
+ <EditSequence>934380927</EditSequence>
219
+ <Name>Trimming</Name>
220
+ <FullName>Trimming</FullName>
221
+ <IsActive>true</IsActive>
222
+ <Sublevel>0</Sublevel>
223
+ <SalesTaxCodeRef>
224
+ <ListID>20000-999021789</ListID>
225
+ <FullName>Non</FullName>
226
+ </SalesTaxCodeRef>
227
+ <SalesOrPurchase>
228
+ <Desc>Tree and shrub trimming</Desc>
229
+ <Price>35.00</Price>
230
+ <AccountRef>
231
+ <ListID>200000-934380913</ListID>
232
+ <FullName>Landscaping Services:Labor:Maintenance &amp; Repairs</FullName>
233
+ </AccountRef>
234
+ </SalesOrPurchase>
235
+ </ItemServiceRet>
236
+ <ItemNonInventoryRet>
237
+ <ListID>B0000-934380927</ListID>
238
+ <TimeCreated>1999-08-11T07:15:27-08:00</TimeCreated>
239
+ <TimeModified>1999-08-11T07:15:27-08:00</TimeModified>
240
+ <EditSequence>934380927</EditSequence>
241
+ <Name>Concrete</Name>
242
+ <FullName>Concrete</FullName>
243
+ <IsActive>true</IsActive>
244
+ <Sublevel>0</Sublevel>
245
+ <SalesTaxCodeRef>
246
+ <ListID>10000-999021789</ListID>
247
+ <FullName>Tax</FullName>
248
+ </SalesTaxCodeRef>
249
+ <SalesOrPurchase>
250
+ <Desc>Concrete for fountain installation</Desc>
251
+ <Price>0.00</Price>
252
+ <AccountRef>
253
+ <ListID>1B0000-934380913</ListID>
254
+ <FullName>Landscaping Services:Job Materials:Fountains &amp; Garden Lighting</FullName>
255
+ </AccountRef>
256
+ </SalesOrPurchase>
257
+ </ItemNonInventoryRet>
258
+ <ItemNonInventoryRet>
259
+ <ListID>C0000-934380927</ListID>
260
+ <TimeCreated>1999-08-11T07:15:27-08:00</TimeCreated>
261
+ <TimeModified>1999-08-11T07:15:27-08:00</TimeModified>
262
+ <EditSequence>934380927</EditSequence>
263
+ <Name>Deck Lumber</Name>
264
+ <FullName>Deck Lumber</FullName>
265
+ <IsActive>true</IsActive>
266
+ <Sublevel>0</Sublevel>
267
+ <SalesTaxCodeRef>
268
+ <ListID>10000-999021789</ListID>
269
+ <FullName>Tax</FullName>
270
+ </SalesTaxCodeRef>
271
+ <SalesOrPurchase>
272
+ <Desc>Deck Lumber</Desc>
273
+ <Price>0.00</Price>
274
+ <AccountRef>
275
+ <ListID>1A0000-934380913</ListID>
276
+ <FullName>Landscaping Services:Job Materials:Decks &amp; Patios</FullName>
277
+ </AccountRef>
278
+ </SalesOrPurchase>
279
+ </ItemNonInventoryRet>
280
+ <ItemNonInventoryRet>
281
+ <ListID>210000-1071530240</ListID>
282
+ <TimeCreated>2003-12-15T15:17:20-08:00</TimeCreated>
283
+ <TimeModified>2003-12-15T15:17:20-08:00</TimeModified>
284
+ <EditSequence>1071530240</EditSequence>
285
+ <Name>Fertilizer</Name>
286
+ <FullName>Fertilizer</FullName>
287
+ <IsActive>true</IsActive>
288
+ <Sublevel>0</Sublevel>
289
+ <SalesTaxCodeRef>
290
+ <ListID>10000-999021789</ListID>
291
+ <FullName>Tax</FullName>
292
+ </SalesTaxCodeRef>
293
+ <SalesOrPurchase>
294
+ <Desc>Parent Item - Do Not Use</Desc>
295
+ <Price>0.00</Price>
296
+ <AccountRef>
297
+ <ListID>600001-1071530232</ListID>
298
+ <FullName>Retail Sales</FullName>
299
+ </AccountRef>
300
+ </SalesOrPurchase>
301
+ </ItemNonInventoryRet>
302
+ <ItemInventoryRet>
303
+ <ListID>250000-1071523682</ListID>
304
+ <TimeCreated>2003-12-15T13:28:02-08:00</TimeCreated>
305
+ <TimeModified>2003-12-15T13:44:20-08:00</TimeModified>
306
+ <EditSequence>1071524660</EditSequence>
307
+ <Name>Irrigation Hose</Name>
308
+ <FullName>Irrigation Hose</FullName>
309
+ <IsActive>true</IsActive>
310
+ <Sublevel>0</Sublevel>
311
+ <SalesTaxCodeRef>
312
+ <ListID>10000-999021789</ListID>
313
+ <FullName>Tax</FullName>
314
+ </SalesTaxCodeRef>
315
+ <SalesDesc>Parent Item Vinyl Irrigation Line- Do Not Purchase or Sell</SalesDesc>
316
+ <SalesPrice>0.00</SalesPrice>
317
+ <IncomeAccountRef>
318
+ <ListID>690001-1071523679</ListID>
319
+ <FullName>Landscaping Services:Job Materials:Misc Materials</FullName>
320
+ </IncomeAccountRef>
321
+ <PurchaseDesc>Vinyl Irrigation LineParent Item - Do Not Purchase or Sell</PurchaseDesc>
322
+ <PurchaseCost>0.00</PurchaseCost>
323
+ <COGSAccountRef>
324
+ <ListID>240000-934380913</ListID>
325
+ <FullName>Cost of Goods Sold</FullName>
326
+ </COGSAccountRef>
327
+ <AssetAccountRef>
328
+ <ListID>60000-934380912</ListID>
329
+ <FullName>Inventory Asset</FullName>
330
+ </AssetAccountRef>
331
+ <ReorderPoint>-1</ReorderPoint>
332
+ <QuantityOnHand>0</QuantityOnHand>
333
+ <AverageCost>0.00</AverageCost>
334
+ <QuantityOnOrder>0</QuantityOnOrder>
335
+ <QuantityOnSalesOrder>0</QuantityOnSalesOrder>
336
+ </ItemInventoryRet>
337
+ <ItemInventoryRet>
338
+ <ListID>270000-1071524193</ListID>
339
+ <TimeCreated>2003-12-15T13:36:33-08:00</TimeCreated>
340
+ <TimeModified>2003-12-15T13:38:13-08:00</TimeModified>
341
+ <EditSequence>1071524293</EditSequence>
342
+ <Name>1/2" Line</Name>
343
+ <FullName>Irrigation Hose:1/2" Line</FullName>
344
+ <IsActive>true</IsActive>
345
+ <ParentRef>
346
+ <ListID>250000-1071523682</ListID>
347
+ <FullName>Irrigation Hose</FullName>
348
+ </ParentRef>
349
+ <Sublevel>1</Sublevel>
350
+ <SalesTaxCodeRef>
351
+ <ListID>10000-999021789</ListID>
352
+ <FullName>Tax</FullName>
353
+ </SalesTaxCodeRef>
354
+ <SalesDesc>1/2" Vinyl Irrigation Line</SalesDesc>
355
+ <SalesPrice>0.15</SalesPrice>
356
+ <IncomeAccountRef>
357
+ <ListID>690001-1071523679</ListID>
358
+ <FullName>Landscaping Services:Job Materials:Misc Materials</FullName>
359
+ </IncomeAccountRef>
360
+ <PurchaseDesc>1/2" Vinyl Irrigation Line</PurchaseDesc>
361
+ <PurchaseCost>0.12</PurchaseCost>
362
+ <COGSAccountRef>
363
+ <ListID>240000-934380913</ListID>
364
+ <FullName>Cost of Goods Sold</FullName>
365
+ </COGSAccountRef>
366
+ <AssetAccountRef>
367
+ <ListID>60000-934380912</ListID>
368
+ <FullName>Inventory Asset</FullName>
369
+ </AssetAccountRef>
370
+ <ReorderPoint>1500</ReorderPoint>
371
+ <QuantityOnHand>1783</QuantityOnHand>
372
+ <AverageCost>0.12</AverageCost>
373
+ <QuantityOnOrder>0</QuantityOnOrder>
374
+ <QuantityOnSalesOrder>0</QuantityOnSalesOrder>
375
+ </ItemInventoryRet>
376
+ <ItemInventoryRet>
377
+ <ListID>260000-1071523858</ListID>
378
+ <TimeCreated>2003-12-15T13:30:58-08:00</TimeCreated>
379
+ <TimeModified>2003-12-15T13:37:52-08:00</TimeModified>
380
+ <EditSequence>1071524272</EditSequence>
381
+ <Name>1/4" Line</Name>
382
+ <FullName>Irrigation Hose:1/4" Line</FullName>
383
+ <IsActive>true</IsActive>
384
+ <ParentRef>
385
+ <ListID>250000-1071523682</ListID>
386
+ <FullName>Irrigation Hose</FullName>
387
+ </ParentRef>
388
+ <Sublevel>1</Sublevel>
389
+ <SalesTaxCodeRef>
390
+ <ListID>10000-999021789</ListID>
391
+ <FullName>Tax</FullName>
392
+ </SalesTaxCodeRef>
393
+ <SalesDesc>1/4" Vinyl Irrigation Line</SalesDesc>
394
+ <SalesPrice>0.10</SalesPrice>
395
+ <IncomeAccountRef>
396
+ <ListID>690001-1071523679</ListID>
397
+ <FullName>Landscaping Services:Job Materials:Misc Materials</FullName>
398
+ </IncomeAccountRef>
399
+ <PurchaseDesc>1/4" Vinyl Irrigation Line</PurchaseDesc>
400
+ <PurchaseCost>0.07</PurchaseCost>
401
+ <COGSAccountRef>
402
+ <ListID>240000-934380913</ListID>
403
+ <FullName>Cost of Goods Sold</FullName>
404
+ </COGSAccountRef>
405
+ <AssetAccountRef>
406
+ <ListID>60000-934380912</ListID>
407
+ <FullName>Inventory Asset</FullName>
408
+ </AssetAccountRef>
409
+ <ReorderPoint>500</ReorderPoint>
410
+ <QuantityOnHand>1235</QuantityOnHand>
411
+ <AverageCost>0.07</AverageCost>
412
+ <QuantityOnOrder>0</QuantityOnOrder>
413
+ <QuantityOnSalesOrder>0</QuantityOnSalesOrder>
414
+ </ItemInventoryRet>
415
+ <ItemInventoryRet>
416
+ <ListID>280000-1071524260</ListID>
417
+ <TimeCreated>2003-12-15T13:37:40-08:00</TimeCreated>
418
+ <TimeModified>2003-12-15T13:37:40-08:00</TimeModified>
419
+ <EditSequence>1071524260</EditSequence>
420
+ <Name>3/4" Line</Name>
421
+ <FullName>Irrigation Hose:3/4" Line</FullName>
422
+ <IsActive>true</IsActive>
423
+ <ParentRef>
424
+ <ListID>250000-1071523682</ListID>
425
+ <FullName>Irrigation Hose</FullName>
426
+ </ParentRef>
427
+ <Sublevel>1</Sublevel>
428
+ <SalesTaxCodeRef>
429
+ <ListID>10000-999021789</ListID>
430
+ <FullName>Tax</FullName>
431
+ </SalesTaxCodeRef>
432
+ <SalesDesc>3/4" Vinyl Irrigation Line</SalesDesc>
433
+ <SalesPrice>0.27</SalesPrice>
434
+ <IncomeAccountRef>
435
+ <ListID>690001-1071523679</ListID>
436
+ <FullName>Landscaping Services:Job Materials:Misc Materials</FullName>
437
+ </IncomeAccountRef>
438
+ <PurchaseDesc>3/4" Vinyl Irrigation Line</PurchaseDesc>
439
+ <PurchaseCost>0.18</PurchaseCost>
440
+ <COGSAccountRef>
441
+ <ListID>240000-934380913</ListID>
442
+ <FullName>Cost of Goods Sold</FullName>
443
+ </COGSAccountRef>
444
+ <AssetAccountRef>
445
+ <ListID>60000-934380912</ListID>
446
+ <FullName>Inventory Asset</FullName>
447
+ </AssetAccountRef>
448
+ <ReorderPoint>1500</ReorderPoint>
449
+ <QuantityOnHand>2670</QuantityOnHand>
450
+ <AverageCost>0.18</AverageCost>
451
+ <QuantityOnOrder>0</QuantityOnOrder>
452
+ <QuantityOnSalesOrder>0</QuantityOnSalesOrder>
453
+ </ItemInventoryRet>
454
+ <ItemInventoryRet>
455
+ <ListID>60000-934380927</ListID>
456
+ <TimeCreated>1999-08-11T07:15:27-08:00</TimeCreated>
457
+ <TimeModified>1999-08-11T07:15:27-08:00</TimeModified>
458
+ <EditSequence>934380927</EditSequence>
459
+ <Name>Lighting</Name>
460
+ <FullName>Lighting</FullName>
461
+ <IsActive>true</IsActive>
462
+ <Sublevel>0</Sublevel>
463
+ <SalesTaxCodeRef>
464
+ <ListID>10000-999021789</ListID>
465
+ <FullName>Tax</FullName>
466
+ </SalesTaxCodeRef>
467
+ <SalesDesc>Garden Lighting</SalesDesc>
468
+ <SalesPrice>0.00</SalesPrice>
469
+ <IncomeAccountRef>
470
+ <ListID>1B0000-934380913</ListID>
471
+ <FullName>Landscaping Services:Job Materials:Fountains &amp; Garden Lighting</FullName>
472
+ </IncomeAccountRef>
473
+ <PurchaseDesc>Garden Lighting</PurchaseDesc>
474
+ <PurchaseCost>0.00</PurchaseCost>
475
+ <COGSAccountRef>
476
+ <ListID>240000-934380913</ListID>
477
+ <FullName>Cost of Goods Sold</FullName>
478
+ </COGSAccountRef>
479
+ <AssetAccountRef>
480
+ <ListID>60000-934380912</ListID>
481
+ <FullName>Inventory Asset</FullName>
482
+ </AssetAccountRef>
483
+ <QuantityOnHand>94</QuantityOnHand>
484
+ <AverageCost>14.80</AverageCost>
485
+ <QuantityOnOrder>28</QuantityOnOrder>
486
+ <QuantityOnSalesOrder>0</QuantityOnSalesOrder>
487
+ </ItemInventoryRet>
488
+ <ItemInventoryRet>
489
+ <ListID>70000-934380927</ListID>
490
+ <TimeCreated>1999-08-11T07:15:27-08:00</TimeCreated>
491
+ <TimeModified>1999-08-11T07:15:27-08:00</TimeModified>
492
+ <EditSequence>934380927</EditSequence>
493
+ <Name>Pump</Name>
494
+ <FullName>Pump</FullName>
495
+ <IsActive>true</IsActive>
496
+ <Sublevel>0</Sublevel>
497
+ <SalesTaxCodeRef>
498
+ <ListID>10000-999021789</ListID>
499
+ <FullName>Tax</FullName>
500
+ </SalesTaxCodeRef>
501
+ <SalesDesc>Fountain pump</SalesDesc>
502
+ <SalesPrice>75.00</SalesPrice>
503
+ <IncomeAccountRef>
504
+ <ListID>1B0000-934380913</ListID>
505
+ <FullName>Landscaping Services:Job Materials:Fountains &amp; Garden Lighting</FullName>
506
+ </IncomeAccountRef>
507
+ <PurchaseDesc>Fountain pump #198-30</PurchaseDesc>
508
+ <PurchaseCost>56.00</PurchaseCost>
509
+ <COGSAccountRef>
510
+ <ListID>240000-934380913</ListID>
511
+ <FullName>Cost of Goods Sold</FullName>
512
+ </COGSAccountRef>
513
+ <AssetAccountRef>
514
+ <ListID>60000-934380912</ListID>
515
+ <FullName>Inventory Asset</FullName>
516
+ </AssetAccountRef>
517
+ <QuantityOnHand>48</QuantityOnHand>
518
+ <AverageCost>53.93</AverageCost>
519
+ <QuantityOnOrder>0</QuantityOnOrder>
520
+ <QuantityOnSalesOrder>0</QuantityOnSalesOrder>
521
+ </ItemInventoryRet>
522
+ <ItemInventoryRet>
523
+ <ListID>80000-934380927</ListID>
524
+ <TimeCreated>1999-08-11T07:15:27-08:00</TimeCreated>
525
+ <TimeModified>1999-08-11T07:15:27-08:00</TimeModified>
526
+ <EditSequence>934380927</EditSequence>
527
+ <Name>Soil</Name>
528
+ <FullName>Soil</FullName>
529
+ <IsActive>true</IsActive>
530
+ <Sublevel>0</Sublevel>
531
+ <SalesTaxCodeRef>
532
+ <ListID>10000-999021789</ListID>
533
+ <FullName>Tax</FullName>
534
+ </SalesTaxCodeRef>
535
+ <SalesDesc>Soil, 2 cubic ft bag</SalesDesc>
536
+ <SalesPrice>6.75</SalesPrice>
537
+ <IncomeAccountRef>
538
+ <ListID>1C0000-934380913</ListID>
539
+ <FullName>Landscaping Services:Job Materials:Plants and Sod</FullName>
540
+ </IncomeAccountRef>
541
+ <PurchaseDesc>Soil, 2 cubic ft bag</PurchaseDesc>
542
+ <PurchaseCost>5.30</PurchaseCost>
543
+ <COGSAccountRef>
544
+ <ListID>240000-934380913</ListID>
545
+ <FullName>Cost of Goods Sold</FullName>
546
+ </COGSAccountRef>
547
+ <PrefVendorRef>
548
+ <ListID>10000-934380927</ListID>
549
+ <FullName>Middlefield Nursery</FullName>
550
+ </PrefVendorRef>
551
+ <AssetAccountRef>
552
+ <ListID>60000-934380912</ListID>
553
+ <FullName>Inventory Asset</FullName>
554
+ </AssetAccountRef>
555
+ <ReorderPoint>25</ReorderPoint>
556
+ <QuantityOnHand>0</QuantityOnHand>
557
+ <AverageCost>5.30</AverageCost>
558
+ <QuantityOnOrder>6</QuantityOnOrder>
559
+ <QuantityOnSalesOrder>10</QuantityOnSalesOrder>
560
+ </ItemInventoryRet>
561
+ <ItemInventoryRet>
562
+ <ListID>90000-934380927</ListID>
563
+ <TimeCreated>1999-08-11T07:15:27-08:00</TimeCreated>
564
+ <TimeModified>1999-08-11T07:15:27-08:00</TimeModified>
565
+ <EditSequence>934380927</EditSequence>
566
+ <Name>Sprinkler Hds</Name>
567
+ <FullName>Sprinkler Hds</FullName>
568
+ <IsActive>true</IsActive>
569
+ <Sublevel>0</Sublevel>
570
+ <SalesTaxCodeRef>
571
+ <ListID>10000-999021789</ListID>
572
+ <FullName>Tax</FullName>
573
+ </SalesTaxCodeRef>
574
+ <SalesDesc>Sprinkler heads</SalesDesc>
575
+ <SalesPrice>0.00</SalesPrice>
576
+ <IncomeAccountRef>
577
+ <ListID>1D0000-934380913</ListID>
578
+ <FullName>Landscaping Services:Job Materials:Sprinklers &amp; Drip systems</FullName>
579
+ </IncomeAccountRef>
580
+ <PurchaseDesc>Sprinkler head #BLS9081-09</PurchaseDesc>
581
+ <PurchaseCost>0.00</PurchaseCost>
582
+ <COGSAccountRef>
583
+ <ListID>240000-934380913</ListID>
584
+ <FullName>Cost of Goods Sold</FullName>
585
+ </COGSAccountRef>
586
+ <AssetAccountRef>
587
+ <ListID>60000-934380912</ListID>
588
+ <FullName>Inventory Asset</FullName>
589
+ </AssetAccountRef>
590
+ <QuantityOnHand>69</QuantityOnHand>
591
+ <AverageCost>6.38</AverageCost>
592
+ <QuantityOnOrder>36</QuantityOnOrder>
593
+ <QuantityOnSalesOrder>0</QuantityOnSalesOrder>
594
+ </ItemInventoryRet>
595
+ <ItemInventoryRet>
596
+ <ListID>A0000-934380927</ListID>
597
+ <TimeCreated>1999-08-11T07:15:27-08:00</TimeCreated>
598
+ <TimeModified>1999-08-11T07:15:27-08:00</TimeModified>
599
+ <EditSequence>934380927</EditSequence>
600
+ <Name>Sprkl pipes</Name>
601
+ <FullName>Sprkl pipes</FullName>
602
+ <IsActive>true</IsActive>
603
+ <Sublevel>0</Sublevel>
604
+ <SalesTaxCodeRef>
605
+ <ListID>10000-999021789</ListID>
606
+ <FullName>Tax</FullName>
607
+ </SalesTaxCodeRef>
608
+ <SalesDesc>Plastic sprinkler piping</SalesDesc>
609
+ <SalesPrice>2.75</SalesPrice>
610
+ <IncomeAccountRef>
611
+ <ListID>1D0000-934380913</ListID>
612
+ <FullName>Landscaping Services:Job Materials:Sprinklers &amp; Drip systems</FullName>
613
+ </IncomeAccountRef>
614
+ <PurchaseDesc>Plastic sprinkler piping #1098-20</PurchaseDesc>
615
+ <PurchaseCost>2.10</PurchaseCost>
616
+ <COGSAccountRef>
617
+ <ListID>240000-934380913</ListID>
618
+ <FullName>Cost of Goods Sold</FullName>
619
+ </COGSAccountRef>
620
+ <AssetAccountRef>
621
+ <ListID>60000-934380912</ListID>
622
+ <FullName>Inventory Asset</FullName>
623
+ </AssetAccountRef>
624
+ <ReorderPoint>250</ReorderPoint>
625
+ <QuantityOnHand>826</QuantityOnHand>
626
+ <AverageCost>2.10</AverageCost>
627
+ <QuantityOnOrder>115</QuantityOnOrder>
628
+ <QuantityOnSalesOrder>0</QuantityOnSalesOrder>
629
+ </ItemInventoryRet>
630
+ </ItemQueryRs>
631
+ </QBXMLMsgsRs>
632
+ </QBXML>