Process, Power and Marine Division
SmartPlant 3D Data Model
April 2005
SmartPlant 3D Data Model
Use the MetaDataBrowser Tool to view the data model
Model
Database
Catalog Database
Catalog Schema
Database
© 2004. Intergraph Corporation. All Rights Reserved.
MetaData Browser Tool
Package
Metadata Object highlighted
in the treeview or found by
Class Find
Interface
Property
Metadata Object Properties
Codelist
Relation
Metadata Object
Collection
Relationship
Relation
Ancestor
© 2004. Intergraph Corporation. All Rights Reserved.
MetaData Browser Tool
• A regular folder represents a package i.e. the set of metadata, without
dependencies.
• A red pyramid represents a class. A red pyramid overlayed by a yellow
crown represents a first class, i.e. a class that is a leaf in the BOC
(Business Objects Classification) hierarchy.
• A green box represents a property.
© 2004. Intergraph Corporation. All Rights Reserved.
MetaData Browser Tool
• A single magenta sphere represents a relationship. A single magenta
sphere overlayed by a fence represents a private relationship.
• Double magenta/purple spheres represent a relationship collection (a role).
• An orange diamond represents an Edge, i.e a virtual relationship that
"bridges" several relationships.
• Double Orange diamonds represent an edge collection (a role).
© 2004. Intergraph Corporation. All Rights Reserved.
MetaData Browser Tool
• A yellow sphere represents a codelist table.
• A yellow domino with a number and a letter represents a codelist value.
• A brown sphere overlayed by a blue human outline represents a parent
codelist table.
• A brown domino with a number and a letter overlayed by a blue human
outline represents a parent codelist value.
© 2004. Intergraph Corporation. All Rights Reserved.
MetaData Browser Tool
• Any icon overlayed by a tombstone represents a metadata object marked
as deleted (V6).
© 2004. Intergraph Corporation. All Rights Reserved.
MetaData Browser Tool
• Under View -> Units of measure, you can see the units for each Unit
type. For each Unit type, the blue unit represents the (SI) Database unit
(DBU). Right click on any unit allow you to convert a value in DBU.
• Under view -> Enumerations, you can know the different values of all the
enumerations used by the metadata.
• If you re-open often the same schema, you should choose "Auto open
open DB dialog" in Options.
• You can switch from displaying metadata object internal Names
(System) to Usernames (User).
© 2004. Intergraph Corporation. All Rights Reserved.
System Entity Data Model
The system hierarchy is a functional breakdown of the plant model that
allows the user easy traversal of the functional components of the design of
a plant.
Package
Class
Business
Objects
Relation
Codelist
Dependencies
(V6)
Dependencies
© 2004. Intergraph Corporation. All Rights Reserved.
System Entity Data Model
List of interfaces implemented by the Unit System
Package
Class
Interface
© 2004. Intergraph Corporation. All Rights Reserved.
System Entity Data Model
• IJSystem: This interface is used to provide a
common interface for system objects.
• IJNamedItem: This interface provides the
name and displayable type string of an object.
Example: Query all systems in the model
Select [Link]
from JSystem x1
Join JNamedItem x3 on [Link] = [Link]
© 2004. Intergraph Corporation. All Rights Reserved.
System Entity Data Model
• IJSystemChild: is used to associate an object with
its parent by means of the SystemHierarchy
relationship.
• IJDesignChild: is used to associate an object with
its parent.
• IJDesignParent: is used to associate systems and
other objects as children of the system.
• An object in the system hierarchy that can have
children must implement the IJDesignParent
interface.
• An object that can be the child of a parent must
implement the IJDesignChild interface.
© 2004. Intergraph Corporation. All Rights Reserved.
System Entity Data Model
Relationships
• Relations are binary
• A relation is between two and only two entities.
• These entities are known as origin and destination of the relation
Example: system hierarchy relationship (There is a relation between child
and the parent system).
Destination
Relation
Origin
© 2004. Intergraph Corporation. All Rights Reserved.
System Entity Data Model
Example: List the child-parent system names
Select [Link] as Child, [Link] as Parent
from JSystemChild x1
Join JSystem x5 on [Link] = [Link]
Join JNamedItem x2 on [Link] = [Link]
Join XSystemHierarchy x3 on [Link] = [Link]
Join JNamedItem x4 on [Link] = [Link]
© 2004. Intergraph Corporation. All Rights Reserved.
System Entity Data Model
Example: Query piping parts where pipelines are in piping system
Select
[Link] as PipingSystem, [Link] as Pipeline, [Link] as Part
from JSystemChild x1 -- Pipeline system
Join JNamedItem x7 on [Link] = [Link] -- get pipeline name
Join XSystemHierarchy x2 on [Link] = [Link] -- get the parent
Join JNamedItem x3 on [Link] = [Link] -- get parent name
Join JPipingSystem x4 on [Link] = [Link] -- parent = pipsys
Join YPipelineToPipingParts x5 on [Link] = [Link] -- get parts
Join JNamedItem x6 on [Link] = [Link] -- get part name
© 2004. Intergraph Corporation. All Rights Reserved.
System Entity Data Model
• IJAllowableSpecs: This interface is
required in order to manage specifications
assigned to a system.
© 2004. Intergraph Corporation. All Rights Reserved.
System Entity Data Model
Example: Query all allowable specs per Piping Systems
select
[Link] as AllowableSpec,
[Link] as PipingSystem
from JDSpec x1 -- get all spec in model
join JDPipeSpec x5 on [Link] = [Link] -- get only pipe spec
-- return only modified systems using the SystemSpec relation
join XSystemsSpecs x2 on [Link] = [Link]
join JNamedItem x6 on [Link] = [Link] -- get modified system name
-- where modified system is in subquery
where [Link] in
(select [Link] from JPipingSystem x3 -- return piping systems
join JNamedItem x4 on [Link] = [Link] )
order by [Link]
© 2004. Intergraph Corporation. All Rights Reserved.
System Entity Data Model
Generic Object interfaces
• IJDObject interface is a required interface for almost
all objects. This interface provides access to the
permission group for the object, the status, name of
the user who created and last modified the object
and the date and time for creation and last
modification.
• IJDAttributes interface is required for the system
object to support user-defined attributes.
© 2004. Intergraph Corporation. All Rights Reserved.
System Entity Data Model
Example: Query all piping systems and display their permission group
select
[Link],
[Link],
[Link]
from JSystemChild x1
Join JNamedItem x5 on [Link] = [Link]
Join JPipingSystem x4 on [Link] = [Link]
Join JDObject x2 on [Link] = [Link]
Join JDPermissionGroup x3 on [Link] = [Link]
© 2004. Intergraph Corporation. All Rights Reserved.
System Entity Data Model
• IJEFWCorrelation: This interface is required in order
to associate the system object to the Engineering
Framework Design Basis object and provides the
EFW Correlation Properties.
• IJWeightCGGrouping :This IJWeightCGGrouping
interface is to manage the weight and center of
gravity (Weight&CG) for objects that represent
logical groups of parts such as an assembly, or a
compartment.
© 2004. Intergraph Corporation. All Rights Reserved.
System Entity Data Model
Example: Query all correlated and non-correlated pipelines
select
[Link] as Pipeline,
x1.CorrelationStatus_ShortValue
from JEFWCorrelation_CL x1
Join JPipelineSystem x2 on [Link] = [Link]
Join JNamedItem x3 on [Link] = [Link]
where [Link] = 0 and [Link] in (1,2,3)
select
[Link] as Pipeline,
x1.CorrelationStatus_ShortValue
from JEFWCorrelation_CL x1
Join JPipelineSystem x2 on [Link] = [Link]
Join JNamedItem x3 on [Link] = [Link]
where [Link] not in (1,2,3)
© 2004. Intergraph Corporation. All Rights Reserved.
System Entity Data Model
• IJWBSProjectChild: This interface is used to
relate an system to its work breakdown structure
project parent by means of the BelongsToProject
relation.
• IJWBSItemChild :Interface used to relate a
system to its work breakdown structure parent by
means of the BelongsToWBSItem relationship.
• Example: List all systems that belong to a project
select [Link] from
JWBSProjectChild x1
join JSystem x2 on [Link] = [Link]
join XBelongsToProject x3 on [Link] = [Link]
join JNamedItem x4 on [Link] = [Link]
© 2004. Intergraph Corporation. All Rights Reserved.
IFC Entity Data Model
CPIfcEntity
Package
Class
Interface
© 2004. Intergraph Corporation. All Rights Reserved.
IFC Entity Data Model
Generic Object interfaces
IJDObject interface is a required interface for almost all objects. This
interface provides access to the permission group for the object, the status,
name of the user who created and last modified the object and the date and
time for creation and last modification.
Class
Interface
Property
© 2004. Intergraph Corporation. All Rights Reserved.
IFC Entity Data Model
Generic Object interfaces
IJNamedItem interface provides the name property and a type string for all
named objects. This interface is used by any component that needs the
name of an object as well as by components that need to display a simple
type string for an object.
© 2004. Intergraph Corporation. All Rights Reserved.
IFC Entity Data Model
Geometry interfaces
• IJGeometry interface is a required if the BO has geometry.
• IJGraphicEntity interface is a required if the BO is displayable
© 2004. Intergraph Corporation. All Rights Reserved.
IFC Entity Data Model
Interference Interface
• IJIfcEntity interface keeps track of all the interference properties created
by the object.
Property
Codelist
© 2004. Intergraph Corporation. All Rights Reserved.
IFC Entity Data Model
Interference Relationship
• BO’s implement the IJFoulCheck
interface which is used to identify
which objects should be checked for
interferences with other object.
• IJFoulCheck has a relation with the
actual interference object's interface.
© 2004. Intergraph Corporation. All Rights Reserved.
IFC Entity Data Model
Interference Relationship
© 2004. Intergraph Corporation. All Rights Reserved.
IFC Entity Data Model
Example: List all the persistent interferences created by equipment
objects
Select [Link] as Type,
[Link] as IFCName,
[Link] as Part,
[Link] as EqpName
from JIfcEntity x1
JOIN JNamedItem x2 on [Link] = [Link]
JOIN XInterference x3 on [Link] = [Link]
JOIN JEquipment x4 on [Link] = [Link]
JOIN JNamedItem x5 on [Link] = [Link]
© 2004. Intergraph Corporation. All Rights Reserved.
Piping Entities Data Model
PipeRun Interfaces
A PipeRun identifies one or more path Pipe Run 2
features that share a common pipe Pipe Run 1
specification, flow direction, size,
temperature, pressure, etc….
One or more runs make up a pipeline. 6
4
NPD
NPD
© 2004. Intergraph Corporation. All Rights Reserved.
Piping Entities Data Model
PipeRun and Pipeline Relationship
System Hierarchy Relation
The system hierarchy relationship
Relation
is used to specify that a run
Collection (IJSystemChild) has a parent
system (JDesignParent)
Relation
Relation
Collection
Pipeline is a high-level grouping of Pipe Runs
that are created in System and Spec Task
environment.
© 2004. Intergraph Corporation. All Rights Reserved.
System Entity Data Model
Example: returns runs located in piping systems
select *
from JRtePipeRun x1
join XSystemHierarchy x2 on [Link] = [Link]
where [Link] in
(select [Link] from JPipelineSystem x3
join XSystemHierarchy x4 on [Link] = [Link]
join JPipingSystem x5 on [Link] =[Link])
© 2004. Intergraph Corporation. All Rights Reserved.
Piping Entities Data Model
PipeRun and Features Relationship
Path Specification Relation
Relation All path features are related to
Collection a run. This relationship allows
Relation the path feature to retrieve the
specification and rules that it
Relation needs to meet from the run.
Collection
Along Leg
Feature:
RUNCHANGE
Straight
Features define the geometry path Turn Feature Feature
of the run and your design intent
that occurs along the path. When
you route a pipe run, you place
features. Along Leg End Feature
Feature:
End Feature COMPONENT
© 2004. Intergraph Corporation. All Rights Reserved.
System Entity Data Model
Example: Select empty runs:
select distinct [Link] from JRtePipeRun x1
WHERE NOT EXISTS
(select 1 from XPathSpecification x2 where [Link] = [Link])
© 2004. Intergraph Corporation. All Rights Reserved.
Piping Entities Data Model
PipeRun and Parts Relationship
Owns Parts Relation
Relation The OwnsParts relationship is
Collection
used to specify that a part
Relation occurrence is a child of a run.
Relation
Collection
© 2004. Intergraph Corporation. All Rights Reserved.
Piping Entities Data Model
Pathleg and Path Feature Relationship
Along Leg Relation
Relation All path features are related to
Collection one path leg. (Turn path
Relation features are related to two path
legs). The Along Leg
Relation relationship is ordered so that
Collection from the path leg, each feature
can be identified in the order in
which it occurs along the leg's
path. This defines the logical
connectivity.
Path leg 2
Path leg is a section of a run
Path leg 1
maintaining one general direction
between turns, branches and ends.
© 2004. Intergraph Corporation. All Rights Reserved.
Piping Entities Data Model
Pathleg and Path Feature Relationship
Primary Leg Relation
Relation Turn path features are related
Collection to two legs in the Along Leg
relationship. They also have a
Relation
Primary Leg relationship that
Relation identifies which of the legs
Collection
begins the turn path feature
geometric definition. The turn
path feature start position is on
the "primary" leg. The end
position is on the other leg.
© 2004. Intergraph Corporation. All Rights Reserved.
Piping Entities Data Model
Feature and Part Relationship
PathGeneratedParts Relation
This relationship identifies the
Relation part occurrences that are
Collection
generated from a given feature
Relation based on specifications. For a
feature representing a
Relation component, there may be one
Collection
or more generated parts. For a
pipe, there may be multiple
features associated with a
single generated part.
Straight Along Leg
Feature Feature
Parts:
- Mating Flanges
Part: Pipe Turn
Straight Feature - Gate Valve
Feature - Gaskets/Bolts/Nuts
© 2004. Intergraph Corporation. All Rights Reserved.
Piping Entities Data Model
Distribution Connection Relationship
GeneratesConnectionItems
Relation Relation
Collection
This relationship identifies
Relation the connection items that are
generated from a given
Relation
Collection
distribution connection.
Weld
Distribution
connection
Port 1 Port 1
Distribution
Weld Port 2
connection
Port 1
© 2004. Intergraph Corporation. All Rights Reserved.
Piping Entities Data Model
Logical Distribution Connection Relationship
LogicalDistPorts Relation
This relationship identifies
Relation the connection between an
Collection
equipment nozzle and the end
Relation feature of a path leg.
Relation
Collection
© 2004. Intergraph Corporation. All Rights Reserved.
Feature Based Model
Leg 1
End Straight
Feature Feature Turn
Feature
Pipe Port1
Generated Elbow
parts Distribution
Port1 Port2
connection Port2
Weld Distribution Leg 2
Weld connection
Port1
Straight
Pipe Feature
Port2
End
Feature
© 2004. Intergraph Corporation. All Rights Reserved.
Piping Data Model
Example: Query all piping component with part data
select
*
FROM JRteCompOccur rco
JOIN XMadeFrom rmf ON ([Link] = [Link])
JOIN JDPipeComponent pco ON ([Link] = [Link])
JOIN JDPipeComponent2 pco2 ON ([Link] = [Link])
JOIN XDfnsMatlCntrlDataForComponent xdmcdfc ON ([Link] =
[Link])
JOIN JGenericMaterialControlData jgmcd ON ([Link] = [Link])
JOIN XOwnsParts rop ON ([Link] = [Link])
JOIN XPipeRunUsesSpec rpus ON ([Link] = [Link])
JOIN JDPipeSpec jps_RUN ON (jps_RUN.oid = [Link])
© 2004. Intergraph Corporation. All Rights Reserved.
Reference Data Entity Data Model
Select [Link], [Link], [Link],
[Link], [Link], [Link],
[Link], [Link], [Link],
[Link], [Link],
[Link], [Link],
[Link], [Link],
[Link] as Sch1, [Link] as
Sch2, [Link],
[Link], [Link],
[Link] from JDPipePartSpec x1 JOIN
JFirstSizeSchedule x4 on [Link] = [Link] JOIN
CL_ScheduleThickness x6 on [Link] =
[Link] JOIN JSecondSizeSchedule x5 on
[Link] = [Link] JOIN CL_ScheduleThickness x7 on
[Link] = [Link] JOIN
XPipeSpecContainsPartSpecs x2 on ([Link]
= [Link]) JOIN JDPipeSpec x3 on ([Link] = [Link])
Where [Link] = '1C0031' order by [Link]
© 2004. Intergraph Corporation. All Rights Reserved.
Reference Data Entity Data Model
select [Link], [Link],
[Link], [Link], [Link]
as PreRating1, [Link],
[Link], [Link] as
PreRating2, [Link], [Link],
[Link], [Link], [Link],
[Link], [Link],
[Link] from JGasketSelectionFilter x1
JOIN JEndConditions x4 on [Link] = [Link] JOIN
CL_PressureRating x6 on [Link] = [Link]
JOIN JAlternateEndConditions x5 on [Link] = [Link] JOIN
CL_PressureRating x7 on [Link] =
[Link] JOIN XSpecDefinesGasket x2
on [Link] = [Link] JOIN JDPipeSpec x3 on
[Link] = [Link] where [Link] = '1c0031'
© 2004. Intergraph Corporation. All Rights Reserved.
Reference Data Entity Data Model
select [Link], [Link],
[Link], [Link], [Link]
as PreRating1, [Link],
[Link], [Link] as
PreRating2, [Link], [Link],
[Link], [Link],
[Link], [Link]
from JBoltSelectionFilter x1 JOIN JEndConditions x4 on
[Link] = [Link] JOIN CL_PressureRating x6 on [Link]
= [Link] JOIN JAlternateEndConditions x5 on
[Link] = [Link] JOIN CL_PressureRating x7 on [Link]
= [Link] JOIN XSpecDefinesBolt x2
on [Link] = [Link] JOIN JDPipeSpec x3 on
[Link] = [Link] where [Link] = '1c0031'
© 2004. Intergraph Corporation. All Rights Reserved.
Reference Data Entity Data Model
select [Link], [Link],
[Link], [Link], [Link]
as PreRating1, [Link],
[Link], [Link] as
PreRating2, [Link], [Link],
[Link], [Link],
[Link], [Link]
from JBoltSelectionFilter x1 JOIN JEndConditions x4 on
[Link] = [Link] JOIN CL_PressureRating x6 on [Link]
= [Link] JOIN JAlternateEndConditions x5 on
[Link] = [Link] JOIN CL_PressureRating x7 on [Link]
= [Link] JOIN XSpecDefinesBolt x2
on [Link] = [Link] JOIN JDPipeSpec x3 on
[Link] = [Link] where [Link] = '1c0031'
© 2004. Intergraph Corporation. All Rights Reserved.
Reference Data Entity Data Model
select [Link], [Link] from JDPipeNominalDiameters
x1 JOIN XSpecDefinesAllowableNpd x2 on
([Link] = [Link]) JOIN JDPipeSpec x3 on
([Link] = [Link]) Where [Link] = '1C0031'
© 2004. Intergraph Corporation. All Rights Reserved.
Reference Data Entity Data Model
select [Link], [Link],
[Link], [Link], [Link],
[Link], [Link],
[Link], [Link], [Link], [Link],
[Link], [Link], [Link],
[Link] from JDPipeComponent x1 JOIN
XPartClassContainsParts x4 on ( [Link] =
[Link]) JOIN JDPartClass x5 on ([Link] = [Link])
JOIN JDPart x6 on ([Link] = [Link]) JOIN
XPartContainsNozzles x2 on ([Link] = [Link]) JOIN
JCatalogPipePort x3 on ([Link] = [Link]) where
[Link] like 'PipeComponentClass' and [Link]
like 'BlindFlange' and [Link] like
'%MAAAMABZZAADABQZZUS%' order by
[Link]
© 2004. Intergraph Corporation. All Rights Reserved.
Equipment Entity Data Model
CPEquipment
Class
Interface
© 2004. Intergraph Corporation. All Rights Reserved.
Equipment Entity Data Model
Generic Object interfaces
• The IJDObject interface is a required interface for almost all objects. This
interface provides access to the permission group for the object, the
status, name of the user who created and last modified the object and the
date and time for creation and last modification.
• The IJDAttributes interface is required for the equipment object to support
user-defined attributes.
• The IJNamedItem interface provides the name property, a type string and
an icon for all named objects.
© 2004. Intergraph Corporation. All Rights Reserved.
Equipment Entity Data Model
Display/Locate interfaces
• IJGeometry: This interface is a required if the BO has geometry.
• IJGraphicEntity: This interface is a required if the BO is displayable.
• IJModelLocate: This interface is used to allow client components to
graphically locate all of the graphical components of a standard
equipment object.
• IJOccurrence: This interface provides a property that allows the matrix to
be retrieved or set. A matrix defines the origin and orientation of an
equipment object.
© 2004. Intergraph Corporation. All Rights Reserved.
Equipment Entity Data Model
Equipment specific interfaces
• IJEquipment: This interface is used to provide a common interface for
both standard equipment and design equipment. This interface also
provides methods to get and set the position and orientation of the
equipment.
• IJStandardEquipment: This interface is used to type only standard
equipment that are required to show up under the Business Object
Classification.
• IJEquipmentFurnishings: This interface is used to type all business
objects that are required to show up under the Equipment&Furnishings
node.
© 2004. Intergraph Corporation. All Rights Reserved.
Equipment Entity Data Model
• IJWeightCG: This interface provides both the wet and dry weights and
center of gravity for an object.
• IJFoulCheck: The CPEquipment class implements the IJFoulCheck
interface which is used to identify which objects should be checked for
interferences with other object.
• IJDesignParent or IJDesignChild: In order for an object to participate in
the System Hierarchy, it must implement either IJDesignParent or
IJDesignChild and establish a relationship to a design parent.
• IJMfgParent and IJAssemblyChild: Standard Equipment objects can also
participate in the Assembly hierarchy. As a part, it can be associated to an
Assembly parent object using the Assembly relationship that is
established between IJMfgParent and IJAssemblyChild. This relationship
allows the equipment part to be associated to one assembly parent
object.
© 2004. Intergraph Corporation. All Rights Reserved.
Equipment Entity Data Model
• IJCoatingInfo: This interface provides code-listed properties to describe
the coating properties for SP3D parts. These include coating type
description and coating color.
• IJConstructionInfo: This interface provides information on the construction
status of a part. The status indicates whether the part is new, existing,
future, etc.
• IJFabricationInfo: This interface provides information on who is
responsible for the fabrication of the part.
© 2004. Intergraph Corporation. All Rights Reserved.
Equipment Entity Data Model
• IJDistribPartOccur: This interface is used to establish a relationship to the
distribution ports.
• IJOccInsulation: This interface is used to define the purpose, material and
thickness for insulation for the standard equipment.
• IJConnectable: This interface is used to return a set of equipment
foundation ports.
© 2004. Intergraph Corporation. All Rights Reserved.
Equipment Entity Data Model
MadeFrom Relationship
• The part occurrence is related to the
part with a relationship named
madeFrom.
Relation
Collection
Relation
Relation
Collection
© 2004. Intergraph Corporation. All Rights Reserved.
Equipment Entity Data Model
Relationships between objects and interfaces
Related Object <- Relationship Equipment Relationship -> Related Object
Equipment Part <- Part to Catalog Object to WBS –> WBS Items
Definition
Object to Hyperlink
WBS Projects <- Object to Project
Object to Control Point –> Control
Pipe Port <- Object to Distribution Port Object Points
Interference <- Object to Interference Object to Design Basis -> PID
process Equipment
Equipment System <- System to
Equipment Equipment to Non-distribution Port
-> Foundation Port
Object to Note <– General Notes
To Do records <- Object to the To Do List
entry
© 2004. Intergraph Corporation. All Rights Reserved.