Building Housing and facility structure
Create only the physical structure your collection actually uses. PMA can represent anything from one standalone enclosure to rooms full of racks and stacks, while keeping animals, environment, equipment, maintenance, capacity, Spatial Routes, BioShield, and operational work linked to the right place.
Before you begin
- Know what physical Housing you actually want to represent now. You can add more hierarchy later.
- Choose durable names or codes that do not depend on the current animal occupant.
- For repeated Housing, know approximately how many positions you need.
- A Facility or Room parent is optional. Create one only when it reflects your real setup.
- If you use a governed Housing template, review the generated plan before creating live Housing.
Interface walkthrough
These annotated interface maps describe the current PMA controls. They do not replace a real record review in your workspace.
The direct creation path is the default for ordinary setup. Multiple Enclosures can create a real stack of assignable positions immediately without requiring a template approval workflow.
Facility and Room structure adds useful context for larger operations but is not a prerequisite for creating or using standalone Housing.
Generated rack or stack positions are real Housing records. Empty positions can receive an animal immediately after creation.
Use deeper structure when you need it. These controls enrich real Housing; they are not artificial steps every keeper must complete.
Step-by-step workflow
Start with the physical thing you need
Open Housing → Add Housing and choose an individual enclosure, a group of repeated enclosures, or a rack system. Do not create a Facility simply to satisfy PMA.
Name the Housing for long-term identity
Use a stable name and, where useful, a unique code. Avoid names tied to the current animal because occupants can change while the Housing record and its history remain.
Choose the number of repeated positions
For a rack or stack, set the position count. PMA generates the real child positions so they can be viewed, assigned, labeled, scanned, and tracked independently.
Add parent structure only when useful
Place Housing under a Room or Facility when that mirrors your physical operation. A simple keeper can leave it standalone; a larger facility can build Facility → Room → Rack / Stack → Position as needed.
Review generated positions
After creation, inspect the Housing Positions view. Confirm codes, position count, and Empty/Occupied state before assigning animals.
Assign animals from either side
An unassigned animal can be placed into an empty position from the Housing workflow, or its Housing can be changed from the animal record. Both paths use the same assignment authority and history.
Add environment, equipment, and maintenance context
When needed, connect environmental target zones, heat sources, controllers, sensors, lighting, other equipment, and recurring maintenance to the correct Housing level.
Use templates when repetition benefits from governance
Housing Templates remain available for reusable reviewed designs. Owners/admins can use the one-action Save & create Housing path when appropriate, while staged draft → approve → apply remains available for governed teams.
Expected result
Your Housing screen represents the real collection structure at the level of detail you need. Standalone enclosures work without a Facility parent, repeated positions are individually assignable, and larger operations can add room/facility context without changing the underlying animal-assignment model.
Safety boundaries
- Creating a new PMA collection does not automatically create a Main Facility or other placeholder Housing.
- Legacy collections may still contain an older generated Main Facility if another PMA record depends on it. PMA preserves referenced data rather than deleting it automatically.
- An animal does not need Housing selected at creation time; Unassigned is a valid state.
- Shared Housing requires the explicit Share Housing workflow and compatibility acknowledgement rather than silently placing multiple animals together.
- Housing templates never silently create live records or overwrite protected verified settings.
- Capacity and environmental values are operational records, not welfare, veterinary, electrical, building-code, or regulatory certification.
Troubleshooting
I expected PMA to create Main Facility automatically
That older onboarding behavior has been retired. Add a Facility only if it represents a real facility. You can create standalone Housing, racks, stacks, or animals without it.
My older collection still has Main Facility
PMA automatically archives only the exact old generated Main Facility when it is completely unused. If it has child Housing or any PMA dependency, it is preserved. Review it before reorganizing the hierarchy; do not delete a referenced root simply to make the screen look cleaner.
A Housing code conflicts
Search the whole organization, including archived records. Rename the proposed code rather than bypassing uniqueness because labels, scans, imports, and history depend on durable identity.
I created a rack or stack but cannot place an animal
Open its Housing Positions screen and choose an Empty generated position. Confirm the animal is not already in another destination requiring a move/share/swap decision.
Arrow keys scroll the page instead of moving through positions
Select an animal for keyboard placement first. PMA moves focus into the Housing map so the arrow keys navigate rows/columns and Enter places the selected animal.
A template cannot be applied
Confirm the template/version is eligible for the action, generated codes are unique, the destination is valid, and no protected verified value would be overwritten. For ordinary first-run Housing, use direct Add Housing instead of a template.