New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Problem of understanding documentation regarding Facets. #271
Comments
I'd expect it to technically pass. Which software are you using? The syntax looks correct. But I'm not sure it'll be checking what you are hoping for... This specification is say "The model should have entities that have a populated GlobalId attribute". Given that I'd be very careful using just Attributes as an applicability selector (what would you expect AttributeName ="Description" to return? Will all implementations return the same?). Until the standard supports entity sub-classes, (e.g. #86) you'd probably be better served with an enumeration restriction of the explicit entity types you're looking for - a bit like: <ids:specification ifcVersion="IFC2X3 IFC4" name="Walls are expected" minOccurs="1">
<ids:applicability>
<ids:entity>
<ids:name>
<xs:restriction base="xs:string">
<xs:enumeration value="IFCWALL" />
<xs:enumeration value="IFCWALLSTANDARDCASE" />
<!-- etc -->
</xs:restriction>
</ids:name>
</ids:entity>
</ids:applicability>
</ids:specification> |
I am using blenderBIM I understand, what I find not clear is that in the end, the only facet which is used as an applicability is the entity facet. (Which makes sense considering the IFC schema) And I was trying to create the simplest of IDS to test the other facets in Applicability usage, it turns out I get Fail for attribute with GlobalId, and I think it is because you don't specify attribute of what entity. In the end I think it would be useful to explain that in the documentation, because unless you find a utility to the other facets in applicability, it should be clear that they are used with requirement intent. |
It must be possible to use an attribute or property alone for applicability.
e.g. Volume > 0.1 m3
e.g. FireRating
e.g. (has) Tag but no Name
e.g. (has) Classification but no ObjectType
Entity Type is not always the best filter!
Nick N.
|
You should definitely be able to do what you're suggesting: use an Attribute Facet as the sole Applicability selector. It's legal IDS syntax. E.g as in the examples I'd take the specific issue up with @Moult and the IfcOpenShell team- it's partly why I raised #181 as it's pretty clear there can be differences in the implementations of the applicability logic across implementors |
The problem I encounter is the possibility of using some facets as an applicability. It says in the documentation that we can use every facet as an applicability, but it doesn't work as I thought it would.
For example, when using the facet Attribute as an applicability intention, I would expect : Any entity with an Attribute "GlobalId". Therefore, because every entity has an Attribute global ID, I would expect to get a pass, but I get a fail.
Then my point is, how to ask the model an applicability with attributes e.g : Any entity with an Attribute "*" ...
I am fairly new to IDS and searching for good documentation to try and write an IDS in the intended way, I don't know if this is the right place to ask this question. Thank you for your understanding and time.
The text was updated successfully, but these errors were encountered: