Instance model of a pipe line

Post Reply
Message
Author
OnnoPaap
Posts: 189
Joined: Sun Jan 22, 2012 9:14 pm

Instance model of a pipe line

#1 Post by OnnoPaap »

I have a question about the worked example of a pipe line.

Looking at the example RDF, I'm pasting here the Line Number, its line class and its pipe size.

Code: Select all

<owl:Thing rdf:ID="T6af670ff-67b6-11e1-b86c-0800200c9a66"> <!-- Line has Line Number -->
    <rdf:type rdf:resource="&p7tpl;ClassifiedIdentificationOfClass"/>
    <p7tpl:hasUrClass rdf:resource="#Ce269d540-678a-11e1-b86c-0800200c9a66"/> <!-- line RZ17801 -->
    <p7tpl:hasIdentified rdf:resource="#Cc8873cc1-dbc2-11e1-9b23-0800200c9a66"/>
    <p7tpl:valIdentifier rdf:datatype="&xsd;string">RZ17801</p7tpl:valIdentifier>
    <p7tpl:hasIdentificationType rdf:resource="&xyzrdl;Ce269fc64-678a-11e1-b86c-0800200c9a66"/> <!-- XYZ Corp. Tag Numbering System -->
</owl:Thing>

<owl:Thing rdf:ID="T6af67106-67b6-11e1-b86c-0800200c9a66"> <!-- Line is member of a Pipe Class -->
    <rdf:type rdf:resource="&p7tpl;ClassificationOfClass"/>
    <p7tpl:hasUrClass rdf:resource="#Ce269d540-678a-11e1-b86c-0800200c9a66"/> <!-- Line RZ17801 -->
    <p7tpl:hasSubClass rdf:resource="#Cc8878ad9-dbc2-11e1-9b23-0800200c9a66"/>
    <p7tpl:hasSuperClass rdf:resource="&xyzrdl;Ce269fc6f-678a-11e1-b86c-0800200c9a66"/> <!-- H191K01PG -->
</owl:Thing>

<owl:Thing rdf:ID="T6af67109-67b6-11e1-b86c-0800200c9a66"> <!-- Line segment1 has a Size -->
    <rdf:type rdf:resource="&p7tpl;ClassOfIndirectPropertyWithPointValue"/>
    <p7tpl:hasUrClass rdf:resource="#Ce269fc50-678a-11e1-b86c-0800200c9a66"/> <!-- Line RZ17801 segment1 -->
    <p7tpl:hasPossessorType rdf:resource="#Cc88763d4-dbc2-11e1-9b23-0800200c9a66"/>
    <p7tpl:hasDefined rdf:resource="#C7bac7150-8cba-11e1-b0c4-0800200c9a66"/> <!-- referred to by member relationship -->
    <p7tpl:hasIndirectPropertyType rdf:resource="&rdl;R17622148043"/> <!-- Nominal Diameter -->
    <p7tpl:hasBasePropertyType rdf:resource="&rdl;R32277183282"/> <!-- Length -->
    <p7tpl:valPointValue rdf:datatype="&xsd;float">3</p7tpl:valPointValue>
    <p7tpl:hasScale rdf:resource="&rdl;R34755432270"/> <!-- inch -->
    <p7tpl:hasPossessorCardinality rdf:resource="&xyzrdl;Ce269fc71-678a-11e1-b86c-0800200c9a66"/>
</owl:Thing>
1. Given that, in the above templates, the roles for the UrClass all point onto the same object (in the case of the line number and the pipe class), why do the roles of the specialized classes (hasIdentified and hasSubClass) point at different objects instead of a single class instance? The specialized classes do not say anything about the UrClass. The UrClass is not effected? (look at the diagrams for more clarity: http://www.infowebml.ws/mapping/line-li ... number.htm and http://www.infowebml.ws/mapping/line-li ... -class.htm )

2. Why is the nominal pipe size a point value? Isn't nominal pipe size a class, just like pipe class? Eventually, when we have all our ducks in a row, the nominal pipe size is an address in the DIN server (in case of DN sizes, API and ASTM in case of inches).

3. Is the line an assembly of pipe segments? In the OIM, the nominal pipe sizes are in an n-ary relation with the pipe segment designation. Pipe segments are not objects. Instead, shouldn't a pipe segment just have its own OIM with nominal size as a property?

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

Re: Instance model of a pipe line

#2 Post by HansTeijgeler »

Re 1)
The answer lies in the latest revision of http://www.15926.org/publications/gener ... /index.htm
The UrClass definition depends increasingly on its added and deprecated subclasses. Not having an UrClass means that the class changes with every added and deprecated piece of information about it, meaning an endless change of ID.
Re 2)
Nominal pipe size is an indirect property
Re 3)
The Line is classified as a Piping System:
<owl:Class rdf:ID="Ce269d540-678a-11e1-b86c-0800200c9a66">
<rdfs:label>Line RZ17801</rdfs:label>
<rdf:type rdf:resource="&dm;ClassOfInanimatePhysicalObject"/>
<rdfs:subClassOf rdf:resource="&rdl;R45975934401"/> <!-- Piping System -->
</owl:Class>

This system has system components, like pipe segments, that are declared as follows:
<owl:Class rdf:ID="Ce269fc50-678a-11e1-b86c-0800200c9a66">
<rdfs:label>Line RZ17801 Segment 1</rdfs:label>
<rdf:type rdf:resource="&dm;ClassOfInanimatePhysicalObject"/>
<rdfs:subClassOf rdf:resource="&rdl;R58701958436"/> <!-- Piping Network Segment -->
</owl:Class>

These segments are inanimate physical objects that are defined in the RDL as follows:
The piping limited by a Node and a Break, Node and Connector, two Nodes, two Breaks, two Connectors or a Break and a Connector. The last five providing there are no Breaks or Connectors in between. In the last three cases the Segment will coincide with a Piping Branch.
And yes, a pipe segments have their information, represented in templates, including their nominal pipe size. If you follow the above definition there is only one size per segment.

Post Reply