# spec
`oc explain` for details and documentation about fields and specifications
`yaml` is human readable formatting
`json` is more programmatic, used when making API calls
# output formatting
```bash
json|yaml|wide|name|custom-columns=...|custom-columns-file=...|go-template=...|go-template-file=...|jsonpath=...|jsonpath-file=...
```
## [jsonpath](https://kubernetes.io/docs/reference/kubectl/jsonpath/)
jsonpath expressions are demarked by curly braces `{}` and are quote sensitive
| expression | description |
| - | - |
| `@` | current object |
|`.` | the child of the current object |
| `..` | child of the child object (recursive descent) |
| `*` | wildcard |
| `?()` | 'where' filter |
| `,` | join |
| `range,end` | iterate through a list |
## json
retrieve the json body of the selected resource. powerful when combined with [[jq]].