SlideShare una empresa de Scribd logo
1 de 36
Descargar para leer sin conexión
OpenAPI/AsyncAPI
Support in Oxygen
© 2022 Syncro Soft SRL. All rights reserved.
Octavian Nadolu, Syncro Soft
octavian.nadolu@oxygenxml.com
@OctavianNadolu
OpenAPI/AsyncAPI in Oxygen
Agenda
 OpenAPI/AsyncAPI Specification
 Create OpenAPI/AsyncAPI Documents
 Edit and Validate OpenAPI/AsyncAPI
 Edit OpenAPI/AsyncAPI in Author Mode
 Generate Documentation for OpenAPI
 Test OpenAPI Service
OpenAPI/AsyncAPI in Oxygen
OpenAPI Specification(OAS)
 Is a format for describing and documenting
APIs
 Allows both humans and computers to
discover and understand the capabilities of a
service
www.openapis.org
OpenAPI/AsyncAPI in Oxygen
AsyncAPI Specification
 AsyncAPI started as an adaptation of the
OpenAPI specification
 Used for describing asynchronous messaging
APIs
www.asyncapi.com
OpenAPI/AsyncAPI in Oxygen
OpenAPI/AsyncAPI Documents
 Can be written in JSON or YAML
 Describes the inputs and outputs of an API
 Include information such as:
– where the API is hosted
– what authorization is required to access it
– details for consumers and producers
OpenAPI/AsyncAPI in Oxygen
OpenAPI Example
JSON YAML
"openapi": "3.1.0",
"info": {
"title": "Dog API",
"version": "1.0.0"
},
"servers": [
{"url": "https://dog.ceo/api"}
],
"paths": {}
openapi: 3.1.0
info:
title: Dog API
version: 1.0.0
servers:
- url: https://dog.ceo/api
paths:
OpenAPI/AsyncAPI in Oxygen
OpenAPI Example
JSON YAML
"paths": {
"/breed/{breedName}/images": {
"get": {
"description": "Get images",
"parameters": [],
"responses": {
"200": {
"description": "A list of images",
"content": {}
}
}
}
}
}
paths:
/breed/{breedName}/images:
get:
description: Get images
parameters:
responses:
"200":
description: A list of dog
content:
OpenAPI/AsyncAPI in Oxygen
OpenAPI Versions
● OpenAPI 3.1
● OpenAPI 3.0
● OpenAPI/Swagger 2.0
OpenAPI/AsyncAPI in Oxygen
OpenAPI 2.0 vs OpenAPI 3.0
OpenAPI/AsyncAPI in Oxygen
OpenAPI 3.0 vs OpenAPI 3.1
OpenAPI/AsyncAPI in Oxygen
AsyncAPI Versions
● AsyncAPI 1.x
● AsyncAPI 2.x
● AsyncAPI 3.x (pre-release)
www.asyncapi.com/docs
OpenAPI/AsyncAPI in Oxygen
OpenAPI vs AsyncAPI
OpenAPI/AsyncAPI in Oxygen
Question: Do you use/intend to use OpenAPI or AsyncAPI?
 Yes. OpenAPI
 Yes. AsyncAPI
 No. I define APIs using other languages
 No. I do not define APIs
OpenAPI/AsyncAPI in Oxygen
Create OpenAPI/AsyncAPI
● Generate API from code
● Design/Create API using an editor
OpenAPI/AsyncAPI in Oxygen
OpenAPI Tools
● Generate Documentation
● Generate Server
● Generate Client
OpenAPI/AsyncAPI in Oxygen
OpenAPI/AsyncAPI Editor
 New file templates
 Syntax highlights
 Content completion based on the
schema
 Validation conforms with the schema
 Outline view
 Search and replace
OpenAPI/AsyncAPI in Oxygen
Content completion
 Properties and values presented in the content completion window
 Annotations for properties
OpenAPI/AsyncAPI in Oxygen
Validation
 Validation based on the JSON Schema
 Create validation scenarios for each version
 Errors highlighted in editor
