Modelling Property Ranges in Part7 and Part8

Message
Author
KeithWillshaw
Posts: 77
Joined: Tue May 15, 2012 8:48 am

Modelling Property Ranges in Part7 and Part8

#1 Post by KeithWillshaw »

As part of the IIP / iRING modelling process we have encountered a number of instances where properties that have an upper and lower numeric value appear in the RDL in two formats.

<PropertyName> Range : entity type Property Range
and
<PropertyName> UPPER LIMIT : entity type Single Property Dimension
<PropertyName> LOWER LIMIT : entity type Single Property Dimension

examples include

OPERATING PRESSURE RANGE
UPPER LIMIT OPERATING PRESSURE
LOWER LIMIT OPERATING PRESSURE

CALIBRATED RANGE
CALIBRATED RANGE UPPER LIMIT
CALIBRATED RANGE LOWER LIMIT

The iRING group has come up with this template for range

CalibratedRangeScaleReal
1) hasPossessor
2) hasScale
3) hasType
4) valLowerBound
5) valUperBound

This raises a number of questions regarding best practise we would like to raise in this group

a) Should we express a preference for one or other of these means of transferring the data or persisting it in a triple store

b) In implementing this in various applications do we need to be able to handle both variations

c) If we choose to use the PropertyRange approach is it possible to have one of the value roles with a null value. In other words if we only have the Upper Limit for UPPER LIMIT can we omit the value for LOWER LIMIT

Keith

HansTeijgeler
Posts: 283
Joined: Sun Jan 22, 2012 10:02 pm

Re: Modelling Property Ranges in Part7 and Part8

#2 Post by HansTeijgeler »

Hi Keith,

All six cases are about ClassOfIndirectProperty.
Please see:
http://www.infowebml.ws/TS/TS-details/T ... dingValues
http://www.infowebml.ws/TS/TS-details/T ... ximumValue
http://www.infowebml.ws/TS/TS-details/T ... nimumValue

Null values are not allowed in Part 8

Regards,
Hans

vvagr
Posts: 282
Joined: Mon Feb 27, 2012 11:01 pm
Location: Moscow, Russia
Contact:

Re: Modelling Property Ranges in Part7 and Part8

#3 Post by vvagr »

Hans,

hasDefined role in the ClassOfIndirectPropertyWithBoundingValues - is not a good idea! If it's the situation - this ClassOfIndirectProperty should be registered in RDL separately.

vvagr
Posts: 282
Joined: Mon Feb 27, 2012 11:01 pm
Location: Moscow, Russia
Contact:

Re: Modelling Property Ranges in Part7 and Part8

#4 Post by vvagr »

Keith,

What is the difference between suggested template and PropertyRangeMagnitudeRestrictionOfClass already registered with URI http://tpl.rdlfacade.org/data#R57467669805 and available at http://www.iringsandbox.org/repositorie ... tSet/query ?

On your questions:

These Lower and Upper Limit classes look like a mistake for me. They are instances of a subtype of ClassOfProperty. But no "upper" or "lower" derivations can be modeled as "direct" property. They should be specializations of ClassOfIndirectProperty, not Single Property Dimensions.

As you can not omit a role in a template or put it to zero if it's indeed an infinity - I'm supporting Hans suggestion for two extra templates.

HansTeijgeler
Posts: 283
Joined: Sun Jan 22, 2012 10:02 pm

Re: Modelling Property Ranges in Part7 and Part8

#5 Post by HansTeijgeler »

Hi Victor,

You can declare an instance of ClassOfIndirectProperty and give it an ID and a definition in a language, but when you want to properly define that instance, you need this template, lock, stock and barrel.

Regards,
Hans

vvagr
Posts: 282
Joined: Mon Feb 27, 2012 11:01 pm
Location: Moscow, Russia
Contact:

Re: Modelling Property Ranges in Part7 and Part8

#6 Post by vvagr »

Hans, when I want to properly define that instance I'll record proper specialization in RDL!

Then I'm satisfied with PropertyRangeMagnitudeRestrictionOfClass template.

And I can not map to your template from a legacy tool, if its datamodel doesn't already contain a correct ISO 15926 property specialization tree. Do you know such a tool?

