diff --git a/file-formats/sprv/README.md b/file-formats/sprv/README.md new file mode 100644 index 000000000..5ea3f9a7d --- /dev/null +++ b/file-formats/sprv/README.md @@ -0,0 +1,5 @@ +# SPRV File Format + +File | Cardinality | Definition | Schema | Example +:--- | :--- | :--- | :--- | :--- +`.sprv.json` | 1 | [`zif_aff_sprv_v1.intf.abap`](./type/zif_aff_sprv_v1.intf.abap) | [`sprv-v1.json`](./sprv-v1.json) | diff --git a/file-formats/sprv/sprv-v1.json b/file-formats/sprv/sprv-v1.json new file mode 100644 index 000000000..a81dc7bd9 --- /dev/null +++ b/file-formats/sprv/sprv-v1.json @@ -0,0 +1,89 @@ +{ + "$comment": "This file is autogenerated, do not edit manually, see https://github.com/SAP/abap-file-formats for more information.", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "$id": "https://github.com/SAP/abap-file-formats/blob/main/file-formats/sprv/sprv-v1.json", + "title": "SOAP Web Service Provider Model", + "description": "SOAP web service provider model", + "type": "object", + "properties": { + "formatVersion": { + "title": "ABAP File Format Version", + "description": "The ABAP file format version", + "type": "string", + "const": "1" + }, + "header": { + "title": "Header", + "description": "Header data", + "type": "object", + "properties": { + "description": { + "title": "Description", + "description": "Description of the ABAP object", + "type": "string", + "maxLength": 60 + }, + "originalLanguage": { + "title": "Original Language", + "description": "Original language of the ABAP object", + "type": "string", + "minLength": 2, + "maxLength": 2, + "pattern": "^[a-z]+$" + }, + "abapLanguageVersion": { + "title": "ABAP Language Version", + "description": "ABAP language version", + "type": "string", + "enum": [ + "standard", + "cloudDevelopment" + ], + "enumTitles": [ + "Standard", + "ABAP Cloud Development" + ], + "enumDescriptions": [ + "Standard", + "ABAP cloud development" + ], + "default": "standard" + } + }, + "additionalProperties": false, + "required": [ + "description", + "originalLanguage" + ] + }, + "serviceProvider": { + "title": "Service Provider", + "description": "Service provider details", + "type": "object", + "properties": { + "name": { + "title": "Name", + "description": "Name of the service provider", + "type": "string", + "maxLength": 30 + }, + "prefix": { + "title": "Prefix", + "description": "Prefix for all generated objects", + "type": "string", + "maxLength": 10 + } + }, + "additionalProperties": false, + "required": [ + "name" + ] + } + }, + "additionalProperties": false, + "required": [ + "formatVersion", + "header", + "serviceProvider" + ] +} diff --git a/file-formats/sprv/type/zif_aff_sprv_v1.intf.abap b/file-formats/sprv/type/zif_aff_sprv_v1.intf.abap new file mode 100644 index 000000000..bd7406fe6 --- /dev/null +++ b/file-formats/sprv/type/zif_aff_sprv_v1.intf.abap @@ -0,0 +1,33 @@ +INTERFACE zif_aff_sprv_v1 + PUBLIC. + + + TYPES: + "!

Service Provider

+ "! Service provider details + BEGIN OF ty_servprovider, + "!

Name

+ "! Name of the service provider + "! $required + name TYPE c LENGTH 30, + "!

Prefix

+ "! Prefix for all generated objects + "! $showAlways + prefix TYPE c LENGTH 10, + END OF ty_servprovider. + TYPES: + "!

SOAP Web Service Provider Model

+ "! SOAP web service provider model + BEGIN OF ty_main, + "! $required + format_version TYPE zif_aff_types_v1=>ty_format_version, + "!

Header

+ "! Header data + "! $required + header TYPE zif_aff_types_v1=>ty_header_60_cloud, + "!

Service Provider

+ "! Service provider details + "! $required + service_provider TYPE ty_servprovider, + END OF ty_main. +ENDINTERFACE. diff --git a/file-formats/sprv/type/zif_aff_sprv_v1.intf.json b/file-formats/sprv/type/zif_aff_sprv_v1.intf.json new file mode 100644 index 000000000..e8a9b5d71 --- /dev/null +++ b/file-formats/sprv/type/zif_aff_sprv_v1.intf.json @@ -0,0 +1,7 @@ +{ + "formatVersion": "1", + "header": { + "description": "Interface with the SPRV AFF Type", + "originalLanguage": "en" + } +}