OpenAPI/AsyncAPI in Oxygen
Outline view
 Visualize the structure of the document
 Search for properties
 Synchronized with editor
OpenAPI/AsyncAPI in Oxygen
JSON Schema in OpenAPI/AsyncAPI
 You can use JSON Schema to describe data objects for both requests and
responses
OpenAPI/AsyncAPI in Oxygen
JSON Schema in OpenAPI/AsyncAPI
 OpenAPI uses JSON Schema specification version
2020-12
 AsyncAPI uses a superset of the JSON Schema
specification Draft 07
 OpenAPI uses JSON Schema specification version
2020-12
 AsyncAPI uses a superset of the JSON Schema
specification Draft 07
OpenAPI/AsyncAPI in Oxygen
JSON Schema Support in Oxygen
 JSON Schema Editor - specialized editor with various editing features
 Validation against JSON Schema
 Editing based on JSON Schema
 Tools
– Generate JSON Schema Documentation
– Generate Sample JSON Files from a JSON Schema
– Generate JSON Schema from a JSON File
– XSD to JSON Schema Converter
OpenAPI/AsyncAPI in Oxygen
Question: How do you create/intend to create your API?
 Edit/Design API
 Generate API from code
OpenAPI/AsyncAPI in Oxygen
OpenAPI/AsyncAPI Visual Editor
 Edit documentation
 Form controls to change values
 Collapsible sections
 Customize interface with CSS
OpenAPI/AsyncAPI in Oxygen
OpenAPI Documentation
 Tool for generating detailed documentation for a OpenAPI documents in HTML
format
OpenAPI/AsyncAPI in Oxygen
OpenAPI Documentation
 New design for the OpenAPI
documentation
 OpenAPI 3.1 Support
 Supports for YAML Files
 Generate documentation in one file
or split into multiple files
 Display the diagram image for each
component
OpenAPI/AsyncAPI in Oxygen
OpenAPI Documentation in DITA
oxygenxml.com/events/2022/webinar_integrating_various_document_formats.html
OpenAPI/AsyncAPI in Oxygen
OpenAPI Tester Tool
 GUI interface testing tool for OpenAPI files
 Execute API requests and validate responses
on the fly
 OpenAPI files in JSON or YAML format
OpenAPI/AsyncAPI in Oxygen
Run OpenAPI Test Scenarios
 Tool to run test scenarios
 Specialized framework for editing and
working with OpenAPI test scenario files
OpenAPI/AsyncAPI in Oxygen
Batch Validate OpenAPI/AsyncAPI
 Use the Validate action from project
 Use the Oxygen Scripting from CI/CD
 Use the Validate action from project
 Use the Oxygen Scripting from CI/CD
oxygenxml.com/doc/ug-editor/topics/scripting_oxygen_validate.html
OpenAPI/AsyncAPI in Oxygen
Conclusion
 Edit/Design OpenAPI and AsyncAPI
documents
 Edit/Design JSON Schema documents
 Edit documentation
 Generate Documentation for OpenAPI
 Test your OpenAPI
OpenAPI/AsyncAPI in Oxygen
Future Plans
 Validation for OpenAPI/AsyncAPI
references
 Better Authoring support for
OpenAPI/AsyncAPI
 Generate AsyncAPI documentation
 OpenAPI/AsyncAPI documentation from
scripting
 Create AsyncAPI test tool
 OpenAPI/AsyncAPI test scenario from
scripting
OpenAPI/AsyncAPI in Oxygen
Question: What features are the most important for you?
 Validation for OpenAPI/AsyncAPI
references
 Better Authoring support for OpenAPI/
AsyncAPI
 Generate AsyncAPI documentation
 OpenAPI/AsyncAPI documentation
from scripting
OpenAPI/AsyncAPI in Oxygen
Resources
 oxygenxml.com/xml_editor/openapi.html
 oxygenxml.com/doc/ug-editor/topics/openapi-tester.html
 oxygenxml.com/doc/ug-editor/topics/openapi-documentation-generator.html
 https://www.openapis.org
 https://json-schema.org/
 https://www.asyncapi.com
