PDXpert PLM Software
Application Note
PDXpert IPC-2570 technical notes
Including an IPC-2570 map to PDXpert attributes.
Last update 2023-05-12
This describes a PDX package exported using the current PDXpert release. Earlier releases may be different.
Contents
How IPC-2570 affects PDXpert configuration & use
- Technical design and constraints
- Construction recursion rules
- Partner parts as assemblies or BOM components
- Shared manufacturer datasheets
- Attachments: Revision files, item files, external links
- Manufacture and ChangeNotification package types
- XML names
- Proprietary extensions
Content topic numbers refer to the corresponding section in each IPC standard.
Text styles: IPC element name, IPC attribute name, supplied attribute value.
General specifications (link)
IPC-2571 Generic Requirements§
- ProductDataeXchangePackage
- History / HistoryItem
- Attachments / Attachment
- Contacts / Contact / ContactRoles / ContactRole / GroupRole / PublicDigitalCertificate
- AdditionalAttributes / AdditionalAttribute
- AlternateIdentifiers / AlternateIdentifier
IPC-2576 As Built Data§
As-built data is created by a downstream manufacturing process. These elements are not included in a PDXpert PDX package.
IPC-2578 Bill of Material and Product Design Configuration Data§
- Items / Item
- SerialNumbers / SerialNumberRange / SerialNumberIdentification
- BillOfMaterial / BillOfMaterialItem
- ReferenceDesignators / ReferenceDesignator
- AlternateItems / AlternateItem
- ApprovedManufacturerList / ApprovedManufacturerListItem
- ApprovedSupplierList / ApprovedSupplierListItem
- ChangeHistory / ChangeHistoryItem
- Changes / Change
- Approvers / Approver
- AffectedItems / AffectedItem
- ApprovedManufacturerListMarkups / ApprovedManufacturerListMarkup / ApprovedManufacturerListMarkupRowOld / ApprovedManufacturerListMarkupRowNew
- AttachmentMarkups / AttachmentMarkup / AttachmentMarkupRowOld / AttachmentMarkupRowNew
- BillOfMaterialMarkups / BillOfMaterialMarkup / BillOfMaterialMarkupRowOld / BillOfMaterialMarkupRowNew
- ManufacturerParts / ManufacturerPart
- SupplierParts / SupplierPart
- Characteristics / MeasuredCharacteristic / RangedCharacteristic / EnumeratedCharacteristic / TextualCharacteristic
See also Alphabetical index
How IPC-2570 affects PDXpert configuration§
Technical design and constraints
The IPC-2570 standards focus on physical manufacturing: parts, BOMs, sources. Document records are treated as parts, and reference relationships (e.g., instructions, specifications, tooling, etc.) rely on the BOM relationship (even if the parent isn't an assembly).
Home organization parts (IPC element Item) allow more relationships than partner organization source parts (ManufacturerPart). The standards require an assembly and all parts on its bill of materials (BillOfMaterialItem) to be home parts; there's no standard attribute that identifies the owning organization. The IPC-2570 standard doesn't expect a partner bill of material or a partner part directly on the BOM.
PDXpert uses the AdditionalAttributes element to add each referenced part or document. The related Item element includes attributes; attachments for revision and item files; materials; and change history. It doesn't include BOM, Sources or References.
The IPC specification's AdditionalAttribute and ManufacturerPart elements are terminal nodes: they don't allow BOMs, sources or references, or support recursions. A PDX package excludes the referenced item's own references, sources and BOM items. A ManufacturerPart that's a source for an Item includes only its revision (isFileIn:Yes) and item (isFileIn:No) file attachments, but not its References list.
To improve compatibility with PDX package viewers and importers, the PDXpert pdx.xml file has these characteristics:
-
IPC-2571 Section 3 processing directives <?pdx_version = "1.0"?> and <?generated_by ... ?> are always included.
-
IPC-2571 Section 6 specifies that ProductDataeXchangePackage elements, attributes packageType and thisDocumentCopyright are #IMPLIED values. However, these attributes are always included, even if the value is empty.
-
IPC-2571 Section 9.1 specifies that Contact element, attribute isTopLevel is #IMPLIED but it's always included to identify the package originator at ProductDataeXchangePackage originatedByContactUniqueIdentifier.
-
IPC-2578 Section 4.1 specifies that Item element, attribute isTopLevel is #REQUIRED and it's always included per IPC-2571 Section 5.7.
-
IPC-2578 Section 18.1 specifies that ManufacturerPart element, attribute isTopLevel is #IMPLIED but it's always included per IPC-2571 Section 5.7.
Construction recursion rules§
The PDX package's starting node is an Item, ManufacturerPart or Change that contains its allowed relationships. On each Item element, the immediate Sources, References and Files lists are included, but only its BOM item is examined for lower-level relationships.
-
A part [PDXpert home part as IPC Item] can have a BOM, sources, references, files.
-
Bill of material row [PDXpert home part as IPC BillOfMaterialItem] with designed, purchased or assembly part included? Yes
-
Bill of material parts [as IPC Item] included? Yes
-
Recursion continues to lower-level parts. If the BOM item has a BOM, sources, references or file attachments, they're included.
-
-
Manufacturer sources [PDXpert partner part as IPC ManufacturerPart] included? Yes
-
Recursion stops here. If the source part has file attachments, they're included.
-
-
Reference documents and parts [as IPC Item] included? Yes
-
Recursion stops here. If the reference item has file attachments, they're included.
-
-
Revision file (isFileIn:Yes), item file & external link (isFileIn:No) [as IPC Attachment] included? Yes
-
File attachments relate only to the item, and never relate to lower-level items
-
-
-
Source part included? Yes
-
Recursion stops here. If the source part has file attachments, they're included.
-
-
Reference document / part included? Yes
-
Recursion stops here. If the reference item has file attachments, they're included.
-
-
Files attachments included? Yes
-
File attachments relate only to the item, and never relate to lower-level items
-
-
If your supply chain partner needs the excluded details of a referenced Item or ManufacturerPart, it must be exported separately in its own PDX package.
Partner parts as assemblies or BOM components§
In product manufacturing, good practice says that your company assigns its own part number to every part it designs or specifies. For purchased parts, a home part record identifies your company's requirements; the part's sources list (manufacturer part records) describe how those requirements are met. The home part is revised when new manufacturer sources are added, and when existing sources must be removed as obsolete or disqualified. Assemblies show only your company's part numbers. Manufacturers' parts appear only as sources for your parts, never directly on the BOM. (More information)
IPC-2578 requires this practice: only a (home) Item can have a BillOfMaterial, and a BillOfMaterialItem refers to a (home) Item. A (partner) ManufacturerPart cannot have a BOM or appear directly on a BOM.
Shared manufacturer datasheets§
When the manufacturer's datasheet is directly attached to the PDXpert partner source part (IPC ManufacturerPart) as a revision file or external link, this works as you'd expect: the attachment is exported into the PDX package, and shown in PDXplorer.
However, it's common for a datasheet to describe many similar parts: a resistor series that varies only in resistance; O-rings that vary only in diameter; screws that vary in length. In these cases, the ideal solution would have one document record with the shared datasheet as an attachment, and then each ManufacturerPart would include this document on its References list. Unfortunately, this document reference isn't exported in the PDX package.
There are four options for using shared datasheets with PDX packages:
- Attach the partner's shared datasheet directly to each source part's Revision Files list. If you have 20 parts that use the same datasheet, you'll have 20 identical file attachments. This appears to be the process intended by IPC-2570.
- Attach a shared datasheet on a separate document, list the document on the manufacturer parts, and export the document separately. This works best when your supply chain partners retain these shared datasheets. You'll send updates only when the manufacturer issues a new datasheet.
- Attach shared datasheet documents as a reference on the home purchased part. This has the benefit of including the datasheet with the PDX package, but separates the datasheet from its actual manufacturer. It requires some care in coordinating the home part's Sources list with its References list.
- Use an external link on the manufacturer part to link to the supplier's on-line datasheet. The external link is included in the package. This is often the best solution when the part is widely-used, the datasheet is available on-line, and manufacturer's datasheet changes don't affect interchangeability.
Attachments: Revision files, item files, external links§
PDXpert exports a PDX package that may include files and web links (IPC Attachments):
-
All related document and part revision files, as well as change form files, are included in a PDX package. (isFileIn:Yes).
-
Item files that are attached to documents and parts are identified, but not included, in the PDX package. (isFileIn:No).
-
Although an external link is exported into a PDX package, it's a pointer to the actual file or web resource that is not included (isFileIn:No). The content of the link target (web page or downloadable file) may change between the time the package is exported and when the link is clicked.
If you have a file that cannot be shared (for example, computer source code or a secret formula), attach it as an item file. Or, you can structure your product BOM so that secret revision files are attached at a higher level that's not exported to supply chain partners. You can also exploit the "reference on reference" exclusion described earlier by listing the documents as references on a "proprietary documents" record.
Finally, supply chain partners or other PDX package users are blocked from an external linked resource if, for example, the link points to a private server on your local network.
Manufacture and ChangeNotification package types§
PDXpert exports distinct PDX package types from a part or document, and from a change form. The ProductDataeXchangePackage element has a packageType attribute that shows the Manufacture or ChangeNotification value.
Manufacture
A Manufacture package contains a selected part or document.
The package starts at the selected item, and drills down into its related lists: BOM, sources, references, materials and file attachments. The rules for what is included (and what is not) are described in the Technical background section of this application note.
ChangeNotification
The ChangeNotification package provides information about the selected change, its file attachments, and its affected items. This package includes the revised items, as well as their immediate BOM, sources, references and file attachments. It doesn't include the full BOM recursion to lower-level items if the items are not affected by the change. The package also includes lists of the differences ("markup") for an affected item's BOM, sources, and file attachments.
XML names§
The IPC-2750 standards use the W3C XML technology standard. While PDXpert handles most of the details, your custom attribute names must conform to the XML standard, particularly regarding letter case and whitespace.
Your custom attribute's name is exported into PDX packages as an XML AdditionalAttribute element's name attribute value. Differences in letter case or whitespace may prevent an export, or create inconsistent PDX export packages, or cause import errors in other software.
-
Characters in an attribute value are case-sensitive. No case conversion ("folding") is performed before strings are matched, thus A and a are not the same.
Rule: When a custom attribute name is used on more than one item type, use the same letter case for every type's name. For example, a Purchase part's custom attribute name="RoHS" and a Design part's name="ROHS" may cause processing errors.
Download this Show Custom Attribute Names transform (for PDXpert 13.0 or later) to review and compare all custom attributes' names. It's shown only in the administrator's menu. The Excel EXACT() function can be used to find mismatched uppercase/lowercase characters.
-
A validating XML importer may normalize attribute values by replacing whitespace (0x09, 0x0A, 0x0D, 0xA0) with a space (0x20) character; discarding leading and trailing whitespace; and compacting multiple whitespace characters to a single space.
Rule: Use only normal space characters. Do not use new line or tab characters, leading or trailing space characters, or sequences of space characters.
Proprietary extensions§
The IPC-2750 standards have remained exactly as they were published in November 2001. We've added a few optional features that the IPC committee didn't include: SHA-256 cryptographic signature, and AES-256 password encryption.
General specifications§
-
IPC-2571 sections 2.4 and 3 refer to data compression using RFC 1952 V4.3 ("GZip").
-
The byte count of all items in a standard compressed PDX package must be less than 4GB (232 bytes). Newer PDXpert releases have a setting to override this limit, but downstream systems and package readers may not open non-standard packages.
-
Section 2.3.1 specifies that an attachment's file name contains only ISO 8859-1 (LATIN-1) characters. This is not the Unicode character set. PDXpert release 16.0 (and later) normalizes Unicode filename characters to the ASCII character set before including the file in the package. For details, see Attachment universalResourceIdentifier note 1.
-
- A package-unique identifier (PUID) identifies an element within the package that may be referenced by other elements. The PUID is an arbitrary string that's unique only within a specific PDX package, and may conflict with PUIDs contained in other PDX packages. The format and length may change from one package to another, and in different PDXpert releases. See IPC-2571, section 5.1.
-
If the data source used to generate a PDX package does not have a value for a required attribute, the value of the attribute should be set to "" so that the package won't be rejected by an application using a validating XML parser. See IPC-2571, section 5.3.
-
A DateTime data type is formatted as an ISO 8601 string, YYYY-MM-DDThh:mm:ssZ (without fractional seconds). See IPC-2571, section 5.6.
-
IPC-2571 doesn't define its enumerated data types. PDXpert's internal Microsoft .NET and SQL Server database numeric data types are mapped as:
Microsoft .NET data type SQL Server data type IPC-2571 enumeration byte (8b), short (16b), integer (32b),
long (64b), decimal (128b fixed point)tiny (8b), small (16b), int (32b),
big (64b), decimal (varies)Decimal single, double float, real Double Boolean bit Boolean -
For determining whether a PDXpert collection name or internal enumeration matches an IPC-2571 enumeration value, all whitespace is removed from both elements and the resulting values are compared (case-insensitive). If the computed values match, then the IPC-2571 enumeration is applied; otherwise Other is applied to the attribute value, and the original PDXpert value is applied to the attributeOther value.
For example, after processing, PDXpert's BOM Type Codes collection member Direct material matches the PDX globalBillOfMaterialTypeCode enumeration DirectMaterial, so the latter is added to the package. However, Direct-Material does not match, so Other/Direct-Material is used.
-
IPC-2578 separates parts into two categories: Items and ManufacturerParts. PDXpert follows this definition by exporting all items owned by the PDXpert home organization as Items; parts and documents are separated using the Item itemClassification attribute. All partner items are exported as ManufacturerParts; parts and documents are separated using the AdditionalAttribute itemClassification attribute.
The IPC specification permits a BillOfMaterial list on an Item, but not on a ManufacturerPart. Therefore, if a partner part has a BOM, its PDX package includes the child components, but not the BOM structure (Find, Quantity, RefDes, etc.).
-
The home organization is always included as the first Contact (Organization) element in the Contacts group, even if it is otherwise not referenced within the PDX package.
-
Except as noted, the order in which elements are added is undefined. The order in which attributes are added is also undefined, but the tables present their preferred order for readability in a PDX reader.
-
For packages larger than 4GB (IPC-2570 non-standard feature), some files attachments have special compression rules.§
File type Compressed .7z, .7zip No .apk No .avi Yes: >1MB optimized for compression speed, otherwise for size .bin No .cab No .dll No .dmg No .docx Yes: >1MB optimized for compression speed, otherwise for size .exe No .gif Yes: >1MB optimized for compression speed, otherwise for size .gz No .gzip No .iso No .jar No .jpeg, .jpg Yes: >1MB optimized for compression speed, otherwise for size .mov Yes: >1MB optimized for compression speed, otherwise for size .mp3, .mp4 Yes: >1MB optimized for compression speed, otherwise for size .msi No .pdf Yes: >1MB optimized for compression speed, otherwise for size .pkz No .rar No .tar, .tar.xz No .vdi, .vhd No .xlsx Yes: >1MB optimized for compression speed, otherwise for size .zip No
Element attribute maps§
The element topics are ordered alphabetically.
AdditionalAttribute (2571:10.1)§
An AdditionalAttribute describes one property's name and value within an AdditionalAttributes parent group.
Parent elements
Element detail & attributes
An AdditionalAttribute element is always optional, and is not written to the PDX package if the value isn't useful.
- Omit if a trimmed string is zero-length (for example, include Item element's globalTradeIdentificationNumber or notes only if the trimmed length is greater than zero.
- Omit if a numeric value is NULL. Numeric 0 values are useful and are always included.
- Omit if an item type has an optional attribute, such as an item's Auxiliary Person, and that option is disabled.
Where there are separate PDXpert fields for an attribute value and its related unit of measure, these are combined into a single value/dimension pair.
The content of each AdditionalAttribute element varies based on the containing element. Refer to the parent element of each AdditionalAttributes group for more information.
Attribute name | Required | Data type | PDXpert attribute |
---|---|---|---|
name | required | String | |
value | required | String | |
dimension | optional | String | |
dataType | optional | Enumeration | |
dataTypeOther | optional | String | |
description | optional | String |
Child elements
(none)
AdditionalAttributes (2571:10)
AdditionalAttributes represent a named group used to describe optional element properties that are not defined within the IPC-2571 specification. Any number of groups can be created and labeled, and each group contains one or more AdditionalAttribute elements.
Parent elements
Element detail & attributes
Attribute name | Required | Data type | PDXpert attribute |
---|---|---|---|
groupLabel | required | String | PDXpert.name where name is the group name, such as PDXpert.Custom |
Child elements
AdditionalAttribute (1, unbounded)
AffectedItem (2578:14.1)§
This element identifies one item that's affected by a change, and contained within the AffectedItems list.
Parent elements
Element detail & attributes§
Each element is added to the PDX package sorted by row number (rowNumber).
Attribute name | Required | Data type | PDXpert attribute |
---|---|---|---|
itemIdentifier | required | String | Item Number value |
itemUniqueIdentifier | optional | IDREF | PUID that refers to the affected Item element. |
description | optional | String | Part name / document title |
newRevision | required | String | Released revision |
globalLifeCyclePhaseCode | optional | Enumeration | Lifecycle of new item |
globalLifeCyclePhaseCodeOther | optional | String | |
effectiveDate | required | DateTime | Release date of new revision |
oldRevision | optional | String | Canceled revision |
obsoleteDate | required | DateTime | Cancel date of old revision |
disposition | optional | String | Concatenate all disposition rows for affected item: oldRev: activity quantity UoM @ location; ... newRev: activity quantity UoM @ location; ... For oldRev and newRev in PDXpert release 16.1 and later: [Cancel | ;Release] revision (lifecycle) Example: ;Release: Rework 27 each @ Vendor; For oldRev and newRev in PDXpert releases before 16.1: revision value: Example: B: Rework 27 each @ Vendor; |
manufacturingSite | optional | String |
Child elements§
AdditionalAttributes (0, unbounded)
name | value | dimension | dataType | dataTypeOther | description |
---|---|---|---|---|---|
rowNumber | Row value on Affected list | Decimal | |||
oldRevisionDescription | Old revision's Release description value | String | |||
newRevisionDescription | New revision's Release description value | String |
The following set of elements represents one complete disposition task. Each affected item on a change form may have one released iteration, one canceled iteration, or both. Each item iteration may have any number of disposition tasks (or no tasks).
name1 | value | dimension | dataType | dataTypeOther | description |
---|---|---|---|---|---|
state.number.Activity | The disposition action or category | String | |||
state.number.Location | The location of the items to be dispositioned | String | |||
state.number.IsRecurring | Recurring activity checkbox value, where Yes signals an on-going expense for all future items | Boolean | |||
state.number.Quantity | The number of items (and their units) affected by the disposition task | Physical UOM | Double | ||
state.number.AssignedTo | Name of person who dispositions the items | String | |||
state.number.TargetDate | The planned date when the disposition task should be completed | String | |||
state.number.ActualDate | Actual date when the disposition task was completed | String | |||
state.number.Notes | Instructions for performing the disposition task | String |
Notes:
-
The item iteration's state is Cancel or Release, and the number is the disposition task row number for a specific iteration.
AffectedItems (2578:14)
This element contains the complete list of items affected by a Change.
Parent elements
Element detail & attributes
(none)
Child elements
AffectedItem (1, unbounded)
AlternateIdentifier (2571:11.1)
This element identifies an alias contained within an item's AlternateIdentifiers collection.
Not implemented in a current PDXpert release.
Parent elements
Element detail & attributes
Attribute name | Required | Data type | PDXpert attribute |
---|---|---|---|
alternateIdentifierNumber | optional | String | unrealized |
description | optional | String | unrealized |
Child elements
(none)
AlternateIdentifiers (2571:11)
This element contains all alternate identifiers associated with a particular item or part.
Not implemented in a current PDXpert release.
Parent elements
Element detail & attributes
(none)
Child elements
AlternateIdentifier (1, unbounded)
AlternateItem (2578:8.1)
A single item that's functionally equivalent to a BillOfMaterialItem.
Not implemented in a current PDXpert release.
Parent elements
Element detail & attributes
Attribute name | Required | Data type | PDXpert attribute |
---|---|---|---|
itemIdentifier | optional | String | unrealized |
itemUniqueIdentifier | required | IDREF | PUID that refers to the alternate Item element. |
globalPreferredStatusCode | optional | String | unrealized |
Child elements
AdditionalAttributes (0, unbounded)
AlternateItems (2578:8)
This is the element that collects the set of functionally equivalent items for a specific BillOfMaterialItem.
Not implemented in a current PDXpert release.
Parent elements
Element detail & attributes
(none)
Child elements
AlternateItem (1, unbounded)
ApprovedManufacturerList (2578:9)
This element is the approved sources list for a specified part.
Parent elements
Element detail & attributes
(none)
Child elements
ApprovedManufacturerListItem (1, unbounded)
ApprovedManufacturerListItem (2578:9.1)§
This element describes a single approved source (manufacturer + part number) within the ApprovedManufacturerList.
In PDXpert 10.0 and later, the user's organization and assigned role determines which manufacturer sources are included in the package.
Parent elements
Element detail & attributes
These elements are added to the PDX package sorted by Rank number (globalPreferredStatusCode).
Attribute name | Required | Data type | PDXpert attribute |
---|---|---|---|
manufacturerPartIdentifier | required | String | Part Number value |
manufacturerPartUniqueIdentifier | optional | IDREF | PUID that refers to the approved ManufacturerPart element. |
manufacturedBy | optional | String | Part Owner value (organization name) |
manufacturerContactUniqueIdentifier | optional | IDREF | PUID that refers to the manufacturer's Contact (Organization) element. |
globalPreferredStatusCode | optional | String | Source part Rank value |
globalManufacturerPartStatusCode | optional | Enumeration | Part Lifecycle value |
globalManufacturerPartStatusCodeOther | optional | String | |
description | optional | String | Part Name value |
Child elements
AdditionalAttributes (0, unbounded)
name | value | dimension | dataType | dataTypeOther | description |
---|---|---|---|---|---|
notes | Source row Notes value | String |
AlternateIdentifiers (0, 1)
ApprovedManufacturerListMarkup (2578:15.1)
This element describes a single manufacturer part markup from a collection of ApprovedManufacturerListMarkups.
Parent elements
ApprovedManufacturerListMarkups
Element detail & attributes
Attribute name | Required | Data type | PDXpert attribute |
---|---|---|---|
globalMarkupTypeCode | required | Enumeration | Convert internal code for
|
Child elements
ApprovedManufacturerListMarkupRowNew (2578:15.2)
This element points to a manufacturer part that will be, or has been, approved for use.
Parent elements
ApprovedManufacturerListMarkup
Element detail & attributes
(none)
Child elements
ApprovedManufacturerListItem (1,1)
ApprovedManufacturerListMarkupRowOld (2578:15.2)
This element points to a manufacturer part that will be, or has been, disapproved for use.
Parent elements
ApprovedManufacturerListMarkup
Element detail & attributes
(none)
Child elements
ApprovedManufacturerListItem (1,1)
ApprovedManufacturerListMarkups (2578:15)
This element collects the set of approved source markups for a specific AffectedItem.
Parent elements
Element detail & attributes
(none)
Child elements
ApprovedManufacturerListMarkup (1, unbounded)
ApprovedSupplierList (2578:10)
This element contains the list of all distributors, and their part numbers, for a manufacturer part.
Not implemented in a current PDXpert release.
Parent elements
Element detail & attributes
(none)
Child elements
ApprovedSupplierListItem (1, unbounded)
ApprovedSupplierListItem (2578:10.1)
This element contains a single instance of a distributor and its part number for a manufacturer part.
Not implemented in a current PDXpert release.
Parent elements
Element detail & attributes
Attribute name | Required | Data type | PDXpert attribute |
---|---|---|---|
supplierPartIdentifier | required | String | Supplier part number |
supplierPartUniqueIdentifier | optional | IDREF1 | PUID that refers to the approved SupplierPart element. |
suppliedBy | optional | String | Supplier organization name |
supplierPartContactUniqueIdentifier | optional | IDREF | PUID that refers to the supplier's Contact (Organization) element. |
globalSupplierPartStatusCode | optional | String | |
comments | optional | String | Supplier part notes |
Notes:
- IPC-2578 calls for ID but the intent appears to be consistent with ApprovedManufacturerListItem / ManufacturerPart. If this is retained as an ID, then neither this attribute nor the SupplierPart element's supplierPartUniqueIdentifier has any defined use.
Child elements
AdditionalAttributes (0, unbounded)
AlternateIdentifiers (0, 1)
Approver (2578:13.1)§
This element identifies a change reviewer within a Change's list of Approvers.
Parent elements
Element detail & attributes
Each element is added to the PDX package sorted by approval sequence number (approvalSequence).
Attribute name | Required | Data type | PDXpert attribute |
---|---|---|---|
approverName | required | String | Reviewer name (if available), otherwise Group name |
approverContactUniqueIdentifier | optional | IDREF | PUID that refers to the reviewer's Contact (Person) element. |
globalApproverTypeCode | required | Enumeration | Must act converts to Required | Can act converts to Optional |
globalApproverTypeCodeOther | optional | String | |
globalEngineeringChangeResponseCode | optional | Enumeration | Approve | Reject | Other |
globalEngineeringChangeResponseCodeOther | optional | String | If response code is Other, this value is Pending or Hold |
approvedDate | optional | DateTime | Reviewed on value |
comments | optional | String | Comments value |
alternateApproverName | optional | String | |
alternateApproverContactUniqueIdentifier | optional | IDREF | |
workflow | optional | String | |
approverWorkflowStatus | optional | String |
Child elements
AdditionalAttributes (0, unbounded)
name | value | dimension | dataType | dataTypeOther | description |
---|---|---|---|---|---|
approvalGroup | Department name | String | |||
approvalSequence | Sequence value | Decimal |
Approvers (2578:13)
This element contains the set of all approvers for a single Change.
Parent elements
Element detail & attributes
(none)
Child elements
Approver (1, unbounded)
AsBuiltProduct (2576:5)
This element describes a product produced in a specified quantity.
Not implemented in a current PDXpert release.
Parent elements
Element detail & attributes
Attribute name | Required | Data type | PDXpert attribute |
---|---|---|---|
globalProductIdentifier | required | String | unrealized |
asBuiltProductQuantity | required | String | unrealized |
manufacturerUnitOfMeasure | optional | String | unrealized |
customerIdentifier | optional | String | unrealized |
customerProductNumber | optional | String | unrealized |
primaryIdentifier | optional | String | unrealized |
secondaryIdentifier | optional | String | unrealized |
isTopLevel | optional | Enumeration | unrealized |
Child elements
AdditionalAttributes (0, unbounded)
ProductInstance (0, unbounded)
Attachment (2571:8.1)§
This element describes one file contained within, or external to, the PDX package.
Revision files and change form files are included (isFileIn:Yes) in the PDX package. Document and part item files are identified but not included (isFileIn:No). Web links (URIs) are included but the URI objects are not.
Item files are background or historical records such as proposals/sketches, budget spreadsheets, vendor quotes, customer emails, etc. These are rarely useful to the supply chain, and can substantially increase the PDX file size or compromise private information. Item-level attachments are identified in case the supply chain partner decides to inquire about a file that might be useful.
Parent elements
Element detail & attributes
Attribute name | Required | Data type | PDXpert attribute |
---|---|---|---|
isFileIn | required | Enumeration | Yes |
universalResourceIdentifier | required | UriReference | PUID prefixed to filename; for example ID56.abc.txt or id00321-abc.txt1 |
fileIdentifier | optional | String | |
referenceName | optional | String | Original source filename of the file, usually assigned when file was first created by the authoring application; for example, abc.txt |
globalMimeTypeQualifierCode | optional | String | File extension without . separator; for example txt |
fileSize | optional | String | Integer byte count without formatting or units; for example, 1675713 |
attachmentModificationDate | optional | DateTime | Original source file date/time; for example 2021-05-27T15:18:21Z |
versionIdentifer | optional | String | (Incorrect DTD spelling retained) |
checkSum | optional | String | Not used. See additional attributes Digests group, below. |
description | optional | String | [Revision] or [Item] followed by file's Notes |
Notes:§
-
In releases before PDXpert 16.0, the universalResourceIdentifier contains the original Windows filename. Newer packages normalize the original filename by replacing extended Unicode characters with characters in the ASCII character set. Normalization (a) converts diacritics ( á ) to Latin-1 alphabetic ( a ), whitespace (TAB, NBSP) to space, and hyphen-like to hyphen; (b) removes control characters; (c) compresses multiple whitespace to a single space; (d) replaces all quote styles ( " “ « ) with single quote ( ' ); and (e) replaces remaining non-ASCII chars (0x80 and higher) with ~ . The original Unicode filename is used when the file is saved directly from the PDX package; the normalized ASCII is the temporary filename when viewed directly from the package, and when saved using the viewing application.
Child elements
AdditionalAttributes (0, unbounded)
With PDXpert 15.0 (and later), every file attachment that is in the package (isFileIn:Yes) includes a message digest. An attachment's AdditionalAttributes with groupLabel:Digests contains one or more message digests; for example, a single file can have distinct AdditionalAttribute entries for SHA-1 and SHA-256. PDXpert uses SHA-1 for file integrity; performance is good and collision probability is negligible. The complete set of file attachment digests is protected using SHA-256 to sign the pdx.xml file.
name | value | dimension | dataType | dataTypeOther | description |
---|---|---|---|---|---|
SHA12 | SHA-1 file hash3 | String | [SHA1 | SHA256] message digest algorithm (hexadecimal) |
Notes:
-
The Digests value is case-sensitive.
-
Hash algorithm, one of: SHA1, SHA256. May include or exclude hyphen/minus ( 0x2d - ) delimiters, and be uppercase or lowercase.
Examples for SHA-1: SHA1, sha-1
-
Digest string consists of ANSI Basic hexadecimal characters. May include or exclude hyphen/minus ( 0x2d - ) delimiters, and be uppercase or lowercase.
Examples for SHA-1: 33cc5a4aee5d0e01f24c1d59414e0ef9bbf29aba, 33CC-5A4A-EE5D-0E01-F24C-1D59-414E-0EF9-BBF2-9ABA
Attribute name | Required | Data type | PDXpert attribute |
---|---|---|---|
isFileIn | required | Enumeration | No |
universalResourceIdentifier | required | UriReference | URL scheme and name; for example ftp://any.com/abc.txt or https://www.any.com/abc.htm |
fileIdentifier | optional | String | |
referenceName | optional | String | |
globalMimeTypeQualifierCode | optional | String | |
fileSize | optional | String | |
attachmentModificationDate | optional | DateTime | |
versionIdentifer | optional | String | (Incorrect DTD spelling retained) |
checkSum | optional | String | |
description | optional | String | [Item] or [External] followed by file's or link's Notes |
Child elements
AdditionalAttributes (0, unbounded)
AttachmentMarkup (2578:16.1)
This element describes a single file attachment markup within a collection of AttachmentMarkups.
Parent elements
Element detail & attributes
Attribute name | Required | Data type | PDXpert attribute |
---|---|---|---|
globalMarkupTypeCode | required | Enumeration | Convert internal code for
|
Child elements
AttachmentMarkupRowNew (0, 1)
AttachmentMarkupRowOld (0, 1)
AttachmentMarkupRowNew (2578:16.2)
This element points to an added file attachment within a AttachmentMarkup.
Parent elements
Element detail & attributes
(none)
Child elements
Attachment (1,1)
AttachmentMarkupRowOld (2578:16.2)
This element points to a removed file attachment within a AttachmentMarkup.
Parent elements
Element detail & attributes
(none)
Child elements
Attachment (1,1)
AttachmentMarkups (2578:16)
This element collects the set of file attachments being changed on one AffectedItem.
Parent elements
Element detail & attributes
(none)
Child elements
AttachmentMarkup (1, unbounded)
Attachments (2571:8)
This element is a collection of one or more files attached to another object in the PDX package.
Parent elements
Element detail & attributes
(none)
Child elements
Attachment (1, unbounded)
BillOfMaterial (2578:6)
This element contains the set of lower-level "child" component items within a higher-level "parent" assembly Item.
Parent elements
Element detail & attributes
(none)
Child elements
BillOfMaterialItem (1, unbounded)
BillOfMaterialItem (2578:6.1)
Within an item's BillOfMaterial list, this element identifies the row that contains a unique child component item, with the quantity needed to make the parent item.
Parent elements
Element detail & attributes
Each element is added to the PDX package sorted by Find number (proprietarySequenceIdentifier).
Attribute name | Required | Data type | PDXpert attribute |
---|---|---|---|
proprietarySequenceIdentifier | optional | String | Find value |
billOfMaterialItemIdentifier | optional | String | Item Number value |
billOfMaterialItemUniqueIdentifier | optional | IDREF | PUID that refers to the BOM row's Item element. |
revisionIdentifier | optional | String | Item Revision value |
description | optional | String | Item Name value |
itemQuantity | optional | String | Part Quantity numeric value (always 1 for document) |
globalProductQuantityTypeCode | optional | Enumeration | PerAssembly | PerSetup | AsNeeded |
globalProductQuantityTypeCodeOther | optional | String | |
globalBillOfMaterialTypeCode | optional | Enumeration | Bill of material parent part's BOM type code value |
globalBillOfMaterialTypeCodeOther | optional | String | |
notes | optional | String | Row Notes value |
isSerializationRequired | optional | Enumeration |
Child elements
AdditionalAttributes (0, unbounded): Include this AdditionalAttribute if item is a part
name | value | dimension | dataType | dataTypeOther | description |
---|---|---|---|---|---|
globalProductUnitOfMeasureCode1 | Unit of measure | String |
Notes:
- Included when the component part's default unit of measure is permitted to be overridden with a compatible unit of measure on the BOM.
BillOfMaterialMarkup (2578:17.1)
This element describes a proposed child item change as part of a BillOfMaterialMarkups collection.
Parent elements
Element detail & attributes
Attribute name | Required | Data type | PDXpert attribute |
---|---|---|---|
globalMarkupTypeCode | required | Enumeration | Convert internal code for
|
Child elements
BillOfMaterialMarkupRowNew (0, 1)
BillOfMaterialMarkupRowOld (0, 1)
BillOfMaterialMarkupRowNew (2578:17.2)
This element points to a new "child" component item within a "parent" assembly BillOfMaterialMarkup.
Parent elements
Element detail & attributes
(none)
Child elements
BillOfMaterialItem (1,1)
BillOfMaterialMarkupRowOld (2578:17.2)
This element points to an old "child" component item within a "parent" assembly BillOfMaterialMarkup.
Parent elements
Element detail & attributes
(none)
Child elements
BillOfMaterialItem (1,1)
BillOfMaterialMarkups (2578:17)
This element contains each BoM markup within one AffectedItem.
Parent elements
Element detail & attributes
(none)
Child elements
BillOfMaterialMarkup (1, unbounded)
Change (2578:12.1)
This is the element that describes a single change within the Changes collection.
Parent elements
Element detail & attributes
Attribute name | Required | Data type | PDXpert attribute |
---|---|---|---|
changeNumber | required | String | Number value |
changeType | optional | Enumeration | Notice for PDXpert executing (implementing) change, and Request for PDXpert advisory (non-implementing) change |
changeSubType | optional | String | Change form Type value |
revisionIdentifier | optional | String | |
changeOwnerName | optional | String | Analyst name |
changeOwnerContactUniqueIdentifier | optional | IDREF | PUID that refers the analyst's Contact (Person) element. |
globalEngineeringChangeStatusCode | optional | Enumeration | Change lifecycle state name |
globalEngineeringChangeStatusCodeOther | optional | String | |
changeStatusDate | optional | DateTime | Release date value |
changeOriginatedByName | optional | String | Originator name |
changeOriginatedByContactUniqueIdentifier | optional | IDREF | PUID that refers the originator's Contact (Person) element. |
changeOriginationDate | optional | DateTime | Origination date value |
requestReason | optional | String | Problem source value |
changeReason | optional | String | Change reason value |
description | optional | String | Primary discussion, such as change notice description or change request proposal |
changeRequestDescription | optional | String | |
workflow | optional | String |
Child elements
AdditionalAttributes (0, unbounded)
name | value | dimension | dataType | dataTypeOther | description |
---|---|---|---|---|---|
personOne | Person #1 value | String | Item type's Person #1 label | ||
personTwo | Person #2 value | String | Item type's Person #2 label | ||
changeClassification | Change classification value | String | |||
changePriority | Priority value | String | |||
beginLabel | Change type Label for starting boundary fields | String | |||
beginSerialNumber | Beginning serial number value | String | |||
beginEffectiveDate | Beginning date | DateTime | |||
endLabel | Change type Label for ending boundary fields | String | |||
endSerialNumber | Ending serial number value | String | |||
endEffectiveDate | Ending date | DateTime | |||
maximumQuantity | Maximum permitted items affected | Unit of measure | Double | ||
maximumDuration | Maximum permitted duration | Time UoM | Double | ||
changeOwnerContactName | Organization value | String | |||
changeOwnerContactUniqueIdentifier | IDREF that refers to the Organization record | Other | PUID |
name | value | dimension | dataType | dataTypeOther | description |
---|---|---|---|---|---|
Attribute label1 | Custom attribute value2,3 | Unit of measure2,4 | Data type5 | Description value1 |
Notes:
- As defined by the Custom property descriptor on the item type collection member. This value is case-sensitive and space-sensitive; all uses must match exactly.
- As entered on the item's Custom list.
- If custom attribute's Scheme is Collection, then apply the collection member's name; otherwise, apply the attribute value.
- If custom attribute's Scheme is UOM, then this is the unit of measure; if Scheme is Money, then this is the ISO currency code; otherwise empty.
- The PDXpert custom attribute's Scheme determines the IPC-2571 data type: UOM=Double; Boolean=Boolean; Date=DateTime; Float=Double; Integer=Decimal; Money=Decimal; String=String; URI=UriReference; Collection=String.
ChangeHistory (2578:11)
This element contains a set of history records about one Item.
Parent elements
Element detail & attributes
(none)
Child elements
ChangeHistoryItem (1, unbounded)
ChangeHistoryItem (2578:11.1)
This element identifies a specific change contained within the ChangeHistory set of all changes that have affected an item.
Parent elements
Element detail & attributes
Attribute name | Required | Data type | PDXpert attribute |
---|---|---|---|
changeNumber | required | String | Change form Number value |
changeType | optional | Enumeration | Notice for PDXpert executing (implementing) change, and Request for PDXpert advisory (non-implementing) change |
globalEngineeringChangeStatusCode | optional | Enumeration | Change lifecycle state name |
globalEngineeringChangeStatusCodeOther | optional | String | |
description | optional | String | Primary discussion, such as change notice description or change request proposal |
proposedRevision | optional | String | |
revisionIdentifier | optional | String | Item revision at change release |
globalLifeCyclePhaseCode | optional | Enumeration | Item lifecycle state at change release |
globalLifeCyclePhaseCodeOther | optional | String | |
releasedDate | optional | DateTime | Revision Release date value |
incorporatedDate | optional | DateTime | |
effectiveDate | optional | DateTime | Effective date of new revision |
obsoleteDate | optional | DateTime |
Child elements
AdditionalAttributes (0, unbounded)
Changes (2578:12)
This element lists each change within the PDX package.
Parent elements
Element detail & attributes
(none)
Child elements
Change (1, unbounded)
Characteristics (2578:20)
The Characteristics element is the set of all Item properties that are not otherwise defined within the IPC-2578 specification.
Not implemented in a current PDXpert release.
Parent elements
Element detail & attributes
Attribute name | Required | Data type | PDXpert attribute |
---|---|---|---|
category | required | String | unrealized |
Child elements
EnumeratedCharacteristic (0, unbounded)
MeasuredCharacteristic (0, unbounded)
RangedCharacteristic (0, unbounded)
TextualCharacteristic (0, unbounded)
Configuration (2576:7)
This element identifies the configuration of a particular ProductInstance.
Not implemented in a current PDXpert release.
Parent elements
Element detail & attributes
Attribute name | Required | Data type | PDXpert attribute |
---|---|---|---|
configurationType | required | String | unrealized |
configurationData | required | String | unrealized |
Child elements
(none)
Contact (2571:9.1)
This element describes one contact within a collection of Contacts. Contact elements have a dual role in IPC-2571: as a human (PDXpert Persons) and as a legal entity (PDXpert Organizations). To support these separate roles, PDXpert (and many other PDX generators) broadly define Contact attributes like contactName.
Parent elements
Element detail & attributes (Person)
Attribute name | Required | Data type | PDXpert attribute |
---|---|---|---|
contactName | required | String | Person Name value |
contactUniqueIdentifier | required | ID | Assigned contact PUID |
contactIdentifier | required | String | Duplicate of contactUniqueIdentifier1 |
contactStatus | optional | Enumeration | Active checkbox as Active or Inactive |
emailAddress | optional | String | Primary email address value |
telephoneNumber | optional | String | Voice phone value |
facsimileNumber | optional | String | Facsimile value |
businessName | optional | String | Organization value |
universalResourceIdentifier | optional | UriReference | |
department | optional | String | |
globalBusinessIdentifier | optional | String | |
globalLocationIdentifier | optional | String | |
postOfficeBoxIdentifier | optional | String | Mail PO box value |
addressLine1 | optional | String | First line of Street address (split on newline) |
addressLine2 | optional | String | Second line of Street address (split on newline) |
addressLine3 | optional | String | Remaining Street address |
cityName | optional | String | City value |
regionName | optional | String | State (region) value |
nationalPostalCode | optional | String | Postal (ZIP) code value |
globalCountryCode | optional | String | Country ISO code |
isTopLevel | optional | Enumeration | Is Yes when element refers to PDX package originator |
globalPartnerClassificationCode | optional | Enumeration | |
globalPartnerClassificationCodeOther | optional | String | |
globalPartnerSubClassificationCode | optional | String |
Notes:
- Do not use this value. Future versions may use it for the organization's Display name (abbreviation).
Child elements (Person)
AdditionalAttributes (0, unbounded)
name | value | dimension | dataType | dataTypeOther | description |
---|---|---|---|---|---|
contactClassificationCode | Person | Enumeration |
Attachments (0, 1)
ContactRoles (0, unbounded)
History (0, 1)
PublicDigitalCertificate (0, unbounded)
Element detail & attributes (Organization)
Attribute name | Required | Data type | PDXpert attribute |
---|---|---|---|
contactName | required | String | Organization Name value |
contactUniqueIdentifier | required | ID | Assigned contact PUID |
contactIdentifier | required | IDREF | Duplicate of contactUniqueIdentifier1 |
contactStatus | optional | Enumeration | Active checkbox as Active or Inactive |
emailAddress | optional | String | Primary email address value |
telephoneNumber | optional | String | Voice phone value |
facsimileNumber | optional | String | Facsimile value |
businessName | optional | String | Organization Name value (duplicate of contactName) |
universalResourceIdentifier | optional | UriReference | URL/website value |
department | optional | String | |
globalBusinessIdentifier | optional | String | D-U-N-S number value |
globalLocationIdentifier | optional | String | D-U-N-S+4 value |
postOfficeBoxIdentifier | optional | String | Mail PO box value |
addressLine1 | optional | String | First line of Street address parsed on newline |
addressLine2 | optional | String | Second line of Street address parsed on newline |
addressLine3 | optional | String | Remaining Street address |
cityName | optional | String | City value |
regionName | optional | String | State (region) value |
nationalPostalCode | optional | String | Postal (ZIP) code value |
globalCountryCode | optional | String | Country ISO code |
isTopLevel | optional | Enumeration | Always No |
globalPartnerClassificationCode | optional | Enumeration | Partner classification value |
globalPartnerClassificationCodeOther | optional | String | |
globalPartnerSubClassificationCode | optional | String |
- Do not use this value. Future versions may use it for the organization's Display name (abbreviation).
Child elements (Organization)
AdditionalAttributes (0, unbounded)
name | value | dimension | dataType | dataTypeOther | description |
---|---|---|---|---|---|
contactClassificationCode | Organization | Enumeration | |||
isHomeOrganization | Home organization is Yes; all partner organizations are No | Boolean |
Attachments (0, 1)
ContactRoles (0, unbounded)
History (0, 1)
PublicDigitalCertificate (0, unbounded)
ContactRole (2571:9.2.1)
This element identifies a set of roles within a larger collection of ContactRoles.
Not implemented in a current PDXpert release.
Parent elements
Element detail & attributes
Attribute name | Required | Data type | PDXpert attribute |
---|---|---|---|
groupRoleDescription | optional | String | unrealized |
Child elements
GroupRole (0, unbounded)
ContactRoles (2571:9.2)
This element identifies a set of roles for a particular Contact.
Not implemented in a current PDXpert release.
Parent elements
Element detail & attributes
Attribute name | Required | Data type | PDXpert attribute |
---|---|---|---|
groupLabel | required | String | unrealized |
Child elements
ContactRole (0, unbounded)
Contacts (2571:9)
This element is the list of all person & organization contacts within the PDX package.
Parent elements
Element detail & attributes
(none)
Child elements
Contact (1, unbounded)
EnumeratedCharacteristic (2578:20.3)
This element describes an enumerated characteristic (with source of the permitted enumerations) of an item's Characteristics collection.
Not implemented in a current PDXpert release.
Parent elements
Element detail & attributes
Attribute name | Required | Data type | PDXpert attribute |
---|---|---|---|
enumeratedCharacteristicName | optional | String | unrealized |
enumeratedCharacteristicValue | optional | String | unrealized |
definitionSource | optional | String | unrealized |
Child elements
(none)
GroupRole (2571:9.2.2)
This element identifies one role from a set defined by a ContactRole collection.
Not implemented in a current PDXpert release.
Parent elements
Element detail & attributes
Attribute name | Required | Data type | PDXpert attribute |
---|---|---|---|
role | required | String | unrealized |
isAlternate | required | Enumeration | unrealized |
description | optional | String | unrealized |
Child elements
(none)
History (2571:7)
This element is a collection of one or more history items that trace user actions affecting PLM objects.
Not implemented in a current PDXpert release.
Parent elements
Element detail & attributes
(none)
Child elements
HistoryItem (1, unbounded)
HistoryItem (2571:7.1)
This element describes one history item (an action taken by a user at a point in time) within a collection of HistoryItems.
Not implemented in a current PDXpert release.
Parent elements
Element detail & attributes
Attribute name | Required | Data type | PDXpert attribute |
---|---|---|---|
modificationDate | required | DateTime | unrealized |
action | required | String | unrealized |
userName | required | String | unrealized |
userContactUniqueIdentifier | optional | IDREF | PUID that refers the user's Contact (Person) element. |
revisionIdentifier | optional | String | unrealized |
historyItemStatus | optional | String | unrealized |
details | optional | String | unrealized |
comments | optional | String | unrealized |
Child elements
AdditionalAttributes (0, unbounded)
Item (2578:4.1)§
This element identifies a unique home organization part or document within the PDX package's Items collection.
Parent elements
Element detail & attributes
Attribute name | Required | Data type | PDXpert attribute |
---|---|---|---|
itemIdentifier | required | String | Number value |
itemUniqueIdentifier | required | ID | Assigned item PUID |
itemClassification | optional | Enumeration | Document | Part |
globalProductTypeCode | optional | String | Type value (not abbreviation) |
revisionIdentifier | optional | String | Revision value |
globalLifeCyclePhaseCode | optional | Enumeration | Lifecycle value |
globalLifeCyclePhaseCodeOther | optional | String | |
versionIdentifer | optional | String | Version value (Incorrect DTD spelling retained) |
revisionReleasedDate | optional | DateTime | Release date value |
revisionIncorporatedDate | optional | DateTime | Effective date |
description | optional | String | Document title or part name |
ownerName | optional | String | Item Trustee value |
ownerContactUniqueIdentifier | optional | IDREF | PUID that refers to the trustee's Contact (Person) element. |
proprietaryProductFamily | optional | String | |
category | optional | String | |
globalProductUnitOfMeasureCode | optional | String | Part Default unit of measure value |
makeBuy | optional | Enumeration | Part Make/buy value |
makeBuyOther | optional | String | |
isSerializationRequired | optional | Enumeration | Part Serialization checkbox as Yes | No value |
isCertificationRequired | optional | Enumeration | Part Certification checkbox as Yes | No value |
isTopLevel | optional | Enumeration | Yes when item is top-level, otherwise No |
minimumShippableRevision | optional | String |
Child elements
AdditionalAttributes (0, unbounded)
name | value | dimension | dataType | dataTypeOther | description |
---|---|---|---|---|---|
organization | Owner value | String | |||
organizationContactUniqueIdentifier | IDREF that refers to the Organization record | Other | PUID | ||
revisionZone | Revision area value | String | |||
revisionDescription | Release description value | String | |||
isReleased | Released checkbox as Yes | No value | Boolean | |||
releasingChangeNotice | Change type & number | String | |||
language | Language value | String | |||
personOne | Person #1 value | String | Item type's Person #1 label | ||
personTwo | Person #2 value | String | Item type's Person #2 label | ||
location | Document Media/location value or part Location value | String | |||
globalTradeIdentificationNumber | Part Global number value | String | |||
bomTypeCode | Part BOM type code value | String | |||
leadTime | Part Lead time value | Unit of measure | Double | ||
processTime | Part Process time value | Unit of measure | Double | ||
minimumOrderQuantity | Part Minimum order quantity value | Unit of measure | Double | ||
standardPackagingQuantity | Part Standard packaging quantity value | Unit of measure | Double | ||
budgetedCost | Part Cost: Unit cost value | Currency unit | Decimal | ||
budgetedCostDateTime | Part Cost: As on value | DateTime | |||
budgetedCostQuantity |
Part Cost: Quoted value | Unit of measure | Double | ||
partHandlingStorageCategory | Part Handling/storage advisory value | String | |||
partRecoveryMethod | Part End of Life (EOL) value | String | |||
totalWeight | Part mass (weight) value | Unit of measure | Double | ||
notes | Notes value | String |
name | value | dimension | dataType | dataTypeOther | description |
---|---|---|---|---|---|
Attribute label1 | Custom attribute value2,3 | Unit of measure2,4 | Data type5 | Description value1 |
Notes:
- As defined by the Custom property descriptor on the item type collection member. This value is case-sensitive and space-sensitive; all uses must match exactly.
- As entered on the item's Custom list.
- If custom attribute's Scheme is Collection, then apply the collection member's name; otherwise, apply the attribute value.
- If custom attribute's Scheme is UOM, then this is the unit of measure; if Scheme is Money, then this is the ISO currency code; otherwise empty.
- The PDXpert custom attribute's Scheme determines the IPC-2571 data type: UOM=Double; Boolean=Boolean; Date=DateTime; Float=Double; Integer=Decimal; Money=Decimal; String=String; URI=UriReference; Collection=String.
name | value | dimension | dataType | dataTypeOther | description |
---|---|---|---|---|---|
name.row where row distinguishes duplicate instances of the name material | Quantity value | Mass UoM | Double | Location value |
name | value | dimension | dataType | dataTypeOther | description |
---|---|---|---|---|---|
class1: type2 number3 | Rev revision4 @ lifecycle5 | Package unique IDREF6 | Other | PUID | Reference Notes |
Notes:
- Either Part or Document.
- The item's Part Types or Document Types member name.
- Part or document Number value.
- Item Revision value.
- Item Lifecycle value.
-
The IPC-2570 standards do not define References. PDXpert uses the AdditionalAttributes element to include a referenced item, which is added to the Items list. That item includes the referenced item's attributes; attachments for revision (isFileIn:Yes) and item (isFileIn:No) files; materials; and change history. The PDX specification's AdditionalAttributes element doesn't support a recursive structure, and therefore a PDX package excludes the referenced item's own references, sources and BOM items. If your supply chain partner needs these details, the referenced item must be exported in its own PDX package. See How IPC-2570 affects PDXpert configuration
In PDXpert 10.0 and later, the user's organization and assigned role determines which references are included in the package.
A part with Reference document (as shown in PDXplorer 4.2):
- Part 100004 Rev 1 has a reference within the PDXpert.References list.
- The PDXpert.References attributes list contains a Specification 10102.
- The Specification 10102 Rev B is listed with other items.
PDXplorer 5.0 follows the PDXpert client layout, and shows a References tab similar to BOM and Sources tabs. The PDX package content hasn't changed.
AlternateIdentifiers (0, 1)
AlternateItems (0, 1)
ApprovedManufacturerList (0, 1)
Attachments (0, 1)
BillOfMaterial (0, 1)
ChangeHistory (0, 1)
Characteristics (0, 1)
History (0, 1)
SerialNumbers (0, 1)
Items (2578:4)
This element contains the list of all "home" physical part and document elements within the PDX package. It excludes partner items.
Parent elements
Element detail & attributes
(none)
Child elements
Item (1, unbounded)
Lot (2576:8)
This element identifies the manufactured lot (batch) for a particular ProductInstance.
Not implemented in a current PDXpert release.
Parent elements
Element detail & attributes
Attribute name | Required | Data type | PDXpert attribute |
---|---|---|---|
globalProductIdentifier | optional | String | unrealized |
globalBusinessIdentifier | optional | String | unrealized |
lotType | required | String | unrealized |
lotNumber | required | String | unrealized |
lotQuantity | optional | String | unrealized |
manufacturerUnitOfMeasure | optional | String | unrealized |
globalCountryCode | optional | String | unrealized |
referenceDesignator | optional | String | unrealized |
Child elements
(none)
ManufacturerPart (2578:18.1)§
This element identifies one partner organization part or document within the PDX package's ManufacturerParts list.
Parent elements
Element detail & attributes
Attribute name | Required | Data type | PDXpert attribute |
---|---|---|---|
manufacturerPartIdentifier | required | String | Number value |
manufacturerPartUniqueIdentifier | optional | ID | Assigned manufacturer part PUID |
manufacturerName | required | String | Owner value |
manufacturerContactUniqueIdentifier | optional | IDREF | PUID that refers the manufacturer's Contact (Organization) element. |
manufacturerPartType | optional | String | Type value |
globalManufacturerPartStatusCode | optional | Enumeration | Lifecycle value |
globalManufacturerPartStatusCodeOther | optional | String | |
description | optional | String | Name value |
owner | optional | String | Trustee value |
ownerContactUniqueIdentifier | optional | IDREF | PUID that refers the trustee's Contact (Person) element. |
referenceNotes | optional | String | Notes value |
isTopLevel | optional | Enumeration | Yes if part is the only item in PDX package, otherwise No |
Child elements
AdditionalAttributes (0, unbounded)
name | value | dimension | dataType | dataTypeOther | description |
---|---|---|---|---|---|
itemClassification | Item class Document | Part value | String | |||
globalProductUnitOfMeasureCode | Default unit of measure value | String | |||
revisionIdentifier | Revision value | String | |||
revisionZone | Revision area value | String | |||
revisionDescription | Release description value | String | |||
isReleased | Released checkbox as Yes | No value | Boolean | |||
releasingChangeNotice | Change type & number | String | |||
language | Language value | String | |||
personOne | Person #1 value | String | Item type's Person #1 label | ||
personTwo | Person #2 value | String | Item type's Person #2 label | ||
location | Part Location value | String | |||
globalTradeIdentificationNumber | Part Global number value | String | |||
bomTypeCode | Part BOM type code value | String | |||
leadTime | Part Lead time value | Unit of measure | Double | ||
processTime | Part Process time value | Unit of measure | Double | ||
minimumOrderQuantity | Part Minimum order quantity value | Unit of measure | Double | ||
standardPackagingQuantity | Part Standard packaging quantity value | Unit of measure | Double | ||
budgetedCost | Part Cost: Unit cost value | Currency unit | Decimal | ||
budgetedCostDateTime | Part Cost: As on value | DateTime | |||
budgetedCostQuantity |
Part Cost: Quoted value | Unit of measure | Double | ||
partHandlingStorageCategory | Part Handling/storage advisory value | String | |||
partRecoveryMethod | Part End of Life (EOL) value | String | |||
totalWeight | Part Part mass (weight) value | Unit of measure | Double | ||
notes | Notes value | String |
name | value | dimension | dataType | dataTypeOther | description |
---|---|---|---|---|---|
Attribute label1 | Custom attribute value2,3 | Unit of measure2,4 | Data type5 | Description value1 |
Notes:
- As defined by the Custom property descriptor on the item type collection member. This value is case-sensitive and space-sensitive; all uses must match exactly.
- As entered on the item's Custom list.
- If custom attribute's Scheme is Collection, then apply the collection member's name; otherwise, apply the attribute value.
- If custom attribute's Scheme is UOM, then this is the unit of measure; if Scheme is Money, then this is the ISO currency code; otherwise empty.
- The PDXpert custom attribute's Scheme determines the IPC-2571 data type: UOM=Double; Boolean=Boolean; Date=DateTime; Float=Double; Integer=Decimal; Money=Decimal; String=String; URI=UriReference; Collection=String.
name | value | dimension | dataType | dataTypeOther | description |
---|---|---|---|---|---|
name.row where row distinguishes duplicate instances of the same material | Row's Quantity value | Mass UoM | Double | Material Location |
name | value | dimension | dataType | dataTypeOther | description |
---|---|---|---|---|---|
class1: type2 number3 | Rev revision4 @ lifecycle5 | Package unique IDREF6 | Other | PUID | Reference Notes |
Notes:
- Either Part or Document.
- The item's Part Types or Document Types member name.
- Part or document Number value.
- Item Revision value.
- Item Lifecycle value.
-
If the package contains the ManufacturerPart, the IDREF identifies the referenced Item.
The IPC-2570 standards do not define References, and a PDX package has limited support for referenced items. A ManufacturerPart's references are included only when the PDX package is exported directly from the PDXpert source record. See How IPC-2570 affects PDXpert configuration
In PDXpert 10.0 and later, the user's organization and assigned role determines which references are included in the package.
ManufacturerParts (2578:18)
This element contains the list of all manufacturer ("partner") parts contained in the PDX package.
Parent elements
Element detail & attributes
(none)
Child elements
ManufacturerPart (1, unbounded)
MeasuredCharacteristic (2578:20.1)
This element describes a measurable or measured characteristic (with tolerance) of an item's Characteristics collection.
Not implemented in a current PDXpert release.
Parent elements
Element detail & attributes
Attribute name | Required | Data type | PDXpert attribute |
---|---|---|---|
measuredCharacteristicName | optional | String | unrealized |
measuredCharacteristicValue | optional | String | unrealized |
engineeringUnitOfMeasure | optional | String | unrealized |
engineeringNegativeTolerance | optional | String | unrealized |
engineeringPositiveTolerance | optional | String | unrealized |
definitionSource | optional | String | unrealized |
Child elements
(none)
Packaging (2576:10)
This element identifies the packaging container (carton and/or pallet) for a particular ProductInstance.
Not implemented in a current PDXpert release.
Parent elements
Element detail & attributes
Attribute name | Required | Data type | PDXpert attribute |
---|---|---|---|
packagingUniqueIdentifier | required | String | unrealized |
cartonIdentifier | optional | String | unrealized |
palletIdentifier | optional | String | unrealized |
Child elements
(none)
Process (2576:11)
This element identifies one process step for producing a particular ProductInstance.
Not implemented in a current PDXpert release.
Parent elements
Element detail & attributes
Attribute name | Required | Data type | PDXpert attribute |
---|---|---|---|
stepIdentifier | required | String | unrealized |
processDateTime | optional | DateTime | unrealized |
operation | optional | String | unrealized |
resource | optional | String | unrealized |
router | optional | String | unrealized |
Child elements
(none)
ProductDataeXchangePackage (2571:6)§
This element is the root XML node for all other PDX package elements and attributes.
Parent elements
(none)
Element detail & attributes
Attribute name | Required | Data type | PDXpert attribute |
---|---|---|---|
thisDocumentIdentifier | required | String | Assigned GUID (not PUID) |
thisDocumentGenerationDateTime | required | DateTime | UTC date and time of creation |
thisDocumentModificationDateTime | required | DateTime | UTC date and time of creation |
originatedByContactName | optional | String | The Name value of the creating person |
originatedByContactUniqueIdentifier | optional | IDREF | PUID that refers to PDX package originator's Contact (Person) element. This is the only contact in the PDX package with its isTopLevel attribute set as Yes |
packageType | optional | String |
When generated from a
|
dataSource | optional | String | HX3 Solutions Inc/PDXpert/version/build |
thisDocumentCopyright | optional | String | Copyright name where name identifies the home organization |
description | optional | String |
Child elements
AdditionalAttributes (0, unbounded)
name | value | dimension | dataType | dataTypeOther | description |
---|---|---|---|---|---|
packageOwnerContactName | Organization value | String | |||
packageOwnerContactUniqueIdentifier | IDREF that refers to the Organization record | Other | PUID |
AsBuiltProduct (0, unbounded)
Attachments (0, 1)
Changes (0, 1)
Contacts (0, 1)
History (0, 1)
Items (0, 1)
ManufacturerParts (0, 1)
SupplierParts (0, 1)
ProductInstance (2576:6)
This element describes a single production unit within an AsBuiltProduct collection.
Not implemented in a current PDXpert release.
Parent elements
Element detail & attributes
Attribute name | Required | Data type | PDXpert attribute |
---|---|---|---|
itemIdentifier | required | String | unrealized |
itemUniqueIdentifier | optional | IDREF | PUID that refers to the product instance's Item element. |
manufacturerName | optional | String | unrealized |
proprietaryProductFamily | optional | String | unrealized |
globalProductIdentifier | optional | String | unrealized |
forecastProductIdentifer | optional | String | unrealized |
productRevision | optional | String | unrealized |
productVersion | optional | String | unrealized |
description | optional | String | unrealized |
globalBusinessIdentifier | optional | String | unrealized |
globalLocationIdentifier | optional | String | unrealized |
globalCountryCode | optional | String | unrealized |
purchaseOrder | optional | String | unrealized |
purchaseOrderLineItem | optional | String | unrealized |
authorizationLineItem | optional | String | unrealized |
customerPart | optional | String | unrealized |
customerRevision | optional | String | unrealized |
customerVersion | optional | String | unrealized |
customerSerial | optional | String | unrealized |
materialIdentifier | required | String | unrealized |
sequenceNumber | optional | String | unrealized |
manufacturingPartStatus | optional | String | unrealized |
buildDate | required | DateTime | unrealized |
traceabilityType | optional | String | unrealized |
proprietarySerialIdentifier | optional | String | unrealized |
Child elements
AdditionalAttributes (0, unbounded)
Configuration (0, unbounded)
Lot (0, unbounded)
Packaging (0, unbounded)
Process (0, unbounded)
WorkOrder (0, unbounded)
PublicDigitalCertificate (2571:9.3)
This element specifies the digital security certificate for a particular Contact.
Not implemented in a current PDXpert release.
Parent elements
Element detail & attributes
Attribute name | Required | Data type | PDXpert attribute |
---|---|---|---|
publicDigitalCertificate | required | String | unrealized |
trustedRoot | optional | String | unrealized |
trustedRootURI | optional | UriReference | unrealized |
Child elements
(none)
RangedCharacteristic (2578:20.2)
This element describes a ranged characteristic (with upper and lower values, as well as tolerance) of an item's Characteristics collection.
Not implemented in a current PDXpert release.
Parent elements
Element detail & attributes
Attribute name | Required | Data type | PDXpert attribute |
---|---|---|---|
rangedCharacteristicName | optional | String | unrealized |
rangedCharacteristicLowerValue | optional | String | unrealized |
rangedCharacteristicUpperValue | optional | String | unrealized |
engineeringUnitOfMeasure | optional | String | unrealized |
engineeringNegativeTolerance | optional | String | unrealized |
engineeringPositiveTolerance | optional | String | unrealized |
definitionSource | optional | String | unrealized |
Child elements
(none)
ReferenceDesignator (2578:7.1)
This element identifies a single reference to a BillOfMaterialItem component within the ReferenceDesignators collection.
Parent elements
Element detail & attributes
Attribute name | Required | Data type | PDXpert attribute |
---|---|---|---|
referenceDesignatorName | required | String | One extracted value1 from a comma-delimited series or a range of RefDes values |
Notes:
- The rules for identifying quantity and format errors in PDXpert's BOM Markup RefDes field are used to create these elements. If the BOM row has an incorrect number of RefDes or contains format errors, the number of ReferenceDesignator elements may not match the BillOfMaterialItem row's itemQuantity value.
Child elements
(none)
ReferenceDesignators (2578:7)
This element contains the set of reference designators for a specific BillOfMaterialItem. Typically the number of ReferenceDesignator elements in the set is equal to the BillOfMaterialItem's quantity value.
Parent elements
Element detail & attributes
(none)
Child elements
ReferenceDesignator (1, unbounded)
SerialNumberIdentification (2578:5.2)
This element identifies a single serial number within the SerialNumbers collection.
Not implemented in a current PDXpert release.
Parent elements
Element detail & attributes
Attribute name | Required | Data type | PDXpert attribute |
---|---|---|---|
sequenceNumber | optional | String | unrealized |
proprietarySerialIdentifier | optional | String | unrealized |
Child elements
(none)
SerialNumberRange (2578:5.1)
This element identifies a set of sequentially-serialized items within the SerialNumbers collection.
Not implemented in a current PDXpert release.
Parent elements
Element detail & attributes
Attribute name | Required | Data type | PDXpert attribute |
---|---|---|---|
sequenceNumber | optional | String | unrealized |
firstSerialNumber | required | String | unrealized |
lastSerialNumber | optional | String | unrealized |
increment | optional | String | unrealized |
Child elements
(none)
SerialNumbers (2578:5)
This element contains the set of serial numbers for instances of an Item or a BillOfMaterialItem.
Not implemented in a current PDXpert release.
Parent elements
Element detail & attributes
(none)
Child elements
SerialNumberIdentification (0, unbounded)
SerialNumberRange (0, unbounded)
SupplierPart (2578:19.2)
This element describes one distributor/supplier part within the SupplierParts collection.
Not implemented in a current PDXpert release.
Parent elements
Element detail & attributes
Attribute name | Required | Data type | PDXpert attribute |
---|---|---|---|
supplierPartIdentifier | required | String | Supplier part number |
supplierPartUniqueIdentifier | optional | ID | Assigned supplier part PUID |
supplierName | required | String | Supplier organization name |
supplierContactUniqueIdentifier | optional | IDREF | PUID that refers the supplier's Contact (Organization) element. |
supplierPartType | optional | String | |
globalSupplierPartStatusCode | optional | String | |
description | optional | String | ManufacturerPart part name. |
ownerName | optional | String | ManufacturerPart trustee name. |
ownerContactUniqueIdentifier | optional | IDREF | PUID that refers to the ManufacturerPart trustee's Contact (Person) element. |
globalReturnProductInstructionCode | optional | String | |
isTopLevel | optional | Enumeration | Always No |
referenceNotes | optional | String |
Child elements
SupplierParts (2578:19)
This element contains the list of all supplier parts.
Not implemented in a current PDXpert release.
Parent elements
Element detail & attributes
(none)
Child elements
SupplierPart (1, unbounded)
TextualCharacteristic (2578:20.4)
This element describes a text characteristic (with source of the allowed textual values) of an item's Characteristics collection.
Not implemented in a current PDXpert release.
Parent elements
Element detail & attributes
Attribute name | Required | Data type | PDXpert attribute |
---|---|---|---|
textualCharacteristicName | optional | String | unrealized |
textualCharacteristicValue | optional | String | unrealized |
definitionSource | optional | String | unrealized |
Child elements
(none)
WorkOrder (2576:9)
This element identifies the work order authorizing a particular ProductInstance.
Not implemented in a current PDXpert release.
Parent elements
Element detail & attributes
Attribute name | Required | Data type | PDXpert attribute |
---|---|---|---|
manufacturingWorkOrderType | required | String | unrealized |
manufacturingWorkOrderNumber | required | String | unrealized |
Child elements
(none)
Element alphabetical index
- AdditionalAttribute
- AdditionalAttributes
- AffectedItem
- AffectedItems
- AlternateIdentifier
- AlternateIdentifiers
- AlternateItem
- AlternateItems
- ApprovedManufacturerList
- ApprovedManufacturerListItem
- ApprovedManufacturerListMarkup
- ApprovedManufacturerListMarkupRowNew
- ApprovedManufacturerListMarkupRowOld
- ApprovedManufacturerListMarkups
- ApprovedSupplierList
- ApprovedSupplierListItem
- Approver
- Approvers
- AsBuiltProduct
- Attachment
- AttachmentMarkup
- AttachmentMarkupRowNew
- AttachmentMarkupRowOld
- AttachmentMarkups
- Attachments
- BillOfMaterial
- BillOfMaterialItem
- BillOfMaterialMarkup
- BillOfMaterialMarkupRowNew
- BillOfMaterialMarkupRowOld
- BillOfMaterialMarkups
- Change
- ChangeHistory
- ChangeHistoryItem
- Changes
- Characteristics
- Configuration
- Contact
- ContactRole
- ContactRoles
- Contacts
- EnumeratedCharacteristic
- GroupRole
- History
- HistoryItem
- Item
- Items
- Lot
- ManufacturerPart
- ManufacturerParts
- MeasuredCharacteristic
- Packaging
- Process
- ProductDataeXchangePackage
- ProductInstance
- PublicDigitalCertificate
- RangedCharacteristic
- ReferenceDesignator
- ReferenceDesignators
- SerialNumberIdentification
- SerialNumberRange
- SerialNumbers
- SupplierPart
- SupplierParts
- TextualCharacteristic
- WorkOrder
1077
This application note was relevant to the PDXpert software release that was current at time of publication. Product changes since that time may affect its utility. We'd be happy to assist you in assessing the applicability of this note to your situation.
Application Notes
Working within PDXpert
- Designing an engineering change process and workflow
- Server: Fast file content searches using IFilters
- Server: Scheduled backup for the database and library
- Server: Running several PDXpert Application Servers on the same network
- Batch Import: Preparing file attachments for import
- Batch Import: Converting a PDX package for PDXpert
- Batch Import: Keep settings, remove test item records
- Batch Import: Creating release sets for imported data
- Batch Import: Bulk replacing item attributes
- PDX package: Compare all product data, not just the BOM
- PDX package: IPC-2570 package implementation
- PDX package: IPC-2570 security signing and password extensions
- Adding a custom SQL Server report to PDXpert
- Adding a custom SQL Server report to PDXpert 8.0 to 11.2
- Designing email notice templates
- Including labor time and cost in assemblies
- Materials management for regulatory compliance
- Switching an existing item to a different type
- What's the difference between Item Revision State and Item Lifecycle Phase?
- Copying an assembly BOM to another assembly
- PDXpert permissions: User access design
Working with other software applications
- Using Altium Designer EDA software with the PDXpert client
- Using Altium Designer EDA software with the PDXpert server
- Using Cadence OrCAD Capture CIS with the PDXpert client
- Using Cadence OrCAD Capture CIS with the PDXpert server
- Using Pulsonix EDA software with the PDXpert server
- Importing a CAD bill of materials into PDXpert PLM software
- MRP/ERP data transfer options with PDXpert PLM software
- Exporting PDXpert PLM parts, BOM & sources to MRP/ERP
- Importing Trilogy Design Parts&Vendors data into PDXpert
- Exporting a bill of materials from PDXpert to Visio