---
title: Input and Output Options
framework: foundation
role: collectionGroup
role_heading: API Collection
path: foundation/input_and_output_options
---

# Input and Output Options

Input and output options specifically intended for NSXMLDocument objects.

## Overview

Overview Because NSXMLDocument is a subclass of XMLNode, you can also use the relevant input and output options described in Constants in the NSXMLNode class reference. You can specify input options in the NSXMLDocument methods init(contentsOf:options:), init(data:options:), init(xmlString:options:). The xmlData(options:) method takes output options.

## Topics

### Constants

- [documentTidyHTML](foundation/xmlnode/options/documenttidyhtml.md)
- [documentTidyXML](foundation/xmlnode/options/documenttidyxml.md)
- [documentValidate](foundation/xmlnode/options/documentvalidate.md)
- [documentXInclude](foundation/xmlnode/options/documentxinclude.md)
- [documentIncludeContentTypeDeclaration](foundation/xmlnode/options/documentincludecontenttypedeclaration.md)

## See Also

### Constants

- [XMLDocument.ContentKind](foundation/xmldocument/contentkind.md)
- [Document Content Types](foundation/document-content-types.md)
