# document

The `document` finds a node-set in an external document, or multiple external documents, and returns the resulting node-set.

### Syntax

```document(URI [,node-set] )
```

### Arguments

`URI `
An absolute or relative URI of the document to be retrieved. The URI may also include a fragment identifier.
`node-set ` (optional)
An expression pointing to a node-set in the external document that should be returned.

A node-set.

### Notes

• If the URI contains a fragment identifier and that fragment can be identified in the external document, that fragment will be treated as the root in the `node-set ` argument's expression. If the `node-set ` argument is omitted, the entire fragment will be returned.
• If the `URI ` argument is a node-set, and the second argument is present, each node in the node-set will be evaluated as a separate URI, and the returned node-set will be as if the `document` function has been called multiple times (each time with the same second argument just as given in the function call) and the resulting node-sets had been concatenated into a single node-set.
• Other specific conditions exist with specified behaviors. See the XSLT 1.0 documentation for details.
• Since the URI is relative to the XSL document, `document("")` would return the root node of the current document.

This function is an XSLT-specific addition to XPath. It is not a part of the core XPath function library.

XSLT 1.0 12.1

Supported.