<｜begin▁of▁sentence｜>### Instruction:
In a hypothetical water distribution network modelled using graph theory, where 'Node 1' might represent a central reservoir and 'Node 2' a secondary water storage facility, we've established one pipeline that allows the water to cycle back into the central reservoir (akin to a recirculation system), and another pipeline running from the central reservoir to the secondary water storage facility.

Could you detail how many recirculatory pipelines (selfloop edges) are present in this schematic? Moreover, could you craft a JSON-like representation of this water distribution network, assigning unique identifiers and labels to both the reservoirs (nodes) and the pipelines (edges)?

Please ensure this is contained within the context of developing an efficient and practical water management system.
### Response:
import networkx as nx

# Create a graph
G = nx.Graph()

# Add nodes to the graph
G.add_nodes_from([(1, {'label': 'Node 1'}), (2, {'label': 'Node 2'})])

# Add edges including a selfloop
G.add_edges_from([(1, 1, {'label': 'Selfloop'}), (1, 2, {'label': 'Edge from Node 1 to Node 2'})])

# Get the number of selfloop edges
selfloops = nx.number_of_selfloops(G)

# Display the number of selfloops
print('Number of selfloop edges:', selfloops)

# Display the graph nodes and edges as a JSON-like object
nodes = [{'id': n, 'label': G.nodes[n]['label']} for n in G.nodes]
edges = [{'source': u, 'target': v, 'label': G.edges[u, v]['label']} for u, v in G.edges]
graph_info = {'graph nodes': nodes, 'graph edges': edges}
print(graph_info)
<|EOT|>
