# Best practice for setting tags on \`UsdShadeMaterial\`

**URL:** <https://forum.aousd.org/t/best-practice-for-setting-tags-on-usdshadematerial/1707>\
**Category:** USD\
**Created:** [July 22, 2024, 6:14pm UTC](https://forum.aousd.org/t/best-practice-for-setting-tags-on-usdshadematerial/1707 "2024-07-22T18:14:51Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![nvmkuruc](https://avatars.discourse-cdn.com/v4/letter/n/76d3ee/32.png) [@nvmkuruc](https://forum.aousd.org/u/nvmkuruc)\
**Post date:** [July 22, 2024, 6:14pm UTC](https://forum.aousd.org/t/best-practice-for-setting-tags-on-usdshadematerial/1707/1 "2024-07-22T18:14:51Z")

</div>

Hi all. Looking for some feedback on how to reason about `UsdShadeMaterial` inputs that aren’t connected to anything in a material’s contained shader networks.

Specifically, if I wanted to add some tagging to a material, what is the view on using inputs to do this?

```auto
bool inputs:matts_material_tags:matts_favorite_material = true

```

Would you argue that it’s akin to having an unused variable and code and worthy of a warning? Or is this usage neutral?

Would it be preferred to do this instead?

```auto
custom bool matts_material_tags:matts_favorite_material = true

```

```auto
bool userProperties:matts_material_tags:matts_favorite_material = true

```

Thanks for the thoughts!

---

<div class="post-metadata">

**Author:** ![spiff](https://sea2.discourse-cdn.com/flex016/user_avatar/forum.aousd.org/spiff/32/22_2.png) [@spiff](https://forum.aousd.org/u/spiff)\
**Post date:** [July 23, 2024, 3:21pm UTC](https://forum.aousd.org/t/best-practice-for-setting-tags-on-usdshadematerial/1707/2 "2024-07-23T15:21:09Z")

</div>

I wouldn’t consider unconnected inputs an error or warning, as I can imagine situations where a common Material interface is constructed, but not all variations or instances of the Material have a use for all the inputs.

But that said, it does seem clearer to reserve `inputs:` for properties potentially meaningful to the consumer. For the property you give as an example, userProperties _does_ seem appropriate, and reminds me once again that there’s a decade old TODO of adding some schema for userProperties!

---

<div class="post-metadata">

**Author:** ![nvmkuruc](https://avatars.discourse-cdn.com/v4/letter/n/76d3ee/32.png) [@nvmkuruc](https://forum.aousd.org/u/nvmkuruc)\
**Post date:** [July 23, 2024, 4:23pm UTC](https://forum.aousd.org/t/best-practice-for-setting-tags-on-usdshadematerial/1707/3 "2024-07-23T16:23:56Z")

</div>

Thanks for the guidance.
