// Generated by xsd compiler for ios/objective-c
// DO NOT CHANGE!

#import <Foundation/Foundation.h>
#import "PicoClassSchema.h"
#import "PicoPropertySchema.h"
#import "PicoConstants.h"
#import "PicoBindable.h"


@class Trading_NameValueListArrayType;
@class Trading_ExternalProductIDType;
@class Trading_ReviewDetailsType;

/**
 
 Information about an eBay catalog product.
 
 
 @ingroup EBayAPIInterface
*/
@interface Trading_CatalogProductType : NSObject <PicoBindable> {

@private
    NSString *_title;
    NSString *_detailsURL;
    NSString *_stockPhotoURL;
    NSNumber *_displayStockPhotos;
    NSNumber *_itemCount;
    Trading_ExternalProductIDType *_externalProductID;
    NSNumber *_productReferenceID;
    NSNumber *_attributeSetID;
    Trading_NameValueListArrayType *_itemSpecifics;
    NSNumber *_reviewCount;
    Trading_ReviewDetailsType *_reviewDetails;
    NSString *_productState;
    NSMutableArray *_any;

}


/**
 
 The title of the product. Always returned when Product is returned.
 
 
 type : NSString, wrapper for primitive string
*/
@property (nonatomic, retain) NSString *title;

/**
 
 Fully qualified URL for optional information about the product,
 such as a movie's description or film credits. This information
 is hosted through the eBay Web site and it cannot be edited.
 Portions of the content are protected by copyright.
 Applications can include this URL as a link in product search results
 so that end users can view additional descriptive details about
 the product.<br>
 <br>
 <span class="tablenote"><b>Note:</b> You can use
 the ProductMementoString parameter in this URL as the ProductID value in
 GetSearchResults requests. This parameter is a colon-delimited
 alphanumeric value. For an example of how to use this string,
 see the GetProducts samples in the eBay Web Services guide.</span>
 
 
 type : NSString, wrapper for primitive string
*/
@property (nonatomic, retain) NSString *detailsURL;

/**
 
 Fully qualified URL for a stock image (if any) that is associated
 with the eBay catalog product. The URL is for the image eBay
 usually displays in product search results (usually 70px tall).
 It may be helpful to calculate the dimensions of the photo
 programmatically before displaying it.
 
 
 type : NSString, wrapper for primitive string
*/
@property (nonatomic, retain) NSString *stockPhotoURL;

/**
 
 If true, your application can attempt to display stock photos that
 are returned. If false, your application should not attempt to display
 any stock photos that are returned. This recommendation is useful for
 catalog data related to products like coins, where stock photos are not
 necessarily applicable or available. An application with a graphical
 user interface can use this flag to determine
 when to hide customized stock photo widgets.
 
 
 type : NSNumber, wrapper for primitive bool
*/
@property (nonatomic, retain) NSNumber *displayStockPhotos;

/**
 
 Total number of listings on the specified eBay site that use
 stock information from this catalog product. This value can be greater
 than the number of listings returned in ItemArray. To retrieve more
 listings, use GetSearchResults.
 Only returned when you use ExternalProductID or ProductReferenceID
 and you set IncludeItemArray to true.
 
 
 type : NSNumber, wrapper for primitive int
*/
@property (nonatomic, retain) NSNumber *itemCount;

/**
 
 An ISBN, UPC, or EAN value that is associated with this
 eBay catalog product (if any). These values are only returned
 for products in "media" domains (Books, DVDs and Movies, Music, and
 Video Games). Products in other domains don't return this value
 (even if a UPC is available in the Item Specifics.)
 Please note that as of February 2007, GetProducts may temporarily return
 two ExternalProductID nodes for ISBN for some sites (one with a 13-digit
 value and one with a 10-digit value). This is a bug and it will be fixed in
 an upcoming release. Instead, one ExternalProductID node will be returned
 with an additional field. Do not code your application to expect multiple
 ExternalProductID nodes to be returned for ISBN values on an ongoing basis.
 
 
 type : class Trading_ExternalProductIDType
*/
@property (nonatomic, retain) Trading_ExternalProductIDType *externalProductID;

/**
 
 The numeric ID for the eBay catalog product. After selecting a product
 returned from a keyword query, pass this value in GetProducts to
 retrieve more information about that product.
 
 
 type : NSNumber, wrapper for primitive long
*/
@property (nonatomic, retain) NSNumber *productReferenceID;

/**
 
 Numeric ID for the product's domain (characteristic set).
 When you use GetProducts by itself, this can be useful when
 you want to group product results
 by domain (e.g., all book products together).
 For a mapping of attribute set IDs to names, see the
 eBay Web Services guide. Alternatively, use GetCategory2CS
 to retrieve the mappings periodically (e.g., once a day) and
 store them locally. (We do not recommend using the product histogram,
 for this purpose.)
 
 
 type : NSNumber, wrapper for primitive int
*/
@property (nonatomic, retain) NSNumber *attributeSetID;

/**
 
 A list of attribute and value pairs that are included in the product's
 pre-filled Item Specifics.
 Also see ExternalProductID for ISBN, UPC, or MPN values, if applicable.
 This is usually returned. (We are not aware of any cases in which this
 node is not be returned. However, it may be safest to check for the
 existence of this node.)
 
 
 type : class Trading_NameValueListArrayType
*/
@property (nonatomic, retain) Trading_NameValueListArrayType *itemSpecifics;

/**
 
 The total number of reviews that are available for this product
 on the eBay Web site. This can be greater than the number of
 reviews returned by GetProducts. See ReviewDetails.Review.URL
 for information about viewing more reviews.
 
 
 type : NSNumber, wrapper for primitive int
*/
@property (nonatomic, retain) NSNumber *reviewCount;

/**
 
 The product's most helpful reviews, if any.
 The reviews are sorted by most helpful review (most votes) first.
 Only returned when you pass in ExternalProductID or
 ProductReferenceID and you set IncludeReviewDetails to true.
 Up to 20 of the reviews are returned. If more reviews are available,
 (that is, if ReviewCount is greater than 20), the user can look at
 additional reviews on the eBay Web site.
 See ReviewDetails.Review.URL for information about viewing more
 reviews.
 
 
 type : class Trading_ReviewDetailsType
*/
@property (nonatomic, retain) Trading_ReviewDetailsType *reviewDetails;

/**
 
 Indicates that the product has changed or will soon change (usually due to a migration
 from one catalog to another catalog). Typically, this field is returned for up to 90
 days for a given product. After that, the product either no longer returns this field
 or the product is no longer returned (depending on the state change).
 <br><br>
 This data is primarily applicable to catalogs used by the US, Germany, Austria, and
 Switzerland sites. Other sites may undergo catalog changes in the future.
 
 
 type: string constant in Trading_ProductStateCodeType.h
*/
@property (nonatomic, retain) NSString *productState;

/**
 (public property)
 
 entry type : PicoAnyElement, wrapper for primitive anyelement
*/

@property (nonatomic, retain) NSMutableArray *any;


@end
