> For the complete documentation index, see [llms.txt](https://docs.openbrim.org/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.openbrim.org/developers/paramml-developer-guide/core-objects/base-core-object/private.md).

# Private

A private object is a special container that holds parameters specific to another object. It enables communication between objects. The private object contains the input parameters of another object and the intermediate parameters ("Export" object) that are intended to be passed to the application.\
It is useful for understanding how communication works in the application when creating an object in the Private Object Library.

When creating object A, if object B is needed, object B is placed in "Private" to represent it, and the communication between the two is controlled as if object B was called in the application and called object A. This control takes place within the Library and does not affect the application.

**Example:**

Object Name: “Export\_Object1”

The object from which the data will be obtained (the Object data is exported). \`\`\`xml

````
The object for which the data will be collected and utilized (the object collects the data into). ```xml
<O N="Private_Object1" T="Project" Category="Core Objects">
    <!-- created by ParamML Examples on 27.01.2023 -->
    <P N="width" V="20" Role="Input" />
    <P N="RefObj" V="E_O.midpt" D="Reference Object" />
    <O T="Volume" X="RefObj[0]" Y="RefObj[1]" Z="RefObj[2]">
        <O T="Surface">
            <O T="Point" X="-width/2" Y="-width/2" />
            <O T="Point" X="width/2" Y="-width/2" />
            <O T="Point" X="width/2" Y="width/2" />
            <O T="Point" X="-width/2" Y="width/2" />
        </O>
        <O T="Surface" Z="width">
            <O T="Point" X="-width/2" Y="-width/2" />
            <O T="Point" X="width/2" Y="-width/2" />
            <O T="Point" X="width/2" Y="width/2" />
            <O T="Point" X="-width/2" Y="width/2" />
        </O>
    </O>
    <O T="Private">
        <O N="E_O" T="Export_Object1">
            <P N="length" V="50" />
            <P N="width" V="100" />
            <P N="depth" V="150" />
            <P N="Topelevation" V="depth" />
            <P N="ElevationDif" V="Topelevation+25" />
            <P N="midpt" V="onliner(refline,0.5)" />
            <O N="refline" T="Line" Exported="1">
                <O N="R1" T="Point" X="0" Y="0" Z="Topelevation" />
                <O N="R2" T="Point" X="length" Y="width" Z="Topelevation" />
            </O>
        </O>
    </O>
</O>
````

\| Object A is an object within the "Private" object of object B. They function independently as if they were called in this application. The B object that we created can be viewed by clicking the "Hide Private Objects" button, and the objects in the Private Object can be shown again by clicking the "Show Private Objects" button. | ![](https://openbrim.atlassian.net/wiki/download/attachments/2155741193/image-20230127-155150.png?api=v2) | ![](https://openbrim.atlassian.net/wiki/download/attachments/2155741193/image-20230127-155231.png?api=v2) | ![](https://openbrim.atlassian.net/wiki/download/attachments/2155741193/image-20230127-155310.png?api=v2) | ![](https://openbrim.atlassian.net/wiki/download/attachments/2155741193/image-20230127-155343.png?api=v2) To view this example in the library, see (Export→ <https://openbrim.org/platform/?application=inc&author=ParamML_Examples_OpenBrIM+Platform&obj=objidnopmup6rh6fjejdvfax1g&folder=Core+Objects> , Private→ <https://openbrim.org/platform/?application=inc&author=ParamML_Examples_OpenBrIM+Platform&obj=objid4mtx204cyzyyd18p9l2uj8&folder=Core+Objects>)


---

# 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.openbrim.org/developers/paramml-developer-guide/core-objects/base-core-object/private.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.
