Differentiate actual Families that are indeed Valves

I need a better way to determine what is a Valve other than to see if “Valve” is in the family name.
I thought the Part Type Parameter might do it… but the Value comes out as an index.
Is there a way to assure I will get all Valves…
Can someone give me a leg up please?

See main Graph here… currently working on Family Names having the word Valve in the name.
But I’ve found out some Families that qualify may not actually be Valves.

We need a model to check ideas against. Rebuilding such a data set is not a trivial task.

1 Like

I’ll see what I can do.

ok… here ya go. @JacobSmall

See the Valve Schedule to see the action happening. The sort on the schedule puts the items at the top that do not have a System Abbreviation. This is/was the issue that started me at looking at finding a better way to mark the Families that are actually Valves because it brought these to the top of the schedule. The items have “Valve” in their name, but they are not Valves.

Currently I have a Boolean Node setup to default the graph to assign “Valve” to Type Comments parameter. Changing it to True will remove the “Valve”.

(the model is too large to upload - I could upload to google drive. Let me know if this would work)

Let me know if you have any questions.
(oh and thanks for taking a look)

01-ValveTag-ValveToSchFilter-Rev_03.dyn (120.3 KB)

The model is what I would really need (I don’t do the type of work you do so it’d take me awhile to recreate your situation, and I might not have similar enough families to match your issues when I was done).

Try to simplify the model first - remove 90% of the stuff or build similar from scratch. We only need 2 valves really. I’ll see what I can find then (no promises though).

Let me see if I can strip down the model. The dyn graph doesn’t really need model objects except to see the schedule. It walk through the families/types loaded to the model.

Wait before you do much. I’ll get the model striped down further,

1 Like

unsuccessful at getting the model striped down. I think I am too green with Revit yet to know how to go about this. At one point my graph started to throw errors.

At any rate, @JacobSmall I uploaded the model to my google drive. Sent you a private message.

1 Like

Here’s a revised graph. To avoid Families that have “Valve” in the family name but actually are not Valves, I use the Family Parameter “Part Type” that has a value of zero (0). So long as there are no valves that need tagged that uses Part Type = 0, this should work fine, don’t you think?

01-ValveTag-ValveToSchFilter-Rev_04.dyn (104.8 KB)

Essentially this a classification task, right? Can I suggest using Standard Classifications in your families etc in the future? e.g. Uniclass or Omniclass?

Using this method means you can create different schedules by varying the filter of the Classification Parameter in your schedule. This then also helps trying to create schedules for different Mechanical Equipment as well!

For example, using Uniclass, all Building Services valves start with the Uniclass Code Pr_65_54_95, therefore you would create a filter “contains” this code and voila!


@JacobSmall Have you seen yet any scripts in order to automatically classify undefined elements? I have seen a tool called Kreo do this, but not yet seen anyone do it in Dynamo.

Haven’t, but this is still something I plan on looking into. Got the file late on the weekend and haven’t had time to dive into it - MEP stuff is a bit out of my wheelhouse.

This looks interesting… a couple quick observations, comments and a question or two:

This looks to be mandated in the UK… if I search Autodesk Revit Forum for it, I get precious few hits.
The Autodesk App Store has free tool that looks to support this that was released 10/10/2016 was last updated recently on 1/29/2019 - but there are no reviews and only 3 Likes. The NBS BIM Toolkit looks to be bent towards Architectural - and not geared to LOD 400 pushed toward Fabrication (although I may not have spent nearly enough time looking at this.)

In the Revit file (that @JacobSmall now has) I see that there are values in the OmniClass Number and Title but the Parameters in Type Properties are grayed out. And the data that looks populated already but looks like there is no rhyme or reason what they are assigned to. We have essentially three sources for our LOD 400 Revit content. (Victualic Tools for Revit, SysQue Tools for Revit, and our own in-house content development.) Frankly, content has been rough for us as you might imagine. (it seems that we like good looking models but seem to care little about the ’ I ’ in BIM whether it be AutoCAD or Revit)

It looks like this OmniClass Number and Text actually come from OOTB txt files in the RVT Libraries folder. How do these get assigned. When Families are created do these have to be assigned manually?
Are they OOTB Parameters that by default get added to Families? What is the process… or does Revit somehow assign these automatically?
Can Dynamo graph be done to assign these?

What does AUTODESK BIM INTEROPERABILITY TOOLS (link below) have to do with NBS BIM Toolkit?




Looks like you did quite a bit of research on the subject!