OpenAPI/AsyncAPI in Oxygen
Video Demos
 oxygenxml.com/demo/json_schema_palette.html
 oxygenxml.com/demo/introducing_the_json_schema_design.html
 oxygenxml.com/demo/json_author.html
 oxygenxml.com/demo/json_tools.html
 oxygenxml.com/demo/json_validation.html
 oxygenxml.com/demo/json_editing.html
 oxygenxml.com/demo/json_query.html
Questions?
Octavian Nadolu
Product Manager at Syncro Soft
octavian.nadolu@oxygenxml.com
Twitter: @OctavianNadolu
LinkedIn: octaviannadolu

Más contenido relacionado

Similar a OpenAPI/AsyncAPI Support in Oxygen

Open API (aka Swagger) - DDD by Night May 2020
Open API (aka Swagger) - DDD by Night May 2020Open API (aka Swagger) - DDD by Night May 2020
Open API (aka Swagger) - DDD by Night May 2020Pratik Khasnabis
 
A Journey from API Versioning to Canary Release | APIDays Zurich 2017
A Journey from API Versioning to Canary Release | APIDays Zurich 2017A Journey from API Versioning to Canary Release | APIDays Zurich 2017
A Journey from API Versioning to Canary Release | APIDays Zurich 2017Patrice Krakow
 
The anypoint platform for API's
The anypoint platform for API'sThe anypoint platform for API's
The anypoint platform for API'sAchyuta Lakshmi
 
Ultimate Guide to 30+ API Documentation Solutions
Ultimate Guide to 30+ API Documentation SolutionsUltimate Guide to 30+ API Documentation Solutions
Ultimate Guide to 30+ API Documentation SolutionsBill Doerrfeld
 
A Journey from API Versioning to Canary Release | Nordic APIs Platform Summit...
A Journey from API Versioning to Canary Release | Nordic APIs Platform Summit...A Journey from API Versioning to Canary Release | Nordic APIs Platform Summit...
A Journey from API Versioning to Canary Release | Nordic APIs Platform Summit...Patrice Krakow
 
Api clarity webinar
Api clarity webinarApi clarity webinar
Api clarity webinarLibbySchulze
 
IMMERSE'16 Introduction to adobe experience manager back end
IMMERSE'16 Introduction to adobe experience manager back endIMMERSE'16 Introduction to adobe experience manager back end
IMMERSE'16 Introduction to adobe experience manager back endAdobeMarketingCloud
 
Apigility introduction v2 (glasgow php)
Apigility introduction v2 (glasgow php)Apigility introduction v2 (glasgow php)
Apigility introduction v2 (glasgow php)Engineor
 
Introduction to google endpoints
Introduction to google endpointsIntroduction to google endpoints
Introduction to google endpointsShinto Anto
 
[apidays LIVE HONK KONG] - OAS to Managed API in Seconds
[apidays LIVE HONK KONG] - OAS to Managed API in Seconds[apidays LIVE HONK KONG] - OAS to Managed API in Seconds
[apidays LIVE HONK KONG] - OAS to Managed API in SecondsWSO2
 
Introduction to Apigility
Introduction to ApigilityIntroduction to Apigility
Introduction to ApigilityEngineor
 
Portable Streaming Pipelines with Apache Beam
Portable Streaming Pipelines with Apache BeamPortable Streaming Pipelines with Apache Beam
Portable Streaming Pipelines with Apache Beamconfluent
 
Workshop: Data Visualization for Corpus Linguistics via Shiny Framework
Workshop: Data Visualization for Corpus Linguistics via Shiny FrameworkWorkshop: Data Visualization for Corpus Linguistics via Shiny Framework
Workshop: Data Visualization for Corpus Linguistics via Shiny FrameworkOlga Scrivner
 
API Versioning for Zero Downtime | Devoxx Belgium 2017
API Versioning for Zero Downtime | Devoxx Belgium 2017API Versioning for Zero Downtime | Devoxx Belgium 2017
API Versioning for Zero Downtime | Devoxx Belgium 2017Patrice Krakow
 
