XML Elements

The Microsoft Commerce Catalog Extensible Markup Language (XML) elements are divided into three groups:

  • MSCommerceCatalogCollection. The root node for a Commerce Catalog XML file.

  • Catalog Schema Elements. These elements are used to extend the catalog: CatalogSchema, AttributeDefinition, Definition, PropertiesDefinition, Property, and PropertyValue.

  • Catalog Data Elements. These elements are used for the actual catalog and its members: Catalog, Category, Field, Product, ProductVariant, and Relationship.

AttributeDefinition

Defines an attribute that can be used to describe an aspect of a property, such as its "display name". This allows additional attributes to be defined on fields on top of the built in ones: name, maxSize, defaultValue, and so on.

Parent Elements: CatalogSchema

Child Elements: None

Attributes:

Name Description
DataType Valid types are:

datetime
money
number
string
bignumber
real
float
currency
boolean

id A unique ID for each node in the document. May not contain spaces (an XML requirement).
name The name of the attribute definition.

Catalog

Defines an individual catalog.

Parent Elements: MSCommerceCatalogCollection

Child Elements: Category, Product

Attributes:

Name Description
catalogName The name of the catalog.
currency The currency used in the catalog, expressed as a three letter ISO 4217 currency code. For example "USD", "AUD", "CDN", "GBP", "DEM", "JPY".
description A description of the catalog.
endDate The date the catalog validity expires. Used for documentation purposes only – Commerce Server does not apply any logic to this value.
locale The locale of the catalog, specified using a Windows Locale ID (LCID). Used for documentation purposes to indicate which locale the catalog is intended for.
productIdentifier The name of the property that uniquely identifies products (or product families) in the catalog.
productVariantIdentifier The name of the property that uniquely identifies product variants in the catalog.  If the catalog does not contain products with variants, set this attribute to the same value as the value in the productIdentifier attribute.
startDate The date the catalog becomes valid. Used for documentation purposes only – Commerce Server does not apply any logic to this value.

CatalogSchema

Contains the schema definition elements for the Catalog collection.

Parent Elements: MSCommerceCatalogCollection

Child Elements: AttributeDefinition, Definition, PropertiesDefinition

Attributes: None

Category

Defines an instance of a type of category.

Parent Elements: Catalog

Child Elements: Field, Relationship

Attributes:

Name Description
Definition The name of the category definition that the category is based on.
id The XML ID for the category element.
isSearchable Indicates whether this category is to be used as a starting point for specification searches. True indicates this category will be included in the record set returned by calls to the ProductCatalog.GetSearchableCategories object.

The values are 0 for False; 1 for True.

name The name of the category. This name must be unique for all categories in the same catalog.
parentCategories The XML IDs of the categories that are immediate parents of this category.
listprice The price that should be applied to any products that reference this category as their pricing category. Units for this value are determined by the currency attribute of the containing catalog.

Definition

Defines a type of product or category.

Parent Elements: CatalogSchema

Child Elements: None

Attributes:

Name Description
DefinitionType The type of the definition — either "product" or "category".
Name The name of the property. This name must be unique within the XML document.
properties The XML node IDs of the properties that are to be included in this product or category definition.
variantProperties The XML node IDs of the properties that are to be included as variant properties for this product definition. Use this attribute only for definitions of type "product".

Field

Defines a name and value pair for a field.

Parent Elements: Category, Product, ProductVariant

Child Elements: None

Attributes:

Name Description
fieldID The name of the property a value is being supplied for.
fieldValue The value for the property.

MSCommerceCatalogCollection

The root node for a Commerce Catalog XML file.

Parent Elements: None

Child Elements: CatalogSchema, Catalog

Attributes: None

Product

Defines an instance of a type of product.

Parent Elements: Catalog

Child Elements: Field, ProductVariant, Relationship

Attributes:

Name Description
definition The name of the product definition that the product is based on.
id The XML ID for the product element.
listprice The price for this product. Units for this value are determined by the currency attribute of the containing catalog.
parentCategories The XML IDs of the categories that the product belongs to.
pricingCategory The XML ID of the category that the product inherits pricing from.

Use of this attribute is optional.

ProductVariant

Defines an instance of a variant of a product.

Parent Elements: Product

Child Elements: Field

Attributes:

Name Description
id The XML ID for the variant element.

PropertiesDefinition

Container for the individual property definitions.

Parent Elements: CatalogSchema

Child Elements: Property

Attributes: None

Property

Defines a property that can be used to describe an aspect of a product or category.

Parent Elements: PropertiesDefinition

Child Elements: PropertyValue

Attributes:

Name Description
AssignAll Indicates whether this property should automatically be assigned to product definitions as they are created through Commerce Server Business Desk.

The values are: "1" (True) or "0" (False).

DataType Legal values are:

datetime
enumeration
filename
float
money
number
string
bignumber
currency
boolean
real

DefaultValue The default value for instances of the property. This value will be interpreted according to the datatype specified for this property. Datetime values must be specified in XML Date format.
DisplayInProductsList Indicates whether this property is to be displayed in summary lists of products in the Business Desk Catalog Editor, or in other areas where product lists are displayed.

The values are: "1" (True) or "0" (False)

DisplayName The display name for the property, for example, the label that will be shown next to the values for this property to site users.
DisplayOnSite Indicates whether this property should be shown to users visiting the web site.

The values are: "1" (True) or "0" (False).

ExportToDW Indicates whether the Catalog DTS task should export this property into the Data Warehouse. Properties with this attribute set to True will be available for use in reports and data analysis.

The values are: "1" (True) or "0" (False)

id A unique ID for each node in the document. May not contain spaces (an XML requirement).
IncludeInSpecSearch Indicates whether this property should be exposed to specification searches.

The values are: "1" (True) or "0" (False)

IsFreeTextSearchable Indicates whether this property should be included in the full-text index, and therefore, be free text searchable.

The values are: "1" (True) or "0" (False)

MaxValue The maximum legal value for number data types, and the maximum length for string data types.
MinValue The minimum legal value for number data types, and the minimum length for string data types.
name The unique name of the property.

PropertyValue

Defines a legal value for a property.

Parent Elements: Property

Child Elements: None

Attributes:

Name Description
DisplayName A legal value for the containing property.

Relationship

Defines a relationship between one product or category and another product or category.

Parent Elements: Category, Product

Child Elements: None

Attributes:

Name Description
description The description of the relationship.
name The name of the relationship.
relation The XML ID of a product or category in the same catalog in which to relate the containing product or category.


All rights reserved.