Add CGM to RepresentationFormatType
Add Property and PropertyGroup.
Rename MassPropertyType to MassPropertiesType.
Add LengthProperty, MassProperty, and Colour.
Add propertyRefs attribute and PropertyGroup sub-element to:
Structure, StructureRevision, StructureRevisionView, GDE, StructureUsage, StructureView.
Add occurrenceId attribute to OccurrenceType.
Add support for ModelViews.
Add Occurrence Filter elements.
Change sourceRef attribute to optional in ConfiguredOccurrenceGroup.
Add Material Properties, and allow Properties of CompoundRep.
Rename VolumeType, DensityType, and CentreOfMassType to DeprecatedVolumeType,
DeprecatedDensityType, and DeprecatedCentreOfMassType. Introduce new types for
Volume, Density, and CentreOfMass.
Derive Representation and CompoundRep from PropertiesBase instead of AttribOwnerBase
Add DisplayPreferences Property
Add addition internal Code Generator app info data to DeprecatedVolumeType, DeprecatedDensityType and
DeprecatedCentreOfMassType.
Add 'default' and 'state' attributes to support default and active ProductViews.
Add 'linkedGroupRef' attribute to to Occurrence support OccurrenceGroup in the context of a Composition.
Supports consistent loading and visualisation of products across different applications through new
LoadOptions element referenced from DocumentHeaderType.
A new LogicalExpression has been added to the base schema - 'PathIs'. This
type allows an Instance path through a hierarchical structure to be defined that
must be matched in order to return 'true'.
Add RepresentationEntity, EntityPropertyGroup, and Visibility Property. Allow EntityRef
as subelement of Representation and CompoundRep. Allow RepresentationEntity and
EntityPropertyGroup as subelement of StructureRevisionView. Allow EntityPropertyGroup
as subelement of StructureUsage.
Allow Section and ConstructionGeometry as sub-elements of PLMXML by adding
substitutionGroups.
Add "software" and "processorGateway" to GDERelationshipType
Add "type" and "baseRef" attributes to Representation and CompoundRep
Add "targetRef" and "pathRefs" to GDEReferenceType. Deprecate EntityRef sub-element.
Add "mass" to GDERelationshipType"
Add ViewControl to PLMXML element
Add CGR to RepresentationFormatType
Add unitRef to ProductType
Add Discipline, DisciplineLevel and DisciplineRelation. Modify Organisation and User.
Add CoordinateSystemDisplay, PointDisplay, LineDisplay and Translucency
Properties. Allow PropertyGroup as sub-element of Geometry.
Add "ruleRefs" to StructureRevisionView
Add OccurrenceControl, OccurrenceControlRevision, and SymbolicOccurrence.
Add attributes to Occurrence and ProductRevisionView.
Allow SymbolicOccurrences as sub-elements of ProductView and StructureRevisionView
Add Suppression Property.
Add Transform as sub-element of CompoundRep, and transformRef attribute.
Add Layer Property.
Add values to PointStyle enum.
Add TraceabilityRelation
Add Design, DesignRevision, DesignRevisionView and RepresentedByRelation.
Add "designRequired" and "source" attributes to Product. Add "primaryDesignRef"
attribute to ProductRevision.
Clarify in-line documentation for UserData.
Add Requirement and RequirementRevision elements.
Add the value "pose" to the ProductViewUsageType enum for Robotics.
Add DefinitionRelation. Deprecate primaryDesignRef from ProductRevision.
Add source and designRequired to ProductRevision. Add designRequired to
ProductRevisionView and StructureUsage. Add primaryDesign to
RepresentedByRelation.
Add Derived element, allow Fix and Derived in VaruantRule.
Add displayAnnotations and displayGeometry to DisplayPreferences.
Add propertyRefs to GDEInstanceGroup.
Allow DisplayPreferences under PropertyGroup under GDEInstanceGroup.
PLM XML Schema
The 'id' attribute is used for references between elements. It
should not be use to encode other information.
sdkname=IdObject
plm:anyURIType is used in place of xsd:anyURI, since we want to allow
filenames as well as genuine URIs.
The ApplicationRef element is meant to relate the parent element (Product,
Representation, etc) back to the owning entity in the sending application.
Attributes:
application: the context in which the contents of the label and version attributes
make sense. Whether this field includes an application version number
is up to the application, as long as it starts with something
identifiable to the sending application.
label: the string which identifies the application entity - the value of
this field is only meaningful to the sending/authoring application.
The receiving application can compare the contents of the attribute
to test if two entities are the 'same' entity. But the actual value
is meaningless to the receiving application.
version: the optional string attribute which identifies the version of the
application entity. This attribute can only be used to test if the
versions of an entity are the same (i.e. the test is only meaningful
if the label attribute values are the same). No version ordering can
be deduced from the value. Similar to the label attribute, the
version attribute contents are meaningless to the receiving
application.
sdkname=DescriptionObject
The DescriptionBase type is an abstract base type for PLM XML types which have
optional description and ApplicationRef.
Attributes:
name: descriptive or display name
Sub-elements:
Description Readable textual description of the element.
ApplicationRef A means of uniquely identifying the element in terms understood by
the sending system. More than one is allowed (at most one per
Application).
Base class for elements which have PLMXML Attributes, i.e. elements
derived from plm:AttributeBase.
Attributes:
attributeRefs: reference to Attributes
Elements:
Attribute: any element derived from AttributeBase.
validate=skipName
This is a legacy box type. The 'Bound' element should be used.
output=ignore
This is a legacy sphere bound type. The 'Bound' element should be used.
output=ignore
This is an abstract base type for elements representing a subset of
3D space.
Attributes:
transformRef: Optional transform, to apply to data in derived types.
For example, the data in a Bound can define an axis-
aligned box. By using a Transform, this can then
represent a non-axis-aligned box.
Elements:
Transform: Optional transform. Do not use both transformRef and
Transform sub-element.
This is a box or sphere-shaped bound (zone) in 3-space.
Attributes:
type: 'box' or 'sphere'
values: 6 or 4 doubles. If a box, these are the coordinates of
the centre, followed by xwidth/2, ywidth/2, zwidth/2.
If a sphere, these are centre, radius.
This is a Zone defined by the intersection of a number of halfspaces. Each
Halfspace is defined as the area of space behind a Plane (i.e. away from the
Plane normal).
If there is only one Plane, the Zone is a halfspace.
Elements:
Plane: Plane defining a halfspace
createClass=true
createClass=true
createClass=true
createClass=true
createClass=true
createClass=true
createClass=true
output=ignore
output=ignore
output=ignore
output=ignore
The Attribute element is an abstract element. Useful attributes
(ones that include fields) must be derived from the Attribute element
defined within this schema. The derived attributes will define their
data elements to represent data fields.
The derived attributes also need to be set as 'equivalent' to the
Attribute element. This enables the new derived attribute to be
inserted into documents wherever the Attribute element is allowed.
Base class for elements which may contain 3D bounds.
Elements:
BoxBound: legacy, use Bound in preference
SphereBound: legacy, use Bound in preference
Bound: 3D bound
sdkname=Entity3D
output=ignore
output=ignore
This is an abstract base class for elements which require information such as
access control, status and checkout information
Attributes:
accessRefs: reference to one or more elements derived from AccessControlBase
statusRef: reference to element derived from StatusBase
checkoutRefs: reference to one or more elements derived from CheckoutStatusBase
effectivityRefs reference to Effectivity elements
subType: No specified semantics. This can be used where simple customised
sub-types have been defined and a PLMXML schema extension is not
appropriate.
releaseStatusRefs: Reference to one or more ReleaseStatus elements, which give
release dates and effectivities.
AccessControl - abstract base class for Access Control types.
Status - abstract base class for status information types.
CheckoutStatus - abstract base class for Checkout types.
Base class for elements which reference an external entity such as a
face in an XT file.
Attributes:
entityRef: reference to external entity.
sdkname=EntityObject
Base class for elements representing geometric objects.
Attributes:
propertyRefs: reference to Properties of the element
Elements:
PropertyGroup: a collection of Properties of the element.
Base class for elements representing 3D points.
Attributes:
position: coordinates of point
Base class for elements representing parametrised curves in 3-space.
Attributes:
startT: start parameter
endT: end parameter
Elements:
StartPoint: optional coordinates of start point
EndPoint: optional coordinates of end point
SamplePoints: optional coordinates of a sequence of points along curve
Base class for 3D curves which lie in a plane.
Attributes:
origin: centre of plane
zAxis: normal to plane
xAxis: x-direction in plane
Base class for elements representing a u-v-parametrised surface in 3-space.
Attributes:
startU: lowest U value
endU: highest U value
startV: lowest V value
endV: highest V value
Elements:
SamplePoints: optional coordinates of a set of points on the surface
Base class for elements representing a surface which uses an
X-Y-Z coordinate frame as part of its definition.
Attributes:
origin: origin of coordinate frame
zAxis: Z Axis of coordinate frame
xAxis: X Axis of coordinate frame
Type representing a Red-Green-Blue colour.
Type representing a colour in Red-Green-Blue-Alpha format.
Element representing a material type.
Attributes:
ambient: ambient colour
diffuse: diffuse colour
specular: specular colour
emissive: emissive colour
shininess: shininess coefficient
alpha: alpha coefficient
Element used to associate an entity with a material (colour).
Attributes:
materialRef: IDREF to the material element.
Elements:
EntityRef: Element derived from EntityRef, used to specify which entity
is to be associated with the material.
Base class for elements representing Light Sources
Attributes:
ambient: ambient light
diffuse: diffuse light
specular: specular light
intensity: intensity multiplier
Directional Light Source (from infinity)
Attributes:
direction: direction TO the light source.
Positional Light Source, i.e. point source.
Attributes:
position: position of light
direction: direction in which the light is shining
cutoffAngle: semiAngle of cone of light. If absent, the source is not
a spotlight, but shines in all directions.
intensityExponent: the intensity exponent determines the intensity distribution
within the cone. Higher intensity exponent values result in a more
focused light source.
attenuation: the attenuation of the light source within the scene. The three
attenuation values are the factors in a quadratic equation, giving
intensity as a function of distance from the source. The values
within the attribute are in order: quadratic, linear and constant.
Section definition of a View, i.e. cutter geometry.
Attributes:
geometryRef: a reference to an object defining section geometry, which is
expected to be a surface or a solid, for example - construction geometry
element derived from SurfaceBase or (an Occurrence of) geometry stored
in a Representation stream.
This type describes whether the PLMXML reference is
specifying a single entity or a set of entities.
Base class for defining a reference to an entity. All entity
reference elements should be based on this type and defined
as a substitution class for EntityRef.
Attributes:
select: Type of the reference - single or multiple.
contextRef: Context for the reference
Locator reference format.
Locator reference element. The reference is a URI based reference and
the syntax of the URI must be pre-defined. Hence the only predefined
type is currently PLMXMLPointer.
Attributes:
locationRef: The value of the URI reference.
type: Format of the locator reference.
Attribute reference element. The reference is based on a user
defined named attribute on the host representation. This type
enables the author to note the attribute name, field name/index
and the value of the attribute.
Attributes:
attribute: The name of the attribute to query, e.g.
"COMPANYNAME/Tracking_attribute".
field: The name of the field within the attribute.
index: The index of the field within the attribute, if its
name is not given. (The first field is index 0).
value: The value of the attribute to match.
GUID reference element. This simply specifies the GUID of the entity
being referenced.
Attribute:
guid: The GUID of the entity referenced, in the form of a string containing
32 hex digits, with arbitrary non-hex spacing characters.
Reference Point element
Straight line curve.
Attributes:
origin: start (T=0).
direction: direction of increasing T.
Polyline, i.e. sequence of connected line-segments.
Attributes:
closed: true if the end of the polyline equals its start.
dimension: dimension of the curve. This determines the length of each
vector in 'Points'. Defaults to 3.
type: an optional indication of the shape of the polyline, e.g. "arc".
Elements:
Points: coordinates of the ends of the line segments, in order.
Circular curve. The T=0 point is on the positive x-axis of the underlying plane. The
T=pi/2 point is on the positive y-axis.
Attributes:
radius: radius
Elliptical curve. The T=0 point is on the positive x-axis of the underlying plane,
at a distance 'majorRadius' from the origin. The T=pi/2 point is on the positive
y-axis, at a distance 'minorRadius' from the origin.
Attributes:
majorRadius: major radius.
minorRadius: minor radius.
B-Spline curve in 2- or 3-dimensional space.
Attributes:
degree: degree of the curve.
dimension: dimension of the curve. This determines the length of each vector in
'Vertices': if isRational is true, it is 'dimension+1', else it is
'dimension'. Defaults to 3.
isRational: true if the spline is rational.
isPeriodic: true if the spline is periodic.
isClosed: true if the start and end of the curve coincide.
form: form of the curve.
Elements:
Knots: knot values, in increasing order, no repetitions.
KnotMultiplicities: multiplicities of the knots.
Vertices: coordinates of the vertices.
Composite Curve, formed by joining curves together end-to-end.
Attributes:
curves: sequence of curves. NB this attribute name is non-standard,
PLMXML conventions require that IDREFS attributes end in 'Refs'.
isClosed: true if the end of the last curve coincides with the start
of the first.
validate=skipName
A curve defined in the parameter-space of a surface. The x,y positions
of the curve correspond to u,v parameters in the surface.
Attributes:
parameterCurve: reference to a 2-dimensional BSpline curve.
surface: reference to a surface.
NB both these attributes have non-standard names, PLMXML
conventions require reference attributes to end in 'Ref'.
validate=skipName
validate=skipName
Conical surface. The cone axis is along the Z-Axis of the underlying
coordinate frame. The cone radius increases in the direction of the
Z-Axis.
Attributes:
radius: radius of the cone at the origin of the coordinate frame.
This is zero or positive.
halfAngle: the positive angle between the Z-Axis and a line in the
cone, in radians.
Toroidal surface. The axis of the torus is the Z-Axis of the underlying
coordinate frame.
Attributes:
majorRadius: major radius
minorRadius: minor radius
B-Spline surface, normally in 3-dimensional space.
Attributes:
uDegree: degree of the surface in U.
vDegree: degree of the surface in V.
dimension: dimension of the surface. This determines the length of each vector
in 'Vertices': if isRational is true, it is 'dimension+1', else it
is 'dimension'. Defaults to 3.
isRational: true if the surface is rational.
isUPeriodic: true if the surface is periodic in U.
isUPeriodic: true if the surface is periodic in U.
isVClosed: true if the surface is closed in V.
isVClosed: true if the surface is closed in V.
numberOfUVertices: number of U vertices.
numberOfVVertices: number of V vertices.
Elements:
UKnots: U knot values, in increasing order, no repetitions.
VKnots: V knot values, in increasing order, no repetitions.
UKnotMultiplicities: multiplicities of the U knots.
VKnotMultiplicities: multiplicities of the V knots.
Vertices: coordinates of the vertices.
Cartesian Coordinate system.
Geometry composition.
Elements:
Point: any elements derived from Point.
Curve: any elements derived from Curve.
Surface: any elements derived from Surface.
CoordinateSystem: coordinate systems.
Top level construction geometry element.
Elements:
Point: any elements derived from Point.
Curve: any elements derived from Curve.
Surface: any elements derived from Surface.
CoordinateSystem: coordinate systems.
GeometryComposition: geometry compositions.
Defines a perspective view from a point.
Elements:
ViewFrom: eye point
ViewTo: point towards which eye is looking
ViewVertical: vector which is vertical in the view. Should be
perpendicular to (ViewFrom - ViewTo).
Defines a view from infinity (no perspective).
Elements:
ViewDirection: direction eye is looking in.
ViewVertical: vector which is vertical in the view. Should be
perpendicular to ViewDirection.
ViewTo: optional point at which eye is looking, only needed
if depth is significant in the view.
Defines a view, i.e. a camera position and optional viewport.
Elements:
One of Perspective, Orthographic or ViewMatrix (4 by 4).
ViewPort: optional viewport definition.
Basic texture data format definition
Determines the length of each data element in the hexBinary data element.
RGBA = 4 bytes of red, green, blue and alpha
RGB = 3 bytes of red, green and blue
LA = 2 bytes of luminance and alpha
A = 1 byte of alpha
L = 1 byte of luminance
Basic 1D texture data definition
validate=skipName
Basic 2D texture data definition
validate=skipName
Basic texture data definition
Texture control definition
Basic texture definition
Texture coordinates
Texture structures that can be associated with a remote entity.
The CompoundRep represents a component of a Representation. The Representation
then consists of the aggregate or union of the CompoundReps, which may have
different formats.
Attributes:
location: URI of data source
load: True if data is to be loaded at the same time as the PLMXML file.
format: Data format. If this is absent, the format is taken from the parent
Representation.
equivalentRef: an optional reference to a CompoundRep which is equivalent to
this one (for example, has the same shape). If this attribute is
used, then it should collect together equivalent CompoundReps
into a ring, with each CompoundRep using this attribute to point
to the next in the ring.
type: an optional attribute specifying type or purpose of the CompoundRep.
Supported values are:
"default" - design geometry.
"construction" - construction geometry associated with the
owning representation.
"weld" - the geometry of any weld beads.
"midsurface" - a special type of construction geometry used with sheet
metal parts.
baseRef: an optional reference to a CompoundRep which is overridden by this
CompoundRep.
transformRef: has the same purpose as the Transform sub-element. Do not use both.
Elements:
PropertyGroup a collection of Properties of the CompoundRep
EntityRef: references to entities in the Representation file. These EntityRef
elements can be referenced by RepresentationEntity elements.
Transform: optional Transform which positions the geometry in the
coordinate frame of the owning Representation.
The Representation element in an PLMXML file refers to a model in some
particular format, such as XT or jXT. It can refer to the model data in
another file (an External Representation), or the data can be embedded within
the Representation element in the XML file (an InternalRepresentation). It
can also consist of a number of CompoundRep sub-elements.
Attributes:
format: data format
revision: revision of data
transformRef: has the same purpose as the Transform sub-element. Do not use both.
location: URI of data source
load: true if data is to be loaded at the same time as the PLMXML file.
equivalentRef: an optional reference to a Representation which is equivalent to
this one (for example, has the same shape). If this attribute is
used, then it should collect together equivalent Representations
into a ring, with each Representation using this attribute to point
to the next in the ring.
type: an optional attribute specifying type or purpose of the Representation.
Supported values are:
"default" - primary or design geometry.
"simplified" - geometry of the simplified model.
"flat" - geometry of the unfolded model.
"user" - the inherited "name" attribute may be set to the name of an NX
ReferenceSet, which implies the purpose of the geometry.
Representation type can be used to distinguish between additional
and alternative geometry at assembly level in the following way:
"default"/"user" - If CompoundReps are all of type "construction", "weld"
or "midsurface", then geometry should be treated additional.
Otherwise - alternative.
"simplified" - alternative.
"flat" - Not expected at assembly level.
baseRef: an optional reference to a Representation which is overridden by this
Representation.
Elements:
Transform: optional Transform which positions the geometry in the
coordinate frame of the owner.
CompoundRep: the Representation may not have a single location. Instead, it may
contain a number of CompoundRep sub-elements, each with its own
location. The representation is the aggregate of these data sources.
InternalRep: the Representation may contain one element derived from InternalRep,
in which case it should not also have a location attribute.
EntityRef: references to entities in the Representation file. These EntityRef
elements can be referenced by RepresentationEntity elements.
May also contain elements of type Material, EntityMaterial, TextureData, Texture, or
EntityTexture.
Abstract base class for filters.
Attributes:
contextRef: The owning StructureRevisionView, if appropriate
outputRef: The result of applying the Filter - a ConfiguredOccurrenceGroup
This is the configured form of the OccurrenceGroup element.
It is a group of Occurrences and other ConfiguredOccurrenceGroups. All the
Occurrences included (recursively) in a ConfiguredOccurrenceGroup must have the
same Structure and View as the parent of their top Instance.
ConfiguredOccurrenceGroups can share Occurrences or other
ConfiguredOccurrenceGroups, but must not contain recursive loops.
Attributes:
childRefs: reference to contained Occurrences or ConfiguredOccurrenceGroups
sourceRef: A reference to the OccurrenceGroup to which this corresponds.
associatedAttachmentRefs: references to root AssociatedAttachments.
Sub-elements:
AssociatedAttachment
Abstract base class for Configuration Rule elements
This represents a configured structure.
Attributes:
ruleRefs: references to configuration rules (derived from ConfigRuleBase)
attachmentRefs: references to root attachments.
Elements:
AssociatedAttachment: These elements specify the elements attached to the
ConfigurationView.
ProductView. This is a collection of Occurrences and ConfiguredOccurrenceGroups
with the same top Structure and View.
Attributes:
viewControlRef: optional reference to a ViewControl
displayControlRef: optional reference to a DisplayControl
alternativeOfRef: A ProductView may be defined by reference to another
ProductView, in which case it may include Occurrences which
override certain corresponding Occurrences in the other
ProductView. This attribute is used to specify other ProductView,
which must have the same 'top Structure' as this one.
definition: how the ProductView is defined.
"select" means the ProductView is a selection of Occurrences from
the InstanceGraph.
"overlay" mean the ProductView modifies the view implied by the
InstanceGraph by changing some of the Occurrences. (Occurrences can
also be masked by including an "invisible" Occurrence in the
ProductView)
usage: This optional attribute specifies the intent of the ProductView.
Possible values are:
"visual". This means that the Occurrences in the ProductView are
simply for display, as in an exploded view. They do not necessarily
represent a physically realisable state.
"arrangement". The Occurrences represent a realisable state or
position of (part of) the assembly.
"variant". The Occurrences represent a configuration of the Product
Structure, i.e. with certain Options chosen.
"modelView". The ProductView represents a Model View, i.e.
annotated view of (partial) geometry of the model.
rootRefs: specifies the root Occurrences, i.e. those which are not children
of other Occurrences in this ProductView.
primaryOccurrenceRef: (deprecated). Used when there is only one root Occurrence.
sectionRef: specifies the Section (i.e. cutter geometry) associated with this view.
default: "true" if this is a default ProductView.
state: state of the ProductView.
Elements:
Occurrence: the Occurrences in the ProductView.
ConfiguredOccurrenceGroup: ConfiguredOccurrenceGroups in the ProductView
Transform: Transforms which may be referenced by the Occurrences.
SymbolicOccurrence: SymbolicOccurrences in the ProductView
sdkname=PartType
InstanceGraph. This is an element used as a container for elements which
represent an assembly graph.
Attributes:
rootInstanceRef: if the graph of Instances and StructureRevisionViews
in the InstanceGraph has a single root, which is an Instance,
this may be use to indicate it.
rootRefs: however, in general there may be more than one root, and the
roots may be Instances or StructureRevisionViews. The use of
this attribute to specify the root(s) is preferred.
viewControlRef: optional reference to a ViewControl
displayControlRef: optional reference to a DisplayControl
Elements:
May contain any element derived from Instance, GDEInstanceGroup, Structure
StructureRevision or StructureRevisionView. May also contain Transforms which
may be referenced by Instances.
This element may contain one or more InstanceGraphs, representing
all or part of one or more assembly graphs. It also contains elements relating
to its display.
Attributes:
revision: revision.
defaultProductViewRef: may be used to indicate a default from among the ProductViews.
default: may be used to indicate that this is the default from among the
StructureDefs in the document.
revisionRuleRef: reference to a RevisionRule which was used to generate this
assembly from an Unconfigured Product Structure.
NB: this elements is not defined in this schema.
variantRuleRef: reference to a VariantRule which was use to generate this
configured structure.
configured: indicates whether the Structure is Configured or
Unconfigured.
Elements:
This element may contain Representations, DisplayControls, ViewControls, Light
Sources, ProductViews, Materials, ConstructionGeometry, StructureRevisionViews,
GDEs, Sections or InstanceGraphs.
This element may contain one or more InstanceGraphs, containing ProductInstances
and ProductRevisionViews, representing all or part of one or more assembly graphs.
It also contains elements relating to its display.
Basic types that can be represented by user value entries and tables.
int = Data entity is an integer
ints = Data entity is a list of integers
real = Data entity is a real
reals = Data entity is a list of reals
boolean = Data entity is a boolean (true/false)
booleans = Data entity is a list of booleans
reference = Data entity is a reference (anyURI)
enum = Data entity is an enumeration.
list = Data entity is a list item.
dateTime = Data entity is a dateTime
(as in xsd:dateTime, i.e. CCYY-MM-DDThh:mm:ss).
This element defines a single entry in a UserList. The 'value' attribute
must contain data of the type specified by the 'type' attribute in the owning list.
Attributes:
value: data value (required).
description: textual description of the value.
This element defines a list of user specified data items. Each item in the
list is of the same type - as specified by the 'type' attribute'.
Attributes:
type: type of data items, i.e. int, ints, etc.
Elements:
Item: One element per data item.
sdkname=UserValue
This element defines a single title/value pair in a UserData table.
Attributes:
title: name of this entry in the table.
value: value of the entry.
type: datatype of the value, i.e. int, ints, etc, from UserValueDataType.
format: format string as used by printf.
editable: false if this value should not be modified by the receiving
application.
dataRef: If type is 'reference', dataRef specifies the referenced element.
The value attribute is ignored.
If type is 'enum' or 'list', then a UserList element should be
specified either by dataRef, or by being included as a sub-element.
In the 'enum' case, the UserList gives the valid values of the
enum; in the 'list' case, 'value' is ignored and the UserList IS
the value of this entry in the table.
minInclusive: Minimum value allowed (inclusive).
minExclusive: Minimum value allowed (exclusive).
maxInclusive: Maximum value allowed (inclusive).
maxExclusive: Maximum value allowed (exclusive).
stepValue: Allowed values go from min to max in steps of 'stepValue'.
minLength: Minimum list length allowed (only for type="list").
maxLength: Maximum list length allowed (ditto).
Elements:
UserList: May contain a single UserList element (see dataRef above).
The UserData element is a PLMXML Attribute used to represent a table of
title/value pairs. It is up to communicating applications to agree on the
meaning of these tables.
UserData is based on the plm:Attribute base class so that it may be substituted
wherever PLMXML Attributes are permitted.
Attributes:
type: A string giving the type of UserData. No specified values.
Elements:
UserValue: One element per entry in the table (at least one).
sdkname=UserEnum
This element represents a user defined enumeration value.
Attributes:
value: the enum value (required).
listRef: reference to a UserList element which gives the valid
values in the enum. 'value' must be one of these values.
This element is used to associate one or more entities with a set of UserData
elements. It is substitutable for Attribute.
Attributes:
userDataRefs: IDREFS to the UserData element(s).
Elements:
EntityRef: Element derived from EntityRef, used to specify which entity
is to be associated with the UserData.
This class represents the <XTData> element in a PLMXML
file, which is used to embed XT files in a Representation
element, for example:
<Representation ...>
<XTRep>
<XTData>T51 : TRANSMIT FILE
created by modeller version 130021217 SCH_1300212_130060
12 1 63 2 3 0 0 0 0 1e3 1e-8 0 0 0 1 0 1 1 4 5 6 7 8 9 10
81 1 2 63 11 1 0 0 0 0 1 ...
</XTData>
</XTRep>
</Representation>
XT Representation component of the PLMXML Schema
sdkname=GramsMillimetres
sdkname=GramsCentimetres
sdkname=KilogramsMetres
sdkname=PoundsFeet
sdkname=PoundsInches
substituteType=Volume;suppressId=true
substituteType=Density;suppressId=true
substituteType=CentreOfMass;suppressId=true
PLMXML Attribute describing mass properties.
ChildElementOccurrences=1
sdkname=DocumentBase
This class corresponds to a top-level (root) element in a PLMXML file.
Attributes:
author: Author.
date: Date modified.
time: Time modified.
language: Language used, e.g. in comments.
schemaVersion: Version of the schema this file was written for, e.g. "3.0".
referenceSearchPaths: A space-separated sequence of URIs or other strings used
by the Application to specify base URIs or other contexts
to enable relative URIs in the document to be resolved. The
URIs should be processed in sequence.
The redline markup element for PLMXML - is a simple annotation
type that describes its textual data via the xhtml spec. Thus
the text can include format and font information as per a
normal html document.
The redline element(s) is defined via simple polyline geometric
element and references to related entities can be made via the
'EntityRef' element.
output=ignore
This element contains or references an XML Schema used by the document it occurs
in. The schema may be a full schema, or a 'skeleton' schema only provided to convey
type hierarchy information.
Attributes:
schemaRef: URI Reference to schema file
Elements:
The actual schema, in the xsd namespace.
This element contains information about a PLMXML schema extension. It is embedded
in the schema file inside an appinfo element.
Attributes:
version: e.g. "4.1.1"
status: e.g. "development", "release".
skeleton: true if this is a schema skeleton, i.e. it just defines the type
hierarchy but does not specify any attributes or sub-elements.
Enumeration to define how fully components are to be loaded:
full: Components are to be fully loaded (heavyweight)
partial: Components are to be partially loaded (lightweight)
Enumeration to determine the action when a load operation fails:
abort: The load operation will be aborted
continue: The load operation will continue despite errors
Enumeration for defining how the subcomponents of a structure should be loaded:
top: Do not load any of the sub-components of a loaded component, Only load specified
top-level assemblies and their assembly-level geometry
last: Load the subcomponents specified in each component's file
all: Load all the sub-components, recursively
Enumeration to determine which version of a component is loaded:
specified: Load the version of the component as specified by the hierarchy
latest: Load the latest version of the subcomponent
Enumeration to determine how components related by interpart relations
are to be loaded
none: Do not load related components
immediate: Only load directly related components
all: Load directly and indirectly related components
Enumeration to determine the action if missing part family members are encountered:
ignore: Ignore the missing part family members
generate: Create missing part family members
Enumeration to determine to what extent the named representations are applied:
top: Apply geometric configurations to single structure level only
all: Apply geometric configurations to all levels
This element defines an entry in the ordered list of representation names that should be
selected.
This element defines an ordered list of representation names that should be
selected. The order of appearance in the element defines the order
of usage. Only the first valid geometric configuration, encountered in the list,
is applied to any one item.
Also known as 'ReferenceSets' in NX.
Elements:
PreferredRepresentation: One element per configuration. (At least one).
This element defines a single search path.
Attributes:
path: The search path
recursive: True if the subdirectories of the search directory must also be searched
Enumeration to determine where where to find the files to load.
local: From the directory of the parent assembly.
specified: By using the explicit filenames stored in the loaded files
(for example a CAD file for an assembly may contain
explicit filenames for the CAD files of the sub-assemblies).
This element defines an ordered list of search.
Elements:
SearchPath: One element per search path. (At least one).
Attributes:
location: This is an enum with values:
local: From the directory of the parent assembly.
specified: By using the explicit filenames stored in the loaded files
(for example a CAD file for an assembly may contain
explicit filenames for the CAD files of the sub-assemblies).
The purpose of this element is to specify global options or parameters
which control the precise way in which an application loads a Product Structure.
This is to ensure that different applications can load, and visualise,
the same Product Structure in exactly the same way.
There is at most one LoadOptions element in a PLM XML file.
Elements:
PreferredRepresentations: The list of named representations to be selected.
SearchPaths: Optional list of search paths for data
Attributes:
mode: Load items fully or partially.
errorAction: Action to take when a component fails to load.
componentSet: Load none, all or last-used of the subcomponents
revision: Load the specified or latest revision of the components
componentSubstitution: Determines whether component substitution is permitted
linkedComponents: Determines how related components are loaded.
partFamilyComponents: Determines the action to take if a part family member is missing.
This element contains header information for the PLMXML document.
Attributes:
traverseRootRefs: a collection of elements to start from, if traversing
the PLM XML elements according to some rule.
transferContext: a string which can be used to indicate the context in
which this PLMXML file is being transferred.
Elements:
Schema: a collection of schema elements.
LoadOptions: Global options for the loading of the associated document.
This defines the type of the outermost element in a PLMXML file.
Elements:
Header: Document header
AttribOwner: Any elements derived from AttribOwner are allowed under
this element, except as described below.
ViewControl: Represents a camera or view point in the Motion schema,
where a ViewControl does not already exist under a ProductDef.
sdkname=Document
AdditionalElements=
http://www.plmxml.org/Schemas/PLMXMLSchema:ProductDefType ProductDef
http://www.plmxml.org/Schemas/PLMXMLSchema:StructureDef StructureDef
http://www.plmxml.org/Schemas/PLMXMLSchema:Representation Representation
http://www.plmxml.org/Schemas/PLMXMLSchema:ConstructionGeometryType ConstructionGeometry
http://www.plmxml.org/Schemas/PLMXMLSchema:Structure Structure
http://www.plmxml.org/Schemas/PLMXMLSchema:StructureRevision StructureRevision
This is a base type for objects which can be revisioned and support hierarchical,
configurable structure.
Attributes:
catalogueId: The identifier of the Structure, unique in some context, e.g. an
Organisation.
optionRefs: Options. Each Option gives the full set of allowed values for this
product. ProductRevisions may specify an Option with a sub-set of
allowed values.
propertyRefs: reference to Properties
Elements:
PropertyGroup
This is a revision of a Structure.
Attributes:
revision: Identifies the revision. Could be numeric, alphabetic, or a mixture.
version: Gives the current 'version' of this revision. The version captures
changes en route to the next revision of this Product.
masterRef: Reference to the Structure of which this is a version.
optionRefs: Options. Each Option gives the set of allowed values for this
StructureRevision.
instanceRefs: Reference to elements derived from Instance, which define the
hierarchical structure. Both StructureRevision and
StructureRevisionView can have instanceRefs. In the case of
StructureRevision, the element is then representing a 'default' or
'unspecified' view. These Instances should not be GDEInstances.
gdeInstanceRefs: Referenced GDEInstance or GDEInstanceGroup elements.
simplifiedRepRefs: If an assembly has replacement representations (that is, in case
the assembly structure is not important in some context, then the
replacement representations can be used).
propertyRefs: reference to Properties
Elements:
VariantDefault
VariantRuleCheck
PropertyGroup
This is a base type for elements representing a 'view' (design,
manufacturing, etc) of a StructureRevision.
Attributes:
revisionRef: Specifies the StructureRevision of which this is a view.
viewRef: A reference to a view element (e.g. 'design')
structureViewRef: A reference to the corresponding element derived from
StructureView (e.g. ProductStructureView), of which this
is a revision.
instanceRefs: Referenced Instances which define the hierarchical structure.
gdeInstanceRefs: Referenced GDEInstance or GDEInstanceGroup elements.
connectionInstanceRefs: Referenced ConnectionInstance elements.
signalInstanceRefs: Reference to Instance elements which reference SignalRevision
elements.
routeInstanceRefs: Reference to Instance elements which reference Route
elements.
occurrenceRefs: if an assembly, this element may have certain Occurrences singled
out, so that, for example, they can have different Materials
associated, or can be repositioned.
locationInstanceRefs: Reference to LocationInstance elements.
propertyRefs: reference to properties
ruleRefs: reference to configuration rules (derived from ConfigRuleBase), which
specify how this structure was configured.
occurrenceControlState: "explicit", "implicit", or "mixed"
Elements:
Occurrence: These Occurrences play the same role as occurrenceRefs, above.
PropertyGroup a group of Properties of the StructureRevisionView
RepresentationEntity: 'logical entities' in the StructureRevisionView, which
correspond to a number of equivalent objects in Representation files
EntityPropertyGroup: used to specify Properties of logical entities in the
StructureRevisionView
SymbolicOccurrence: SymbolicOccurrences in the context of this StructureRevisionView
This is the revision-independent Product, derived from Structure.
It corresponds to the STEP 'product'.
Attributes:
productId: The identifier of the Product, unique in some context, e.g. an
Organisation.
alternateForRef: An 'alternate' Product is one which is substitutable, in all
contexts, for a particular Product. If this is an 'alternate'
Product, then this attribute references the Product for which
this is an alternate.
unitRef: The default Unit for the 'quantity' attribute of any referencing
ProductInstance elements.
designRequired: true if all the revisions of this Product must have
at least one associated DesignRevision
source: whether the Product is manufactured or bought-in
This is a revision of a Product. It corresponds to STEP 'product_definition_formation'.
Attributes:
primaryDesignRef: The primary DesignRevision, if any. This attribute is
deprecated. Use primaryDesign on RepresentedByRelation
instead.
source: Whether the Product is manufactured or bought-in.
designRequired: true if the ProductRevision must have at least one
associated DesignRevision.
This is a 'view' (e.g. 'design', 'manufacturing', 'maintenance') of a revision of a
Product.
Attributes:
representationRefs: Representations of the ProductRevisionView.
materialRef: an optional Material for use when displaying the
ProductRevisionView.
preferredUnits: (deprecated) The units preferred when presenting this element to the user.
Note that this does NOT affect any numerical values
representing lengths in the PLMXML file - these are always in
metres. This attribute is deprecated - use a DisplayPreferences
Property instead.
geometryRefs: geometry elements referenced by the ProductRevisionView.
type: assembly, minimal, wire, solid, sheet or general.
annotation3DGroupRefs: (deprecated) reference to any 3D Annotation groups
associated with the ProductRevisionView.
(note: these are not defined within this schema).
partRefs: (deprecated). If an assembly, it is also possible to 'instance'
other Parts directly without the need for an actual Instance
element. However this is limited to cases where information
stored on the Instance (such as Transform) is not required.
designRequired: true if the ProductRevisionView must have at least one
associated DesignRevisionView.
Elements:
Representation: see representationRefs.
The Part element is only provided for legacy compatibility. Use the
ProductRevisionView element in its place.
output=ignore
This is a 'view' (e.g. 'design', 'manufacturing', 'maintenance'). Referenced by a
ProductRevisionView.
Attributes:
(the 'name' attribute of the View is inherited from AttribOwnerBase)
This is the type of a relationship between two Occurrences or Instances.
associated:
attached:
related:
connection: An Occurrence of a Connection, related to an Occurrence
of a GDE to which it connects.
implementation: An 'implemented by' relation, for example between an
Occurrence of a Connection and an Occurrence of a
ProductRevisionView; or between an Occurrence of a
functional PRV and a physical PRV.
implements: The inverse of 'implemented by'. For example, an Occurrence
of a PRV may implement a RouteSection.
realisation:
misc:
signalSource: from Instance of a Signal to Occurrence of a Signal,
Connection, GDE or Product.
signalTarget: from Instance of a Signal to Occurrence of a Signal,
Connection, GDE or Product.
signalTransmitter: from Instance of a Signal to Occurrence of a Signal,
Connection, GDE or Product.
processVariable: from Instance of a Signal to the corresponding
Occurrence of a ProcessVariable.
redundancy: from Instance of Signal to Occurrence of a Signal
which is replicated by the first one.
signalValue: from Instance of a Signal to a SignalValue.
processVariableValue: from Instance of a ProcessVariable to a
ValueWithUnit.
route: from an Occurrence or Instance to a Route.
software: from an Occurrence or Instance of a Processor
or Software to an Occurrence or Instance of a
Software which uses or depends on it.
processorGateway: from an Occurrence or Instance of a Processor
to an Occurrence or Instance of another Processor
for which the first Processor acts as a Gateway.
mass: Relates a MechanismOccurrence or MechanismInstance to an
Occurrence or Instance in the ProductStructure that
determines its mass.
A reference from a GDEInstance to an Occurrence or InstancePath.
An entity in a Representation can also be specified.
Attributes:
type: type of the Reference.
occurrenceRef: reference to an Occurrence or InstancePath.
pathRefs: a list of Instance elements defining a path through the
Structure. pathRefs and occurrenceRef should not both be
present.
targetRef: reference to a RepresentationEntity.
Sub-elements:
EntityRef: (deprecated) reference to an Entity in a Representation. This must
be a Representation of the 'bottom Structure' of the Occurrence
or InstancePath.
The GDE element represents an internal constituent of a Structure
object, such as a Design Feature, Port, Annotation, etc. The Structure
instances the GDE by means of a GDEInstance.
Attributes:
gdeInstanceRefs: a list of references to associated GDEInstances or
GDEInstanceGroups. This is to allow the GDE to have
internal structure.
propertyRefs: reference to properties
Elements:
PropertyGroup
A type of GDE which represents a non-revisionable connection between
InstancePaths in an assembly.
A Connection is a structured object which represents a connection between a
number of InstancePaths in an assembly.
This is a revision of a Connection.
This is a 'view' (e.g. 'design', 'manufacturing', 'maintenance') of a
revision of a Connection.
This abstract datatype describes a single feature within the feature
tree hierarchy. The feature description contains basic information
such as name and type, as well as information to link the feature
to the originating application. Parameter descriptions can also
be included in the feature description.
Attributes:
nextFeature - (optional) the XML id of the next feature in the
feature hierarchy.
targetFeature - (optional) the XML id of the target feature that this
feature relies on. The target feature defines which
feature forms the resultant entity.
toolFeature - (optional) the XML id of the tool feature that this
feature relies on.
suppressed - (default=false) TRUE if the feature is suppressed in
the feature tree.
editable - (default=false)) TRUE if any parameters of the feature may
be edited.
Elements:
Type - (1) element describing the type of feature. This is an
application specific type. The receiving application is not
meant to deduce or interpret the type but could use it to
classify or group the feature.
Parameter - (0 or many) elements to describe the parameters associated
with the feature. It is up to the application to decide
what parameters to exchange or describe within the feature
description.
EntityRef - (0 or many) references to entities on another representation
(e.g. a BRep) expressed as PLMXML references.
validate=skipName
validate=skipName
validate=skipName
Generic feature element which can be used to enumerate
'any' parameterised feature. No semantic or specialised
information is exchanged via this schema.
This datatype describes a feature hierarchy for feature based
modelling system.
The feature hierarchy is represented via a single linked list of
set of feature elements that reference the next feature in the
hieratchy. The linked list hierachy must describe the features
in 'replay' order (ie. first operation first in the hierachy).
There is scope to describe 'tree-like' dependencies via additional
'dependentFeatures' reference attributes.
The feature tree is represented within PLMXML as an 'Internal Representation'
- the FeatureTreeType is based on InternalRepBase and the
element FeatureTree is a substitution class for InternalRep.
Attributes:
firstFeature - (optional) the XML id of the first feature in the
feature hierarchy.
editable - (optional) TRUE if any features of the feature tree
may be edited.
Elements:
Type - (1) element describing the type of feature tree. This is an
application specific type. The receiving application is not
meant to deduce or interpret the type but could use it to
classify feature tree.
Feature - (0 or many) the list of features thaat make up the feature tree.
validate=skipName
A base type for a usage relation between Structure, StructureRevision and
StructureRevisionView elements.
Attributes:
instancedRef Reference to the 'used' element. This should be derived from
StructureRevisionView, StructureRevision, StructureView, or
Structure, or GDE. In the latter cases some other context must determine
which view or revision is intended.
partRef: This attribute is retained for compatibility reasons and should
only be used for Product Structure, not general Structures.
transformRef: optional Transform which positions the 'used' element in the
coordinates of the using one.
materialRef: reference to a Material element to use when displaying the 'used'
element.
propertyRefs: reference to properties
representationRefs: an optional collection of Representations of the 'used' element.
designRequired: true if the 'used' element must have at least one
corresponding element in the Design Structure.
Elements:
Transform: see transformRef. (This should not be used in conjunction with
transformRef).
Representation: see representationRefs
VariantCondition:An optional VariantCondition
Reference Elements referenced by the StructureUsage. This enables the
representation of such relationships as "connected to", and
"implemented by".
PropertyGroup a group of Properties of the StructureUsage
EntityPropertyGroup: used to specify Properties of logical entities in the
referenced StructureRevisionView, in the context of the StructureUsage.
An AttributeContext element specifies the source for an overridden Occurrence
attribute or property (e.g. quantity, Transform). An Occurrence attribute or
property can be overridden in various ways, for example in the context of a
higher-level Occurrence. The AttributeContext is not intended to describe the
override mechanism - it simply indicates the context object which was responsible
for the override.
Attributes:
attributeName: The name of the (xml) attribute being overridden, if appropriate.
targetRef: The element which carries the attribute being overridden.
contextRef: The context element, for example a higher-level Occurrence.
changeRef: A reference to an element representing a Change which caused this
attribute to be overridden.
Occurrence. An Occurrence specifies a usage of a Structure, StructureRevision, or
StructureRevisionView in an Assembly. The usage is defined by specifying a chain of
Instances which lead from the Assembly down to the Structure, or by a chain of
Instances and other Occurrences, which when joined together define an Instance
chain. It is also possible for an Occurrence to reference a ProductView at the end
of its Instance chain, rather than a Structure.
The Assembly, which is the parent of the first Instance in the Instance chain, is
called the 'top Structure' of the Occurrence. The Structure, which is instanced by
the last Instance in the Instance chain, is called the 'bottom Structure' of the
Occurrence.
Note that the following inherited attributes on an Occurrence override the
attributes of the same name on the last Instance of the Instance chain:
materialRef
instancedRef
partRef
representationRefs
In addition, the 'transformRef' attribute overrides the transform
obtained by accumulating the transforms in the Instance chain.
Attributes:
instanceRefs: chain of Instances which define the Occurrence. (May end in a
GDEInstanceGroup).
pathRefs: chain of Instances and Occurrences which, when joined together,
define an Instance chain. Only one of instanceRefs and pathRefs
should be present.
geometryRefs: optional geometry associated with this Occurrence.
occurrenceRefs: an Occurrence may have a number of 'child' Occurrences, which this
attribute specifies. A child Occurrence must have an Instance chain
which is the same as that of its parent, but with one more Instance
added at the bottom end. An Occurrence is normally only rendered in
a view if it has no child Occurrences.
alternativeOfRef: It is possible for one ProductView to be defined by reference to
another ProductView. In this case the first ProductView will
contain some Occurrences which override Occurrences in the
referenced ProductView. The 'alternativeOfRef' attribute is used to
indicate the Occurrence which this Occurrence is overriding. If an
Occurrence has an alternativeOfRef attribute, it should not also
have an instanceRefs attribute, nor should it have an
occurrenceRefs attribute.
productViewRef: If an Occurrence has a productViewRef, then it is regarded as an
Occurrence of that ProductView, not of its 'bottom Structure'. In
this case, the 'top Structure' of the ProductView must be the same
as the 'bottom Structure' of the Occurrence.
visible: Flag to indicate the Occurrence is visible. If absent, visible is
implied. An Occurrence which references another Occurrence via the
alternativeOfRef attribute may override its visibility, i.e. make
it visible if invisible or vice-versa. NB This is deprecated -
use a Visibility Property instead.
lastInstanceParentRef: This is the StructureRevisionView which is the parent of the
last Instance in the chain. Although this is implied by the last
Instance in the chain, it can be specified explicitly with this
attribute, either for convenience, or in the case where
instanceRefs is absent.
sourceRef: A reference to the InstancePath to which this corresponds (which
will have the same instance path as this Occurrence).
linkedOccurrenceRef: In a Composition ProductView, this attribute references an
Occurrence or ConfiguredOccurrenceGroup in a referenced ProductView.
It indicates that this Occurrence should be treated as an Occurrence
not of an entire ProductRevisionView, but only of the specified
Occurrence(s).
linkedGroupRef: A reference to a ConfiguredOccurrenceGroup. This corresponds to the
group referenced by 'linkedOccurrenceRef', but contains Occurrences
in the Composition ProductView.
associatedAttachmentRefs: reference to any associated attachments. These are the
direct attachments of this Occurrence - any sub-attachments will be
referenced by those attachments.
parentRef: This is an optional back-pointer reference to a parent Occurrence,
which references this Occurrence through its 'occurrenceRefs'
attribute.
instanceNumber A number, or index. This is only relevant when the last Instance
in the path is a GDEInstance.
occurrenceId: ID for the Occurrence, unique in the context of the top-level
Structure of the Occurrence.
controlRefs: The OccurrenceControlRevision objects controlling this occurrence, if any
symbolicRefs: the child SymbolicOccurrences
Elements:
Material:
EntityMaterial: Allows the association of a Material with an entity; for example
the Occurrence could specify the colour of a face of a body. The
entity should be in a Representation specified by this Occurrence,
or by the last Instance in the Instance chain, or by the 'bottom
Structure' of the Occurrence.
AssociatedAttachment
AttributeContext: Used to specify the source of any overridden attributes or
properties of this Occurrence.
A base type for instancing relations between Structure, StructureRevision,
StructureView and StructureRevisionView elements. (This is not an abstract type
because the Instance element is retained for compatibility reasons).
Attributes:
quantity: Quantity of the element referenced. If absent, 1 is implied. If
present, any contained or referenced Transform is ignored.
unitRef: Units for the quantity attribute. If absent, 'each' is implied. An
IDREF to a 'Unit' element.
instanceType A 'subtype' string for the instance. No specified semantics.
sequenceNumber Serves to identify the instance within its parent. If
present, should be unique within the parent.
instanceThreadRef: A reference to the InstanceThread which this Instance is
included in, if any.
An Instance between Product, ProductRevision, or ProductRevisionView elements.
Attributes:
substituteForRef: A ProductInstance may be a 'substitute' for another, which means
that it may be used instead, but only in the context of their
common parent assembly. If this is a substitute for another
ProductInstance, then this attribute references it.
This is a base type for sub-types of Instance which need to reference
an Occurrence.
Attributes:
occurrenceRef: the referenced Occurrence. No specific semantics at this level.
An Instance of a GDE.
Attributes:
instanceNumber A number, or index, which identifies the GDEInstance
within its parent.
GDEInstanceGroup: derived from Managed.
This global element is used to collect together a number of
GDEInstance elements to simplify referencing.
Attributes:
propertyRefs Reference to Properties.
Elements:
GDEInstance Any number of GDEInstances.
PropertyGroup A group of Properties applicable to all GDEInstances
in the GDEInstanceGroup.
An Instance of a Connection, ConnectionRevision, or ConnectionRevisionView.
This element acts as a context for effectivities. An Effectivity can reference a
ConfigurationContext element to indicate that the Effectivity is only applicable
to that ConfigurationContext.
Attributes:
configId: Unique identifier.
Effectivity Base class.
contextRef: the Structure, StructureRevision, or ConfigurationContext in which this
Effectivity applies. If absent, then the Effectivity is relevant for
all Products and ProductRevisions which use the element to which the
Effectivity is attached.
Date Effectivity. Indicates that an element is effective between two specified
dates. If the start is omitted, the effectivity is openEnded in that direction.
If the end is omitted, the effectivity is openEnded, or stockOut, in that
direction.
Attributes:
start: Start date and time.
end: End date and time.
endCondition: If the end dateTime is omitted, this attribute specifies
whether the effectivity is stockOut or openEnded. OpenEnded means
effective indefinitely after the start date; stockOut means only
effective 'while stocks last'.
Lot Effectivity. Indicates that an element is effective only for a certain 'lot' or
batch.
Attributes:
lot: Lot identifier.
Serial Number Effectivity. Indicates that an element is effective for a range of
serial numbers. If the start is omitted, the effectivity is openEnded in that
direction. If the end is omitted, the effectivity is openEnded, or stockOut,
in that direction.
Attributes:
start: Start serial number.
end: End serial number.
endCondition: If the end serial number is omitted, this attribute specifies
whether the effectivity is stockOut or openEnded. OpenEnded means
effective indefinitely after the start serialNumber; stockOut means
only effective 'while stocks last'.
Option. This element specifies the valid values for an Option, either as a set of
allowed values (i.e. an enum), or as a range of values of a particular type.
Attributes:
scope: Option scope.
type: Option type - enum, string, int, real or logical.
Elements:
Value: If the Option is of type enum, it should contain a sequence of Value
sub-elements giving the allowed values.
GreaterThan: ) If the Option type is not enum, then its allowed values are
GreaterThanOrEqual: ) given by a range, which is specified by a GreaterThan or
LessThan: ) GreaterThanOrEqual element, followed by a LessThan or
LessThanOrEqual: ) LessThanOrEqual element. These are all of type
OptionValueType.
Default: Following these elements there may be a Default element giving a
default value for the Option.
Operand - abstract base class for Operands (arguments of operators).
Statement - abstract base class for statements.
StatementList - a list of statements.
Elements:
Contains a non-empty sequence of elements derived from Statement.
Expression - abstract base class for Expressions.
LogicalExpression - abstract base class for expressions returning a logical result.
And - a type of logical expression.
Elements:
At least two sub-elements, derived from LogicalExpression. The And expression
returns true if all its sub-elements return true.
Or - a type of logical expression.
Elements:
At least two sub-elements, derived from LogicalExpression. The Or expression
returns true if any of its sub-elements return true.
Not - a type of logical expression.
Elements:
One sub-element, derived from LogicalExpression. The Not expression returns
true if its sub-element returns false.
OptionIs - a logical expression which returns true if a given Option has a
particular relation to a given value (default equality relation).
Attributes:
optionRef: Reference to the Option.
value: Specified value for the Option.
operation: The operation. For example if operation is "gt", then OptionIs
returns true if the option is greater than 'value'.
PathIs - a logical expression that returns true if the path matches that of the
'instanceRefs' attribute. The path is defined as that of the chain of Instances
through an Assembly that end on and include the owning Instance.
Attributes:
instanceRefs: chain of Instances that define a path through a hierarchical
assembly structure.
Set. A Statement which sets an Option to a particular value.
Attributes:
optionRef: Reference to the Option.
value: Specified value for the Option.
SetDefault. A Statement which sets an Option to a particular value, if it
is unset. Unlike the Set Statement, it will not override an existing value.
Attributes:
optionRef: Reference to the Option.
value: Specified value for the Option.
Fix. A Statement which sets an Option to a particular value, and fixes it.
Subsequent Set, SetDefault, or Fix Statements are not allowed to modify it.
Attributes:
optionRef: Reference to the Option.
value: Specified value for the Option.
Derived. A Statement which shows that the particular Option value has been
derived from other options and given for information only.
Attributes:
optionRef: Reference to the Option.
value: Value for the Option.
Message - abstract base class for Message Statements.
Check Message. This is used in VariantRuleChecks.
Attributes:
message: String message to output.
Inform Message. Outputs an informative message.
Attributes:
message: String message to output.
Warn Message. Outputs a warning message.
Attributes:
message: String message to output.
Error Message. Outputs an error message.
Attributes:
message: String message to output.
ConditionalStatement. This is an If ... Then ... Else ... Statement.
Elements:
First, an element derived from LogicalExpression.
Then: StatementList element, executed if the LogicalExpression returns
true.
Else: Optional StatementList element, executed if the LogicalExpression
returns false.
VariantRule. This specifies a configuration by giving specified values for
a set of Options.
Attributes:
configuredRef: The StructureRevision this VariantRule is associated with, if any.
Elements:
A non-empty sequence of Set, Fix and Derived Statements, which specify values for a set of
Options.
VariantRuleCheck. This outputs a Check Message if a condition is true.
Elements:
An element derived from LogicalExpression.
A Check element.
VariantDefault. An abstract base class for Variant Defaults.
VariantDefaultFixed. This is a collection of 'SetDefault' Statements.
Elements:
A non-empty sequence of SetDefault Statements, which set the values of some
Options, if they are not already set.
VariantDefaultDerived. A set of SetDefault Statements which depend on a
LogicalExpression.
Elements:
An element derived from LogicalExpression.
A non-empty sequence of SetDefault Statements, which are executed if the
expression returns true.
VariantCondition. This contains a logical expression which determines whether
the Instance it is attached to is 'loaded', i.e. appears in the configuration.
Elements:
A single element derived from LogicalExpression.
Enum for SI unit prefixes, ranging from yotta (10**24) to yocto (10**-24)
Component of a standard SI unit of measurement
Attributes:
prefix: multiplier prefix, e.g. "kilo", "micro"
exponent: power to which unit is raised, e.g. seconds**-2
Component of a unit of measurement, other than a standard SI unit.
The name of the unit can be any string, to allow for the numerous units
in use. However the following strings should be used for the corresponding
common units:
SI units (other than those given explicitly in the Unit element):
"gram", "hertz", "newton", "pascal", "joule", "watt", "coulomb",
"volt", "farad", "ohm", "siemens", "weber", "tesla", "henry",
"degreeCelsius", "lumen", "lux", "becquerel", "gray", "sievert".
"are", "hectare", "litre" (note European spelling).
Common non-SI units:
"minute", "hour", "day".
"inch", "foot", "yard", "mile", "nautical mile".
"acre".
"pint", "quart", "gallon",
"imperial pint", "imperial quart", "imperial gallon".
"ounce", "pound".
Attributes:
name: name of unit, e.g. "inch"
prefix: multiplier prefix, e.g. "kilo", "micro"
exponent: power to which unit is raised, e.g. cm**-2
Unit - a unit of measurement, e.g. gallons, or kilogram/metre**2.
This defines the unit as a combination of powers of other units.
The standard SI units are represented explicitly, other units are
given by a named element.
Elements:
Metre: a UnitComponent element giving the length exponent.
...etc...
GeneralUnit: powers of specified units.
Base class for entities which can 'own' objects (people, organisations, users,
sites, etc).
An individual Person.
Attributes:
firstName: first name.
middleNames: middle names and/or initials.
lastName: last (family) name.
userId: user Id.
addressRef: optional reference to an Address element.
Enables a User to be associated with a Discipline, at a particular level
Attributes:
disciplineRef: reference to a Discipline
level: name of the relevant Level
A User, i.e. a user account on a computer system.
Attributes:
userId: User Id.
personRef: optional reference to a Person element.
Elements:
DisciplineRelation: used to associate a User with a Discipline.
An organisation, i.e. a group of people or users. Organisations are hierarchical.
People/Users are associated with organisations by means of an OrganisationMember
element, which also specifies a Role.
Attributes:
(name: Name, inherited from DescriptionBase)
address: Optional reference to Address.
organisationRefs: Reference to sub-organisations.
cageCode: CAGE code (5 characters). This is a US government company code.
disciplineRefs: Disciplines associated with this Organisation. There is no
implication that Users in this Organisation belong to these
Disciplines.
A Role, e.g. "Designer", "Test Engineer", "Chairman", which a Person
plays in an organisation.
Attributes:
(name: The name of the role, i.e. "Designer". Inherited from DescriptionBase)
This element is used to associate a Person/User with an Organisation, and to
assign an optional Role to that Person/User within that Organisation. A person
may have more than one Role in an Organisation.
Attributes:
memberRef: Reference to a Person or User.
organisationRef: The Organisation.
roleRef: The Role.
This is a class of people/users within an organisation, e.g. all people in
Company A with role 'programmer'. As such it references an organisation and
a role. It can be used as a resource without specifying a particular person.
Attributes:
organisationRef: The Organisation.
roleRef: The Role.
An address for a Person or Organisation.
Attributes:
internalLocation: Room, mailbox, etc.
streetNumber:
street: Name of street, road, lane, etc.
town: Village, Town, City, etc.
region: Region, County, State, etc.
country: Country.
postalCode: PostCode, ZIP, etc.
emailAddress:
telephone:
A Site in the sense of a particular software installation, database,
or location.
Attributes:
(name: Name of the Site, inherited from DescriptionBase)
siteId: Identifying Id of the Site
addressRef: Reference to Address element.
ownerRef: Reference to owning Organisation.
A level of expertise in a Discipline
Attributes:
name: The name of the Level, e.g. "expert"
number: A number associated with the Level. Higher numbers imply
greater expertise.
A Discipline which Users may belong to.
Attributes:
rate: The default pay rate for this Discipline. The units are
unspecified.
Elements:
Level: Levels of expertise of the Discipline
Simple Access Control enum.
reference: read-only
modifiable: read-write
noAccess: may not be accessed at all.
Simple access control element. Specifies a set of owners, and read/write access.
Attributes:
intent: reference, modifiable or noAccess.
ownerRefs Reference to one or more owners. These should be elements
derived from plm:OwnerBase, e.g. Person, Organisation, Site, etc.
Simple status information.
Attributes:
dateCreated: Date and time created.
dateModified: Date and time last modified.
lastModifiedBy: Person or User who last modified this element.
validate=skipName
Checkout information.
Attributes:
by: Person etc. holding the checkout. Derived from OwnerBase.
date: Date and time checked out.
validate=skipName
Attribute used to associate a DataSet with a PLM XML element.
Attributes:
dataSetRef: uri reference to DataSet
role: role/purpose of DataSet. No specified values.
Represents an external file.
Attributes:
locationRef: uri of the file
format: format of the file. This should determine which applications
can read the file. There is no fixed set of values for this, but
will often correspond to the file extension, e.g. "doc", "txt".
If the format is the same as a Representation format, e.g. "JT",
then the same format string should be used.
Represents a DataSet (collection of files).
Attributes:
(name: name of the DataSet; inherited from AttribOwnerBase)
version: version number.
type: type of DataSet. No specified values.
memberRefs: uri references to the members of the DataSet. These should be
plm:ExternalFile elements.
ReleaseStatus. Specifies date of release, and effectivities.
Attributes:
dateReleased: Date and time released.
effectivityRefs: Reference to Effectivity elements.
This is the revision-independent Drawing element. A Drawing is a 2D representation
of one or more ProductRevisions/ProductRevisionViews.
Use the 'catalogueId' attribute on the Structure class as a persistent Id for the
Drawing.
Attributes:
title Title of the Drawing.
This is a revision of a Drawing.
Attributes:
externalFileRefs: URI references to the Drawing files. These should be
ExternalFile elements.
drawnRefs: URI references to ProductRevisions or ProductRevisionViews
drawn in this Drawing revision.
This is a View (design, manufacturing, etc) of a Revision of a Drawing.
This element connects a ProductRevision or ProductRevisionView to a 'template'
ProductRevision/ProductRevisionView which represents a Product Family of which
it is a member. For example a template ProductRevision might represent the 'Bolt'
family and a member ProductRevision might be a 2cm Bolt.
The member may be specified by a collection of parameter values in the 'Parameters'
UserData sub-element. The exact way in which these parameters are interpreted will
depend on the CAD system which defined the Template.
Attributes:
memberRef: URI reference to member ProductRevision/ProductRevisionView
templateRef: URI reference to template ProductRevision/ProductRevisionView
Elements:
Parameters UserData element containing defining parameters for the member
This element represents a dependency between one ProductRevision,
ProductRevisionView or Occurrence, and another. The slave depends in some way on
the master.
The nature of the dependency may be specific to the CAD system which defined it,
and is specified by the 'type' attribute, and the 'Parameters' UserData
sub-element.
Attributes:
type The type of dependency.
slaveRef URI reference to the dependent ProductRevision, ProductRevisionView
or Occurrence.
masterRef URI reference to the master ProductRevision, ProductRevisionView or
Occurrence.
This represents a numerical value with a unit, e.g. "3.1 miles".
Attributes:
name: (inherited from DescriptionBase) name, e.g. "mileage"
value: the value
unitRef: reference to a Unit element. If this omitted, the value is unitless.
This represents a numerical range with a unit, e.g. "3.1-4.2 miles", or
"at least 100 litres". At least one of the limit attributes must be present.
Attributes:
name: (inherited from DescriptionBase) name, e.g. "mileage"
lowerLimit: the lower limit
upperLimit: the upper limit
unitRef: reference to a Unit element. If this omitted, the value is unitless.
Represents a configured attachment to an Occurrence. When an unconfigured element
(such as a ProductInstance) has an attachment, for example by means of a
GeneralRelation, or AssociatedDataSet, then a corresponding configured element
(such as an Occurrence) may have that attachment configured.
Attributes:
role: the role of the attachment i.e. the relation to its owner.
contextRef: The corresponding configured element (e.g. ProductInstance) which owns
the attachment.
attachmentRef: reference to the attached element.
childRefs: sub-Attachments
This is a group of InstancePaths and other OccurrenceGroups. All the InstancePaths
included (recursively) in an OccurrenceGroup must have the same InstancePathRoot.
OccurrenceGroups can share InstancePaths or other OccurrenceGroups, but must not
contain recursive loops.
Attributes:
instancePathRootRef: reference to the common InstancePathRoot.
childRefs: reference to contained InstancePaths or OccurrenceGroups
This element collects together Instances which correspond across different
revisions of a structure. An Instance can only be in one InstanceThread,
which it references by its instanceThreadRef attribute.
This element represents the root of a tree of InstancePaths.
Attributes:
structureViewRef: This is the StructureView at the top of the InstancePaths in the
tree.
This element represents an unconfigured path of InstanceThreads, top to bottom.
The path must be sequential in that the 'instanced' Structure of each InstanceThread
must be the same as the 'parent' Structure of the next InstanceThread in the path.
It is possible (although unusual) for an InstancePath to 'change views' as you go
down the path.
Attributes:
instancePathRootRef: The InstancePathRoot which represents the top of the tree
this InstancePath is in.
instanceThreadRef: This is the last (bottom) InstanceThread in the instance path.
(Unlike the Occurrence element, which has an "instanceRefs"
attribute to specify the full path, this element only
specifies the last InstanceThread, and relies on its
'ancestor' elements to define the path).
childRefs: the 'children' of the InstancePath. This is a selection of
other InstancePaths, each of which must have a path which is
formed by adding one more InstanceThread on the end of the
path. There must be no duplicates paths.
absoluteOccurrenceRef: This is a back-pointer to a referencing AbsoluteOccurrence
(There can be at most one AbsoluteOccurrence referencing a
given InstancePath)
An AbsoluteOccurrence provides a mechanism for collecting together a number of
InstancePaths, which in some sense 'correspond' (for example the front left wheels
in two different cars). There are no actual requirements on what these
InstancePaths are.
Attributes:
occurrenceId: an id for the Occurrence
instancePathRefs: the InstancePaths in the AbsoluteOccurrence
This abstract element represents a View (e.g. 'design') of a Structure.
It simply references the associated Structure and View elements.
Attributes:
masterRef: reference to the Structure
viewRef: reference to the View
propertyRefs: reference to Properties
Elements:
PropertyGroup
This element represents a View of a Product, e.g. 'design' View.
This is general relation between a number of elements. The type of relation
is given by the 'subType' attribute inherited from ManagedBase.
There are no specified values of 'subType'. Therefore the semantics of the
relation are not defined here.
This is an abstract base class for Properties. A Property will override a similar
Property if it attached to an earlier element in the following list:
Occurrence, Instance, StructureRevisionView, StructureRevision, Structure. So, for
example, a Property on an Instance will override a similar Property on the
corresponding StructureRevision.
Attributes:
ownerRef: The owner of the property. Necessary when the owner is an object
in a Representation file, e.g. an XT Face.
This is a group of Properties.
This Property represents the length of an object (such as a pipe or wire).
Attributes:
type: A string specifying the type of value, e.g. whether computed
or measured.
This Property represents the Mass of an object.
This Property represents the Density of an object.
This Property represents the colour of an object.
Attributes:
ambient: ambient colour
diffuse: diffuse colour
specular: specular colour
emissive: emissive colour
shininess: shininess coefficient (0-255)
alpha: alpha coefficient (0-1)
colourId: string id of the colour
type: a string indicating the use of the colour in the
owning element.
This Property gives the (volume) Thermal Expansion Coefficient of an object.
Elements:
ValueWithUnit
RangeWithUnit one of these sub-elements should be used to indicate the value
or range of the Property.
This Property gives the Thermal Conductivity of an object.
Elements:
ValueWithUnit
RangeWithUnit one of these sub-elements should be used to indicate the value
or range of the Property.
This Property gives the Specific Heat Capacity of an object.
Attributes:
type: constantPressure (default) or constantVolume
Elements:
ValueWithUnit
RangeWithUnit one of these sub-elements should be used to indicate the value
or range of the Rated Voltage.
This Property gives the Modulus of Elasticity of an object (also known
as Young's Modulus).
Elements:
ValueWithUnit
RangeWithUnit one of these sub-elements should be used to indicate the value
or range of the Property.
This Property gives the Poisson's Ratio of an object.
Attributes:
value: value of Poissons' Ratio
lowerLimit: lower limit
upperLimit: upper limit
This Property gives the Yield Stress of an object (the tensile stress a
material can support without permanent deformation).
Elements:
ValueWithUnit
RangeWithUnit one of these sub-elements should be used to indicate the value
or range of the Property.
This Property gives the Ultimate Stress of an object (the tensile stress a
material can support without breaking).
Elements:
ValueWithUnit
RangeWithUnit one of these sub-elements should be used to indicate the value
or range of the Property.
This Property gives the Ultimate Elongation of an object, that is, the
strain an object can support under tensile stress, before breaking. Note
this is a ratio, not a percentage.
Attributes:
value: value of Ultimate Elongation.
lowerLimit: lower limit
upperLimit: upper limit
This Property gives the Surface Area of an object.
Elements:
ValueWithUnit
RangeWithUnit one of these sub-elements should be used to indicate the value
or range of the Property.
This Property gives the Volume of an object.
Elements:
ValueWithUnit
RangeWithUnit one of these sub-elements should be used to indicate the value
or range of the Property.
This Property gives the Centre of Mass of an object.
Attributes:
value: The vector position of the Centre Of Mass (in metres).
Elements:
Bound: The Bound sub-element, if present, gives an error bound
on the centre of mass.
This Property gives the Inertia Tensor of an object, at its Centre of
Mass.
Attributes:
value: The value of the Inertia matrix. Only 6 values are given,
in the order Ixx, Ixy, Ixz, Iyy, Iyz, Izz, as the matrix
is symmetric.
error: If present, this gives the error bound for the Inertia, as
12 doubles, in the order Ixx-min, Ixx-max, Ixy-min, Ixy-max,
etc.
unitRef: Reference to a Unit element. If absent, S.I. units are
assumed.
A type of Filter which is defined in terms of set operations on other
Filters.
Attributes:
operation: unite, intersect, or complement
Elements:
OccurrenceFilter: Filters to be combined. If operation="complement", the Filters
are implicitly united before the Complement is performed.
A type of Filter which specifies an explicit collection of Occurrences. The filter
specifies two lists of Occurrences. Those in the first list are simply added to the
output of the Filter, without child Occurrences being included. Those in the second
list result in the output of the Filter also containing their (recursive) child
Occurrences.
Attributes:
targetRefs: Occurrences, not including their child Occurrences
targetRecursiveRefs Occurrences, recursively including their child Occurrences
A type of Filter based on querying properties of the objects filtered. If
the operation specified returns true, the relevant Occurrence is included.
If 'operation' and 'value' are both omitted, then the PropertyFilter selects
those Occurrences for which the indicated property has a value.
Attributes:
property: The name of the property on which the filter is based
operation: The operation performed on the property value
value: The other operand
type: The type of 'value'
This is a Zone defined by a distance from a bounding shape, defined by a collection
of objects.
Attributes:
entityRefs: Reference to objects which defines the Zone. The objects are
implicitly united.
distance: Proximity distance in metres.
A type of Occurrence Filter based on a geometric zone.
Attributes:
includeIn: If true, then include occurrences that are inside the zone.
includeOut: If true, then include occurrences that are outside the zone.
includeOn: If true, then include occurrences that intersect the zone.
zoneRef: Reference to Zone element.
This Property represents the display preferences for an element such as a
ProductRevisionView.
Attributes:
unitRef: a Unit element giving the preferred display units.
displayAnnotations Indicates that elements derived from Annotation3D
should be displayed in the target visualisation application.
displayGeometry Indicates that elements derived from Geometry or geometry
referenced via Reference elements should be displayed
in the target visualisation application.
A 'logical entity' which corresponds to objects in a number of
equivalent Representations.
Attributes:
entityRefs: reference to EntityRef elements in Representations
or CompoundReps.
This is a group of Properties which apply to a specified set of
RepresentationEntities.
Attributes:
entityRefs: reference to RepresentationEntity elements
Elements:
Property Properties of the referenced entities.
This Property specifies whether an object is visible or not - also
referred to as unblanked/blanked.
Attributes:
value: logical: true is visible, false is invisible
This Property controls the display of a Coordinate System.
Attributes:
style: an enumeration defining the display.
This Property controls the display of a Point.
Attributes:
style: an enumeration defining the display.
This Property controls the display of a line.
Attributes:
style: an enumeration defining the display.
thickness: an enumeration defining the thickness of the line.
This Property specifies the Translucency of an object.
Attributes:
value: the Translucency. 0.0 is opaque; 1.0 is fully Translucent (invisible).
This is the revision-independent element which represents control over Occurrence(s)
and their AbsoluteOccurrence data in a set context
Attributes:
controlledOccurrenceRef: the AbsoluteOccurrence controlled by this OccurrenceControl
contextRef: the context of the OccurrenceControl
This is a revision of an OccurrenceControl
This element is used to "re-organise" an Occurrence under a new parent
Occurrence. It references the "source" Occurrence which is being reorganised, and
specifies the new parent.
Attributes:
contextRef: Occurrence defining the context in which the reorganisation
was defined
sourceRef: the source Occurrence or Instance being reorganised
parentRef: the new parent Occurrence, SymbolicOccurrence, Instance or
StructureRevisionView
showSource: true if the source Occurrence or Instance should be displayed,
as well as the reorganised one
symbolicRefs: the child SymbolicOccurrences
This Property specifies the Suppression state of an object. Suppressing
an Occurrence effectively removes it from the Product Structure; so it
is not rendered, does not take part in mass property calculations, and
does not appear in the Bill of Materials.
Attributes:
value: true if the object is Suppressed.
This Property specifies the Layer number of an element, for display purposes.
Attributes:
value: the number of the Layer the object is on.
This relation relates a "defining" element to a "complying" element.
For example, the "defining" element might be a Requirements Document,
and the "complying" element a Part.
This represents the geometric definition of a Product.
This is a revision of a Design.
This is a 'view' of a revision of a Design.
Attributes:
representationRefs: Representations of the DesignRevisionView.
geometryRefs: geometry elements referenced by the DesignRevisionView.
Elements:
Representation: see representationRefs.
This relation relates a ProductRevision to a corresponding DesignRevision.
Attributes:
primaryDesign: Whether the referenced DesignRevision is the primary.
This relation relates an Occurrence of a ProductRevisionView to a
corresponding Occurrence of a DesignRevisionView. The inherited
relatedRefs references must be in that order.
Attributes:
transform: Whether transform information in the Product Structure comes
from the Design Structure.
geometry: Whether geometry information in the Product Structure comes
from the Design Structure.
This represents a Requirement, i.e. a single Requirement for a
Product (not a Requirements Document).
This is a revision of a Requirement.