OpenAPI development with Python
OpenAPI development with PythonOpenAPI development with Python
OpenAPI development with PythonTakuro Wada
 
Practices and tools for building better APIs
Practices and tools for building better APIsPractices and tools for building better APIs
Practices and tools for building better APIsNLJUG
 

Similar a OpenAPI/AsyncAPI Support in Oxygen (20)

Open API (aka Swagger) - DDD by Night May 2020
Open API (aka Swagger) - DDD by Night May 2020Open API (aka Swagger) - DDD by Night May 2020
Open API (aka Swagger) - DDD by Night May 2020
 
A Journey from API Versioning to Canary Release | APIDays Zurich 2017
A Journey from API Versioning to Canary Release | APIDays Zurich 2017A Journey from API Versioning to Canary Release | APIDays Zurich 2017
A Journey from API Versioning to Canary Release | APIDays Zurich 2017
 
The anypoint platform for API's
The anypoint platform for API'sThe anypoint platform for API's
The anypoint platform for API's
 
Ultimate Guide to 30+ API Documentation Solutions
Ultimate Guide to 30+ API Documentation SolutionsUltimate Guide to 30+ API Documentation Solutions
Ultimate Guide to 30+ API Documentation Solutions
 
A Journey from API Versioning to Canary Release | Nordic APIs Platform Summit...
A Journey from API Versioning to Canary Release | Nordic APIs Platform Summit...A Journey from API Versioning to Canary Release | Nordic APIs Platform Summit...
A Journey from API Versioning to Canary Release | Nordic APIs Platform Summit...
 
Api clarity webinar
Api clarity webinarApi clarity webinar
Api clarity webinar
 
OpenAPI Extensions for OSLC
OpenAPI Extensions for OSLCOpenAPI Extensions for OSLC
OpenAPI Extensions for OSLC
 
IMMERSE'16 Introduction to adobe experience manager back end
IMMERSE'16 Introduction to adobe experience manager back endIMMERSE'16 Introduction to adobe experience manager back end
IMMERSE'16 Introduction to adobe experience manager back end
 
Apigility introduction v2 (glasgow php)
Apigility introduction v2 (glasgow php)Apigility introduction v2 (glasgow php)
Apigility introduction v2 (glasgow php)
 
Mule api management
Mule  api managementMule  api management
Mule api management
 
Appium solution
Appium solutionAppium solution
Appium solution
 
Introduction to google endpoints
Introduction to google endpointsIntroduction to google endpoints
Introduction to google endpoints
 
[apidays LIVE HONK KONG] - OAS to Managed API in Seconds
[apidays LIVE HONK KONG] - OAS to Managed API in Seconds[apidays LIVE HONK KONG] - OAS to Managed API in Seconds
[apidays LIVE HONK KONG] - OAS to Managed API in Seconds
 
Introduction to Apigility
Introduction to ApigilityIntroduction to Apigility
Introduction to Apigility
 
Apimanagement
ApimanagementApimanagement
Apimanagement
 
Portable Streaming Pipelines with Apache Beam
Portable Streaming Pipelines with Apache BeamPortable Streaming Pipelines with Apache Beam
Portable Streaming Pipelines with Apache Beam
 
Workshop: Data Visualization for Corpus Linguistics via Shiny Framework
Workshop: Data Visualization for Corpus Linguistics via Shiny FrameworkWorkshop: Data Visualization for Corpus Linguistics via Shiny Framework
Workshop: Data Visualization for Corpus Linguistics via Shiny Framework
 
API Versioning for Zero Downtime | Devoxx Belgium 2017
API Versioning for Zero Downtime | Devoxx Belgium 2017API Versioning for Zero Downtime | Devoxx Belgium 2017
API Versioning for Zero Downtime | Devoxx Belgium 2017
 
OpenAPI development with Python
OpenAPI development with PythonOpenAPI development with Python
OpenAPI development with Python
 
Practices and tools for building better APIs
Practices and tools for building better APIsPractices and tools for building better APIs
Practices and tools for building better APIs
 