HansTeijgeler
Posts: 283
Joined: Sun Jan 22, 2012 10:02 pm

Re: Modelling Property Ranges in Part7 and Part8

#7 Post by HansTeijgeler »

Hi Victor,
when I want to properly define that instance I'll record proper specialization in RDL
[HT] Yep, and that is why we need to discuss the Part 8 Template Model, because in Part 8 a template is and is not a class, and hence can or cannot be specialized. I have written a paper for that topic and will post it.
So, for all clarity: such a specialized template can reside in the RDL, but also in your project data, when you define the requirements for P-101.
Then I'm satisfied with PropertyRangeMagnitudeRestrictionOfClass template
[HT] I am not.
And I can not map to your template from a legacy tool, if its data model doesn't already contain a correct ISO 15926 property specialization tree. Do you know such a tool?
[HT] I don't understand you. We need to specialize templates, not properties. Please clarify.

Regards,
Hans

vvagr
Posts: 282
Joined: Mon Feb 27, 2012 11:01 pm
Location: Moscow, Russia
Contact:

Re: Modelling Property Ranges in Part7 and Part8

#8 Post by vvagr »

Hans,

Probable I've misunderstood your template ClassOfIndirectPropertyWithBoundingValues?

The only difference between it and PropertyRangeMagnitudeRestrictionOfClass is an additional role hasDefined for an instance of a ClassOfIndirectProperty. As far as I understand the situation you are simultaneously stating two facts: that a property characterized is of a nature described by hasDefined role and that this is indeed a new sub-property of a property in hasIndirectPropertyType role.

What is the idea behind introduction of this sub-property? Can you show an example?

HansTeijgeler
Posts: 283
Joined: Sun Jan 22, 2012 10:02 pm

Re: Modelling Property Ranges in Part7 and Part8

#9 Post by HansTeijgeler »

Hi Victor,

Assume you design vessel V-101 and use the template ClassOfIndirectPropertyWithPointValue in order to state that its Maximum Allowable Working Pressure (MAWP) shall be 100 barg.

Much later, when you have purchased a vessel for function place V-101 in your plant and installed that vessel, you may (or may not) automaically generate an instance of the template IndirectPropertyOfTemporalPart to confirm that the installed vessel:
- still has the requirement of an MAWP of 100 barg, as inherited from the temporal whole functional physical object (function place) that is a member of the class V-101
- has the actual MAWP of the purchase vessel, that is 100 barg or may be higher than 100 barg, as inherited from the temporal whole being the asset vessel as purchased and delivered.

Having said that you may see a problem occur, because the installed item inherits from both sides, and those inherited data may not be in line with each other. So what to do then? I think that the software, that generates the template instance, should:
- take the data from the materialized physical object OR
- create an alarm in case the data of the materialized physical object does not meet the requirements of the functional physical object
Although this is straightforward in this case, it not always is, for example related to materials. This is something for studies and rules, later :)

The nice thing is that you always know what the requirements were, something that often is not the case in the industry. If then a replacement has to be made, the basis is not the requirement but the actual data of the replaced item, often leading to an overspecified replacement.

The link between the design and the individual is via this hasDefined subtype of ClassOfRelationship (also with connection, assembly, etc).

Note that I have not yet added the Ur-Class to the template, since I first want to have the MMT blessing for that.

Regards,
Hans
Attachments
IndirectPropertyOfTemporalPart.png
IndirectPropertyOfTemporalPart.png (46.3 KiB) Viewed 13816 times
ClassOfIndirectPropertyWithPointValue.png
ClassOfIndirectPropertyWithPointValue.png (61.79 KiB) Viewed 13816 times

mikhail fedorov
Posts: 13
Joined: Thu Mar 08, 2012 8:37 am
Location: Haarlem, the Netherlands

Re: Modelling Property Ranges in Part7 and Part8

#10 Post by mikhail fedorov »

Hans,

On the first diagram I believe you need to change the role of PointInTime to whole instead of part. Doesn't make sense otherwise.

Also, assuming that at a partiular point in time you only have one temporal part of possible individual (or is it not the case?) - do you actually need a separate hasPossessor role? Can you not unambiguously deduce the appropriate individual if you have hasTemporalWhole and the time stamp?

Post Reply