Main > Reference Manual > Modeling > Location

A location is a (physical or logical) place where resources, buffers and operations are located.

FrePPLe uses locations from reporting purposes, and the 'available' calendar is used to model the working hours and holidays of resources, buffers and operations.

Fields

Field Type Description
name non-empty string

Name of the location.
This is the key field and a required attribute.

description string

Free format description.

category normalizedString

Free format category.

subcategory normalizedString

Free format subcategory.

available calendar

A calendar that defines the working hours and holidays for the location.
All operations, buffers and resources at this location will use it.

owner location

Locations are organized in a hierarchical tree.
This field defines the parent location.

members list of location

Locations are organized in a hierarchical tree.
This field defines a list of child locations.

hidden boolean

Marks entities that are considered hidden and are normally not shown to the end user.

action A
C
AC (default)
R

Type of action to be executed:

  • A: Add an new entity, and report an error if the entity already exists.
  • C: Change an existing entity, and report an error if the entity doesn't exist yet.
  • AC: Change an entity or create a new one if it doesn't exist yet.
  • R: Remove an entity, and report an error if the entity doesn't exist.

Example XML structures

  • Adding or changing a location
 <plan>
    <locations>
       <location name="site A">
         <category>cat A</category>
         <owner name="Manufacturing sites"/>
       </location> 
    </locations>
 </plan>
  • Alternate format of the previous example
 <plan>
    <locations>
       <location name="Manufacturing sites">
         <members>
           <location name="site A" category="cat A"/>
         </members>
       </location> 
    </locations>
 </plan>
  • Deleting a location
 <plan>
    <locations>
       <location name="site A" action="R"/>
    </locations>
 </plan>

Example Python code

  • Adding or changing a location
    loc1 = frepple.location(name="Manufacturing sites")
    loc2 = frepple.location(name="site A", category="cat A", owner=loc1)
  • Deleting a location
    frepple.location(name="site A", action="R")