background
            BackgroundImplementation
    
              Bases: BasicImplementation, BackgroundInterface
The default Background Implementation exposes an ordinary inventory database as a collection of LCI results. Because it does not perform any ordering, there is no way to distinguish between foreground and background elements in a database using the proxy. It is thus inconsistent for the same resource to implement both inventory and [proxy] background interfaces.
            background_flows(search=None, **kwargs)
    all process reference flows are background flows
Parameters:
| Name | Type | Description | Default | 
|---|---|---|---|
search | 
            
               | 
            
                  None
             | 
          |
kwargs | 
            
               | 
            
                  {}
             | 
          
Returns:
| Type | Description | 
|---|---|
| 
               | 
          
            consumers(process, ref_flow=None, **kwargs)
    Not supported for trivial backgrounds
Parameters:
| Name | Type | Description | Default | 
|---|---|---|---|
process | 
            
               | 
            required | |
ref_flow | 
            
               | 
            
                  None
             | 
          |
kwargs | 
            
               | 
            
                  {}
             | 
          
Returns:
| Type | Description | 
|---|---|
| 
               | 
          
            cutoffs(process, ref_flow=None, **kwargs)
    All processes are LCI, so they have only exterior flows. Emissions are the exterior flows with non-elementary contexts
Parameters:
| Name | Type | Description | Default | 
|---|---|---|---|
process | 
            
               | 
            required | |
ref_flow | 
            
               | 
            
                  None
             | 
          |
kwargs | 
            
               | 
            
                  {}
             | 
          
Returns:
| Type | Description | 
|---|---|
| 
               | 
          
            dependencies(process, ref_flow=None, **kwargs)
    All processes are LCI, so they have no dependencies
Parameters:
| Name | Type | Description | Default | 
|---|---|---|---|
process | 
            
               | 
            required | |
ref_flow | 
            
               | 
            
                  None
             | 
          |
kwargs | 
            
               | 
            
                  {}
             | 
          
Returns:
| Type | Description | 
|---|---|
| 
               | 
          
            emissions(process, ref_flow=None, **kwargs)
    All processes are LCI, so they have only exterior flows. Emissions are the exterior flows with elementary contexts
Parameters:
| Name | Type | Description | Default | 
|---|---|---|---|
process | 
            
               | 
            required | |
ref_flow | 
            
               | 
            
                  None
             | 
          |
kwargs | 
            
               | 
            
                  {}
             | 
          
Returns:
| Type | Description | 
|---|---|
| 
               | 
          
            exterior_flows(direction=None, search=None, **kwargs)
    Exterior flows are all flows that do not have interior terminations (i.e. not found in the index targets) Elementary contexts have a sense, but intermediate contexts do not [necessarily]- so we need some way to determine their directionality. This whole implementation is just a stand-in anyway- the important thing is that this is handled correctly in tarjan
Parameters:
| Name | Type | Description | Default | 
|---|---|---|---|
direction | 
            
               | 
            
                  None
             | 
          |
search | 
            
               | 
            
                  None
             | 
          |
kwargs | 
            
               | 
            
                  {}
             | 
          
Returns:
| Type | Description | 
|---|---|
| 
               | 
          
            foreground_flows(search=None, **kwargs)
    No foreground flows in the proxy background
Parameters:
| Name | Type | Description | Default | 
|---|---|---|---|
search | 
            
               | 
            
                  None
             | 
          |
kwargs | 
            
               | 
            
                  {}
             | 
          
Returns:
| Type | Description | 
|---|---|
| 
               | 
          
            is_in_scc(process, ref_flow=None, **kwargs)
    Distinction between is_in_background and is_in_scc will reveal the proxy nature of the interface
Parameters:
| Name | Type | Description | Default | 
|---|---|---|---|
process | 
            
               | 
            required | |
ref_flow | 
            
               | 
            
                  None
             | 
          |
kwargs | 
            
               | 
            
                  {}
             | 
          
Returns:
| Type | Description | 
|---|---|
| 
               | 
          
            setup_bm(index=None)
    Requires an index interface or catalog query <-- preferred This must provide .get() and .get_context() (so really it should maybe be 'basic' The trivial implementation uses .flows() and .targets() to mock up an exterior flows method
Parameters:
| Name | Type | Description | Default | 
|---|---|---|---|
index | 
            
               | 
            
                  None
             | 
          
Returns:
| Type | Description | 
|---|---|
| 
               | 
          
            sys_lci(demand, **kwargs)
    For LCI, we simply yield process direct exchanges as LCI. For sys_lci, we should just do the same. yield the supplied demand as a degenerate LCI.
Parameters:
| Name | Type | Description | Default | 
|---|---|---|---|
demand | 
            
               | 
            required | |
kwargs | 
            
               | 
            
                  {}
             | 
          
Returns:
| Type | Description | 
|---|---|
| 
               | 
          
            sys_lcia(process, query_qty, observed=None, ref_flow=None, **kwargs)
    returns an LciaResult object, aggregated as appropriate depending on the interface's privacy level. This is an ensemble function that stitches together bg functions with quantity access.
Parameters:
| Name | Type | Description | Default | 
|---|---|---|---|
process | 
            
               | 
            required | |
query_qty | 
            
               must be an operable quantity_ref. the process must have exchange access  | 
            required | |
observed | 
            
               iterable of DirectedFlows (flow: FlowSpec, direction: str)  | 
            
                  None
             | 
          |
ref_flow | 
            
               | 
            
                  None
             | 
          |
kwargs | 
            
               | 
            
                  {}
             | 
          
Returns:
| Type | Description | 
|---|---|
| 
               |