# Using multiple IF statements with OR in Tag Properties

**URL:** <https://forum.inductiveautomation.com/t/using-multiple-if-statements-with-or-in-tag-properties/33690>\
**Category:** Ignition\
**Tags:** ignition80\
**Created:** [April 5, 2020, 2:44pm UTC](https://forum.inductiveautomation.com/t/using-multiple-if-statements-with-or-in-tag-properties/33690 "2020-04-05T14:44:39Z")\
**Posts on this page:** 1\
**Showing post:** 7

<div class="post-metadata">

**Author:** ![witman](https://avatars.discourse-cdn.com/v4/letter/w/d2c977/32.png) [@witman](https://forum.inductiveautomation.com/u/witman)\
**Post date:** [April 6, 2020, 7:14pm UTC](https://forum.inductiveautomation.com/t/using-multiple-if-statements-with-or-in-tag-properties/33690/7 "2020-04-06T19:14:46Z")

</div>

@Dmart, a few reasons I avoid using `tag()`:

1. **Performance** :

> [@Nesting Not Allowed while using Properties in a Template to turn on a Light](http://forum.inductiveautomation.com/t/nesting-not-allowed-while-using-properties-in-a-template-to-turn-on-a-light/33609/16):
>
> Yes, there is. If the items that comprise your tagpath are updated, even if yielding the same result path, the entire expression containing the tag() function will have to execute. With indirect binding, this doesn’t happen. The strings themselves have to be reconstructed every time, even if not changing, slowing down the final expression execution. There are a few cases with computed gateway tags where the tag() expression is the only good way to do indirection, and the dynamic stuff above…

1. **Readability** : the OP's expression would be much shorter and easier to read if made of short custom property names rather than the `tag()` expressions.

2. **Read/write Binding** : This only matters when you need to write, but the `tag()` instruction doesn't support writing.

3. **Flexibility/maintainability** : I find it's generally easier to test/troubleshoot/add to something broken into simple component parts, rather than one big expression. Although I'll admit to creating a few multi-screen expressions early on, I probably wouldn't do that if recreating them now.

---

_[View the full topic](https://forum.inductiveautomation.com/t/using-multiple-if-statements-with-or-in-tag-properties/33690)._
