Background Information

1998, the Computer Science Council of the Society of Actuaries revisited the task of defining a standard for the interchange of table data. The focus of this work was to be on the format of the data itself and not the tools to maintain or update the data. In 2000, a Data Standards Committee was formed. This Committee was headed by Jacques Rioux (Drake University). Mark Horowitz (Towers Perrin) and Cynthia Jeness (Golden Code Development Corporation) also participated on the Committee. This Committee determined that there was already an open W3C standard, XML, which could be used for actuarial tabular data. Using XML as the standard, the Committee developed a preliminary dialect and presented the results to the Computer Science Council. Subsequent discussions with members of the SOA led to the submission of the XML standard for adoption by ACORD.

On March 21-22, 2002, Members of the SOA and other insurance industry professionals met with ACORD in Westwood, MA. At this meeting the original standard was generalized and improved so that it would apply across a range of actuarial tabular data needs. The improved version, XTbML, went through the approval process at the ACORD meeting in June, 2002 and was adopted on a pilot basis by ACORD. The pilot period is intended to provide time for interested parties to use the standard and submit comments before it is officially adopted as a standard in November, 2002.

In September, 2002, another ACORD meeting was held to define the transactional interaction for XTbML. Utilizing this transactional standard, tabular data could be stored in a central repository and transferred to a requesting computer utilizing various industry standard protocols such as SOAP and HTTP GET/POST. This should extend the utility of the standard from the realm of human interaction to computer-computer interaction.

ACORD XTbML Standard

The primary documentation of the XTbML standard from ACORD consists of two documents:

The second document is available from the ACORD site and may be downloaded by anyone who is willing to register. In terms of the XTbML standard, the following type code groups are the most important:

  • Content Type Codes
  • Nation Type Codes
  • Scale Type Codes

Beyond the documents sited above, ACORD does not provide information related to how to successfully implement the standard. They look to the users themselves to provide this type of information. Because the ACORD standard is very general and also because it takes a different approach to storing data than did Table Manager, some more specific standards need to be adopted in order to facilitate the exchange of tabular data.

ACORD Standard: Table Structure

The XML structure underlying the ACORD standard may be represented diagrammatically as follows:

Under this scheme, the XTbML element contains a ContentClassification element and one or more Table elements. Each Table element contains both a Metadata element and a Values element. The Values element contains one or more Axis elements and these elements actually store the values. This assumes that the indexes to the values are number (e.g. age). Non-numeric indexes (e.g. gender) require the use of both KeyDef's and Key's. For the purpose of the SOA table database the use of these elements is deemed unnecessary.

The purpose of each of the elements shown in the diagram may be summarized as follows:

  • ContentClassification - Identifies the tabular data and provides general descriptive information.
  • Table- This is the container for the tabular data. In some cases, it is more convenient to use multiple "tables" to represent a set of tabular data. For example, a select and ultimate table may be best represented by two-dimensional select Table plus a one-dimensional aggregate Table.
  • Table:MetaData - This describes the attributes of the data stored within the Table; e.g., the minimum and maximum values for the indexes, the type of data, etc.
  • Table:Values - This is the top-level container for the data itself.
  • Table:Values:Axis - This is the container for one dimension of the data. A one-dimensional table would have one Axis while a two-dimensional table would have one Axis which contains a second Axis. The lowest level Axis will contain a series of Y elements which actually house the data.

For the purpose of the SOA project, the types of tables stored by Table Manager will be structured in XTbML as follows:

  • Aggregate Tables - A single Table element with one Axis element.
  • Select and Ultimate Tables - Two Table elements. The select part of the table is represent by one of these. This Table will have two Axis elements. The outermost Axis will be indexed on age and the innermost axis will be indexed based on the duration. The second Table element will contain the ultimate data which will be handled just like an Aggregate Table.

Since the ACORD standard is so generic, there are other structures which could be used to represent the SOA data. The proposed scheme is recommended because it is simple and consistent with the pre-cursor to the ACORD standard developed by the Computer Science Council. There was considerable discussion and development around the pre-cursor standard.