Más de Octavian Nadolu

YAML Editing and Validation In Oxygen
YAML Editing and Validation In OxygenYAML Editing and Validation In Oxygen
YAML Editing and Validation In OxygenOctavian Nadolu
 
Leveraging the Power of AI and Schematron for Content Verification and Correc...
Leveraging the Power of AI and Schematron for Content Verification and Correc...Leveraging the Power of AI and Schematron for Content Verification and Correc...
Leveraging the Power of AI and Schematron for Content Verification and Correc...Octavian Nadolu
 
Validating XML and JSON Documents Using Oxygen Scripting
 Validating XML and JSON Documents Using Oxygen Scripting Validating XML and JSON Documents Using Oxygen Scripting
Validating XML and JSON Documents Using Oxygen ScriptingOctavian Nadolu
 
OpenAPI Editing, Testing, and Documenting
OpenAPI Editing, Testing, and DocumentingOpenAPI Editing, Testing, and Documenting
OpenAPI Editing, Testing, and DocumentingOctavian Nadolu
 
JSON, JSON Schema, and OpenAPI
JSON, JSON Schema, and OpenAPIJSON, JSON Schema, and OpenAPI
JSON, JSON Schema, and OpenAPIOctavian Nadolu
 
Create an Design JSON Schema
Create an Design JSON SchemaCreate an Design JSON Schema
Create an Design JSON SchemaOctavian Nadolu
 
Compare And Merge Scripts
Compare And Merge ScriptsCompare And Merge Scripts
Compare And Merge ScriptsOctavian Nadolu
 
Schematron For Non-XML Languages
Schematron For Non-XML LanguagesSchematron For Non-XML Languages
Schematron For Non-XML LanguagesOctavian Nadolu
 
JSON and JSON Schema in Oxygen
JSON and JSON Schema in OxygenJSON and JSON Schema in Oxygen
JSON and JSON Schema in OxygenOctavian Nadolu
 
HTML5 Editing Validation
HTML5 Editing ValidationHTML5 Editing Validation
HTML5 Editing ValidationOctavian Nadolu
 
Documentation Quality Assurance with ISO Schematron
Documentation Quality Assurance with ISO SchematronDocumentation Quality Assurance with ISO Schematron
Documentation Quality Assurance with ISO SchematronOctavian Nadolu
 
Introduction to Schematron
Introduction to SchematronIntroduction to Schematron
Introduction to SchematronOctavian Nadolu
 
JSON Edit, Validate, Query, Transform, and Convert
JSON Edit, Validate, Query, Transform, and ConvertJSON Edit, Validate, Query, Transform, and Convert
JSON Edit, Validate, Query, Transform, and ConvertOctavian Nadolu
 
The Power Of Schematron Quick Fixes - XML Prague 2019
The Power Of Schematron Quick Fixes - XML Prague 2019The Power Of Schematron Quick Fixes - XML Prague 2019
The Power Of Schematron Quick Fixes - XML Prague 2019Octavian Nadolu
 
Collaboration Tools to Help Improve Documentation Process
Collaboration Tools to Help Improve Documentation ProcessCollaboration Tools to Help Improve Documentation Process
Collaboration Tools to Help Improve Documentation ProcessOctavian Nadolu
 
Exploring the new features in Oxygen XML Editor 20 - Development
Exploring the new features in Oxygen XML Editor 20 - DevelopmentExploring the new features in Oxygen XML Editor 20 - Development
Exploring the new features in Oxygen XML Editor 20 - DevelopmentOctavian Nadolu
 

Más de Octavian Nadolu (20)

YAML Editing and Validation In Oxygen
YAML Editing and Validation In OxygenYAML Editing and Validation In Oxygen
YAML Editing and Validation In Oxygen
 
Oxygen JSON Editor
Oxygen JSON EditorOxygen JSON Editor
Oxygen JSON Editor
 
