≡ Menu

Occurrence Validations vs BOM Grading

Share the knowledge

I don’t know about you but I sometimes find the Teamcenter documentation to be a bit hard to follow, “check the Werzengablatter checkbox in order to enable the Werzengablatter functionality.” Okay great, but why exactly would I want to enable the Werzengablatter functionality? However, if you dig in there are some gems to be found that don’t get covered in the basic training classes. In particular a treasure trove of useful tools can be discovered when you dig into the BMIDE manual.

Such is the case for a pair of validation options which the BMIDE provides that I recently investigated, Occurrence Validation and BOM Grading. I think I finally managed to figure them out so I’ll try to explain my findings here.


First, at a high level both tools involve analyzing an assembly structure (AKA, Bill of Materials or BOM) and giving you some feedback based on whether or not your structure meets the conditions checked. They are both configured using the BMIDE’s Verification Rules editor and they both evaluate Conditions; if the conditions pass (i.e. they evaluate as True) then that’s good, if they fail (evaluate as False) then that’s bad.


Essentially BOM Grading is a reporting tool. Once configured a user can elect to run a BOM Grading on their assembly to evaluate whether or not their assembly meets some set of conditions. One the other hand, Occurrence Validations are rule enforcers. When they’re configured they verify that the rules configured are followed before they let you add a component to an assembly structure. Occurrence Validation happens automatically every time you add a component to an assembly. You can also run Occurrence Validation can also be run manually on existing assemblies. This is useful if you are concerned that something about your assembly could have changed since it was first made so that it would fail the rules if it was built built now. BOM Grading can only be executed manually.

Assembly Context

Another important difference is that Occurrence Validations can be contextual, by which I mean you can evaluate whether or not a particular component is valid within the context of the parent assembly. BOM Grading however is not contextual, each component is evaluated in isolation.

So let’s say you had three certification levels for your product: Land, Air and Space. Land certified products don’t fly. Air certified products fly in the air and Space certified products go into space. Each certification level is more restrictive than the previous. Land certified products can be built from pretty much any part in the catalog, whether they be certified for Space Use, Air Use or Land use only. Air certified products can only be built from parts that are certified for air or space use. And finally, space certified products can only be built from space certified parts.

In this example if your assembly were somehow designated as a Space product, say by having a part_category attribute that’s set to “SPACE”, then occurrence validation will check each component that’s added to see if it’s qualified as a SPACE part. If it is it’s allowed. If it isn’t, then you will get an error message and won’t be allowed to add the component.

BOM Grading however won’t be able to figure out what level of qualification a component should meet based on its parent assembly; Each component is tested in isolation, independent of any parent structure. Instead you’d configure three types of BOM Graders, one for each qualification level. The Space Qualified BOM Grader will tell you if each component is qualified for Space use, the Air Qualified grader will tell you if each is qualified for air or pace, or not. The Land Qualified BOM grader really won’t have much to do unless there are other rules that have to be checked also.

User Choice

Another difference is that Occurrence Validations are a global set of rules which are checked automatically every time a component is added to assembly and BOM Grading can give users a choice of which Grader to run.

The user has no choice which set of Occurrence Validations are followed. That’s not to say that a EBOM of Parts can’t follow different rules than a Manufacturing Process Plan structure, but it means that the rules are configured to treat parts differently than process plans. The users can’t pick and choose which rules they follow.

BOM Grading however can be set up with multiple Graders, such as Land Certified, Air Certified and Space Certified, and the user can pick which BOM Grader make sense for them to run.


Occurrence Validations BOM Grading
  • Rule enforcer
  • Configured in Verification Rules Editor
  • Evaluates Conditions
  • Components validated independently or in context of assembly
  • Executes automatically
  • May be executed manually
  • Users have no choice
  • Reporting tool
  • Configured in Verification Rules Editor
  • Evaluates Conditions
  • Validates components independent of parent assembly
  • Only Executed manually
  • Users choose the BOM Grader to use
  • http://www.wertel.pro/ Scott Wertel

    You should write the manuals for Teamcenter. Excellent review of these two functions.

    • Jeremie FEBURIE

      I totally agréé with Scott! Vert Nice post!

    • http://plmdojo.com/ Scott Pigman

      Ha, thanks guys. But I don’t think I could do that gig full time.

  • Arnaud Prugent

    Hi Scott,
    How can I do a BOM Grader, please?

  • Галия Габитова

    Good day! Thank you for this post! I really enjoy your blog and find it really helpfull! Where I can find Occurrence Validations functionality? Is this default or custom app?

  • Pekka Jokinen

    Thanks for explaining! I’m not sure I remember this when the question pops up, but I know where to go to refresh my memory.

Optimization WordPress Plugins & Solutions by W3 EDGE