Data Types

The following rules apply to data types:

Simple data types that involve restriction (e.g. string length, pattern) are typically in the schema with a NoID representation to define that restriction. If no restriction is involved, the data type is defined as an extension of another type, with the addition of an ID attribute.

Aggregates (any tag with element content, including messages and service wrappers) have a complex type definition that defines the content of the aggregate. This complex type has a name that is based upon the aggregate name plus an extension of "Type". For instance, the <Addr> aggregate is based upon the AddrType.

Alternatively, some aggregates are based upon Base Types that are designed for reuse in different data contexts. Base Types are complex type aggregate definitions, and have all-capital names (e.g. DURATION, MEASUREMENT).


Attributes are ONLY allowed in the ACORD Specification for the use of locating or cross-referencing information within an XML document, and identifying the domain responsible for extensions.

ID and IDREF Attribute Types

ID and IDREF attribute types provide a standard method for referencing information within a single XML stream. An XML parser will validate that

All values assigned to an attribute of type ID are unique within that document.

Any reference to an ID in an IDREF attribute type exists in the document.

This functionality was originaly designed for "changed element processing," where a request message is sent to the carrier and the response back contains corrections or slight modifications to the original request. In a structure at the top of the business message, the carrier lists every changed element value and the reason for the modification.

An element that is changed (or that needs to be referred to) is assigned an ID value. The referencing context then uses an IDREF attribute to refer to or link the two objects.

Once this powerful construct was used for this purpose, its use was expanded to permit reference between objects (drivers and vehicles, for example) via ID/IDREF link.

Empty Tags

An ACORD element always has content. An element is not allowed to be empty or consist of just white space characters.

Last edited Mar 26, 2016 at 8:57 PM by natewaite, version 3