Leveraging the Power of AI and Schematron for Content Verification and Correc...
Leveraging the Power of AI and Schematron for Content Verification and Correc...Leveraging the Power of AI and Schematron for Content Verification and Correc...
Leveraging the Power of AI and Schematron for Content Verification and Correc...
 
Validating XML and JSON Documents Using Oxygen Scripting
 Validating XML and JSON Documents Using Oxygen Scripting Validating XML and JSON Documents Using Oxygen Scripting
Validating XML and JSON Documents Using Oxygen Scripting
 
OpenAPI Editing, Testing, and Documenting
OpenAPI Editing, Testing, and DocumentingOpenAPI Editing, Testing, and Documenting
OpenAPI Editing, Testing, and Documenting
 
JSON, JSON Schema, and OpenAPI
JSON, JSON Schema, and OpenAPIJSON, JSON Schema, and OpenAPI
JSON, JSON Schema, and OpenAPI
 
Create an Design JSON Schema
Create an Design JSON SchemaCreate an Design JSON Schema
Create an Design JSON Schema
 
Compare And Merge Scripts
Compare And Merge ScriptsCompare And Merge Scripts
Compare And Merge Scripts
 
JSON Schema Design
JSON Schema DesignJSON Schema Design
JSON Schema Design
 
Schematron For Non-XML Languages
Schematron For Non-XML LanguagesSchematron For Non-XML Languages
Schematron For Non-XML Languages
 
JSON and JSON Schema in Oxygen
JSON and JSON Schema in OxygenJSON and JSON Schema in Oxygen
JSON and JSON Schema in Oxygen
 
HTML5 Editing Validation
HTML5 Editing ValidationHTML5 Editing Validation
HTML5 Editing Validation
 
Documentation Quality Assurance with ISO Schematron
Documentation Quality Assurance with ISO SchematronDocumentation Quality Assurance with ISO Schematron
Documentation Quality Assurance with ISO Schematron
 
Introduction to Schematron
Introduction to SchematronIntroduction to Schematron
Introduction to Schematron
 
Hands on JSON
Hands on JSONHands on JSON
Hands on JSON
 
JSON Edit, Validate, Query, Transform, and Convert
JSON Edit, Validate, Query, Transform, and ConvertJSON Edit, Validate, Query, Transform, and Convert
JSON Edit, Validate, Query, Transform, and Convert
 
The Power Of Schematron Quick Fixes - XML Prague 2019
The Power Of Schematron Quick Fixes - XML Prague 2019The Power Of Schematron Quick Fixes - XML Prague 2019
The Power Of Schematron Quick Fixes - XML Prague 2019
 
Collaboration Tools to Help Improve Documentation Process
Collaboration Tools to Help Improve Documentation ProcessCollaboration Tools to Help Improve Documentation Process
Collaboration Tools to Help Improve Documentation Process
 
Schematron step-by-step
Schematron step-by-stepSchematron step-by-step
Schematron step-by-step
 
Exploring the new features in Oxygen XML Editor 20 - Development
Exploring the new features in Oxygen XML Editor 20 - DevelopmentExploring the new features in Oxygen XML Editor 20 - Development
Exploring the new features in Oxygen XML Editor 20 - Development
 

Último

Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
Project Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationProject Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationkaushalgiri8080
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEOrtus Solutions, Corp
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...MyIntelliSource, Inc.
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfkalichargn70th171
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providermohitmore19
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideChristina Lin
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxbodapatigopi8531
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comFatema Valibhai
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...ICS
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...stazi3110
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio, Inc.
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 
Engage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The UglyEngage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The UglyFrank van der Linden
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVshikhaohhpro
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfjoe51371421
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackVICTOR MAESTRE RAMIREZ
 

Último (20)

Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
Project Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationProject Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanation
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptx
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
Engage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The UglyEngage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The Ugly
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdf
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStack
 
Exploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the ProcessExploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the Process
 

