Introduction
Welcome to the second part of our series on the introduction to FpML documentation. In this article, we will guide you through the initial steps of working with FpML documentation and clarify the key differences between Complex types and Elements in the XSD definitions.
FpML Documentation Guide Series
Documentation
The “Most Recent Versions” page at https://www.fpml.org/the_standard/current/ provides a snapshot of the current development of the FpML Standard. As of the writing of this article, FpML 5.12 was the most recent version. To access the FpML documentation, you must first create a free account.
The “FpML 5.12” page, available at https://www.fpml.org/spec/fpml-5-12-4-rec-1/, contains the documentation for version 5.12. In this chapter, we will focus on the Confirmation View, which is used to present contract details. We will delve into the “Online Documentation” in this chapter and continue our discussion of it in the following chapter. The “Data Dictionary” will be covered in part 5 of the series, and the “Schema and Examples ZIP” is explained in parts 4 and 5. The “Documentation Download ZIP” feature is identical to the “Online Documentation” and allows you to download the entire FpML documentation onto your computer.

The FpML 5.12 Confirmation View Online Documentation (https://www.fpml.org/spec/fpml-5-12-4-rec-1/html/confirmation/index.html) provides detailed documentation of the FpML Standard and includes links to related documents. To avoid reading everything, we recommend familiarizing yourself with the following chapters:
1.2.1 Schema Reference: This section provides a high-level overview of what is included in the Standard, with special attention to the “Products” section.
2.3 Overview of the Organization of the Master Schema: This chapter contains references to documents with more detailed descriptions.
2.8.2 The Trade Component: This section describes the variants of the Trade component.
5. Securities Product Architecture: This section covers the use of the FpML Standard to describe securities and listed derivatives in the most recent versions of the Standard.
6. Cross-Asset Product Architecture: This chapter describes multiple asset classes and can be leveraged when describing option strategies.
Complex type vs element
It is important to understand the distinction between Elements and Complex Types in XML schema. While technical definitions can be found on websites such as https://www.w3schools.com/xml/el_complextype.asp and https://www.w3schools.com/xml/xml_elements.asp, we will focus on examples from FpML. The swap and swapStream are two key elements in FpML, with the definition for swapStream located at https://www.fpml.org/spec/fpml-5-12-4-rec-1/html/confirmation/schemaDocumentation/schemas/fpml-ird-5-12_xsd/complexTypes/Swap/swapStream.html.

The type of the element swapStream is InterestRateStream. Complex type InterestRateStream is described here: https://www.fpml.org/spec/fpml-5-12-4-rec-1/html/confirmation/schemaDocumentation/schemas/fpml-ird-5-12_xsd/complexTypes/InterestRateStream.html
InterestRateStream documentation has its own annotation and contains references to elements that were defined using this complex type. In the case of InterestRateStream, it is capFloorStream and swapStream.

Having this example, we can generalize and say that complex type is underlying the elements. You define one complex type and you can re-use it many times for various elements.
Use FpML® to create flexible and automated systems
Contact us and see how we can help you get started with the ISDA™ standard.
By submitting this form, you agree that Finaprins may contact you occasionally via email to make you aware of Finaprins products and services. You may withdraw your consent at any time. For more details see the Finaprins Privacy Policy.
Photo by David Rodrigo on Unsplash