Guides · AI answer engines
What an AI shopping agent needs to answer about pants
Which pants attributes carry a fixed value list an assistant can compare, which are free text, and the schema.org property that holds each one.
What does an AI shopping assistant need to answer questions about pants?
22 attributes describe pants in a complete product record. 16 of them carry a fixed list of accepted values — age group, care instructions, closure, cuff style, fit, front style, and others — and those are the ones an assistant can compare across two products. The remaining 6 are free text.
An assistant answering “which of these is warmer” or “show me the ones in organic cotton” is not reading your description — it is matching values. Two products are only comparable on an attribute where both carry a value from the same list.
Which pants attributes can an assistant compare?
16 of 22. These carry a closed list of accepted values, so the same concept is the same string on every product:
| Attribute | Accepted values | schema.org |
|---|---|---|
| Age group | adult, teen, kids, baby | audience |
| Care instructions | machine wash cold, machine wash warm, hand wash, dry clean only, spot clean only, do not bleach, tumble dry low, do not tumble dry, line dry, dry flat, iron low, do not iron, wash inside out, wash with like colors | additionalProperty |
| Closure | zip fly button, button fly, pull on, drawstring, side zip, hook and bar | additionalProperty |
| Cuff style | plain hem, cuffed, elastic cuff, raw hem, split hem | additionalProperty |
| Fit | slim, regular, relaxed, oversized | additionalProperty |
| Front style | flat front, pleated, seamed | additionalProperty |
| Gender | women, men, unisex | audience |
| Leg opening | fitted, regular, wide | additionalProperty |
| Leg style | skinny, slim, straight, tapered, bootcut, flare, wide, palazzo, jogger, cargo, culotte | additionalProperty |
| Occasion | everyday, casual, work, formal, party, wedding, vacation, lounge, athletic, outdoor, beach | additionalProperty |
| Pattern | solid, striped, plaid, floral, graphic, polka dot, animal, camouflage, tie dye, geometric, abstract, colorblock, paisley, houndstooth | pattern |
| Rise | low, mid, high, ultra high | additionalProperty |
| Season | spring, summer, fall, winter, all season | additionalProperty |
| Standard color (channel color map) | beige, black, blue, brown, gold, green, grey, multi, orange, pink, purple, red, silver, white, yellow | additionalProperty |
| Stretch | none, slight, moderate, very stretchy | additionalProperty |
| Waistband style | fitted, elastic, drawstring, paperbag, side elastic, smocked | additionalProperty |
Which ones stay invisible to comparison?
These are free text. An assistant can quote them; it cannot rank on them, because “100% cotton”, “cotton 100%” and “pure cotton” are three values to a machine:
| Attribute | Required by | schema.org |
|---|---|---|
| Country of origin | Amazon | countryOfOrigin |
| Inseam | Amazon | additionalProperty |
| Material composition | Shopify, Amazon | material |
| Pocket count | — | additionalProperty |
| Primary color | Shopify, Amazon | color |
| Secondary color | — | additionalProperty |
Which schema.org properties carry pants attributes?
5 map to a dedicated Product property: audience, color, countryOfOrigin, material, pattern. Everything else belongs in additionalProperty, which schema.org defines for characteristics with no property of their own.
Property names above come from schema.org/Product. additionalProperty is the vocabulary's own answer for characteristics with no dedicated property — it takes a PropertyValue with a name and a value, which keeps an attribute machine-readable even when the vocabulary has no field for it.
Why does free text break AI product comparison for pants?
An assistant can only rank or filter on a vocabulary two products share. "Country of origin" written three different ways across three listings is three different values to a machine, even when a human reads them as the same thing. For pants, 6 of 22 attributes are in that state by default.
The fix is not more copy. It is putting the value in a field, from a list, on every product — which is the same work that makes a channel accept the listing in the first place.
Our scanner checks every product against exactly these rules.
Scan my catalog — free