OpenAPI/AsyncAPI Support in Oxygen

  • 1. OpenAPI/AsyncAPI Support in Oxygen © 2022 Syncro Soft SRL. All rights reserved. Octavian Nadolu, Syncro Soft octavian.nadolu@oxygenxml.com @OctavianNadolu
  • 2. OpenAPI/AsyncAPI in Oxygen Agenda  OpenAPI/AsyncAPI Specification  Create OpenAPI/AsyncAPI Documents  Edit and Validate OpenAPI/AsyncAPI  Edit OpenAPI/AsyncAPI in Author Mode  Generate Documentation for OpenAPI  Test OpenAPI Service
  • 3. OpenAPI/AsyncAPI in Oxygen OpenAPI Specification(OAS)  Is a format for describing and documenting APIs  Allows both humans and computers to discover and understand the capabilities of a service www.openapis.org
  • 4. OpenAPI/AsyncAPI in Oxygen AsyncAPI Specification  AsyncAPI started as an adaptation of the OpenAPI specification  Used for describing asynchronous messaging APIs www.asyncapi.com
  • 5. OpenAPI/AsyncAPI in Oxygen OpenAPI/AsyncAPI Documents  Can be written in JSON or YAML  Describes the inputs and outputs of an API  Include information such as: – where the API is hosted – what authorization is required to access it – details for consumers and producers
  • 6. OpenAPI/AsyncAPI in Oxygen OpenAPI Example JSON YAML "openapi": "3.1.0", "info": { "title": "Dog API", "version": "1.0.0" }, "servers": [ {"url": "https://dog.ceo/api"} ], "paths": {} openapi: 3.1.0 info: title: Dog API version: 1.0.0 servers: - url: https://dog.ceo/api paths:
  • 7. OpenAPI/AsyncAPI in Oxygen OpenAPI Example JSON YAML "paths": { "/breed/{breedName}/images": { "get": { "description": "Get images", "parameters": [], "responses": { "200": { "description": "A list of images", "content": {} } } } } } paths: /breed/{breedName}/images: get: description: Get images parameters: responses: "200": description: A list of dog content:
  • 8. OpenAPI/AsyncAPI in Oxygen OpenAPI Versions ● OpenAPI 3.1 ● OpenAPI 3.0 ● OpenAPI/Swagger 2.0
  • 11. OpenAPI/AsyncAPI in Oxygen AsyncAPI Versions ● AsyncAPI 1.x ● AsyncAPI 2.x ● AsyncAPI 3.x (pre-release) www.asyncapi.com/docs
  • 13. OpenAPI/AsyncAPI in Oxygen Question: Do you use/intend to use OpenAPI or AsyncAPI?  Yes. OpenAPI  Yes. AsyncAPI  No. I define APIs using other languages  No. I do not define APIs
  • 14. OpenAPI/AsyncAPI in Oxygen Create OpenAPI/AsyncAPI ● Generate API from code ● Design/Create API using an editor
  • 15. OpenAPI/AsyncAPI in Oxygen OpenAPI Tools ● Generate Documentation ● Generate Server ● Generate Client
  • 16. OpenAPI/AsyncAPI in Oxygen OpenAPI/AsyncAPI Editor  New file templates  Syntax highlights  Content completion based on the schema  Validation conforms with the schema  Outline view  Search and replace
  • 17. OpenAPI/AsyncAPI in Oxygen Content completion  Properties and values presented in the content completion window  Annotations for properties
  • 18. OpenAPI/AsyncAPI in Oxygen Validation  Validation based on the JSON Schema  Create validation scenarios for each version  Errors highlighted in editor
  • 19. OpenAPI/AsyncAPI in Oxygen Outline view  Visualize the structure of the document  Search for properties  Synchronized with editor
  • 20. OpenAPI/AsyncAPI in Oxygen JSON Schema in OpenAPI/AsyncAPI  You can use JSON Schema to describe data objects for both requests and responses
  • 21. OpenAPI/AsyncAPI in Oxygen JSON Schema in OpenAPI/AsyncAPI  OpenAPI uses JSON Schema specification version 2020-12  AsyncAPI uses a superset of the JSON Schema specification Draft 07  OpenAPI uses JSON Schema specification version 2020-12  AsyncAPI uses a superset of the JSON Schema specification Draft 07
  • 22. OpenAPI/AsyncAPI in Oxygen JSON Schema Support in Oxygen  JSON Schema Editor - specialized editor with various editing features  Validation against JSON Schema  Editing based on JSON Schema  Tools – Generate JSON Schema Documentation – Generate Sample JSON Files from a JSON Schema – Generate JSON Schema from a JSON File – XSD to JSON Schema Converter
  • 23. OpenAPI/AsyncAPI in Oxygen Question: How do you create/intend to create your API?  Edit/Design API  Generate API from code
  • 24. OpenAPI/AsyncAPI in Oxygen OpenAPI/AsyncAPI Visual Editor  Edit documentation  Form controls to change values  Collapsible sections  Customize interface with CSS
  • 25. OpenAPI/AsyncAPI in Oxygen OpenAPI Documentation  Tool for generating detailed documentation for a OpenAPI documents in HTML format
  • 26. OpenAPI/AsyncAPI in Oxygen OpenAPI Documentation  New design for the OpenAPI documentation  OpenAPI 3.1 Support  Supports for YAML Files  Generate documentation in one file or split into multiple files  Display the diagram image for each component
  • 27. OpenAPI/AsyncAPI in Oxygen OpenAPI Documentation in DITA oxygenxml.com/events/2022/webinar_integrating_various_document_formats.html
  • 28. OpenAPI/AsyncAPI in Oxygen OpenAPI Tester Tool  GUI interface testing tool for OpenAPI files  Execute API requests and validate responses on the fly  OpenAPI files in JSON or YAML format
  • 29. OpenAPI/AsyncAPI in Oxygen Run OpenAPI Test Scenarios  Tool to run test scenarios  Specialized framework for editing and working with OpenAPI test scenario files
  • 30. OpenAPI/AsyncAPI in Oxygen Batch Validate OpenAPI/AsyncAPI  Use the Validate action from project  Use the Oxygen Scripting from CI/CD  Use the Validate action from project  Use the Oxygen Scripting from CI/CD oxygenxml.com/doc/ug-editor/topics/scripting_oxygen_validate.html
  • 31. OpenAPI/AsyncAPI in Oxygen Conclusion  Edit/Design OpenAPI and AsyncAPI documents  Edit/Design JSON Schema documents  Edit documentation  Generate Documentation for OpenAPI  Test your OpenAPI
  • 32. OpenAPI/AsyncAPI in Oxygen Future Plans  Validation for OpenAPI/AsyncAPI references  Better Authoring support for OpenAPI/AsyncAPI  Generate AsyncAPI documentation  OpenAPI/AsyncAPI documentation from scripting  Create AsyncAPI test tool  OpenAPI/AsyncAPI test scenario from scripting
  • 33. OpenAPI/AsyncAPI in Oxygen Question: What features are the most important for you?  Validation for OpenAPI/AsyncAPI references  Better Authoring support for OpenAPI/ AsyncAPI  Generate AsyncAPI documentation  OpenAPI/AsyncAPI documentation from scripting
  • 34. OpenAPI/AsyncAPI in Oxygen Resources  oxygenxml.com/xml_editor/openapi.html  oxygenxml.com/doc/ug-editor/topics/openapi-tester.html  oxygenxml.com/doc/ug-editor/topics/openapi-documentation-generator.html  https://www.openapis.org  https://json-schema.org/  https://www.asyncapi.com
  • 35. OpenAPI/AsyncAPI in Oxygen Video Demos  oxygenxml.com/demo/json_schema_palette.html  oxygenxml.com/demo/introducing_the_json_schema_design.html  oxygenxml.com/demo/json_author.html  oxygenxml.com/demo/json_tools.html  oxygenxml.com/demo/json_validation.html  oxygenxml.com/demo/json_editing.html  oxygenxml.com/demo/json_query.html
  • 36. Questions? Octavian Nadolu Product Manager at Syncro Soft octavian.nadolu@oxygenxml.com Twitter: @OctavianNadolu LinkedIn: octaviannadolu