> For the complete documentation index, see [llms.txt](https://docs.umbraco.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.umbraco.com/umbraco-forms/13.latest/editor/defining-and-attaching-prevaluesources/prevalue-source-types.md).

# Prevalue Source Types Overview

There are some default prevalue source types that can be used.

Here is a quick overview of them:

* **Get values from textfile**
  * Upload a textfile that contains the prevalues. Each prevalue should have its own line in the file. Once the file has been uploaded, you can find it in `~/wwwroot/App_Data/UmbracoForms/Data/PreValueTextFiles/{GUID}` where the `{GUID}`is replaced with the pre-value ID.
* **Umbraco Documents**
  * Allows to use content nodes from a specific source as prevalues. You can define the root node by either
  * Choosing a node directly from the Content tree or
  * Using XPath

Additional settings can be applied:

* Select which **Value field** should be used for the value of the prevalue.
* Select **Use current page as root** instead of choosing a specific root node. *The preview is not available when this setting is enabled.*
* Select a specific **Document type**, if the selected root node contains a different Document Type.
* Select **List all Descendants** of the selected root node to list all levels of descendants.
* Select **Order by** from the drop-down list to display how the prevalue list should be ordered.
* **SQL Database**
  * Connect to a OleDB compatible database table and construct a prevalue source from it. Once selected, it will be editable from the Forms interface.
  * The following configurations need to be set:
  * Connection string (either choose one from your web.config or add another from a textfield.
  * Connection String from configuration
  * Table Name
  * Key Column
  * Value Column
  * Caption Column
* **Umbraco Data Type Prevalues**
  * Choose an Umbraco Data Type to use its configured prevalue collection.

In the example below, the prevalue collection from a Data Type called `Home - Font - Radio button` is used:

![Data Type prevalues](/files/tc9iaQEgzomdRfCNH2rl)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.umbraco.com/umbraco-forms/13.latest/editor/defining-and-attaching-prevaluesources/prevalue-source-types.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
