Introduction

XML is the abbreviation for Extensible Markup Language. XML is a syntax used in computer programming to enable use of data in a structured way. XML is a platform independent syntax, maintained by W3C. Specific industry standards such as SOAP, XML Schema, XPath and WSDL have been developed based on XML, and XML is supported (among other syntaxes) by the REST architecture

AFD in XML

Entities and attributes

In XML, AFD entities are always explicitly defined with a tag, for example <party>, <policy> or <financialTransaction>. Attributes are nested under their respective entities and also explicitly defined as an XML tag. For example <contractNumber>, <dataCatalogVersion> or <surname>. The only exception is the entityType attribute, which is given to the relevant entity as an XML attribute. For example <party entityType = "policyHolder">. The filled value of an AFD attribute in XML is always placed between the start and end tags. For example <contractNumber>1234567</policyNumber> or <startDate>2017-01-24</startDate>.

Order of entities and attributes

The order of entities in an XML message is free. The only exception is that AFD messages must always start with the commonFunctional and commonTechnical entities. If an XML Schema is used, the order of the entities must comply with the definitions within the XML Schema. The same applies to attributes: the order can be freely chosen, unless an XML Schema is used in which the order is defined.

Arrays

Unlike JSON, XML does not allow arrays. Instead, it is possible to record the same entity repeatedly. See the example at the bottom of the page, which includes both a party of entityType “insuredPerson” and “policyHolder”.

Encoding

UTF-8 is the default character encoding for XML documents. AFD also applies this standard: no limited character set applies.

Example

<policyStructure>
	<commonFunctional>
		<function>15</function>
		<dataCatalogVersion>99Z</dataCatalogVersion>
	</commonFunctional>
	<policy entityType="policyDetails">
		<porCompany>M088</porCompany>
		<contractNumber>P20190101-010</contractNumber>
		<party entityType="insuredPerson">
			<refKey>R918273645</refKey>
			<surname>Jansen</surname>
			<initials>R.I.O.</initials>
		</party>
		<party entityType="policyHolder">
			<refKey>R6930129</refKey>
			<surname>De Vries</surname>
			<initials>B.D.G.</initials>
		</party>
		<object entityType="vehicle">
			<refKey>SIVI20</refKey>
			<licensePlate>SI-VI-20</licensePlate>
			<objectType>00050</objectType>
		</object>
	</policy>
</policyStructure>

Feedback

Thanks for your feedback.

Post your comment on this topic.

Post Comment