由於 RosettaNet 偶爾會增加 PIP, 您可能需要建立自己的 PIP 資料包, 以支援這些新的 PIP 或支援 PIP 的更新。除非特別指出,本節中的程序將說明如何建立 PIP 5C4 V01.03.00 的 PIP 文件流程資料包。WebSphere Partner Gateway 提供 PIP 5C4 V01.02.00 的 PIP 文件流程資料包。因此, 這些程序事實上是描述如何執行升級。不過,建立 PIP 文件流程資料包和此類似, 而這些程序還會指出其他額外的步驟。
開始進行前,請先從 www.rosettanet.org 下載新版本的 PIP 規格, 如果您要執行升級,也請下載舊版本的 PIP 規格。比方說,如果您執行程序中所述的升級,請下載 5C4_DistributeRegistrationStatus_V01_03_00.zip 和 5C4_DistributeRegistrationStatus_V01_02_00.zip。規格含有下列的檔案類型:
建立或升級 PIP 文件流程資料包涉及下列程序:
PIP 文件流程資料包含有 XML 綱目檔,用以定義訊息格式以及元素的有效值。下列程序說明如何根據 PIP 規格檔內容, 來建立這些檔案。
您至少要為 PIP 規格檔中的每一個 DTD 檔各建一個 XSD 檔。以升級至 PIP 5C4 V01.03.00 為例, 由於訊息格式有變,程序中將說明如何將 BCG_5C4RegistrationStatusNotification_V01.03.xsd 檔建成一個範例。有關 XSD 檔的說明, 請參閱關於驗證。
若要為 PIP 文件流程資料包建立 XSD 檔,請執行下列步驟:
一般而言,準則中的元素和 DTD 檔中之元素的定義相符。不過, 準則可含有一些同名但不同基數的元素。由於 DTD 無法提供這類情況下的基數, 您必須修改 XSD。例如,5C4_MG_V01_03_00_RegistrationStatusNotification.htm 準則檔第 15 行有一項 ContactInformation 的定義, 其中含有五個採用下列基數的子元素:
第 150 行的 ContactInformation 定義含有四個採用下列基數的子元素:
不過在 XSD 檔中,ContactInformation 的每一個子項都含有一個同時符合兩項定義的基數:
<xsd:element name="ContactInformation"> <xsd:complexType> <xsd:sequence> <xsd:element ref="contactName"/> <xsd:element maxOccurs="1" minOccurs="0" ref="EmailAddress"/> <xsd:element maxOccurs="1" minOccurs="0" ref="facsimileNumber"/> <xsd:element maxOccurs="1" minOccurs="0" ref="PhysicalLocation"/> <xsd:element maxOccurs="1" minOccurs="0" ref="telephoneNumber"/> </xsd:sequence> </xsd:complexType> </xsd:element>
如果您要更新以另一版資料包為基礎的 PIP 文件流程資料包, 並想重複使用另一個版本中的定義, 請一一針對這些定義,執行下列步驟:
<xsd:complexType name="ContactInformation_type7"> <xsd:sequence> <xsd:element name="contactName" type="common_FreeFormText_R"/> <xsd:element name="EmailAddress" type="common_EmailAddres_R" minOccurs="0"/> <xsd:element name="facsimileNumber" type="common_CommunicationsNumber_R" minOccurs="0"/> <xsd:element name="PhysicalLocation" type="PhysicalLocation_type1" minOccurs="0" /> <xsd:element name="telephoneNumber" type="common_CommunicationsNumber_R minOccurs="0" /> </xsd:sequence> </xsd:complexType>
<xsd:include schemaLocation="BCG_ContactInformation_Types.xsd"/>
name="ContactInformation" type="ContactInformation_type7"
如果您要建立 PIP 文件流程資料包, 或者是您要升級 PIP 文件流程資料包,但您要的定義不在另一版本中, 請針對您在準則中找到的每一個元素實例, 執行下列步驟:
<xsd:complexType name="ContactInformation_localType1"> <xsd:sequence> <xsd:element ref="contactName"/> <xsd:element maxOccurs="1" minOccurs="0" ref="EmailAddress"/> <xsd:element maxOccurs="1" minOccurs="0" ref="facsimileNumber"/> <xsd:element maxOccurs="1" minOccurs="0" ref="PhysicalLocation"/> <xsd:element maxOccurs="1" minOccurs="0" ref="telephoneNumber"/> </xsd:sequence> </xsd:complexType>
name="ContactInformation"
type="ContactInformation_localType1"
圖 35 顯示修改前的 productProviderFieldApplicationEngineer 元素。
<xsd:element name="productProviderFieldApplicationEngineer">
<xsd:complexType>
<xsd:sequence>
<xsd:element ref="ContactInformation"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
圖 36 顯示修改後的 productProviderFieldApplicationEngineer 元素
<xsd:element name="productProviderFieldApplicationEngineer">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="ContactInformation"
type="ContactInformation_localType1"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
舉例來說,在 PIP 5C4 V01.03.00 訊息中,GlobalRegistrationComplexityLevelCode 只能有下列值: Above average、Average、Maximum、Minimum、None 和 Some。
如果您要更新以另一版資料包為基礎的 PIP 文件流程資料包, 並想重複使用另一個版本中的一組列舉值, 請針對每一組執行下列步驟:
<xsd:simpleType name="_GlobalRegistrationComplexityLevelCode"> <xsd:restriction base="xsd:string"> <xsd:enumeration value="Above average"/> <xsd:enumeration value="Average"/> <xsd:enumeration value="Maximum"/> <xsd:enumeration value="Minimum"/> <xsd:enumeration value="None"/> <xsd:enumeration value="Some"/> </xsd:restriction> </xsd:simpleType>
<xsd:include schemaLocation= "BCG_GlobalRegistrationComplexityLevelCode_Types.xsd" />
name="GlobalRegistrationComplexityLevelCode"
type="_GlobalRegistrationComplexityLevelCode"
如果您要建立 PIP 文件流程資料包, 或者是您要升級 PIP 文件流程資料包,但您要的列舉值定義不在另一版本中, 請針對準則中具有列舉值的任何元素, 執行下列步驟:
<xsd:simpleType name="GlobalRegistrationComplexityLevelCode_localType"> <xsd:restriction base="xsd:string"> <xsd:enumeration value="Above average"/> <xsd:enumeration value="Average"/> <xsd:enumeration value="Maximum"/> <xsd:enumeration value="Minimum"/> <xsd:enumeration value="None"/> <xsd:enumeration value="Some"/> </xsd:restriction> </xsd:simpleType>
name="GlobalRegistrationComplexityLevelCode" type="GlobalRegistrationComplexityLevelCode_localType"
圖 37 顯示修改前的 DesignAssemblyInformation 元素。
<xsd:element name="DesignAssemblyInformation">
<xsd:complexType>
<xsd:sequence>
<xsd:element maxOccurs="1" minOccurs="0"
ref="assemblyComments"/>
<xsd:element maxOccurs="1" minOccurs="0"
ref="demandCreatorTrackingIdentifier"/>
<xsd:element maxOccurs="unbounded" minOccurs="0"
ref="DesignPartInformation"/>
<xsd:element ref="DesignRegistrationIdentification"/>
<xsd:element maxOccurs="1" minOccurs="0"
ref="GeographicRegion"/>
<xsd:element maxOccurs="1" minOccurs="0"
ref="GlobalRegistrationComplexityLevelCode"/>
<xsd:element maxOccurs="1" minOccurs="0"
ref="GlobalRegistrationInvolvementLevelCode"/>
<xsd:element maxOccurs="1" minOccurs="0"
ref="RegistrationStatus"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
圖 38 顯示修改後的 DesignAssemblyInformation 元素
<xsd:element name="DesignAssemblyInformation">
<xsd:complexType>
<xsd:sequence>
<xsd:element maxOccurs="1" minOccurs="0"
ref="assemblyComments"/>
<xsd:element maxOccurs="1" minOccurs="0"
ref="demandCreatorTrackingIdentifier"/>
<xsd:element maxOccurs="unbounded" minOccurs="0"
ref="DesignPartInformation"/>
<xsd:element ref="DesignRegistrationIdentification"/>
<xsd:element maxOccurs="1" minOccurs="0"
ref="GeographicRegion"/>
<xsd:element maxOccurs="1" minOccurs="0"
name="GlobalRegistrationComplexityLevelCode"
type="GlobalRegistrationComplexityLevelCode_localType"/>
<xsd:element maxOccurs="1" minOccurs="0"
ref="GlobalRegistrationInvolvementLevelCode"/>
<xsd:element maxOccurs="1" minOccurs="0"
ref="RegistrationStatus"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
如果您要更新以另一版資料包為基礎的 PIP 文件流程資料包, 並想重複使用另一個版本中的某項資料實體定義, 請針對每一組執行下列步驟:
<xsd:simpleType name="_common_DateStamp_R"> <xsd:restriction base="xsd:string"> <xsd:pattern value="[0-9]{8}Z" /> </xsd:restriction> </xsd:simpleType>
<xsd:include schemaLocation="BCG_common.xsd" />
name="DateStamp" type="_common_DateStamp_R"
如果您要建立 PIP 文件流程資料包, 或者是您要升級 PIP 文件流程資料包,但您要的資料實體定義不在另一版本中, 請針對每一個資料實體元素,執行下列步驟:
<xsd:simpleType name="DateStamp_localType"> <xsd:restriction base="xsd:string"> <xsd:pattern value="[0-9]{8}Z" /> </xsd:restriction> </xsd:simpleType>
name="DateStamp" type="DateStamp_localType"
圖 39 顯示修改前的 beginDate 元素。
<xsd:element name="beginDate">
<xsd:complexType">
<xsd:sequence>
<xsd:element ref="DateStamp"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
圖 40 顯示修改後的 beginDate 元素。
<xsd:element name="beginDate">
<xsd:complexType">
<xsd:sequence>
<xsd:element name="DateStamp" type="DateStamp_localType"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
在您為 PIP 文件流程資料包建立 XSD 檔後, 即可準備為 RNIF 資料包和「後端整合」資料包建立 XML 檔。舉例來說, 假設這些資料包名稱為 BCG_Package_RNIFV02.00_5C4V01.03.zip 和 BCG_Package_RNSC1.0_RNIFV02.00_5C4V01.03.zip。下列程序說明如何為 RNIF 資料包建立 XML 檔:
要變更的資訊 | 舊值 | 新值 |
---|---|---|
PIP ID | 5C4 | 5C4 |
PIP 版本 | V01.02 | V01.03 |
要求訊息 DTD 檔的名稱,不使用副檔名 | 5C4_MS_V01_02_
RegistrationStatusNotification |
5C4_MS_V01_03_
RegistrationStatusNotification |
確認訊息 DTD 檔的名稱,不使用副檔名(僅適用於雙動作 PIP) | N/A | N/A |
要求訊息 XSD 檔的名稱,不使用副檔名 | BCG_5C4RegistrationStatus
Notification_V01.02 |
BCG_5C4RegistrationStatus
Notification_V01.03 |
確認訊息 XSD 檔的名稱,不使用副檔名(僅適用於雙動作 PIP) | N/A | N/A |
要求訊息 XSD 檔中的根元素名稱 | Pip5C4RegistrationStatus
Notification |
Pip5C4RegistrationStatus
Notification |
確認訊息 XSD 檔中的根元素名稱;僅適用於雙動作 PIP | N/A | N/A |
要更新的資訊 | 說明 | 5C4 資料包中的值 |
---|---|---|
活動名稱 | 表 3-2 中的指定 | 配送登錄狀態 |
起始者的角色名稱 | 表 3-1 中的指定 | 產品提供者 |
回應者的角色名稱 | 表 3-1 中的指定 | 需求建立者 |
要求動作名稱 | 表 4-2 中的指定 | 登錄狀態通知 |
確認動作名稱 | 表 4-2 中的指定(僅適用於雙動作 PIP) | N/A |
要更新的資訊 | 說明 | 5C4 資料包中的值 | XML 檔中的元素路徑 |
---|---|---|---|
NonRepudiation
Required |
表 3-3 中的指定 | N | ns1:Package
ns1:Protocol ns1:Process ns1:Attribute(其 ATTRIBUTEKEY 為 NonRepudiationRequired) ns1:AttributeValue AttributePickListItem ATTRVALUEKEY |
NonRepudiationOf
Receipt |
表 3-3 中的指定 | N | ns1:Package
ns1:Protocol ns1:Process ns1:Attribute(其 ATTRIBUTEKEY 為 NonRepudiationOfReceipt) ns1:AttributeValue AttributePickListItem ATTRVALUEKEY |
DigitalSignature
Required |
表 5-1 中的指定 | Y | ns1:Package
ns1:Protocol ns1:Process ns1:Attribute(其 ATTRIBUTEKEY 為 DigitalSignatureRequired) ns1:AttributeValue AttributePickListItem ATTRVALUEKEY |
TimeToAcknowledge | 表 3-3 中的指定 | 2
(120 分鐘) |
ns1:Package
ns1:Protocol ns1:Process ns1:Attribute(其 ATTRIBUTEKEY 為 TimeToAcknowledge) ns1:AttributeValue ATTRVALUE |
TimeToPerform | 表 3-3 中的指定 | 2
(120 分鐘) |
ns1:Package
ns1:Protocol ns1:Process ns1:Attribute(其 ATTRIBUTEKEY 為 TimeToPerform) ns1:AttributeValue ATTRVALUE |
RetryCount | 表 3-3 中的指定 | 3 | ns1:Package
ns1:Protocol ns1:Process ns1:Attribute(其 ATTRIBUTEKEY 為 RetryCount) ns1:AttributeValue ATTRVALUE |
若要建立「後端整合」資料包, 請重複步驟 1 到 6, 只是其差異處如下:
在您建立 XML 和 XSD 檔後,即可準備建立 PIP 文件流程資料包。
若要建立 RNIF 資料包,請執行下列步驟:
若要建立「後端整合」資料包,請執行步驟 1 到 3, 但請使用後端整合 XML 檔,而非 RNIF 檔。
在您建立 PIP 資料包後,可使用RNIF 和 PIP 文件流程資料包中的程序將它上傳。