# Resources & Types

### Resources

Resources in the domain of Rembrandt are objects or elements needed in order to perform activities or for completing business processes. Therefore, human workers can be seen as resources, but also machinery required for a task is a resource. Overall, not only active resources are considered, but also passive resources that are needed in order to execute an activity are seen as resources.

### Resource Types & their Hierarchy

Resource types are used to group similar resources and to define their data-structure. Therefore, before any resources can be created, the corresponding resource type including its attributes has to be defined. To allow class-like structures, Rembrandt supports inheritance of types, such sub-types can be used to refine existing types and to depict real-world hierarchies.

> Example: In the logistics domain, there are several different objects that need to be handled. The most basic, abstract element is a *Shipment*. Apart from the individual manifestations, each shipment has a receiver, a sender and flag indicating if it already was delivered. In addition, there are the various actual shipment elements such as *Letters* or *Parcels*. They share the attributes of a shipment, but also have their own specific characteristics: a letter has information about the used stamp, whereas parcels have an assigned weight and dimensions. This hierarchy could be further extended by an *InternationalParcel*, that takes all of *Parcel*'s attributes and adds an attribute for customs information.

![Class diagram of the resource type hierarchy of Shipment, Letter and Parcel.](/files/-LmJUykMAkjiUaQCv7hY)

###


---

# Agent Instructions: 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:

```
GET https://rembrandt.gitbook.io/docs/concepts/resource-modeling-and-management.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