First, yes UniClass is mandatory as part of a BIM Level project, but Level 2 is not a regulatory requirement apart from Government projects (since 2016)

What is the app that you refer to?

Yes I think NBS toolkit is mostly for Architects.

OmniClass is built into revit, but the older version, so you need to update the txt file. You can access these classifications in the family editor. Go to the Category and Parameters window. But my issue with this, is that I could only assign the class to the entire family, but some of our generic content has different equipment as family types. I then started using NBS shared parameters of Uniclass instead. This also allows easier with dynamo.

The BIM interoperability tool allows manual assignment of classifications in projects. And includes Uniclass, which is the classification made by NBS…

You could use dynamo to update your entire library, but you’ll need orchid package and probably a complete list of families in excel and then assign each family the correct class in excel. Just an idea

Good luck, and spread the word on classification!!!

NBS Toolkit that you mentioned in your post seems to relate to Autodesk App Store… NBS at this location NBS
… this is the App in Autodesk App Store. I am assuming relates directly to NBS Toolkit

Isn’t this correct observation?

Since this is geared to Architectural… it would not server our purposes. We are a full service MEP Contractor.

So it sounds like considering OmniClass may be the only option. Editing our content has to happen manually in the family editor? … or can we use Excel and Dynamo to do this?

Sorry for being late on this one.

Using my nodes as @danielU3R39 writes inside families is an option, but doing it for every family in your library is a huge job. You could use the option to open families inside a project, add the class and reload the family back into the project.

However, is there not another option? In Denmark, we have also a requirement for using a classification system (since 2007 updated in 2011). However, we do not use the Revit builtin parameter for this, since one parameter is by far too inadequate. I would presume that this is the same issue in the UK or anywhere else where classification should be taken seriously. Is it a requirement to use that one parameter or is there an option for using your own parameter(s)?

If you don’t need to use that parameter, then build your own classification parameter(s) and you should be able to do whatever will suit the problem best. However, this will be a problem over time for the UK in general. I hope that those who participate in making this requirement do understand that the digital infrastructure is most important to solve along with requiring the usage of the classification.

In Denmark is this part handled by an Industry organization where it happens that I have a seat in the technical committee. One of the most important parts in this job is that we maintain a digital infrastructure that includes shared parameters to use with Revit for the CCS classification, so everyone can write software solutions for using the classification.

This issue is very compatible with the IFC issues if we want IFC to be a success. Also here are these needed (shared) parameters important that they are “owned” by the organization (buildingSMART), which they are not. Therefore is there a blurry way these are controlled. In cases where IFC is needed I then point towards the one maintained by the Revit IFC exporter team, these are most close to be a worldwide solution.

End of these long thoughts on the issue is therefore that I would recommend you brought this up in the UK organization instead of trying to deal with one Revit driven parameter, ask for a technical committee to handle this issue.

@mdhutchinson, firstly I am also an MEP engineer, so I understand and I am in the same predicament.

Secondly, you don’t need to have the NBS plugin to use Uniclass. But I do suggest using the NBS shared parameters for the Uniclass shared parameter for title and code.

This will allow easier interaction across your firm, with clients and continue standardisation in the industry. As @erfajo notes, solid infrastructure is imperative for the progression of the digital side of this industry, with classification being an integral part.

However, I am unsure if you are UK or US based, and if stateside, moving to Uniclass might be slightly against the trend. However uniclass is generally considered better, and more regularly maintained.

As suggested, it is worthwhile getting in contact with NBS if you see improvements could be made.

But back to a solution. I use a tool called RF tools that can insert shared parameters into all families in a designated folder, and you can also assign values.

If your family library is organised into folders similar to that of the classifications, this maybe a good solution.

I understand it might be a mammoth task, but I think it will be worth it in the long run.

@erfajo I am interested in your Danish committee, could you give more details? (Maybe PM me? Thank you)

The Organization is Molio --> https://molio.dk/site-footer/about-us/

Try to see this page, it describes some of it in English…
here can you also find the email for the responsible project manager.

One of the software houses that participates has also some information in English https://www.projectspine.com/uk
here can you find the shared parameter file for CCS

If you want further information then write me a PM :slight_smile:


I am dead center of U.S.
You spoke of something you referred to as RF or some such tool that can write to families on a network folder structure add parameters as well as fill them wth values. Could you provide more info?

@mdhutchinson of course!

We use RF Tools at the office (http://www.rushforthprojects.com). You’ll need to buy a license for each person for each Revit version.

There are also other similar tools to look into including CTC BIM Suite.

Google luck!