---
title: "PSPDFKit 6.5 Migration Guide"
canonical_url: "https://www.nutrient.io/guides/ios/migration-guides/pspdfkit-6-5-migration-guide/"
md_url: "https://www.nutrient.io/guides/ios/migration-guides/pspdfkit-6-5-migration-guide.md"
last_updated: "2026-06-11T12:06:19.963Z"
description: "Migration guide for Nutrient iOS SDK version 6.5 with breaking changes, API updates, and upgrade instructions."
---

[PSPDFKit&nbsp;6.5 for iOS is our latest framework update](https://www.nutrient.io/blog/pspdfkit-ios-6-5/).

## Forms

In this version, we completely reengineered how form fields are represented in PSPDFKit. The biggest difference is that form elements are split into two distinct classes now: [`PSPDFFormField`](https://www.nutrient.io/api/ios/documentation/pspdfkit/pdfformfield) and [`PSPDFFormElement`](https://www.nutrient.io/api/ios/documentation/pspdfkit/formelement).

Previously, [`PSPDFFormElement`](https://www.nutrient.io/api/ios/documentation/pspdfkit/formelement) represented both non-UI form field data and the widget annotation. This occasionally caused problems and required us to keep a hierarchy of annotations. With this change, a [`PSPDFFormElement`](https://www.nutrient.io/api/ios/documentation/pspdfkit/formelement) is strictly only an annotation that will be displayed on the screen, while [`PSPDFFormField`](https://www.nutrient.io/api/ios/documentation/pspdfkit/pdfformfield) takes over all the backend work of modifying form field states.

### Changes

In addition to being able to get all [`PSPDFFormElement`](https://www.nutrient.io/api/ios/documentation/pspdfkit/formelement)s from [`PSPDFFormParser`](https://www.nutrient.io/api/ios/documentation/pspdfkit/pdfformparser), we introduced a property called `formFields` for retrieving all form fields.

The `parent` or `kids` properties are no longer available because a `PSPDFFormElement` no longer forms a hierarchy. You can retrieve the linked [`PSPDFFormField`](https://www.nutrient.io/api/ios/documentation/pspdfkit/pdfformfield) using the `formField` property.

The [`PSPDFFormField`](https://www.nutrient.io/api/ios/documentation/pspdfkit/pdfformfield) has an `annotations` property that lists all annotations connected to this specific form field. For example, a [`PSPDFButtonFormField`](https://www.nutrient.io/api/ios/documentation/pspdfkit/buttonformfield) can have multiple `PSPDFButtonFormElement`s listed in its `annotations` property, all of which form one radio button group.

Properties that only dealt with form field data, like `mappingName` and `alternativeFieldName`, have been moved to [`PSPDFFormField`](https://www.nutrient.io/api/ios/documentation/pspdfkit/pdfformfield).

The [`PSPDFWidgetAnnotation`](https://www.nutrient.io/api/ios/documentation/pspdfkit/widgetannotation) property `shouldRenderApperanceStream` has been removed due to internal changes that require us to render the appearance stream.

After setting the `contents` or `value` of a [`PSPDFFormElement`](https://www.nutrient.io/api/ios/documentation/pspdfkit/formelement), it’s no longer necessary to send a `PSPDFAnnotationChangedNotification` notification. This will be handled by the framework internally, and the UI will update accordingly.

### XFDF Changes

Previously, it was possible to import [`PSPDFFormElement`](https://www.nutrient.io/api/ios/documentation/pspdfkit/formelement) annotations using XFDF. According to the XFDF spec, this is actually not supported and has been removed.

### Swift 2.3

With PSPDFKit 6.5 for iOS, we changed the superclass of [`PSPDFConfigurationBuilder`](https://www.nutrient.io/api/ios/documentation/pspdfkitui/pdfconfigurationbuilder) to [`PSPDFBaseConfigurationBuilder`](https://www.nutrient.io/api/ios/documentation/pspdfkit/baseconfigurationbuilder). When using Swift 2.3, this type isn’t correctly inferred, which leads to a compiler error, and which seems to be a bug in Swift 2.3. To fix this, you need to cast the closure parameter to [`PSPDFConfigurationBuilder`](https://www.nutrient.io/api/ios/documentation/pspdfkitui/pdfconfigurationbuilder):

```swift

let configuration = PSPDFConfiguration { (builder: PSPDFConfigurationBuilder) in

```

This works correctly on Swift 3 and doesn’t need any casting.
---

## Related pages

- [14 2 Migration Guide](/guides/ios/migration-guides/14-2-migration-guide.md)
- [Pspdfkit 10 3 Migration Guide](/guides/ios/migration-guides/pspdfkit-10-3-migration-guide.md)
- [Migrating From Apple Pdfkit](/guides/ios/migration-guides/migrating-from-apple-pdfkit.md)
- [Migrating To Advanced Digital Signatures Api](/guides/ios/migration-guides/migrating-to-advanced-digital-signatures-api.md)
- [Migrate to electronic signatures](/guides/ios/migration-guides/migrating-to-electronic-signatures.md)
- [Pspdfkit 10 4 Migration Guide](/guides/ios/migration-guides/pspdfkit-10-4-migration-guide.md)
- [Pspdfkit 10 Migration Guide](/guides/ios/migration-guides/pspdfkit-10-migration-guide.md)
- [Pspdfkit 11 3 Migration Guide](/guides/ios/migration-guides/pspdfkit-11-3-migration-guide.md)
- [Pspdfkit 11 5 Migration Guide](/guides/ios/migration-guides/pspdfkit-11-5-migration-guide.md)
- [Pspdfkit 12 2 Migration Guide](/guides/ios/migration-guides/pspdfkit-12-2-migration-guide.md)
- [Pspdfkit 3 Migration Guide](/guides/ios/migration-guides/pspdfkit-3-migration-guide.md)
- [Pspdfkit 13 Migration Guide](/guides/ios/migration-guides/pspdfkit-13-migration-guide.md)
- [Pspdfkit 5 Migration Guide](/guides/ios/migration-guides/pspdfkit-5-migration-guide.md)
- [Pspdfkit 4 Migration Guide](/guides/ios/migration-guides/pspdfkit-4-migration-guide.md)
- [Pspdfkit 13 3 Migration Guide](/guides/ios/migration-guides/pspdfkit-13-3-migration-guide.md)
- [Pspdfkit 12 3 Migration Guide](/guides/ios/migration-guides/pspdfkit-12-3-migration-guide.md)
- [Pspdfkit 11 4 Migration Guide](/guides/ios/migration-guides/pspdfkit-11-4-migration-guide.md)
- [Pspdfkit 6 Migration Guide](/guides/ios/migration-guides/pspdfkit-6-migration-guide.md)
- [Pspdfkit 7 6 Migration Guide](/guides/ios/migration-guides/pspdfkit-7-6-migration-guide.md)
- [Pspdfkit 12 Migration Guide](/guides/ios/migration-guides/pspdfkit-12-migration-guide.md)
- [Pspdfkit 9 4 Migration Guide](/guides/ios/migration-guides/pspdfkit-9-4-migration-guide.md)
- [Pspdfkit 9 2 Migration Guide](/guides/ios/migration-guides/pspdfkit-9-2-migration-guide.md)
- [Pspdfkit 9 Migration Guide](/guides/ios/migration-guides/pspdfkit-9-migration-guide.md)
- [Pspdfkit 9 3 Migration Guide](/guides/ios/migration-guides/pspdfkit-9-3-migration-guide.md)
- [Upgrading](/guides/ios/getting-started/upgrading.md)
- [PSPDFKit 8 migration guide for iOS developers](/guides/ios/migration-guides/pspdfkit-8-migration-guide.md)
- [Pspdfkit 9 5 Migration Guide](/guides/ios/migration-guides/pspdfkit-9-5-migration-guide.md)
- [Migrate to PSPDFKit 7 with ease](/guides/ios/migration-guides/pspdfkit-7-migration-guide.md)
- [14 9 Migration Guide](/guides/ios/migration-guides/14-9-migration-guide.md)

