amazon-mws 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (116) hide show
  1. data/.gitignore +1 -0
  2. data/README.markdown +31 -0
  3. data/Rakefile +14 -0
  4. data/VERSION +1 -0
  5. data/amazon-mws.gemspec +164 -0
  6. data/examples/xml/cancel_feed_submissions.xml +16 -0
  7. data/examples/xml/cancel_report_requests.xml +18 -0
  8. data/examples/xml/error.xml +10 -0
  9. data/examples/xml/get_feed_submission_count.xml +10 -0
  10. data/examples/xml/get_feed_submission_list.xml +16 -0
  11. data/examples/xml/get_feed_submission_list_by_next_token.xml +16 -0
  12. data/examples/xml/get_feed_submission_result.xml +30 -0
  13. data/examples/xml/get_report_count.xml +9 -0
  14. data/examples/xml/get_report_list.xml +17 -0
  15. data/examples/xml/get_report_request_count.xml +8 -0
  16. data/examples/xml/get_report_request_list.xml +120 -0
  17. data/examples/xml/get_report_request_list_by_next_token.xml +20 -0
  18. data/examples/xml/get_report_schedule_count.xml +10 -0
  19. data/examples/xml/get_report_schedule_list.xml +15 -0
  20. data/examples/xml/get_report_schedule_list_by_next_token.xml +15 -0
  21. data/examples/xml/manage_report_schedule.xml +14 -0
  22. data/examples/xml/request_report.xml +17 -0
  23. data/examples/xml/submit_feed.xml +14 -0
  24. data/examples/xml/update_report_acknowledgements.xml +18 -0
  25. data/examples/xsd/Inventory.xsd +49 -0
  26. data/examples/xsd/Item.xsd +285 -0
  27. data/examples/xsd/Listings.xsd +32 -0
  28. data/examples/xsd/OrderAcknowledgement.xsd +55 -0
  29. data/examples/xsd/OrderAdjustment.xsd +94 -0
  30. data/examples/xsd/OrderFulfillment.xsd +57 -0
  31. data/examples/xsd/Override.xsd +48 -0
  32. data/examples/xsd/Price.xsd +59 -0
  33. data/examples/xsd/ProcessingReport.xsd +87 -0
  34. data/examples/xsd/Product.xsd +220 -0
  35. data/examples/xsd/Product/AutoAccessory.xsd +807 -0
  36. data/examples/xsd/Product/Beauty.xsd +114 -0
  37. data/examples/xsd/Product/CE.xsd +544 -0
  38. data/examples/xsd/Product/CameraPhoto.xsd +2410 -0
  39. data/examples/xsd/Product/FoodAndBeverages.xsd +270 -0
  40. data/examples/xsd/Product/Gourmet.xsd +85 -0
  41. data/examples/xsd/Product/Health.xsd +189 -0
  42. data/examples/xsd/Product/Home.xsd +654 -0
  43. data/examples/xsd/Product/Jewelry.xsd +603 -0
  44. data/examples/xsd/Product/Miscellaneous.xsd +157 -0
  45. data/examples/xsd/Product/MusicalInstruments.xsd +853 -0
  46. data/examples/xsd/Product/Office.xsd +550 -0
  47. data/examples/xsd/Product/PetSupplies.xsd +40 -0
  48. data/examples/xsd/Product/ProductClothing.xsd +197 -0
  49. data/examples/xsd/Product/SWVG.xsd +238 -0
  50. data/examples/xsd/Product/Sports.xsd +308 -0
  51. data/examples/xsd/Product/TiresAndWheels.xsd +159 -0
  52. data/examples/xsd/Product/Tools.xsd +66 -0
  53. data/examples/xsd/Product/ToysBaby.xsd +241 -0
  54. data/examples/xsd/Product/Wireless.xsd +77 -0
  55. data/examples/xsd/ProductImage.xsd +39 -0
  56. data/examples/xsd/Relationship.xsd +47 -0
  57. data/examples/xsd/SettlementReport.xsd +158 -0
  58. data/examples/xsd/amzn-base.xsd +1601 -0
  59. data/examples/xsd/amzn-envelope.xsd +98 -0
  60. data/examples/xsd/amzn-header.xsd +45 -0
  61. data/lib/amazon/mws.rb +86 -0
  62. data/lib/amazon/mws/authentication.rb +9 -0
  63. data/lib/amazon/mws/authentication/query_string.rb +28 -0
  64. data/lib/amazon/mws/authentication/signature.rb +43 -0
  65. data/lib/amazon/mws/base.rb +61 -0
  66. data/lib/amazon/mws/connection.rb +99 -0
  67. data/lib/amazon/mws/connection/management.rb +94 -0
  68. data/lib/amazon/mws/connection/request_builder.rb +67 -0
  69. data/lib/amazon/mws/exceptions.rb +80 -0
  70. data/lib/amazon/mws/feed.rb +223 -0
  71. data/lib/amazon/mws/feed_builder.rb +67 -0
  72. data/lib/amazon/mws/feed_enumerations.rb +46 -0
  73. data/lib/amazon/mws/feed_submission.rb +14 -0
  74. data/lib/amazon/mws/lib/extensions.rb +162 -0
  75. data/lib/amazon/mws/lib/memoizable.rb +10 -0
  76. data/lib/amazon/mws/orders.rb +9 -0
  77. data/lib/amazon/mws/report.rb +310 -0
  78. data/lib/amazon/mws/report_enumerations.rb +44 -0
  79. data/lib/amazon/mws/report_info.rb +16 -0
  80. data/lib/amazon/mws/report_request.rb +19 -0
  81. data/lib/amazon/mws/report_schedule.rb +13 -0
  82. data/lib/amazon/mws/response.rb +32 -0
  83. data/lib/amazon/mws/response/cancel_feed_submissions_response.rb +14 -0
  84. data/lib/amazon/mws/response/cancel_report_requests_response.rb +14 -0
  85. data/lib/amazon/mws/response/get_feed_submission_count_response.rb +13 -0
  86. data/lib/amazon/mws/response/get_feed_submission_list_by_next_token_response.rb +15 -0
  87. data/lib/amazon/mws/response/get_feed_submission_list_response.rb +15 -0
  88. data/lib/amazon/mws/response/get_feed_submission_result_response.rb +54 -0
  89. data/lib/amazon/mws/response/get_report_count_response.rb +13 -0
  90. data/lib/amazon/mws/response/get_report_list_response.rb +15 -0
  91. data/lib/amazon/mws/response/get_report_request_count_response.rb +13 -0
  92. data/lib/amazon/mws/response/get_report_request_list_by_next_token_response.rb +15 -0
  93. data/lib/amazon/mws/response/get_report_request_list_response.rb +15 -0
  94. data/lib/amazon/mws/response/get_report_schedule_count_response.rb +13 -0
  95. data/lib/amazon/mws/response/get_report_schedule_list_by_next_token_response.rb +15 -0
  96. data/lib/amazon/mws/response/get_report_schedule_list_response.rb +15 -0
  97. data/lib/amazon/mws/response/manage_report_schedule_response.rb +14 -0
  98. data/lib/amazon/mws/response/request_report_response.rb +14 -0
  99. data/lib/amazon/mws/response/response_error.rb +15 -0
  100. data/lib/amazon/mws/response/submit_feed_response.rb +13 -0
  101. data/lib/amazon/mws/response/update_reports_acknowledgements_response.rb +14 -0
  102. data/lib/amazon/mws/version.rb +12 -0
  103. data/pkg/amazon-mws-0.1.0.gem +0 -0
  104. data/test/authentication_test.rb +15 -0
  105. data/test/connection_test.rb +5 -0
  106. data/test/feed_builder_test.rb +15 -0
  107. data/test/feed_submission_test.rb +32 -0
  108. data/test/feed_test.rb +64 -0
  109. data/test/query_string_test.rb +21 -0
  110. data/test/report_test.rb +29 -0
  111. data/test/request_test.rb +18 -0
  112. data/test/response_test.rb +197 -0
  113. data/test/signature_test.rb +30 -0
  114. data/test/test_config.yml +5 -0
  115. data/test/test_helper.rb +22 -0
  116. metadata +179 -0
