title: Confusing Kubernetes semantics in NetworkPolicy yaml spec
body: <p>Observe: the field value of <code>ingress</code> under <code>spec</code>.</p>
  
  <p>Case 1: DENY all traffic to an application. Here ingress takes an empty array as its value.</p>
  
  <pre><code>kind: NetworkPolicy
  apiVersion: networking.k8s.io/v1
  metadata:
    name: web-deny-all
  spec:
    podSelector:
      matchLabels:
        app: web
    ingress: [] # &lt;-- This DENIES ALL traffic
  </code></pre>
  
  <p>Case 2: ALLOW all traffic to an application. Here ingress takes a list item of empty map as its value. </p>
  
  <pre><code>kind: NetworkPolicy
  apiVersion: networking.k8s.io/v1
  metadata:
    name: web-allow-all
    namespace: default
  spec:
    podSelector:
      matchLabels:
        app: web
    ingress:
    - {}  # &lt;-- This ALLOWS ALL traffic
  </code></pre>
  
  <p>I'm just wondering that if I were to read out loud the assignment values of <code>ingress</code> of the above how do I read it?  </p>