Read more to learn about the JSON/REST Project Team, led by Chris Lambert of Cortex.  View the full Project Team Proposal Speficification Support here. 


1. Proposed Project Team/Study Name 

JSON+REST Pilot for converting PIDX XML standards 


 2. Executive Summary 

PIDX would like to explorer converting its existing XML based messaging to a newer architecture based on JSON messaging and RESTful APIs. JSON/REST is a standard that is used for mobile and modern application development and the PIDX community has requested support for it as more business transactions occur on mobile and modern platforms. 

The project team will focus on Invoice submission and Response messages so that the PIDX community can more quickly, and easily, understand how the feasibility of JSON/REST. Upon completion of the project we will evaluate the roadmap for migration of all standards. 


 3. Description 

3.1 Purpose 

The purpose of this project is convert existing PIDX messaging and standards to use a JSON messaging format and REST API architecture. 

3.2 Scope 

The scope is limited to the Invoice submission and response process and messaging so that we can understand the technical challenges, risks, and potential solutions to the wider PIDX standards. 

The scope will also include reviewing any existing PIDX users who have tried to use JSON and REST APIs on their own and to document their challenges, status, and current state. 

3.3 Goal 

3.3.1 Identify criteria for success of the deliverables / specification as deployed in industry. 

  1. Convert existing Invoice and InvoiceResponse schemas to use a JSON messaging format 
  2. Map REST API methods – GET, PUT, POST, DELETE – to Invoice submission and response business processes. 
  3. Identify technical and business process gaps that may exist in a JSON/REST architecture that cannot be addressed 
  4. Review any existing implementations that have done with JSON/REST based on PIDX standards. 3.3.2 Identify how the proposed deliverables / specification relates to existing or under development deliverables / specifications. Identify how these will relate to each other. 

3.3.2 Identify how the proposed deliverables / specification relates to existing or under development deliverables / specifications. Identify how these will relate to each other. 

Existing Standards  New Standards/Deliverables 
Invoice.xsd and InvoiceResponse.xsd  JSON specifications for Invoice and Response 
Existing AS2 and RNIF Guidelines & Protocols  REST API specification for required RESTful methods

3.3.3 Identify the integral sets of specifications that will be created or modified by the proposed work effort. (See 8.0 Initial Contributions) 

 Deliverables: 

  • JSON specifications for Invoice and Response 
  • REST API specification for required RESTful methods 
  • Lessons learned from process of converting architecture 
  • Findings for other members or partners that have executed, successfully or unsuccessfully, to JSON/REST

3.3.4 Identify the expected useful life of the proposed deliverables / specification, e.g. estimated retirement dates or circumstances.  
The useful life of JSON and RESTful APIs will be determine based on risks and gaps identified in this project. 

3.4.1 Identify how this work is specific to the energy industry and to the primary area of focus for PIDX. Identify other sources for aspects of the required solution that are not industry specific.
The usage of this new architecture pairs well with the movement towards more mobile friendly devices, such as tablets and smart phones, and also is a potential leadin to Blockchain platforms. 

3.4.2 Identify the solutions that currently exist in the area of the proposal. Identify competing technologies/solutions. 
Other solutions in this area include legacy solutions, such as fixed width and XML, and non-standard solutions that are unique to specific proprietary platforms. The goal of PIDX is to drive standards that call can use so we don’t believe the proprietary platforms are viable solutions. 

3.4.3 Identify other organizations that are doing similar work. Identify what they are doing and why additional work is needed. Identify how the proposed work effort will coordinate with related work efforts. 
We believe that there are some PIDX members already using JSON and REST APIs. One of the goals of this project is to investigate them further, capture lessons learns, and any best practices that have been developed. 

3.4.4 Identify the industry organizations / groups who want this deliverable / specification. 
We are currently working with Baker Hughes, a GE Company (BHGE), Cortex, and Oildex on this specification. 

3.4.5 Identify all of the stakeholders of which you are aware. 
BHGE, Cortex, Oildex 

3.4.6 Identify the stakeholders who are willing to join the work effort. (See Sponsor & Participants) 
BHGE and Cortex have confirmed that they are willing to sponsor this initiative within PIDX.


3.5 Proposal 

The proposal includes migrating the Invoice and InvoiceResponse messaging over to JSON formats and then developing the RESTful APIs to receive these messages. The RESTful APIs should identify the mappings for GET/POST/PUT/DELETE operations and corresponding HTTP response codes for errors. 

The goal of the project is to understand how current PIDX architecture would map, both technical and business process, and any gaps or challenges that are encountered. 

The project team is also expected to canvas the PIDX community for existing usage of JSON/REST and capture lessons learned and best practices. 


4. Benefits 

Key Benefits include: 

Understand risk of using JSON/REST in a business transaction environment 
Enable new architecture footprint that is compatible with mobile standards and applications 
Identify effort to convert standards so that a longer term roadmap could be established 


5. Sponsor and Participants 

PIDX member/company sponsoring development of these specifications/this project:  

Member Company E-Mail Address
Marc Battistello BHGE Marc.battistello@bhge.com
Chris Lambert Cortex clambert@cortex.net 

The following PIDX members/companies are participants in the development of these specifications: 

Member Company E-Mail Adddress
Marc Battistello  BHGE Marc.battistello@bhge.com
Chris Lambert Cortex clambert@cortex.net 
Lucian Pop Cortex lpop@cortex.net 
Lynn Taylor  Oildex lynn.taylor@oildex.com

 


6. Deliverable Schedule 

PIDX Project Team Proposal - JSON+REST Pilot - v2

  


7. Anticipated Completion Date 

February 28, 2019


 

8. Initial Contributions 

Document Name 

Type of Document 

Document Source 

Invoice.xsd 

Invoice PIDX Schema v1.61 

PIDX 

InvoiceResponse.xsd 

Invoice Response Schema v1.61 

PIDX 

AS2 Usage Guideline 

PIDX Guideline 

PIDX 

RNIF: Rosetta Net Implementation Framework 

PIDX Guideline/Framework 

PIDX 

 

 

 

 

 

 

If you are interested in joining the PIDX JSON/REST Project Team, submit a signed participation form to administrative@pidx.org.

Click here to download the form. 

Project Team Chair: Chris Lambert (Cortex) clambert@cortex.net