@@ -0,0 +1,157 @@
1
+ <?xml version="1.0" encoding="utf-8" ?>
2
+ <!-- Revision="$Revision: #4 $" -->
3
+ <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
4
+
5
+ <!--
6
+ $Date: 2005/04/01 $
7
+
8
+ AMAZON.COM CONFIDENTIAL. This document and the information contained in it are
9
+ confidential and proprietary information of Amazon.com and may not be reproduced,
10
+ distributed or used, in whole or in part, for any purpose other than as necessary
11
+ to list products for sale on the www.amazon.com web site pursuant to an agreement
12
+ with Amazon.com.
13
+ -->
14
+
15
+ <xsd:include schemaLocation="amzn-base.xsd"/>
16
+
17
+ <xsd:element name="Miscellaneous">
18
+ <xsd:complexType>
19
+ <xsd:sequence>
20
+ <xsd:element name="ProductType" type="MiscType"/>
21
+ <xsd:element name="ProductCategory" type="MiscType" minOccurs="0"/>
22
+ <xsd:element name="ProductSubcategory" type="MiscSubtype" minOccurs="0"/>
23
+ <xsd:element name="Manufacturer" type="FortyStringNotNull" minOccurs="0"/>
24
+ <xsd:element name="Keywords" type="LongStringNotNull" minOccurs="0" maxOccurs="5"/>
25
+ <xsd:element name="Color" type="StringNotNull" minOccurs="0"/>
26
+ <xsd:element name="Size" type="FortyStringNotNull" minOccurs="0"/>
27
+ <xsd:element name="EventDate" type="xsd:dateTime" minOccurs="0"/>
28
+ <xsd:element name="ModelName" type="FortyStringNotNull" minOccurs="0"/>
29
+ <xsd:element name="ModelNumber" type="FortyStringNotNull" minOccurs="0"/>
30
+ <xsd:element name="MfrPartNumber" type="FortyStringNotNull" minOccurs="0"/>
31
+ </xsd:sequence>
32
+ </xsd:complexType>
33
+ </xsd:element>
34
+
35
+ <xsd:simpleType name="MiscType">
36
+ <xsd:restriction base="xsd:string">
37
+ <xsd:enumeration value="Antiques"/>
38
+ <xsd:enumeration value="Art"/>
39
+ <xsd:enumeration value="Car_Parts_and_Accessories"/>
40
+ <xsd:enumeration value="Coins"/>
41
+ <xsd:enumeration value="Collectibles"/>
42
+ <xsd:enumeration value="Crafts"/>
43
+ <xsd:enumeration value="Event_Tickets"/>
44
+ <xsd:enumeration value="Flowers"/>
45
+ <xsd:enumeration value="Gifts_and_Occasions"/>
46
+ <xsd:enumeration value="Gourmet_Food_and_Wine"/>
47
+ <xsd:enumeration value="Hobbies"/>
48
+ <xsd:enumeration value="Home_Furniture_and_Decor"/>
49
+ <xsd:enumeration value="Home_Lighting_and_Lamps"/>
50
+ <xsd:enumeration value="Home_Organizers_and_Storage"/>
51
+ <xsd:enumeration value="Jewelry_and_Gems"/>
52
+ <xsd:enumeration value="Luggage"/>
53
+ <xsd:enumeration value="Major_Home_Appliances"/>
54
+ <xsd:enumeration value="Medical_Supplies"/>
55
+ <xsd:enumeration value="Motorcycles"/>
56
+ <xsd:enumeration value="Musical_Instruments"/>
57
+ <xsd:enumeration value="Pet_Supplies"/>
58
+ <xsd:enumeration value="Pottery_and_Glass"/>
59
+ <xsd:enumeration value="Prints_and_Posters"/>
60
+ <xsd:enumeration value="Scientific_Supplies"/>
61
+ <xsd:enumeration value="Sporting_and_Outdoor_Goods"/>
62
+ <xsd:enumeration value="Sports_Memorabilia"/>
63
+ <xsd:enumeration value="Stamps"/>
64
+ <xsd:enumeration value="Teaching_and_School_Supplies"/>
65
+ <xsd:enumeration value="Watches"/>
66
+ <xsd:enumeration value="Wholesale_and_Industrial"/>
67
+ <xsd:enumeration value="Misc_Other"/>
68
+ </xsd:restriction>
69
+ </xsd:simpleType>
70
+
71
+ <xsd:simpleType name="MiscSubtype">
72
+ <xsd:restriction base="xsd:string">
73
+ <xsd:enumeration value="Decorative_Arts"/>
74
+ <xsd:enumeration value="Furniture"/>
75
+ <xsd:enumeration value="Rugs_Carpets"/>
76
+ <xsd:enumeration value="Silver"/>
77
+ <xsd:enumeration value="Textiles_Linens"/>
78
+ <xsd:enumeration value="Drawings"/>
79
+ <xsd:enumeration value="Mixed_Media"/>
80
+ <xsd:enumeration value="Paintings"/>
81
+ <xsd:enumeration value="Sculptures_Carvings"/>
82
+ <xsd:enumeration value="Car_Accessories"/>
83
+ <xsd:enumeration value="Car_Parts"/>
84
+ <xsd:enumeration value="Car_Performance"/>
85
+ <xsd:enumeration value="Truck_Accessories"/>
86
+ <xsd:enumeration value="Truck_Parts"/>
87
+ <xsd:enumeration value="Truck_Performance"/>
88
+ <xsd:enumeration value="Coins_US"/>
89
+ <xsd:enumeration value="Coins_World"/>
90
+ <xsd:enumeration value="Paper_Money_US"/>
91
+ <xsd:enumeration value="Paper_Money_World"/>
92
+ <xsd:enumeration value="Scripophily"/>
93
+ <xsd:enumeration value="Autographs"/>
94
+ <xsd:enumeration value="Comics"/>
95
+ <xsd:enumeration value="Holiday_Seasonal"/>
96
+ <xsd:enumeration value="Militaria"/>
97
+ <xsd:enumeration value="Trading_Cards"/>
98
+ <xsd:enumeration value="Corsages"/>
99
+ <xsd:enumeration value="Exotics"/>
100
+ <xsd:enumeration value="Flowering_Plants"/>
101
+ <xsd:enumeration value="Green_Plants"/>
102
+ <xsd:enumeration value="Mixed_Arrangements"/>
103
+ <xsd:enumeration value="Single_Flower"/>
104
+ <xsd:enumeration value="Anniversary"/>
105
+ <xsd:enumeration value="Birthday"/>
106
+ <xsd:enumeration value="Holiday"/>
107
+ <xsd:enumeration value="Wedding"/>
108
+ <xsd:enumeration value="Cheese"/>
109
+ <xsd:enumeration value="Wine"/>
110
+ <xsd:enumeration value="Furniture"/>
111
+ <xsd:enumeration value="Decor"/>
112
+ <xsd:enumeration value="Lighting"/>
113
+ <xsd:enumeration value="Lamps"/>
114
+ <xsd:enumeration value="Indoor"/>
115
+ <xsd:enumeration value="Outdoor"/>
116
+ <xsd:enumeration value="Jewelry"/>
117
+ <xsd:enumeration value="Gems"/>
118
+ <xsd:enumeration value="Garment_Bags"/>
119
+ <xsd:enumeration value="Duffle_Bags"/>
120
+ <xsd:enumeration value="Kitchen"/>
121
+ <xsd:enumeration value="Laundry"/>
122
+ <xsd:enumeration value="Hospital_Supplies"/>
123
+ <xsd:enumeration value="Home_Health"/>
124
+ <xsd:enumeration value="Motorcyles"/>
125
+ <xsd:enumeration value="Motorcycle_Parts"/>
126
+ <xsd:enumeration value="Motorcycle_Protective_Gear"/>
127
+ <xsd:enumeration value="Pet_Care"/>
128
+ <xsd:enumeration value="Pet_Food"/>
129
+ <xsd:enumeration value="Pet_Toys"/>
130
+ <xsd:enumeration value="Glass"/>
131
+ <xsd:enumeration value="Pottery"/>
132
+ <xsd:enumeration value="Posters"/>
133
+ <xsd:enumeration value="Prints"/>
134
+ <xsd:enumeration value="Lab_Supplies"/>
135
+ <xsd:enumeration value="Sporting_Goods"/>
136
+ <xsd:enumeration value="Outdoor_Gear"/>
137
+ <xsd:enumeration value="Marine"/>
138
+ <xsd:enumeration value="Autographs"/>
139
+ <xsd:enumeration value="Trading_Cards"/>
140
+ <xsd:enumeration value="Stamps_US"/>
141
+ <xsd:enumeration value="Stamps_World"/>
142
+ <xsd:enumeration value="Preschool"/>
143
+ <xsd:enumeration value="K-12"/>
144
+ <xsd:enumeration value="Special_Needs"/>
145
+ <xsd:enumeration value="Men"/>
146
+ <xsd:enumeration value="Women"/>
147
+ <xsd:enumeration value="Kids"/>
148
+ <xsd:enumeration value="Agriculture"/>
149
+ <xsd:enumeration value="Architecture"/>
150
+ <xsd:enumeration value="Construction"/>
151
+ <xsd:enumeration value="Marine"/>
152
+ <xsd:enumeration value="Metalworking"/>
153
+ <xsd:enumeration value="Other"/>
154
+ </xsd:restriction>
155
+ </xsd:simpleType>
156
+ </xsd:schema>
157
+
@@ -0,0 +1,853 @@
1
+ <?xml version="1.0"?>
2
+ <!-- Revision="$Revision: #6 $" -->
3
+ <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
4
+ <!--
5
+ $Date: 2006/04/03 $
6
+
7
+ AMAZON.COM CONFIDENTIAL. This document and the information contained in it are
8
+ confidential and proprietary information of Amazon.com and may not be reproduced,
9
+ distributed or used, in whole or in part, for any purpose other than as necessary
10
+ to list products for sale on the www.amazon.com web site pursuant to an agreement
11
+ with Amazon.com.
12
+ -->
13
+ <xsd:include schemaLocation="amzn-base.xsd"/>
14
+ <xsd:element name="MusicalInstruments">
15
+ <xsd:complexType>
16
+ <xsd:sequence>
17
+ <xsd:element name="ProductType">
18
+ <xsd:complexType>
19
+ <xsd:choice>
20
+ <xsd:element ref="BrassAndWoodwindInstruments"/>
21
+ <xsd:element ref="Guitars"/>
22
+ <xsd:element ref="InstrumentPartsAndAccessories"/>
23
+ <xsd:element ref="KeyboardInstruments"/>
24
+ <xsd:element ref="MiscWorldInstruments"/>
25
+ <xsd:element ref="PercussionInstruments"/>
26
+ <xsd:element ref="SoundAndRecordingEquipment"/>
27
+ <xsd:element ref="StringedInstruments"/>
28
+ </xsd:choice>
29
+ </xsd:complexType>
30
+ </xsd:element>
31
+ </xsd:sequence>
32
+ </xsd:complexType>
33
+ </xsd:element>
34
+ <!--
35
+ ###############################################################
36
+ # BrassAndWoodwindInstruments Classification Data
37
+ ###############################################################
38
+ -->
39
+ <xsd:element name="BrassAndWoodwindInstruments">
40
+ <xsd:complexType>
41
+ <xsd:sequence>
42
+ <xsd:element name="VariationData" minOccurs="0">
43
+ <xsd:complexType>
44
+ <xsd:sequence>
45
+ <xsd:element name="Parentage">
46
+ <xsd:simpleType>
47
+ <xsd:restriction base="xsd:string">
48
+ <xsd:enumeration value="parent"/>
49
+ <xsd:enumeration value="child"/>
50
+ </xsd:restriction>
51
+ </xsd:simpleType>
52
+ </xsd:element>
53
+ <xsd:element name="VariationTheme" minOccurs="0">
54
+ <xsd:simpleType>
55
+ <xsd:restriction base="xsd:string">
56
+ <xsd:enumeration value="Color"/>
57
+ </xsd:restriction>
58
+ </xsd:simpleType>
59
+ </xsd:element>
60
+ </xsd:sequence>
61
+ </xsd:complexType>
62
+ </xsd:element>
63
+ <xsd:element name="AdditionalSpecifications" type="AdditionalSpecs" minOccurs="0"/>
64
+ <xsd:element name="ColorSpecification" minOccurs="0">
65
+ <xsd:complexType>
66
+ <xsd:sequence>
67
+ <xsd:element name="Color" type="String" minOccurs="0"/>
68
+ <xsd:element name="ColorMap" type="String" minOccurs="0"/>
69
+ </xsd:sequence>
70
+ </xsd:complexType>
71
+ </xsd:element>
72
+ <xsd:element name="Size" type="String" minOccurs="0"/>
73
+ <xsd:element name="SizeMap" type="InstrumentSizeMapType" minOccurs="0"/>
74
+ <xsd:element name="CountryProducedIn" type="StringNotNull" minOccurs="0"/>
75
+ <xsd:element name="InstrumentKey" type="StringNotNull" minOccurs="0"/>
76
+ <xsd:element name="Range" minOccurs="0">
77
+ <xsd:simpleType>
78
+ <xsd:restriction base="xsd:string">
79
+ <xsd:enumeration value="Alto"/>
80
+ <xsd:enumeration value="Baritone"/>
81
+ <xsd:enumeration value="Bass"/>
82
+ <xsd:enumeration value="Mezzo Soprano"/>
83
+ <xsd:enumeration value="Soprano"/>
84
+ <xsd:enumeration value="Tenor"/>
85
+ </xsd:restriction>
86
+ </xsd:simpleType>
87
+ </xsd:element>
88
+ <xsd:element name="ScaleLength" type="HundredString" minOccurs="0"/>
89
+ <xsd:element name="ItemPackageQuantity" type="xsd:positiveInteger" default="1" minOccurs="0"/>
90
+ <xsd:element name="MaterialType" type="StringNotNull" minOccurs="0"/>
91
+ <xsd:element name="ModelName" type="StringNotNull" minOccurs="0"/>
92
+ <xsd:element name="ModelNumber" type="FortyStringNotNull" minOccurs="0"/>
93
+ <xsd:element name="ModelYear" type="FourDigitYear" minOccurs="0"/>
94
+ <xsd:element name="MusicalStyle" type="StringNotNull" minOccurs="0"/>
95
+ <xsd:element name="ProficiencyLevel" minOccurs="0">
96
+ <xsd:simpleType>
97
+ <xsd:restriction base="xsd:string">
98
+ <xsd:enumeration value="Intermediate"/>
99
+ <xsd:enumeration value="Professional"/>
100
+ <xsd:enumeration value="Student"/>
101
+ </xsd:restriction>
102
+ </xsd:simpleType>
103
+ </xsd:element>
104
+ <xsd:element name="HandOrientation" minOccurs="0">
105
+ <xsd:simpleType>
106
+ <xsd:restriction base="xsd:string">
107
+ <xsd:enumeration value="left"/>
108
+ <xsd:enumeration value="right"/>
109
+ <xsd:enumeration value="ambidextrous"/>
110
+ </xsd:restriction>
111
+ </xsd:simpleType>
112
+ </xsd:element>
113
+ <xsd:element name="ItemStyling" type="HundredString" minOccurs="0"/>
114
+ <xsd:element name="PolarPattern" type="HundredString" minOccurs="0"/>
115
+ <xsd:element name="NumberOfPieces" type="xsd:positiveInteger" minOccurs="0"/>
116
+ <xsd:element name="IsAssemblyRequired" type="xsd:boolean" minOccurs="0"/>
117
+ <xsd:element ref="Battery" minOccurs="0"/>
118
+ <xsd:element name="MaximumSampleRate" type="FrequencyDimension" minOccurs="0"/>
119
+ <xsd:element name="ConnectorType" type="HundredString" minOccurs="0"/>
120
+ <xsd:element name="SignalFormat" type="HundredString" minOccurs="0"/>
121
+ <xsd:element name="SupportedSoftware" type="HundredString" minOccurs="0"/>
122
+ <xsd:element name="SellerWarrantyDescription" type="SuperLongStringNotNull" minOccurs="0"/>
123
+ </xsd:sequence>
124
+ </xsd:complexType>
125
+ </xsd:element>
126
+ <!--
127
+ ###############################################################
128
+ # Guitars Classification Data
129
+ ###############################################################
130
+ -->
131
+ <xsd:element name="Guitars">
132
+ <xsd:complexType>
133
+ <xsd:sequence>
134
+ <xsd:element name="VariationData" minOccurs="0">
135
+ <xsd:complexType>
136
+ <xsd:sequence>
137
+ <xsd:element name="Parentage">
138
+ <xsd:simpleType>
139
+ <xsd:restriction base="xsd:string">
140
+ <xsd:enumeration value="parent"/>
141
+ <xsd:enumeration value="child"/>
142
+ </xsd:restriction>
143
+ </xsd:simpleType>
144
+ </xsd:element>
145
+ <xsd:element name="VariationTheme" minOccurs="0">
146
+ <xsd:simpleType>
147
+ <xsd:restriction base="xsd:string">
148
+ <xsd:enumeration value="Color"/>
149
+ </xsd:restriction>
150
+ </xsd:simpleType>
151
+ </xsd:element>
152
+ </xsd:sequence>
153
+ </xsd:complexType>
154
+ </xsd:element>
155
+ <xsd:element name="AdditionalSpecifications" type="AdditionalSpecs" minOccurs="0"/>
156
+ <xsd:element name="ColorSpecification" minOccurs="0">
157
+ <xsd:complexType>
158
+ <xsd:sequence>
159
+ <xsd:element name="Color" type="String" minOccurs="0"/>
160
+ <xsd:element name="ColorMap" type="String" minOccurs="0"/>
161
+ </xsd:sequence>
162
+ </xsd:complexType>
163
+ </xsd:element>
164
+ <xsd:element name="Size" type="String" minOccurs="0"/>
165
+ <xsd:element name="SizeMap" type="InstrumentSizeMapType" minOccurs="0"/>
166
+ <xsd:element name="CountryProducedIn" type="StringNotNull" minOccurs="0"/>
167
+ <xsd:element name="GuitarAttribute" minOccurs="0">
168
+ <xsd:simpleType>
169
+ <xsd:restriction base="xsd:string">
170
+ <xsd:enumeration value="dreadnought"/>
171
+ <xsd:enumeration value="fretless"/>
172
+ <xsd:enumeration value="grand-auditorium"/>
173
+ <xsd:enumeration value="grand-concert"/>
174
+ <xsd:enumeration value="jumbo"/>
175
+ <xsd:enumeration value="mini"/>
176
+ <xsd:enumeration value="nex"/>
177
+ <xsd:enumeration value="shallow-body"/>
178
+ <xsd:enumeration value="short-scale"/>
179
+ <xsd:enumeration value="travel"/>
180
+ </xsd:restriction>
181
+ </xsd:simpleType>
182
+ </xsd:element>
183
+ <xsd:element name="GuitarBridgeSystem" minOccurs="0">
184
+ <xsd:simpleType>
185
+ <xsd:restriction base="xsd:string">
186
+ <xsd:enumeration value="adjustable"/>
187
+ <xsd:enumeration value="double"/>
188
+ <xsd:enumeration value="edge-pro"/>
189
+ <xsd:enumeration value="fixed"/>
190
+ <xsd:enumeration value="floyd-rose"/>
191
+ <xsd:enumeration value="fulcrum"/>
192
+ <xsd:enumeration value="hardtail-bridge"/>
193
+ <xsd:enumeration value="individual-adjustable-bridge-system"/>
194
+ <xsd:enumeration value="jackson-locking-tremolo"/>
195
+ <xsd:enumeration value="locking-tremolo"/>
196
+ <xsd:enumeration value="stop-tail"/>
197
+ <xsd:enumeration value="tremolo"/>
198
+ <xsd:enumeration value="tune-o-matic"/>
199
+ <xsd:enumeration value="vintage-fulcrum-bridge"/>
200
+ </xsd:restriction>
201
+ </xsd:simpleType>
202
+ </xsd:element>
203
+ <xsd:element name="GuitarPickupConfiguration" minOccurs="0">
204
+ <xsd:simpleType>
205
+ <xsd:restriction base="xsd:string">
206
+ <xsd:enumeration value="combination"/>
207
+ <xsd:enumeration value="custom-removable-pickups"/>
208
+ <xsd:enumeration value="humbucker"/>
209
+ <xsd:enumeration value="magnetic-combination"/>
210
+ <xsd:enumeration value="magnetic-double-coil"/>
211
+ <xsd:enumeration value="magnetic-single-coil"/>
212
+ <xsd:enumeration value="piezoelectric"/>
213
+ <xsd:enumeration value="single-coil"/>
214
+ </xsd:restriction>
215
+ </xsd:simpleType>
216
+ </xsd:element>
217
+ <xsd:element name="InstrumentKey" type="StringNotNull" minOccurs="0"/>
218
+ <xsd:element name="Range" minOccurs="0">
219
+ <xsd:simpleType>
220
+ <xsd:restriction base="xsd:string">
221
+ <xsd:enumeration value="Alto"/>
222
+ <xsd:enumeration value="Baritone"/>
223
+ <xsd:enumeration value="Bass"/>
224
+ <xsd:enumeration value="Mezzo Soprano"/>
225
+ <xsd:enumeration value="Soprano"/>
226
+ <xsd:enumeration value="Tenor"/>
227
+ </xsd:restriction>
228
+ </xsd:simpleType>
229
+ </xsd:element>
230
+ <xsd:element name="ScaleLength" type="HundredString" minOccurs="0"/>
231
+ <xsd:element name="ItemPackageQuantity" type="xsd:positiveInteger" default="1" minOccurs="0"/>
232
+ <xsd:element name="MaterialType" type="StringNotNull" minOccurs="0"/>
233
+ <xsd:element name="BackMaterial" type="HundredString" minOccurs="0"/>
234
+ <xsd:element name="BodyMaterial" type="HundredString" minOccurs="0"/>
235
+ <xsd:element name="TopMaterial" type="HundredString" minOccurs="0"/>
236
+ <xsd:element name="FretboardMaterial" type="HundredString" minOccurs="0"/>
237
+ <xsd:element name="NeckMaterial" type="HundredString" minOccurs="0"/>
238
+ <xsd:element name="StringMaterial" type="HundredString" minOccurs="0"/>
239
+ <xsd:element name="StringGauge" type="HundredString" minOccurs="0"/>
240
+ <xsd:element name="PickguardDescription" type="HundredString" minOccurs="0"/>
241
+ <xsd:element name="ModelName" type="StringNotNull" minOccurs="0"/>
242
+ <xsd:element name="ModelNumber" type="FortyStringNotNull" minOccurs="0"/>
243
+ <xsd:element name="ModelYear" type="FourDigitYear" minOccurs="0"/>
244
+ <xsd:element name="MusicalStyle" type="StringNotNull" minOccurs="0"/>
245
+ <xsd:element name="SpeakerCount" type="xsd:positiveInteger" minOccurs="0"/>
246
+ <xsd:element name="SpeakerSize" type="LengthDimension" minOccurs="0"/>
247
+ <xsd:element name="SpeakerAmplificationType" type="HundredString" minOccurs="0"/>
248
+ <xsd:element name="NumberOfStrings" type="xsd:positiveInteger" minOccurs="0"/>
249
+ <xsd:element name="HandOrientation" minOccurs="0">
250
+ <xsd:simpleType>
251
+ <xsd:restriction base="xsd:string">
252
+ <xsd:enumeration value="left"/>
253
+ <xsd:enumeration value="right"/>
254
+ <xsd:enumeration value="ambidextrous"/>
255
+ </xsd:restriction>
256
+ </xsd:simpleType>
257
+ </xsd:element>
258
+ <xsd:element name="ItemStyling" type="HundredString" minOccurs="0"/>
259
+ <xsd:element name="PolarPattern" type="HundredString" minOccurs="0"/>
260
+ <xsd:element name="NumberOfPieces" type="xsd:positiveInteger" minOccurs="0"/>
261
+ <xsd:element name="IsAssemblyRequired" type="xsd:boolean" minOccurs="0"/>
262
+ <xsd:element ref="Battery" minOccurs="0"/>
263
+ <xsd:element name="MaximumSampleRate" type="FrequencyDimension" minOccurs="0"/>
264
+ <xsd:element name="ConnectorType" type="HundredString" minOccurs="0"/>
265
+ <xsd:element name="SignalFormat" type="HundredString" minOccurs="0"/>
266
+ <xsd:element name="SupportedSoftware" type="HundredString" minOccurs="0"/>
267
+ <xsd:element name="SellerWarrantyDescription" type="SuperLongStringNotNull" minOccurs="0"/>
268
+ </xsd:sequence>
269
+ </xsd:complexType>
270
+ </xsd:element>
271
+ <!--
272
+ ###############################################################
273
+ # InstrumentPartsAndAccessories Classification Data
274
+ ###############################################################
275
+ -->
276
+ <xsd:element name="InstrumentPartsAndAccessories">
277
+ <xsd:complexType>
278
+ <xsd:sequence>
279
+ <xsd:element name="VariationData" minOccurs="0">
280
+ <xsd:complexType>
281
+ <xsd:sequence>
282
+ <xsd:element name="Parentage">
283
+ <xsd:simpleType>
284
+ <xsd:restriction base="xsd:string">
285
+ <xsd:enumeration value="parent"/>
286
+ <xsd:enumeration value="child"/>
287
+ </xsd:restriction>
288
+ </xsd:simpleType>
289
+ </xsd:element>
290
+ <xsd:element name="VariationTheme" minOccurs="0">
291
+ <xsd:simpleType>
292
+ <xsd:restriction base="xsd:string">
293
+ <xsd:enumeration value="Color"/>
294
+ </xsd:restriction>
295
+ </xsd:simpleType>
296
+ </xsd:element>
297
+ </xsd:sequence>
298
+ </xsd:complexType>
299
+ </xsd:element>
300
+ <xsd:element name="AdditionalSpecifications" type="AdditionalSpecs" minOccurs="0"/>
301
+ <xsd:element name="ColorSpecification" minOccurs="0">
302
+ <xsd:complexType>
303
+ <xsd:sequence>
304
+ <xsd:element name="Color" type="String" minOccurs="0"/>
305
+ <xsd:element name="ColorMap" type="String" minOccurs="0"/>
306
+ </xsd:sequence>
307
+ </xsd:complexType>
308
+ </xsd:element>
309
+ <xsd:element name="CableLength" type="LengthDimension" minOccurs="0"/>
310
+ <xsd:element name="CountryProducedIn" type="StringNotNull" minOccurs="0"/>
311
+ <xsd:element name="DrumSticksSize" type="StringNotNull" minOccurs="0"/>
312
+ <xsd:element name="GuitarPickThickness" minOccurs="0">
313
+ <xsd:simpleType>
314
+ <xsd:restriction base="xsd:string">
315
+ <xsd:enumeration value="extra-thick"/>
316
+ <xsd:enumeration value="extra-thin"/>
317
+ <xsd:enumeration value="medium"/>
318
+ <xsd:enumeration value="thick"/>
319
+ <xsd:enumeration value="thin"/>
320
+ </xsd:restriction>
321
+ </xsd:simpleType>
322
+ </xsd:element>
323
+ <xsd:element name="InstrumentKey" type="StringNotNull" minOccurs="0"/>
324
+ <xsd:element name="Range" minOccurs="0">
325
+ <xsd:simpleType>
326
+ <xsd:restriction base="xsd:string">
327
+ <xsd:enumeration value="Alto"/>
328
+ <xsd:enumeration value="Baritone"/>
329
+ <xsd:enumeration value="Bass"/>
330
+ <xsd:enumeration value="Mezzo Soprano"/>
331
+ <xsd:enumeration value="Soprano"/>
332
+ <xsd:enumeration value="Tenor"/>
333
+ </xsd:restriction>
334
+ </xsd:simpleType>
335
+ </xsd:element>
336
+ <xsd:element name="ScaleLength" type="HundredString" minOccurs="0"/>
337
+ <xsd:element name="ItemPackageQuantity" type="xsd:positiveInteger" default="1" minOccurs="0"/>
338
+ <xsd:element name="MalletHardness" minOccurs="0">
339
+ <xsd:simpleType>
340
+ <xsd:restriction base="xsd:string">
341
+ <xsd:enumeration value="extra-hard"/>
342
+ <xsd:enumeration value="hard"/>
343
+ <xsd:enumeration value="medium"/>
344
+ <xsd:enumeration value="soft"/>
345
+ </xsd:restriction>
346
+ </xsd:simpleType>
347
+ </xsd:element>
348
+ <xsd:element name="MaterialType" type="StringNotNull" minOccurs="0"/>
349
+ <xsd:element name="BackMaterial" type="HundredString" minOccurs="0"/>
350
+ <xsd:element name="TopMaterial" type="HundredString" minOccurs="0"/>
351
+ <xsd:element name="FretboardMaterial" type="HundredString" minOccurs="0"/>
352
+ <xsd:element name="NeckMaterial" type="HundredString" minOccurs="0"/>
353
+ <xsd:element name="StringMaterial" type="HundredString" minOccurs="0"/>
354
+ <xsd:element name="StringGauge" type="HundredString" minOccurs="0"/>
355
+ <xsd:element name="PickguardDescription" type="HundredString" minOccurs="0"/>
356
+ <xsd:element name="ModelName" type="StringNotNull" minOccurs="0"/>
357
+ <xsd:element name="ModelNumber" type="FortyStringNotNull" minOccurs="0"/>
358
+ <xsd:element name="ModelYear" type="FourDigitYear" minOccurs="0"/>
359
+ <xsd:element name="MusicalStyle" type="StringNotNull" minOccurs="0"/>
360
+ <xsd:element name="SpeakerCount" type="xsd:positiveInteger" minOccurs="0"/>
361
+ <xsd:element name="SpeakerSize" type="LengthDimension" minOccurs="0"/>
362
+ <xsd:element name="SpeakerAmplificationType" type="HundredString" minOccurs="0"/>
363
+ <xsd:element name="NumberOfKeyboardKeys" type="xsd:positiveInteger" minOccurs="0"/>
364
+ <xsd:element name="KeyAction" type="HundredString" minOccurs="0"/>
365
+ <xsd:element name="PercussionDiameter" type="LengthIntegerDimension" minOccurs="0"/>
366
+ <xsd:element name="HandOrientation" minOccurs="0">
367
+ <xsd:simpleType>
368
+ <xsd:restriction base="xsd:string">
369
+ <xsd:enumeration value="left"/>
370
+ <xsd:enumeration value="right"/>
371
+ <xsd:enumeration value="ambidextrous"/>
372
+ </xsd:restriction>
373
+ </xsd:simpleType>
374
+ </xsd:element>
375
+ <xsd:element name="ItemStyling" type="HundredString" minOccurs="0"/>
376
+ <xsd:element name="PolarPattern" type="HundredString" minOccurs="0"/>
377
+ <xsd:element name="NumberOfPieces" type="xsd:positiveInteger" minOccurs="0"/>
378
+ <xsd:element name="IsAssemblyRequired" type="xsd:boolean" minOccurs="0"/>
379
+ <xsd:element name="IsACAdapterIncluded" type="xsd:boolean" minOccurs="0"/>
380
+ <xsd:element ref="Battery" minOccurs="0"/>
381
+ <xsd:element name="MaximumSampleRate" type="FrequencyDimension" minOccurs="0"/>
382
+ <xsd:element name="ConnectorType" type="HundredString" minOccurs="0"/>
383
+ <xsd:element name="SignalFormat" type="HundredString" minOccurs="0"/>
384
+ <xsd:element name="DigitalAudioProtocol" type="HundredString" minOccurs="0"/>
385
+ <xsd:element name="HardwareInterface" type="HundredString" minOccurs="0"/>
386
+ <xsd:element name="OperatingSystem" type="String" minOccurs="0"/>
387
+ <xsd:element name="SupportedSoftware" type="HundredString" minOccurs="0"/>
388
+ <xsd:element name="SellerWarrantyDescription" type="SuperLongStringNotNull" minOccurs="0"/>
389
+ </xsd:sequence>
390
+ </xsd:complexType>
391
+ </xsd:element>
392
+ <!--
393
+ ###############################################################
394
+ # KeyboardInstruments Classification Data
395
+ ###############################################################
396
+ -->
397
+ <xsd:element name="KeyboardInstruments">
398
+ <xsd:complexType>
399
+ <xsd:sequence>
400
+ <xsd:element name="VariationData" minOccurs="0">
401
+ <xsd:complexType>
402
+ <xsd:sequence>
403
+ <xsd:element name="Parentage">
404
+ <xsd:simpleType>
405
+ <xsd:restriction base="xsd:string">
406
+ <xsd:enumeration value="parent"/>
407
+ <xsd:enumeration value="child"/>
408
+ </xsd:restriction>
409
+ </xsd:simpleType>
410
+ </xsd:element>
411
+ <xsd:element name="VariationTheme" minOccurs="0">
412
+ <xsd:simpleType>
413
+ <xsd:restriction base="xsd:string">
414
+ <xsd:enumeration value="Color"/>
415
+ </xsd:restriction>
416
+ </xsd:simpleType>
417
+ </xsd:element>
418
+ </xsd:sequence>
419
+ </xsd:complexType>
420
+ </xsd:element>
421
+ <xsd:element name="AdditionalSpecifications" type="AdditionalSpecs" minOccurs="0"/>
422
+ <xsd:element name="ColorSpecification" minOccurs="0">
423
+ <xsd:complexType>
424
+ <xsd:sequence>
425
+ <xsd:element name="Color" type="String" minOccurs="0"/>
426
+ <xsd:element name="ColorMap" type="String" minOccurs="0"/>
427
+ </xsd:sequence>
428
+ </xsd:complexType>
429
+ </xsd:element>
430
+ <xsd:element name="CountryProducedIn" type="StringNotNull" minOccurs="0"/>
431
+ <xsd:element name="InstrumentKey" type="StringNotNull" minOccurs="0"/>
432
+ <xsd:element name="Range" minOccurs="0">
433
+ <xsd:simpleType>
434
+ <xsd:restriction base="xsd:string">
435
+ <xsd:enumeration value="Alto"/>
436
+ <xsd:enumeration value="Baritone"/>
437
+ <xsd:enumeration value="Bass"/>
438
+ <xsd:enumeration value="Mezzo Soprano"/>
439
+ <xsd:enumeration value="Soprano"/>
440
+ <xsd:enumeration value="Tenor"/>
441
+ </xsd:restriction>
442
+ </xsd:simpleType>
443
+ </xsd:element>
444
+ <xsd:element name="ScaleLength" type="HundredString" minOccurs="0"/>
445
+ <xsd:element name="ItemPackageQuantity" type="xsd:positiveInteger" default="1" minOccurs="0"/>
446
+ <xsd:element name="MaterialType" type="StringNotNull" minOccurs="0"/>
447
+ <xsd:element name="StringMaterial" type="HundredString" minOccurs="0"/>
448
+ <xsd:element name="StringGauge" type="HundredString" minOccurs="0"/>
449
+ <xsd:element name="PickguardDescription" type="HundredString" minOccurs="0"/>
450
+ <xsd:element name="ModelName" type="StringNotNull" minOccurs="0"/>
451
+ <xsd:element name="ModelNumber" type="FortyStringNotNull" minOccurs="0"/>
452
+ <xsd:element name="ModelYear" type="FourDigitYear" minOccurs="0"/>
453
+ <xsd:element name="MusicalStyle" type="StringNotNull" minOccurs="0"/>
454
+ <xsd:element name="SpeakerCount" type="xsd:positiveInteger" minOccurs="0"/>
455
+ <xsd:element name="SpeakerSize" type="LengthDimension" minOccurs="0"/>
456
+ <xsd:element name="SpeakerAmplificationType" type="HundredString" minOccurs="0"/>
457
+ <xsd:element name="NumberOfKeyboardKeys" type="xsd:positiveInteger" minOccurs="0"/>
458
+ <xsd:element name="KeyAction" type="HundredString" minOccurs="0"/>
459
+ <xsd:element name="ItemStyling" type="HundredString" minOccurs="0"/>
460
+ <xsd:element name="PolarPattern" type="HundredString" minOccurs="0"/>
461
+ <xsd:element name="NumberOfPieces" type="xsd:positiveInteger" minOccurs="0"/>
462
+ <xsd:element name="IsAssemblyRequired" type="xsd:boolean" minOccurs="0"/>
463
+ <xsd:element name="IsACAdapterIncluded" type="xsd:boolean" minOccurs="0"/>
464
+ <xsd:element ref="Battery" minOccurs="0"/>
465
+ <xsd:element name="MaximumSampleRate" type="FrequencyDimension" minOccurs="0"/>
466
+ <xsd:element name="ConnectorType" type="HundredString" minOccurs="0"/>
467
+ <xsd:element name="SignalFormat" type="HundredString" minOccurs="0"/>
468
+ <xsd:element name="NumberOfChannels" type="xsd:positiveInteger" minOccurs="0"/>
469
+ <xsd:element name="DigitalAudioProtocol" type="HundredString" minOccurs="0"/>
470
+ <xsd:element name="HardwareInterface" type="HundredString" minOccurs="0"/>
471
+ <xsd:element name="OperatingSystem" type="String" minOccurs="0"/>
472
+ <xsd:element name="SupportedSoftware" type="HundredString" minOccurs="0"/>
473
+ <xsd:element name="SellerWarrantyDescription" type="SuperLongStringNotNull" minOccurs="0"/>
474
+ </xsd:sequence>
475
+ </xsd:complexType>
476
+ </xsd:element>
477
+ <!--
478
+ ###############################################################
479
+ # MiscWorldInstruments Classification Data
480
+ ###############################################################
481
+ -->
482
+ <xsd:element name="MiscWorldInstruments">
483
+ <xsd:complexType>
484
+ <xsd:sequence>
485
+ <xsd:element name="VariationData" minOccurs="0">
486
+ <xsd:complexType>
487
+ <xsd:sequence>
488
+ <xsd:element name="Parentage">
489
+ <xsd:simpleType>
490
+ <xsd:restriction base="xsd:string">
491
+ <xsd:enumeration value="parent"/>
492
+ <xsd:enumeration value="child"/>
493
+ </xsd:restriction>
494
+ </xsd:simpleType>
495
+ </xsd:element>
496
+ <xsd:element name="VariationTheme" minOccurs="0">
497
+ <xsd:simpleType>
498
+ <xsd:restriction base="xsd:string">
499
+ <xsd:enumeration value="Color"/>
500
+ </xsd:restriction>
501
+ </xsd:simpleType>
502
+ </xsd:element>
503
+ </xsd:sequence>
504
+ </xsd:complexType>
505
+ </xsd:element>
506
+ <xsd:element name="AdditionalSpecifications" type="AdditionalSpecs" minOccurs="0"/>
507
+ <xsd:element name="ColorSpecification" minOccurs="0">
508
+ <xsd:complexType>
509
+ <xsd:sequence>
510
+ <xsd:element name="Color" type="String" minOccurs="0"/>
511
+ <xsd:element name="ColorMap" type="String" minOccurs="0"/>
512
+ </xsd:sequence>
513
+ </xsd:complexType>
514
+ </xsd:element>
515
+ <xsd:element name="CountryProducedIn" type="StringNotNull" minOccurs="0"/>
516
+ <xsd:element name="InstrumentKey" type="StringNotNull" minOccurs="0"/>
517
+ <xsd:element name="Range" minOccurs="0">
518
+ <xsd:simpleType>
519
+ <xsd:restriction base="xsd:string">
520
+ <xsd:enumeration value="Alto"/>
521
+ <xsd:enumeration value="Baritone"/>
522
+ <xsd:enumeration value="Bass"/>
523
+ <xsd:enumeration value="Mezzo Soprano"/>
524
+ <xsd:enumeration value="Soprano"/>
525
+ <xsd:enumeration value="Tenor"/>
526
+ </xsd:restriction>
527
+ </xsd:simpleType>
528
+ </xsd:element>
529
+ <xsd:element name="ScaleLength" type="HundredString" minOccurs="0"/>
530
+ <xsd:element name="ItemPackageQuantity" type="xsd:positiveInteger" default="1" minOccurs="0"/>
531
+ <xsd:element name="MaterialType" type="StringNotNull" minOccurs="0"/>
532
+ <xsd:element name="BackMaterial" type="HundredString" minOccurs="0"/>
533
+ <xsd:element name="BodyMaterial" type="HundredString" minOccurs="0"/>
534
+ <xsd:element name="TopMaterial" type="HundredString" minOccurs="0"/>
535
+ <xsd:element name="FretboardMaterial" type="HundredString" minOccurs="0"/>
536
+ <xsd:element name="NeckMaterial" type="HundredString" minOccurs="0"/>
537
+ <xsd:element name="StringMaterial" type="HundredString" minOccurs="0"/>
538
+ <xsd:element name="StringGauge" type="HundredString" minOccurs="0"/>
539
+ <xsd:element name="PickguardDescription" type="HundredString" minOccurs="0"/>
540
+ <xsd:element name="ModelName" type="StringNotNull" minOccurs="0"/>
541
+ <xsd:element name="ModelNumber" type="FortyStringNotNull" minOccurs="0"/>
542
+ <xsd:element name="ModelYear" type="FourDigitYear" minOccurs="0"/>
543
+ <xsd:element name="MusicalStyle" type="StringNotNull" minOccurs="0"/>
544
+ <xsd:element name="RegionOfOrigin" type="StringNotNull" minOccurs="0"/>
545
+ <xsd:element name="PercussionDiameter" type="LengthDimension" minOccurs="0"/>
546
+ <xsd:element name="HandOrientation" minOccurs="0">
547
+ <xsd:simpleType>
548
+ <xsd:restriction base="xsd:string">
549
+ <xsd:enumeration value="left"/>
550
+ <xsd:enumeration value="right"/>
551
+ <xsd:enumeration value="ambidextrous"/>
552
+ </xsd:restriction>
553
+ </xsd:simpleType>
554
+ </xsd:element>
555
+ <xsd:element name="ItemStyling" type="HundredString" minOccurs="0"/>
556
+ <xsd:element name="PolarPattern" type="HundredString" minOccurs="0"/>
557
+ <xsd:element name="NumberOfPieces" type="xsd:positiveInteger" minOccurs="0"/>
558
+ <xsd:element name="IsAssemblyRequired" type="xsd:boolean" minOccurs="0"/>
559
+ <xsd:element name="IsACAdapterIncluded" type="xsd:boolean" minOccurs="0"/>
560
+ <xsd:element ref="Battery" minOccurs="0"/>
561
+ <xsd:element name="MaximumSampleRate" type="FrequencyDimension" minOccurs="0"/>
562
+ <xsd:element name="ConnectorType" type="HundredString" minOccurs="0"/>
563
+ <xsd:element name="SignalFormat" type="HundredString" minOccurs="0"/>
564
+ <xsd:element name="NumberOfChannels" type="xsd:positiveInteger" minOccurs="0"/>
565
+ <xsd:element name="SupportedSoftware" type="HundredString" minOccurs="0"/>
566
+ <xsd:element name="SellerWarrantyDescription" type="SuperLongStringNotNull" minOccurs="0"/>
567
+ </xsd:sequence>
568
+ </xsd:complexType>
569
+ </xsd:element>
570
+ <!--
571
+ ###############################################################
572
+ # PercussionInstruments Classification Data
573
+ ###############################################################
574
+ -->
575
+ <xsd:element name="PercussionInstruments">
576
+ <xsd:complexType>
577
+ <xsd:sequence>
578
+ <xsd:element name="VariationData" minOccurs="0">
579
+ <xsd:complexType>
580
+ <xsd:sequence>
581
+ <xsd:element name="Parentage">
582
+ <xsd:simpleType>
583
+ <xsd:restriction base="xsd:string">
584
+ <xsd:enumeration value="parent"/>
585
+ <xsd:enumeration value="child"/>
586
+ </xsd:restriction>
587
+ </xsd:simpleType>
588
+ </xsd:element>
589
+ <xsd:element name="VariationTheme" minOccurs="0">
590
+ <xsd:simpleType>
591
+ <xsd:restriction base="xsd:string">
592
+ <xsd:enumeration value="Color"/>
593
+ </xsd:restriction>
594
+ </xsd:simpleType>
595
+ </xsd:element>
596
+ </xsd:sequence>
597
+ </xsd:complexType>
598
+ </xsd:element>
599
+ <xsd:element name="AdditionalSpecifications" type="AdditionalSpecs" minOccurs="0"/>
600
+ <xsd:element name="ColorSpecification" minOccurs="0">
601
+ <xsd:complexType>
602
+ <xsd:sequence>
603
+ <xsd:element name="Color" type="String" minOccurs="0"/>
604
+ <xsd:element name="ColorMap" type="String" minOccurs="0"/>
605
+ </xsd:sequence>
606
+ </xsd:complexType>
607
+ </xsd:element>
608
+ <xsd:element name="CountryProducedIn" type="StringNotNull" minOccurs="0"/>
609
+ <xsd:element name="DrumSetPieceQty" type="xsd:positiveInteger" minOccurs="0"/>
610
+ <xsd:element name="InstrumentKey" type="StringNotNull" minOccurs="0"/>
611
+ <xsd:element name="Range" minOccurs="0">
612
+ <xsd:simpleType>
613
+ <xsd:restriction base="xsd:string">
614
+ <xsd:enumeration value="Alto"/>
615
+ <xsd:enumeration value="Baritone"/>
616
+ <xsd:enumeration value="Bass"/>
617
+ <xsd:enumeration value="Mezzo Soprano"/>
618
+ <xsd:enumeration value="Soprano"/>
619
+ <xsd:enumeration value="Tenor"/>
620
+ </xsd:restriction>
621
+ </xsd:simpleType>
622
+ </xsd:element>
623
+ <xsd:element name="ScaleLength" type="HundredString" minOccurs="0"/>
624
+ <xsd:element name="ItemPackageQuantity" type="xsd:positiveInteger" default="1" minOccurs="0"/>
625
+ <xsd:element name="MaterialType" type="StringNotNull" minOccurs="0"/>
626
+ <xsd:element name="ModelName" type="StringNotNull" minOccurs="0"/>
627
+ <xsd:element name="ModelNumber" type="FortyStringNotNull" minOccurs="0"/>
628
+ <xsd:element name="ModelYear" type="FourDigitYear" minOccurs="0"/>
629
+ <xsd:element name="MusicalStyle" type="StringNotNull" minOccurs="0"/>
630
+ <xsd:element name="NumberOfStrings" type="xsd:positiveInteger" minOccurs="0"/>
631
+ <xsd:element name="NumberOfKeyboardKeys" type="xsd:positiveInteger" minOccurs="0"/>
632
+ <xsd:element name="PercussionDiameter" type="LengthIntegerDimension" minOccurs="0"/>
633
+ <xsd:element name="ItemStyling" type="HundredString" minOccurs="0"/>
634
+ <xsd:element name="PolarPattern" type="HundredString" minOccurs="0"/>
635
+ <xsd:element name="NumberOfPieces" type="xsd:positiveInteger" minOccurs="0"/>
636
+ <xsd:element name="IsAssemblyRequired" type="xsd:boolean" minOccurs="0"/>
637
+ <xsd:element ref="Battery" minOccurs="0"/>
638
+ <xsd:element name="MaximumSampleRate" type="FrequencyDimension" minOccurs="0"/>
639
+ <xsd:element name="ConnectorType" type="HundredString" minOccurs="0"/>
640
+ <xsd:element name="SignalFormat" type="HundredString" minOccurs="0"/>
641
+ <xsd:element name="SupportedSoftware" type="HundredString" minOccurs="0"/>
642
+ <xsd:element name="SellerWarrantyDescription" type="SuperLongStringNotNull" minOccurs="0"/>
643
+ </xsd:sequence>
644
+ </xsd:complexType>
645
+ </xsd:element>
646
+ <!--
647
+ ###############################################################
648
+ # SoundAndRecordingEquipment Classification Data
649
+ ###############################################################
650
+ -->
651
+ <xsd:element name="SoundAndRecordingEquipment">
652
+ <xsd:complexType>
653
+ <xsd:sequence>
654
+ <xsd:element name="VariationData" minOccurs="0">
655
+ <xsd:complexType>
656
+ <xsd:sequence>
657
+ <xsd:element name="Parentage">
658
+ <xsd:simpleType>
659
+ <xsd:restriction base="xsd:string">
660
+ <xsd:enumeration value="parent"/>
661
+ <xsd:enumeration value="child"/>
662
+ </xsd:restriction>
663
+ </xsd:simpleType>
664
+ </xsd:element>
665
+ <xsd:element name="VariationTheme" minOccurs="0">
666
+ <xsd:simpleType>
667
+ <xsd:restriction base="xsd:string">
668
+ <xsd:enumeration value="Color"/>
669
+ </xsd:restriction>
670
+ </xsd:simpleType>
671
+ </xsd:element>
672
+ </xsd:sequence>
673
+ </xsd:complexType>
674
+ </xsd:element>
675
+ <xsd:element name="AdditionalSpecifications" type="AdditionalSpecs" minOccurs="0"/>
676
+ <xsd:element name="ColorSpecification" minOccurs="0">
677
+ <xsd:complexType>
678
+ <xsd:sequence>
679
+ <xsd:element name="Color" type="String" minOccurs="0"/>
680
+ <xsd:element name="ColorMap" type="String" minOccurs="0"/>
681
+ </xsd:sequence>
682
+ </xsd:complexType>
683
+ </xsd:element>
684
+ <xsd:element name="CountryProducedIn" type="StringNotNull" minOccurs="0"/>
685
+ <xsd:element name="InstrumentKey" type="StringNotNull" minOccurs="0"/>
686
+ <xsd:element name="Range" minOccurs="0">
687
+ <xsd:simpleType>
688
+ <xsd:restriction base="xsd:string">
689
+ <xsd:enumeration value="Alto"/>
690
+ <xsd:enumeration value="Baritone"/>
691
+ <xsd:enumeration value="Bass"/>
692
+ <xsd:enumeration value="Mezzo Soprano"/>
693
+ <xsd:enumeration value="Soprano"/>
694
+ <xsd:enumeration value="Tenor"/>
695
+ </xsd:restriction>
696
+ </xsd:simpleType>
697
+ </xsd:element>
698
+ <xsd:element name="ScaleLength" type="HundredString" minOccurs="0"/>
699
+ <xsd:element name="ItemPackageQuantity" type="xsd:positiveInteger" default="1" minOccurs="0"/>
700
+ <xsd:element name="MixerChannelQty" type="xsd:positiveInteger" minOccurs="0"/>
701
+ <xsd:element name="ModelName" type="StringNotNull" minOccurs="0"/>
702
+ <xsd:element name="ModelNumber" type="FortyStringNotNull" minOccurs="0"/>
703
+ <xsd:element name="ModelYear" type="FourDigitYear" minOccurs="0"/>
704
+ <xsd:element name="MusicalStyle" type="StringNotNull" minOccurs="0"/>
705
+ <!-- Default unit of measure for OutputWattage is watts -->
706
+ <xsd:element name="OutputWattage" type="xsd:positiveInteger" minOccurs="0"/>
707
+ <xsd:element name="RecorderTrackCount" type="xsd:positiveInteger" minOccurs="0"/>
708
+ <xsd:element name="SpeakerCount" type="xsd:positiveInteger" minOccurs="0"/>
709
+ <xsd:element name="SpeakerSize" type="LengthDimension" minOccurs="0"/>
710
+ <xsd:element name="SpeakerAmplificationType" type="HundredString" minOccurs="0"/>
711
+ <xsd:element name="WirelessMicrophoneFrequency" type="FrequencyIntegerDimension" minOccurs="0"/>
712
+ <xsd:element name="KeyAction" type="HundredString" minOccurs="0"/>
713
+ <xsd:element name="ItemStyling" type="HundredString" minOccurs="0"/>
714
+ <xsd:element name="PolarPattern" type="HundredString" minOccurs="0"/>
715
+ <xsd:element name="NumberOfPieces" type="xsd:positiveInteger" minOccurs="0"/>
716
+ <xsd:element name="IsAssemblyRequired" type="xsd:boolean" minOccurs="0"/>
717
+ <xsd:element name="IsACAdapterIncluded" type="xsd:boolean" minOccurs="0"/>
718
+ <xsd:element ref="Battery" minOccurs="0"/>
719
+ <xsd:element name="MaximumSampleRate" type="FrequencyDimension" minOccurs="0"/>
720
+ <xsd:element name="ConnectorType" type="HundredString" minOccurs="0"/>
721
+ <xsd:element name="SignalFormat" type="HundredString" minOccurs="0"/>
722
+ <xsd:element name="NumberOfChannels" type="xsd:positiveInteger" minOccurs="0"/>
723
+ <xsd:element name="DigitalAudioProtocol" type="HundredString" minOccurs="0"/>
724
+ <xsd:element name="HardwareInterface" type="HundredString" minOccurs="0"/>
725
+ <xsd:element name="OperatingSystem" type="String" minOccurs="0"/>
726
+ <xsd:element name="SupportedSoftware" type="HundredString" minOccurs="0"/>
727
+ <xsd:element name="SellerWarrantyDescription" type="SuperLongStringNotNull" minOccurs="0"/>
728
+ </xsd:sequence>
729
+ </xsd:complexType>
730
+ </xsd:element>
731
+ <!--
732
+ ###############################################################
733
+ # StringedInstruments Classification Data
734
+ ###############################################################
735
+ -->
736
+ <xsd:element name="StringedInstruments">
737
+ <xsd:complexType>
738
+ <xsd:sequence>
739
+ <xsd:element name="VariationData" minOccurs="0">
740
+ <xsd:complexType>
741
+ <xsd:sequence>
742
+ <xsd:element name="Parentage">
743
+ <xsd:simpleType>
744
+ <xsd:restriction base="xsd:string">
745
+ <xsd:enumeration value="parent"/>
746
+ <xsd:enumeration value="child"/>
747
+ </xsd:restriction>
748
+ </xsd:simpleType>
749
+ </xsd:element>
750
+ <xsd:element name="VariationTheme" minOccurs="0">
751
+ <xsd:simpleType>
752
+ <xsd:restriction base="xsd:string">
753
+ <xsd:enumeration value="Color"/>
754
+ </xsd:restriction>
755
+ </xsd:simpleType>
756
+ </xsd:element>
757
+ </xsd:sequence>
758
+ </xsd:complexType>
759
+ </xsd:element>
760
+ <xsd:element name="AdditionalSpecifications" type="AdditionalSpecs" minOccurs="0"/>
761
+ <xsd:element name="ColorSpecification" minOccurs="0">
762
+ <xsd:complexType>
763
+ <xsd:sequence>
764
+ <xsd:element name="Color" type="String" minOccurs="0"/>
765
+ <xsd:element name="ColorMap" type="String" minOccurs="0"/>
766
+ </xsd:sequence>
767
+ </xsd:complexType>
768
+ </xsd:element>
769
+ <xsd:element name="Size" type="String" minOccurs="0"/>
770
+ <xsd:element name="SizeMap" type="InstrumentSizeMapType" minOccurs="0"/>
771
+ <xsd:element name="CountryProducedIn" type="StringNotNull" minOccurs="0"/>
772
+ <xsd:element name="InstrumentKey" type="StringNotNull" minOccurs="0"/>
773
+ <xsd:element name="Range" minOccurs="0">
774
+ <xsd:simpleType>
775
+ <xsd:restriction base="xsd:string">
776
+ <xsd:enumeration value="Alto"/>
777
+ <xsd:enumeration value="Baritone"/>
778
+ <xsd:enumeration value="Bass"/>
779
+ <xsd:enumeration value="Mezzo Soprano"/>
780
+ <xsd:enumeration value="Soprano"/>
781
+ <xsd:enumeration value="Tenor"/>
782
+ </xsd:restriction>
783
+ </xsd:simpleType>
784
+ </xsd:element>
785
+ <xsd:element name="ScaleLength" type="HundredString" minOccurs="0"/>
786
+ <xsd:element name="InstrumentSize" type="StringNotNull" minOccurs="0"/>
787
+ <xsd:element name="ItemPackageQuantity" type="xsd:positiveInteger" default="1" minOccurs="0"/>
788
+ <xsd:element name="MaterialType" type="StringNotNull" minOccurs="0"/>
789
+ <xsd:element name="BackMaterial" type="HundredString" minOccurs="0"/>
790
+ <xsd:element name="BodyMaterial" type="HundredString" minOccurs="0"/>
791
+ <xsd:element name="TopMaterial" type="HundredString" minOccurs="0"/>
792
+ <xsd:element name="FretboardMaterial" type="HundredString" minOccurs="0"/>
793
+ <xsd:element name="NeckMaterial" type="HundredString" minOccurs="0"/>
794
+ <xsd:element name="StringMaterial" type="HundredString" minOccurs="0"/>
795
+ <xsd:element name="StringGauge" type="HundredString" minOccurs="0"/>
796
+ <xsd:element name="PickguardDescription" type="HundredString" minOccurs="0"/>
797
+ <xsd:element name="ModelName" type="StringNotNull" minOccurs="0"/>
798
+ <xsd:element name="ModelNumber" type="FortyStringNotNull" minOccurs="0"/>
799
+ <xsd:element name="ModelYear" type="FourDigitYear" minOccurs="0"/>
800
+ <xsd:element name="MusicalStyle" type="StringNotNull" minOccurs="0"/>
801
+ <xsd:element name="SpeakerCount" type="xsd:positiveInteger" minOccurs="0"/>
802
+ <xsd:element name="SpeakerSize" type="LengthDimension" minOccurs="0"/>
803
+ <xsd:element name="SpeakerAmplificationType" type="HundredString" minOccurs="0"/>
804
+ <xsd:element name="NumberOfStrings" type="xsd:positiveInteger" minOccurs="0"/>
805
+ <xsd:element name="HandOrientation" minOccurs="0">
806
+ <xsd:simpleType>
807
+ <xsd:restriction base="xsd:string">
808
+ <xsd:enumeration value="left"/>
809
+ <xsd:enumeration value="right"/>
810
+ <xsd:enumeration value="ambidextrous"/>
811
+ </xsd:restriction>
812
+ </xsd:simpleType>
813
+ </xsd:element>
814
+ <xsd:element name="ItemStyling" type="HundredString" minOccurs="0"/>
815
+ <xsd:element name="PolarPattern" type="HundredString" minOccurs="0"/>
816
+ <xsd:element name="NumberOfPieces" type="xsd:positiveInteger" minOccurs="0"/>
817
+ <xsd:element name="IsAssemblyRequired" type="xsd:boolean" minOccurs="0"/>
818
+ <xsd:element ref="Battery" minOccurs="0"/>
819
+ <xsd:element name="MaximumSampleRate" type="FrequencyDimension" minOccurs="0"/>
820
+ <xsd:element name="ConnectorType" type="HundredString" minOccurs="0"/>
821
+ <xsd:element name="SignalFormat" type="HundredString" minOccurs="0"/>
822
+ <xsd:element name="SupportedSoftware" type="HundredString" minOccurs="0"/>
823
+ <xsd:element name="SellerWarrantyDescription" type="SuperLongStringNotNull" minOccurs="0"/>
824
+ </xsd:sequence>
825
+ </xsd:complexType>
826
+ </xsd:element>
827
+ <!--
828
+ ###############################################################
829
+ # Musical Instruments Data Types
830
+ ###############################################################
831
+ -->
832
+ <xsd:simpleType name="AdditionalSpecs">
833
+ <xsd:restriction base="xsd:normalizedString">
834
+ <xsd:minLength value="1"/>
835
+ <xsd:maxLength value="1500"/>
836
+ </xsd:restriction>
837
+ </xsd:simpleType>
838
+ <xsd:simpleType name="InstrumentSizeMapType">
839
+ <xsd:restriction base="xsd:string">
840
+ <xsd:enumeration value="1/4"/>
841
+ <xsd:enumeration value="1/2"/>
842
+ <xsd:enumeration value="3/4"/>
843
+ <xsd:enumeration value="4/4"/>
844
+ <xsd:enumeration value="Mini"/>
845
+ <xsd:enumeration value="Jumbo"/>
846
+ <xsd:enumeration value="X-Small"/>
847
+ <xsd:enumeration value="Small"/>
848
+ <xsd:enumeration value="Medium"/>
849
+ <xsd:enumeration value="Large"/>
850
+ <xsd:enumeration value="X-Large"/>
851
+ </xsd:restriction>
852
+ </xsd:simpleType>
853
+ </xsd:schema>