NAV Navigation
Shell

IHM on Nirva software cloud v3.0.2

Scroll down for code samples, example requests and responses. Select a language for code samples from the tabs above or the mobile navigation menu.

IHM on Nirva software cloud

Base URLs:

Authentication method

Authentication

Authentication to the service, then Authorize the token (green upper left button)

authenticate

Code samples

# You can also use wgetcurl -X POST mycloud.nirva-software.com/authentication/authenticate \ -H 'Content-Type: application/json' \ -H 'Accept: application/json'

POST /authentication/authenticate

Authenticate

Authenticate user/password to get a token

Body parameter

{ "type": "object", "properties": { "brandingName": { "type": "string", "example": "test" }, "login": { "type": "string", "example": "admin" }, "password": { "type": "string", "example": "123" } }}

Parameters

NameInTypeRequiredDescription
withProfileDetailquerystringfalsetrue or false to get the services
brandingNamebodystringfalsenone
loginbodystringfalsenone
passwordbodystringfalsenone

Enumerated Values

ParameterValue
withProfileDetailtrue
withProfileDetailfalse

Example responses

200 Response

{ "type": "object", "properties": { "authToken": { "type": "string", "example": "341DDE1C0699452B8E1A74C1B119D82D381DC84771A4065CB53157786B5D4D3B" }, "authTokenExpirationDate": { "type": "string", "example": "1519837961835" }, "user": { "type": "object", "properties": { "id": { "type": "integer", "format": "int64" }, "profile": { "type": "object", "properties": { "id": { "type": "integer", "format": "int64" }, "organizationalUnit": { "type": "object", "properties": { "id": { "type": "integer", "format": "int64" }, "name": { "type": "string", "description": "login or displayable name" } }, "description": "In JSON Objects, other entities (Branding, Parent OU, group...) can be referenced by an IdentifierDTO Object" }, "name": { "type": "string" }, "roleName": { "type": "string", "description": "name of RoleTemplaate or [CUSTOM]" }, "permissions": { "type": "integer", "description": "Permissions on User itself (bit 0 is VIEW_ORDER, bit 1 is CREATE_ORDER, bit 2 is VALIDATE_ORDER)" }, "permissionsOnGroup": { "type": "integer", "description": "Permissions on Group (for Goup validator)" }, "permissionsOnOU": { "type": "integer", "description": "Permissions on OrganizationalUnit (bit 3 is ADMIN_USER, bit 4 is ADMIN_SERVICE, bit 16 is ADMIN_CHILDREN OrganizationalUnits, bit 29 is SUPER_ADMIN_VIEW, bit 30 is SUPER_ADMIN)" } }, "description": "field can be null id super admin" }, "login": { "type": "string" }, "password": { "type": "string", "format": "password" }, "allowAddresses": { "type": "string", "description": "Optional comma-separated list of allowed IP address matcher (Unique address, CIDR prefix notation or range) Ex. \"1.2.3.4, 2000:ABCD:789::1/56, 10.0.10.1-10.0.11.3\". If null, all source IP addresses allowed for this User ; sensitive data filtered out for non Super-Admin view" }, "title": { "type": "string" }, "firstName": { "type": "string" }, "lastName": { "type": "string" }, "emailAddress": { "type": "string", "format": "email" }, "phoneNumber": { "type": "string" }, "mobileNumber": { "type": "string" }, "dropboxToken": { "type": "string" }, "enable": { "type": "boolean" }, "accountExpired": { "type": "boolean" }, "group": { "type": "object", "properties": { "id": { "type": "integer", "format": "int64" }, "name": { "type": "string", "description": "login or displayable name" } }, "description": "In JSON Objects, other entities (Branding, Parent OU, group...) can be referenced by an IdentifierDTO Object" }, "passwordExpireDays": { "type": "integer", "description": "Number of days before password expire. Null if not known (Super-Admin has NO OU). Integer.MAX_VALUE if no expiration policy in User OU." } } }, "organizationalUnit": { "type": "object", "properties": { "id": { "type": "integer", "format": "int64" }, "creationdate": { "type": "integer", "format": "int64" }, "accountIdentifier": { "type": "string", "description": "Only ASCII 0-9 A-Z a-z and -._~" }, "name": { "type": "string" }, "branding": { "type": "object", "properties": { "id": { "type": "integer", "format": "int64" }, "name": { "type": "string", "description": "login or displayable name" } }, "description": "In JSON Objects, other entities (Branding, Parent OU, group...) can be referenced by an IdentifierDTO Object" }, "parent": { "type": "object", "properties": { "id": { "type": "integer", "format": "int64" }, "name": { "type": "string", "description": "login or displayable name" } }, "description": "In JSON Objects, other entities (Branding, Parent OU, group...) can be referenced by an IdentifierDTO Object" }, "allowOUChildren": { "type": "boolean" }, "freezeDelayDays": { "type": "integer" }, "fileDelayDays": { "type": "integer" }, "dataDelayDays": { "type": "integer" }, "accountingCode": { "type": "string" }, "productionCode": { "type": "string" }, "partnerCode": { "type": "string" }, "billingType": { "type": "string" }, "ceilingType": { "type": "string" }, "ceilingTarget": { "type": "string" }, "ceilingFrequency": { "type": "string" }, "forceCategory": { "type": "boolean" }, "displayBilling": { "type": "boolean" }, "logoFile": { "type": "string" }, "defaultMailCountry": { "type": "string" }, "minPasswordEntropy": { "type": "integer", "description": "Minimum number of entropy bits, interger part of log2(guesses) ; only checked if > 0", "format": "int32" }, "maxPasswordValidityDays": { "type": "integer", "description": "Maximum number of days between password change by User ; only checked if > 0", "format": "int32" }, "properties": { "type": "object", "properties": { "currency": { "type": "string", "description": "3 chars" }, "timeZone": { "type": "string", "description": "default timeZone is UTC" }, "displayReturnAddress": { "type": "boolean" }, "emailAddress": { "type": "string" }, "senderAddress": { "type": "object", "properties": { "addressLines": { "type": "string" }, "countryCode": { "type": "string" } }, "description": "PostalAddress: addressLines separated by \\n. countryCode with 2 chars" }, "returnAddress": { "type": "object", "properties": { "addressLines": { "type": "string" }, "countryCode": { "type": "string" } }, "description": "PostalAddress: addressLines separated by \\n. countryCode with 2 chars" }, "siret": { "type": "string" }, "controlledValues": { "type": "array", "items": { "type": "object", "properties": { "name": { "type": "string" }, "elements": { "type": "array", "items": { "type": "string" } }, "allowFreeValue": { "type": "boolean", "description": "If true, user can enter a metadat value outside the elements list" } }, "description": "Can be used as ControlledValueMetadata in Service Metadata" } } } }, "enabled": { "type": "boolean" }, "accountExpired": { "type": "boolean" } }, "description": "Note: parent parameter can be NULL if root OU" }, "services": { "type": "array", "items": { "type": "object", "properties": { "id": { "type": "integer" }, "type": { "type": "string", "enum": [ "SIMPLE_UNIQUE", "SIMPLE_MULTIPLE", "PREPROCESSING", "ADVANCED" ] }, "name": { "type": "string" }, "organizationalUnit": { "type": "object", "properties": { "id": { "type": "integer", "format": "int64" }, "name": { "type": "string", "description": "login or displayable name" } }, "description": "In JSON Objects, other entities (Branding, Parent OU, group...) can be referenced by an IdentifierDTO Object" }, "properties": { "type": "object", "properties": { "description": { "type": "string" }, "iconName": { "type": "string" }, "boxes": { "type": "array", "items": { "discriminator": { "propertyName": "@type", "mapping": { "box.PDF": "#/components/schemas/BoxDoc", "box.DATA_FILE": "#/components/schemas/BoxDataFile", "box.ARCHIVE": "#/components/schemas/BoxArchive" } }, "oneOf": [ { "allOf": [ { "allOf": [ { "required": [ "@type", "maxElements", "minElements", "name" ], "type": "object", "properties": { "@type": { "type": "string", "enum": [ "box.PDF", "box.DATA_FILE", "box.ARCHIVE" ] }, "name": { "type": "string" }, "label": { "type": "string" }, "minElements": { "type": "integer" }, "maxElements": { "type": "integer" } } }, { "required": [ "configuredFiles", "main", "metadatas", "parent", "reconcile" ], "type": "object", "properties": { "main": { "type": "boolean", "description": "true if MAIN ; false if ATTACHMENT" }, "parent": { "type": "object", "properties": { "boxName": { "type": "string", "description": "Name of BoxArchive to extract files from. Must be a valid BoxArchive in current Service" }, "fileMatcher": { "discriminator": { "propertyName": "@type", "mapping": { "exb.Boolean": "#/components/schemas/BooleanExpressionConstant", "exb.AND": "#/components/schemas/BooleanExpressionAndOr", "exb.OR": "#/components/schemas/BooleanExpressionAndOr", "exb.NOT": "#/components/schemas/BooleanExpressionNot", "exb.ContentEqual": "#/components/schemas/BooleanExpressionStrEqual", "exb.LessThan": "#/components/schemas/BooleanExpressionNumeric", "exb.LessThanOrEqual": "#/components/schemas/BooleanExpressionNumeric", "exb.NumericEqual": "#/components/schemas/BooleanExpressionNumeric", "exb.StrContains": "#/components/schemas/BooleanExpressionStrEqual", "exb.StrStartsWith": "#/components/schemas/BooleanExpressionStrEqual", "exb.StrEndsWith": "#/components/schemas/BooleanExpressionStrEqual", "exb.StrMatches": "#/components/schemas/BooleanExpressionStrMatches" } }, "oneOf": [ { "allOf": [ { "required": [ "@type" ], "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.Boolean", "exb.AND", "exb.OR", "exb.NOT", "exb.ContentEqual", "exb.LessThan", "exb.LessThanOrEqual", "exb.NumericEqual", "exb.StrContains", "exb.StrStartsWith", "exb.StrEndsWith", "exb.StrMatches" ] } } }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.Boolean" ] }, "value": { "type": "boolean" } } } ] }, { "allOf": [ { "required": [ "@type" ], "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.Boolean", "exb.AND", "exb.OR", "exb.NOT", "exb.ContentEqual", "exb.LessThan", "exb.LessThanOrEqual", "exb.NumericEqual", "exb.StrContains", "exb.StrStartsWith", "exb.StrEndsWith", "exb.StrMatches" ] } } }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.AND", "exb.OR" ] }, "expr1": "[Circular]", "expr2": "[Circular]" } } ] }, { "allOf": [ { "required": [ "@type" ], "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.Boolean", "exb.AND", "exb.OR", "exb.NOT", "exb.ContentEqual", "exb.LessThan", "exb.LessThanOrEqual", "exb.NumericEqual", "exb.StrContains", "exb.StrStartsWith", "exb.StrEndsWith", "exb.StrMatches" ] } } }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.NOT" ] }, "expr": "[Circular]" } } ] }, { "allOf": [ { "allOf": [ { "required": [ "@type" ], "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.Boolean", "exb.AND", "exb.OR", "exb.NOT", "exb.ContentEqual", "exb.LessThan", "exb.LessThanOrEqual", "exb.NumericEqual", "exb.StrContains", "exb.StrStartsWith", "exb.StrEndsWith", "exb.StrMatches" ] } } }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.ContentEqual", "exb.LessThan", "exb.LessThanOrEqual", "exb.NumericEqual" ] }, "expr1": { "type": "object", "discriminator": { "propertyName": "@type", "mapping": { "exv.Value": "#/components/schemas/ExpressionConstant", "exv.FileName": "#/components/schemas/ExpressionFileName", "exv.PdfMetadata": "#/components/schemas/ExpressionPdfMetadata", "exv.PdfText": "#/components/schemas/ExpressionPdfText", "exv.Reference": "#/components/schemas/ExpressionReference", "exv.Concat": "#/components/schemas/ExpressionConcat", "exv.Substring": "#/components/schemas/ExpressionSubstring", "exv.NumSheetsValue": "#/components/schemas/ExpressionNumSheets", "exv.StrClean": "#/components/schemas/ExpressionStrClean", "exv.StrNormalizeCase": "#/components/schemas/ExpressionStrNormalizeCase", "exv.StrReplace": "#/components/schemas/ExpressionStrReplace" } }, "oneOf": [ { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Value" ] }, "value": { "type": "string" } }, "description": "Pre-defined text value" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Reference" ] }, "identifier": { "type": "string", "description": "Identifier of the element" } }, "description": "Reference another element, depends on the context" }, { "description": "Part of the name of the underlying file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.FileName" ] }, "begin": { "type": "integer", "format": "int64" }, "end": { "type": "integer", "format": "int64" } } } ] }, { "description": "Text extraction from the underlying PDF file of the box. The area parameter is where is located the text to extract", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfText" ] }, "page": { "type": "integer", "description": "Page on which to extract the text. Page -1 means last page, -2 means before last page, and so on. Page starts at 1. Page 0 is invalid and will always return \"\"." }, "area": { "type": "object", "properties": { "left": { "minimum": 0, "type": "number", "format": "float" }, "top": { "minimum": 0, "type": "number", "format": "float" }, "width": { "minimum": 0, "type": "number", "format": "float" }, "height": { "minimum": 0, "type": "number", "format": "float" } }, "description": "ZoneArea object" }, "extractionParameters": { "type": "object", "additionalProperties": { "type": "string" }, "description": "Parameters for the extraction. Depends on the library used." } } } ] }, { "description": "PDF metadata value from the underlying PDF file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfMetadata" ] }, "metadataName": { "type": "string", "description": "Name of the PDF metadata to extract" } } } ] }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Concat" ] }, "operands": { "type": "array", "items": "[Circular]" } }, "description": "Concat: concatenates all Expressions given in argument" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrClean" ] }, "expr": "[Circular]", "normalizeSpace": { "type": "boolean", "description": "Replaces all Unicode spaces with standard space character (\\u0020) then replace consecutive space characters by a single one." }, "removeDiacritics": { "type": "boolean", "description": "Replaces the accentuated letters with their un-accentuated version" }, "multiline": { "type": "boolean", "description": "Replaces every Unicode line terminator character to the standard linefeed character (\\u000A) and de-duplicates them. If trim is set, it applies on each line. Trim also removes blank lines." }, "trim": { "type": "boolean", "description": "Removes all the control characters at the beginning and the end of the string (Technically, removes all characters equal or below ASCII U+0020 (space character). If multiline is set, applies on all lines rather than the whole string." } }, "description": "Cleans a string" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrNormalizeCase" ] }, "expr": "[Circular]", "toUpper": { "type": "boolean", "description": "is set, the normalization will be to Upper Case, otherwise it will be to Lower Case" } }, "description": "Normalizes the case of the String" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrReplace" ] }, "expr": "[Circular]", "regExpPattern": { "type": "string", "description": "valid Regular Expression that the input string should match" }, "replacement": { "type": "string", "description": "The replacement to use for each match of the string. The replacement can contain $1, $2, ... elements that will be replaced by capturing groups of the match. '\\' is an escape character, so to have a real '$' sign in replacement, use '\\$'. Same for the escape character itself, use '\\\\'." }, "firstOnly": { "type": "boolean", "description": "If set, the match/replacement will be applied to the first match of the string only, otherwise it will apply on all matches." } }, "description": "Normalizes the case of the String" } ] }, "expr2": { "type": "object", "discriminator": { "propertyName": "@type", "mapping": { "exv.Value": "#/components/schemas/ExpressionConstant", "exv.FileName": "#/components/schemas/ExpressionFileName", "exv.PdfMetadata": "#/components/schemas/ExpressionPdfMetadata", "exv.PdfText": "#/components/schemas/ExpressionPdfText", "exv.Reference": "#/components/schemas/ExpressionReference", "exv.Concat": "#/components/schemas/ExpressionConcat", "exv.Substring": "#/components/schemas/ExpressionSubstring", "exv.NumSheetsValue": "#/components/schemas/ExpressionNumSheets", "exv.StrClean": "#/components/schemas/ExpressionStrClean", "exv.StrNormalizeCase": "#/components/schemas/ExpressionStrNormalizeCase", "exv.StrReplace": "#/components/schemas/ExpressionStrReplace" } }, "oneOf": [ { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Value" ] }, "value": { "type": "string" } }, "description": "Pre-defined text value" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Reference" ] }, "identifier": { "type": "string", "description": "Identifier of the element" } }, "description": "Reference another element, depends on the context" }, { "description": "Part of the name of the underlying file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.FileName" ] }, "begin": { "type": "integer", "format": "int64" }, "end": { "type": "integer", "format": "int64" } } } ] }, { "description": "Text extraction from the underlying PDF file of the box. The area parameter is where is located the text to extract", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfText" ] }, "page": { "type": "integer", "description": "Page on which to extract the text. Page -1 means last page, -2 means before last page, and so on. Page starts at 1. Page 0 is invalid and will always return \"\"." }, "area": { "type": "object", "properties": { "left": { "minimum": 0, "type": "number", "format": "float" }, "top": { "minimum": 0, "type": "number", "format": "float" }, "width": { "minimum": 0, "type": "number", "format": "float" }, "height": { "minimum": 0, "type": "number", "format": "float" } }, "description": "ZoneArea object" }, "extractionParameters": { "type": "object", "additionalProperties": { "type": "string" }, "description": "Parameters for the extraction. Depends on the library used." } } } ] }, { "description": "PDF metadata value from the underlying PDF file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfMetadata" ] }, "metadataName": { "type": "string", "description": "Name of the PDF metadata to extract" } } } ] }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Concat" ] }, "operands": { "type": "array", "items": "[Circular]" } }, "description": "Concat: concatenates all Expressions given in argument" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrClean" ] }, "expr": "[Circular]", "normalizeSpace": { "type": "boolean", "description": "Replaces all Unicode spaces with standard space character (\\u0020) then replace consecutive space characters by a single one." }, "removeDiacritics": { "type": "boolean", "description": "Replaces the accentuated letters with their un-accentuated version" }, "multiline": { "type": "boolean", "description": "Replaces every Unicode line terminator character to the standard linefeed character (\\u000A) and de-duplicates them. If trim is set, it applies on each line. Trim also removes blank lines." }, "trim": { "type": "boolean", "description": "Removes all the control characters at the beginning and the end of the string (Technically, removes all characters equal or below ASCII U+0020 (space character). If multiline is set, applies on all lines rather than the whole string." } }, "description": "Cleans a string" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrNormalizeCase" ] }, "expr": "[Circular]", "toUpper": { "type": "boolean", "description": "is set, the normalization will be to Upper Case, otherwise it will be to Lower Case" } }, "description": "Normalizes the case of the String" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrReplace" ] }, "expr": "[Circular]", "regExpPattern": { "type": "string", "description": "valid Regular Expression that the input string should match" }, "replacement": { "type": "string", "description": "The replacement to use for each match of the string. The replacement can contain $1, $2, ... elements that will be replaced by capturing groups of the match. '\\' is an escape character, so to have a real '$' sign in replacement, use '\\$'. Same for the escape character itself, use '\\\\'." }, "firstOnly": { "type": "boolean", "description": "If set, the match/replacement will be applied to the first match of the string only, otherwise it will apply on all matches." } }, "description": "Normalizes the case of the String" } ] } } } ] }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.ContentEqual", "exb.StrContains", "exb.StrStartsWith", "exb.StrEndsWith" ] } } } ] }, { "allOf": [ { "allOf": [ { "required": [ "@type" ], "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.Boolean", "exb.AND", "exb.OR", "exb.NOT", "exb.ContentEqual", "exb.LessThan", "exb.LessThanOrEqual", "exb.NumericEqual", "exb.StrContains", "exb.StrStartsWith", "exb.StrEndsWith", "exb.StrMatches" ] } } }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.ContentEqual", "exb.LessThan", "exb.LessThanOrEqual", "exb.NumericEqual" ] }, "expr1": { "type": "object", "discriminator": { "propertyName": "@type", "mapping": { "exv.Value": "#/components/schemas/ExpressionConstant", "exv.FileName": "#/components/schemas/ExpressionFileName", "exv.PdfMetadata": "#/components/schemas/ExpressionPdfMetadata", "exv.PdfText": "#/components/schemas/ExpressionPdfText", "exv.Reference": "#/components/schemas/ExpressionReference", "exv.Concat": "#/components/schemas/ExpressionConcat", "exv.Substring": "#/components/schemas/ExpressionSubstring", "exv.NumSheetsValue": "#/components/schemas/ExpressionNumSheets", "exv.StrClean": "#/components/schemas/ExpressionStrClean", "exv.StrNormalizeCase": "#/components/schemas/ExpressionStrNormalizeCase", "exv.StrReplace": "#/components/schemas/ExpressionStrReplace" } }, "oneOf": [ { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Value" ] }, "value": { "type": "string" } }, "description": "Pre-defined text value" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Reference" ] }, "identifier": { "type": "string", "description": "Identifier of the element" } }, "description": "Reference another element, depends on the context" }, { "description": "Part of the name of the underlying file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.FileName" ] }, "begin": { "type": "integer", "format": "int64" }, "end": { "type": "integer", "format": "int64" } } } ] }, { "description": "Text extraction from the underlying PDF file of the box. The area parameter is where is located the text to extract", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfText" ] }, "page": { "type": "integer", "description": "Page on which to extract the text. Page -1 means last page, -2 means before last page, and so on. Page starts at 1. Page 0 is invalid and will always return \"\"." }, "area": { "type": "object", "properties": { "left": { "minimum": 0, "type": "number", "format": "float" }, "top": { "minimum": 0, "type": "number", "format": "float" }, "width": { "minimum": 0, "type": "number", "format": "float" }, "height": { "minimum": 0, "type": "number", "format": "float" } }, "description": "ZoneArea object" }, "extractionParameters": { "type": "object", "additionalProperties": { "type": "string" }, "description": "Parameters for the extraction. Depends on the library used." } } } ] }, { "description": "PDF metadata value from the underlying PDF file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfMetadata" ] }, "metadataName": { "type": "string", "description": "Name of the PDF metadata to extract" } } } ] }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Concat" ] }, "operands": { "type": "array", "items": "[Circular]" } }, "description": "Concat: concatenates all Expressions given in argument" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrClean" ] }, "expr": "[Circular]", "normalizeSpace": { "type": "boolean", "description": "Replaces all Unicode spaces with standard space character (\\u0020) then replace consecutive space characters by a single one." }, "removeDiacritics": { "type": "boolean", "description": "Replaces the accentuated letters with their un-accentuated version" }, "multiline": { "type": "boolean", "description": "Replaces every Unicode line terminator character to the standard linefeed character (\\u000A) and de-duplicates them. If trim is set, it applies on each line. Trim also removes blank lines." }, "trim": { "type": "boolean", "description": "Removes all the control characters at the beginning and the end of the string (Technically, removes all characters equal or below ASCII U+0020 (space character). If multiline is set, applies on all lines rather than the whole string." } }, "description": "Cleans a string" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrNormalizeCase" ] }, "expr": "[Circular]", "toUpper": { "type": "boolean", "description": "is set, the normalization will be to Upper Case, otherwise it will be to Lower Case" } }, "description": "Normalizes the case of the String" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrReplace" ] }, "expr": "[Circular]", "regExpPattern": { "type": "string", "description": "valid Regular Expression that the input string should match" }, "replacement": { "type": "string", "description": "The replacement to use for each match of the string. The replacement can contain $1, $2, ... elements that will be replaced by capturing groups of the match. '\\' is an escape character, so to have a real '$' sign in replacement, use '\\$'. Same for the escape character itself, use '\\\\'." }, "firstOnly": { "type": "boolean", "description": "If set, the match/replacement will be applied to the first match of the string only, otherwise it will apply on all matches." } }, "description": "Normalizes the case of the String" } ] }, "expr2": { "type": "object", "discriminator": { "propertyName": "@type", "mapping": { "exv.Value": "#/components/schemas/ExpressionConstant", "exv.FileName": "#/components/schemas/ExpressionFileName", "exv.PdfMetadata": "#/components/schemas/ExpressionPdfMetadata", "exv.PdfText": "#/components/schemas/ExpressionPdfText", "exv.Reference": "#/components/schemas/ExpressionReference", "exv.Concat": "#/components/schemas/ExpressionConcat", "exv.Substring": "#/components/schemas/ExpressionSubstring", "exv.NumSheetsValue": "#/components/schemas/ExpressionNumSheets", "exv.StrClean": "#/components/schemas/ExpressionStrClean", "exv.StrNormalizeCase": "#/components/schemas/ExpressionStrNormalizeCase", "exv.StrReplace": "#/components/schemas/ExpressionStrReplace" } }, "oneOf": [ { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Value" ] }, "value": { "type": "string" } }, "description": "Pre-defined text value" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Reference" ] }, "identifier": { "type": "string", "description": "Identifier of the element" } }, "description": "Reference another element, depends on the context" }, { "description": "Part of the name of the underlying file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.FileName" ] }, "begin": { "type": "integer", "format": "int64" }, "end": { "type": "integer", "format": "int64" } } } ] }, { "description": "Text extraction from the underlying PDF file of the box. The area parameter is where is located the text to extract", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfText" ] }, "page": { "type": "integer", "description": "Page on which to extract the text. Page -1 means last page, -2 means before last page, and so on. Page starts at 1. Page 0 is invalid and will always return \"\"." }, "area": { "type": "object", "properties": { "left": { "minimum": 0, "type": "number", "format": "float" }, "top": { "minimum": 0, "type": "number", "format": "float" }, "width": { "minimum": 0, "type": "number", "format": "float" }, "height": { "minimum": 0, "type": "number", "format": "float" } }, "description": "ZoneArea object" }, "extractionParameters": { "type": "object", "additionalProperties": { "type": "string" }, "description": "Parameters for the extraction. Depends on the library used." } } } ] }, { "description": "PDF metadata value from the underlying PDF file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfMetadata" ] }, "metadataName": { "type": "string", "description": "Name of the PDF metadata to extract" } } } ] }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Concat" ] }, "operands": { "type": "array", "items": "[Circular]" } }, "description": "Concat: concatenates all Expressions given in argument" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrClean" ] }, "expr": "[Circular]", "normalizeSpace": { "type": "boolean", "description": "Replaces all Unicode spaces with standard space character (\\u0020) then replace consecutive space characters by a single one." }, "removeDiacritics": { "type": "boolean", "description": "Replaces the accentuated letters with their un-accentuated version" }, "multiline": { "type": "boolean", "description": "Replaces every Unicode line terminator character to the standard linefeed character (\\u000A) and de-duplicates them. If trim is set, it applies on each line. Trim also removes blank lines." }, "trim": { "type": "boolean", "description": "Removes all the control characters at the beginning and the end of the string (Technically, removes all characters equal or below ASCII U+0020 (space character). If multiline is set, applies on all lines rather than the whole string." } }, "description": "Cleans a string" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrNormalizeCase" ] }, "expr": "[Circular]", "toUpper": { "type": "boolean", "description": "is set, the normalization will be to Upper Case, otherwise it will be to Lower Case" } }, "description": "Normalizes the case of the String" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrReplace" ] }, "expr": "[Circular]", "regExpPattern": { "type": "string", "description": "valid Regular Expression that the input string should match" }, "replacement": { "type": "string", "description": "The replacement to use for each match of the string. The replacement can contain $1, $2, ... elements that will be replaced by capturing groups of the match. '\\' is an escape character, so to have a real '$' sign in replacement, use '\\$'. Same for the escape character itself, use '\\\\'." }, "firstOnly": { "type": "boolean", "description": "If set, the match/replacement will be applied to the first match of the string only, otherwise it will apply on all matches." } }, "description": "Normalizes the case of the String" } ] } } } ] }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.LessThan", "exb.LessThanOrEqual", "exb.NumericEqual" ] } } } ] }, { "allOf": [ { "required": [ "@type" ], "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.Boolean", "exb.AND", "exb.OR", "exb.NOT", "exb.ContentEqual", "exb.LessThan", "exb.LessThanOrEqual", "exb.NumericEqual", "exb.StrContains", "exb.StrStartsWith", "exb.StrEndsWith", "exb.StrMatches" ] } } }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.StrMatches" ] }, "expr": { "type": "object", "discriminator": { "propertyName": "@type", "mapping": { "exv.Value": "#/components/schemas/ExpressionConstant", "exv.FileName": "#/components/schemas/ExpressionFileName", "exv.PdfMetadata": "#/components/schemas/ExpressionPdfMetadata", "exv.PdfText": "#/components/schemas/ExpressionPdfText", "exv.Reference": "#/components/schemas/ExpressionReference", "exv.Concat": "#/components/schemas/ExpressionConcat", "exv.Substring": "#/components/schemas/ExpressionSubstring", "exv.NumSheetsValue": "#/components/schemas/ExpressionNumSheets", "exv.StrClean": "#/components/schemas/ExpressionStrClean", "exv.StrNormalizeCase": "#/components/schemas/ExpressionStrNormalizeCase", "exv.StrReplace": "#/components/schemas/ExpressionStrReplace" } }, "oneOf": [ { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Value" ] }, "value": { "type": "string" } }, "description": "Pre-defined text value" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Reference" ] }, "identifier": { "type": "string", "description": "Identifier of the element" } }, "description": "Reference another element, depends on the context" }, { "description": "Part of the name of the underlying file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.FileName" ] }, "begin": { "type": "integer", "format": "int64" }, "end": { "type": "integer", "format": "int64" } } } ] }, { "description": "Text extraction from the underlying PDF file of the box. The area parameter is where is located the text to extract", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfText" ] }, "page": { "type": "integer", "description": "Page on which to extract the text. Page -1 means last page, -2 means before last page, and so on. Page starts at 1. Page 0 is invalid and will always return \"\"." }, "area": { "type": "object", "properties": { "left": { "minimum": 0, "type": "number", "format": "float" }, "top": { "minimum": 0, "type": "number", "format": "float" }, "width": { "minimum": 0, "type": "number", "format": "float" }, "height": { "minimum": 0, "type": "number", "format": "float" } }, "description": "ZoneArea object" }, "extractionParameters": { "type": "object", "additionalProperties": { "type": "string" }, "description": "Parameters for the extraction. Depends on the library used." } } } ] }, { "description": "PDF metadata value from the underlying PDF file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfMetadata" ] }, "metadataName": { "type": "string", "description": "Name of the PDF metadata to extract" } } } ] }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Concat" ] }, "operands": { "type": "array", "items": "[Circular]" } }, "description": "Concat: concatenates all Expressions given in argument" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrClean" ] }, "expr": "[Circular]", "normalizeSpace": { "type": "boolean", "description": "Replaces all Unicode spaces with standard space character (\\u0020) then replace consecutive space characters by a single one." }, "removeDiacritics": { "type": "boolean", "description": "Replaces the accentuated letters with their un-accentuated version" }, "multiline": { "type": "boolean", "description": "Replaces every Unicode line terminator character to the standard linefeed character (\\u000A) and de-duplicates them. If trim is set, it applies on each line. Trim also removes blank lines." }, "trim": { "type": "boolean", "description": "Removes all the control characters at the beginning and the end of the string (Technically, removes all characters equal or below ASCII U+0020 (space character). If multiline is set, applies on all lines rather than the whole string." } }, "description": "Cleans a string" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrNormalizeCase" ] }, "expr": "[Circular]", "toUpper": { "type": "boolean", "description": "is set, the normalization will be to Upper Case, otherwise it will be to Lower Case" } }, "description": "Normalizes the case of the String" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrReplace" ] }, "expr": "[Circular]", "regExpPattern": { "type": "string", "description": "valid Regular Expression that the input string should match" }, "replacement": { "type": "string", "description": "The replacement to use for each match of the string. The replacement can contain $1, $2, ... elements that will be replaced by capturing groups of the match. '\\' is an escape character, so to have a real '$' sign in replacement, use '\\$'. Same for the escape character itself, use '\\\\'." }, "firstOnly": { "type": "boolean", "description": "If set, the match/replacement will be applied to the first match of the string only, otherwise it will apply on all matches." } }, "description": "Normalizes the case of the String" } ] }, "regExpPattern": { "type": "string", "description": "valid Regular Expression to check the value against" }, "matchWhole": { "type": "boolean", "description": "if set, indicates that the Regular Expression should match the whole value. If not set, the Regular Expression describe only a part of the value." } } } ] } ] }, "rank": { "type": "integer", "description": "Used to sort multiple 'fileMatcher' expressions extracting from the same BoxArchive (extractor process will ty to match rank 1, then rank 2 ...)" } }, "description": "Allow an AbstractInflatedBox (Doc or DataFile) to retrieve its files from a BoxArchive (Zip) ; 'fileMatcher' boolean expression can use ArchiveFileRelativePathnameValue \"exv.ArchiveFileRelativePathname\" to match a file from its relative pathname in Zip" }, "metadatas": { "type": "array", "items": { "type": "object", "properties": { "name": { "type": "string" }, "persist": { "type": "boolean" }, "editable": { "type": "boolean" }, "content": { "type": "object", "discriminator": { "propertyName": "@type", "mapping": { "exv.Value": "#/components/schemas/ExpressionConstant", "exv.FileName": "#/components/schemas/ExpressionFileName", "exv.PdfMetadata": "#/components/schemas/ExpressionPdfMetadata", "exv.PdfText": "#/components/schemas/ExpressionPdfText", "exv.Reference": "#/components/schemas/ExpressionReference", "exv.Concat": "#/components/schemas/ExpressionConcat", "exv.Substring": "#/components/schemas/ExpressionSubstring", "exv.NumSheetsValue": "#/components/schemas/ExpressionNumSheets", "exv.StrClean": "#/components/schemas/ExpressionStrClean", "exv.StrNormalizeCase": "#/components/schemas/ExpressionStrNormalizeCase", "exv.StrReplace": "#/components/schemas/ExpressionStrReplace" } }, "oneOf": [ { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Value" ] }, "value": { "type": "string" } }, "description": "Pre-defined text value" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Reference" ] }, "identifier": { "type": "string", "description": "Identifier of the element" } }, "description": "Reference another element, depends on the context" }, { "description": "Part of the name of the underlying file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.FileName" ] }, "begin": { "type": "integer", "format": "int64" }, "end": { "type": "integer", "format": "int64" } } } ] }, { "description": "Text extraction from the underlying PDF file of the box. The area parameter is where is located the text to extract", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfText" ] }, "page": { "type": "integer", "description": "Page on which to extract the text. Page -1 means last page, -2 means before last page, and so on. Page starts at 1. Page 0 is invalid and will always return \"\"." }, "area": { "type": "object", "properties": { "left": { "minimum": 0, "type": "number", "format": "float" }, "top": { "minimum": 0, "type": "number", "format": "float" }, "width": { "minimum": 0, "type": "number", "format": "float" }, "height": { "minimum": 0, "type": "number", "format": "float" } }, "description": "ZoneArea object" }, "extractionParameters": { "type": "object", "additionalProperties": { "type": "string" }, "description": "Parameters for the extraction. Depends on the library used." } } } ] }, { "description": "PDF metadata value from the underlying PDF file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfMetadata" ] }, "metadataName": { "type": "string", "description": "Name of the PDF metadata to extract" } } } ] }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Concat" ] }, "operands": { "type": "array", "items": "[Circular]" } }, "description": "Concat: concatenates all Expressions given in argument" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrClean" ] }, "expr": "[Circular]", "normalizeSpace": { "type": "boolean", "description": "Replaces all Unicode spaces with standard space character (\\u0020) then replace consecutive space characters by a single one." }, "removeDiacritics": { "type": "boolean", "description": "Replaces the accentuated letters with their un-accentuated version" }, "multiline": { "type": "boolean", "description": "Replaces every Unicode line terminator character to the standard linefeed character (\\u000A) and de-duplicates them. If trim is set, it applies on each line. Trim also removes blank lines." }, "trim": { "type": "boolean", "description": "Removes all the control characters at the beginning and the end of the string (Technically, removes all characters equal or below ASCII U+0020 (space character). If multiline is set, applies on all lines rather than the whole string." } }, "description": "Cleans a string" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrNormalizeCase" ] }, "expr": "[Circular]", "toUpper": { "type": "boolean", "description": "is set, the normalization will be to Upper Case, otherwise it will be to Lower Case" } }, "description": "Normalizes the case of the String" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrReplace" ] }, "expr": "[Circular]", "regExpPattern": { "type": "string", "description": "valid Regular Expression that the input string should match" }, "replacement": { "type": "string", "description": "The replacement to use for each match of the string. The replacement can contain $1, $2, ... elements that will be replaced by capturing groups of the match. '\\' is an escape character, so to have a real '$' sign in replacement, use '\\$'. Same for the escape character itself, use '\\\\'." }, "firstOnly": { "type": "boolean", "description": "If set, the match/replacement will be applied to the first match of the string only, otherwise it will apply on all matches." } }, "description": "Normalizes the case of the String" } ] } }, "description": "The content is an expression to extract the metadata value. Constraints on the content are: References are the name of the metadatas. Only the metadatas of the current box or metadatas of MAIN boxes (if the current box is not a MAIN box) are allowed. The Box configuration in Expression must match the box in which it is configured. Example: if the box is a MAIN box, fromMain must be set to true. If the box is not a MAIN box, fromMain must be set to false and boxName to the value of this box." } }, "reconcile": { "required": [ "condition" ], "type": "object", "properties": { "condition": { "discriminator": { "propertyName": "@type", "mapping": { "exb.Boolean": "#/components/schemas/BooleanExpressionConstant", "exb.AND": "#/components/schemas/BooleanExpressionAndOr", "exb.OR": "#/components/schemas/BooleanExpressionAndOr", "exb.NOT": "#/components/schemas/BooleanExpressionNot", "exb.ContentEqual": "#/components/schemas/BooleanExpressionStrEqual", "exb.LessThan": "#/components/schemas/BooleanExpressionNumeric", "exb.LessThanOrEqual": "#/components/schemas/BooleanExpressionNumeric", "exb.NumericEqual": "#/components/schemas/BooleanExpressionNumeric", "exb.StrContains": "#/components/schemas/BooleanExpressionStrEqual", "exb.StrStartsWith": "#/components/schemas/BooleanExpressionStrEqual", "exb.StrEndsWith": "#/components/schemas/BooleanExpressionStrEqual", "exb.StrMatches": "#/components/schemas/BooleanExpressionStrMatches" } }, "oneOf": [ { "allOf": [ { "required": [ "@type" ], "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.Boolean", "exb.AND", "exb.OR", "exb.NOT", "exb.ContentEqual", "exb.LessThan", "exb.LessThanOrEqual", "exb.NumericEqual", "exb.StrContains", "exb.StrStartsWith", "exb.StrEndsWith", "exb.StrMatches" ] } } }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.Boolean" ] }, "value": { "type": "boolean" } } } ] }, { "allOf": [ { "required": [ "@type" ], "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.Boolean", "exb.AND", "exb.OR", "exb.NOT", "exb.ContentEqual", "exb.LessThan", "exb.LessThanOrEqual", "exb.NumericEqual", "exb.StrContains", "exb.StrStartsWith", "exb.StrEndsWith", "exb.StrMatches" ] } } }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.AND", "exb.OR" ] }, "expr1": "[Circular]", "expr2": "[Circular]" } } ] }, { "allOf": [ { "required": [ "@type" ], "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.Boolean", "exb.AND", "exb.OR", "exb.NOT", "exb.ContentEqual", "exb.LessThan", "exb.LessThanOrEqual", "exb.NumericEqual", "exb.StrContains", "exb.StrStartsWith", "exb.StrEndsWith", "exb.StrMatches" ] } } }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.NOT" ] }, "expr": "[Circular]" } } ] }, { "allOf": [ { "allOf": [ { "required": [ "@type" ], "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.Boolean", "exb.AND", "exb.OR", "exb.NOT", "exb.ContentEqual", "exb.LessThan", "exb.LessThanOrEqual", "exb.NumericEqual", "exb.StrContains", "exb.StrStartsWith", "exb.StrEndsWith", "exb.StrMatches" ] } } }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.ContentEqual", "exb.LessThan", "exb.LessThanOrEqual", "exb.NumericEqual" ] }, "expr1": { "type": "object", "discriminator": { "propertyName": "@type", "mapping": { "exv.Value": "#/components/schemas/ExpressionConstant", "exv.FileName": "#/components/schemas/ExpressionFileName", "exv.PdfMetadata": "#/components/schemas/ExpressionPdfMetadata", "exv.PdfText": "#/components/schemas/ExpressionPdfText", "exv.Reference": "#/components/schemas/ExpressionReference", "exv.Concat": "#/components/schemas/ExpressionConcat", "exv.Substring": "#/components/schemas/ExpressionSubstring", "exv.NumSheetsValue": "#/components/schemas/ExpressionNumSheets", "exv.StrClean": "#/components/schemas/ExpressionStrClean", "exv.StrNormalizeCase": "#/components/schemas/ExpressionStrNormalizeCase", "exv.StrReplace": "#/components/schemas/ExpressionStrReplace" } }, "oneOf": [ { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Value" ] }, "value": { "type": "string" } }, "description": "Pre-defined text value" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Reference" ] }, "identifier": { "type": "string", "description": "Identifier of the element" } }, "description": "Reference another element, depends on the context" }, { "description": "Part of the name of the underlying file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.FileName" ] }, "begin": { "type": "integer", "format": "int64" }, "end": { "type": "integer", "format": "int64" } } } ] }, { "description": "Text extraction from the underlying PDF file of the box. The area parameter is where is located the text to extract", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfText" ] }, "page": { "type": "integer", "description": "Page on which to extract the text. Page -1 means last page, -2 means before last page, and so on. Page starts at 1. Page 0 is invalid and will always return \"\"." }, "area": { "type": "object", "properties": { "left": { "minimum": 0, "type": "number", "format": "float" }, "top": { "minimum": 0, "type": "number", "format": "float" }, "width": { "minimum": 0, "type": "number", "format": "float" }, "height": { "minimum": 0, "type": "number", "format": "float" } }, "description": "ZoneArea object" }, "extractionParameters": { "type": "object", "additionalProperties": { "type": "string" }, "description": "Parameters for the extraction. Depends on the library used." } } } ] }, { "description": "PDF metadata value from the underlying PDF file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfMetadata" ] }, "metadataName": { "type": "string", "description": "Name of the PDF metadata to extract" } } } ] }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Concat" ] }, "operands": { "type": "array", "items": "[Circular]" } }, "description": "Concat: concatenates all Expressions given in argument" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrClean" ] }, "expr": "[Circular]", "normalizeSpace": { "type": "boolean", "description": "Replaces all Unicode spaces with standard space character (\\u0020) then replace consecutive space characters by a single one." }, "removeDiacritics": { "type": "boolean", "description": "Replaces the accentuated letters with their un-accentuated version" }, "multiline": { "type": "boolean", "description": "Replaces every Unicode line terminator character to the standard linefeed character (\\u000A) and de-duplicates them. If trim is set, it applies on each line. Trim also removes blank lines." }, "trim": { "type": "boolean", "description": "Removes all the control characters at the beginning and the end of the string (Technically, removes all characters equal or below ASCII U+0020 (space character). If multiline is set, applies on all lines rather than the whole string." } }, "description": "Cleans a string" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrNormalizeCase" ] }, "expr": "[Circular]", "toUpper": { "type": "boolean", "description": "is set, the normalization will be to Upper Case, otherwise it will be to Lower Case" } }, "description": "Normalizes the case of the String" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrReplace" ] }, "expr": "[Circular]", "regExpPattern": { "type": "string", "description": "valid Regular Expression that the input string should match" }, "replacement": { "type": "string", "description": "The replacement to use for each match of the string. The replacement can contain $1, $2, ... elements that will be replaced by capturing groups of the match. '\\' is an escape character, so to have a real '$' sign in replacement, use '\\$'. Same for the escape character itself, use '\\\\'." }, "firstOnly": { "type": "boolean", "description": "If set, the match/replacement will be applied to the first match of the string only, otherwise it will apply on all matches." } }, "description": "Normalizes the case of the String" } ] }, "expr2": { "type": "object", "discriminator": { "propertyName": "@type", "mapping": { "exv.Value": "#/components/schemas/ExpressionConstant", "exv.FileName": "#/components/schemas/ExpressionFileName", "exv.PdfMetadata": "#/components/schemas/ExpressionPdfMetadata", "exv.PdfText": "#/components/schemas/ExpressionPdfText", "exv.Reference": "#/components/schemas/ExpressionReference", "exv.Concat": "#/components/schemas/ExpressionConcat", "exv.Substring": "#/components/schemas/ExpressionSubstring", "exv.NumSheetsValue": "#/components/schemas/ExpressionNumSheets", "exv.StrClean": "#/components/schemas/ExpressionStrClean", "exv.StrNormalizeCase": "#/components/schemas/ExpressionStrNormalizeCase", "exv.StrReplace": "#/components/schemas/ExpressionStrReplace" } }, "oneOf": [ { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Value" ] }, "value": { "type": "string" } }, "description": "Pre-defined text value" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Reference" ] }, "identifier": { "type": "string", "description": "Identifier of the element" } }, "description": "Reference another element, depends on the context" }, { "description": "Part of the name of the underlying file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.FileName" ] }, "begin": { "type": "integer", "format": "int64" }, "end": { "type": "integer", "format": "int64" } } } ] }, { "description": "Text extraction from the underlying PDF file of the box. The area parameter is where is located the text to extract", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfText" ] }, "page": { "type": "integer", "description": "Page on which to extract the text. Page -1 means last page, -2 means before last page, and so on. Page starts at 1. Page 0 is invalid and will always return \"\"." }, "area": { "type": "object", "properties": { "left": { "minimum": 0, "type": "number", "format": "float" }, "top": { "minimum": 0, "type": "number", "format": "float" }, "width": { "minimum": 0, "type": "number", "format": "float" }, "height": { "minimum": 0, "type": "number", "format": "float" } }, "description": "ZoneArea object" }, "extractionParameters": { "type": "object", "additionalProperties": { "type": "string" }, "description": "Parameters for the extraction. Depends on the library used." } } } ] }, { "description": "PDF metadata value from the underlying PDF file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfMetadata" ] }, "metadataName": { "type": "string", "description": "Name of the PDF metadata to extract" } } } ] }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Concat" ] }, "operands": { "type": "array", "items": "[Circular]" } }, "description": "Concat: concatenates all Expressions given in argument" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrClean" ] }, "expr": "[Circular]", "normalizeSpace": { "type": "boolean", "description": "Replaces all Unicode spaces with standard space character (\\u0020) then replace consecutive space characters by a single one." }, "removeDiacritics": { "type": "boolean", "description": "Replaces the accentuated letters with their un-accentuated version" }, "multiline": { "type": "boolean", "description": "Replaces every Unicode line terminator character to the standard linefeed character (\\u000A) and de-duplicates them. If trim is set, it applies on each line. Trim also removes blank lines." }, "trim": { "type": "boolean", "description": "Removes all the control characters at the beginning and the end of the string (Technically, removes all characters equal or below ASCII U+0020 (space character). If multiline is set, applies on all lines rather than the whole string." } }, "description": "Cleans a string" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrNormalizeCase" ] }, "expr": "[Circular]", "toUpper": { "type": "boolean", "description": "is set, the normalization will be to Upper Case, otherwise it will be to Lower Case" } }, "description": "Normalizes the case of the String" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrReplace" ] }, "expr": "[Circular]", "regExpPattern": { "type": "string", "description": "valid Regular Expression that the input string should match" }, "replacement": { "type": "string", "description": "The replacement to use for each match of the string. The replacement can contain $1, $2, ... elements that will be replaced by capturing groups of the match. '\\' is an escape character, so to have a real '$' sign in replacement, use '\\$'. Same for the escape character itself, use '\\\\'." }, "firstOnly": { "type": "boolean", "description": "If set, the match/replacement will be applied to the first match of the string only, otherwise it will apply on all matches." } }, "description": "Normalizes the case of the String" } ] } } } ] }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.ContentEqual", "exb.StrContains", "exb.StrStartsWith", "exb.StrEndsWith" ] } } } ] }, { "allOf": [ { "allOf": [ { "required": [ "@type" ], "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.Boolean", "exb.AND", "exb.OR", "exb.NOT", "exb.ContentEqual", "exb.LessThan", "exb.LessThanOrEqual", "exb.NumericEqual", "exb.StrContains", "exb.StrStartsWith", "exb.StrEndsWith", "exb.StrMatches" ] } } }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.ContentEqual", "exb.LessThan", "exb.LessThanOrEqual", "exb.NumericEqual" ] }, "expr1": { "type": "object", "discriminator": { "propertyName": "@type", "mapping": { "exv.Value": "#/components/schemas/ExpressionConstant", "exv.FileName": "#/components/schemas/ExpressionFileName", "exv.PdfMetadata": "#/components/schemas/ExpressionPdfMetadata", "exv.PdfText": "#/components/schemas/ExpressionPdfText", "exv.Reference": "#/components/schemas/ExpressionReference", "exv.Concat": "#/components/schemas/ExpressionConcat", "exv.Substring": "#/components/schemas/ExpressionSubstring", "exv.NumSheetsValue": "#/components/schemas/ExpressionNumSheets", "exv.StrClean": "#/components/schemas/ExpressionStrClean", "exv.StrNormalizeCase": "#/components/schemas/ExpressionStrNormalizeCase", "exv.StrReplace": "#/components/schemas/ExpressionStrReplace" } }, "oneOf": [ { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Value" ] }, "value": { "type": "string" } }, "description": "Pre-defined text value" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Reference" ] }, "identifier": { "type": "string", "description": "Identifier of the element" } }, "description": "Reference another element, depends on the context" }, { "description": "Part of the name of the underlying file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.FileName" ] }, "begin": { "type": "integer", "format": "int64" }, "end": { "type": "integer", "format": "int64" } } } ] }, { "description": "Text extraction from the underlying PDF file of the box. The area parameter is where is located the text to extract", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfText" ] }, "page": { "type": "integer", "description": "Page on which to extract the text. Page -1 means last page, -2 means before last page, and so on. Page starts at 1. Page 0 is invalid and will always return \"\"." }, "area": { "type": "object", "properties": { "left": { "minimum": 0, "type": "number", "format": "float" }, "top": { "minimum": 0, "type": "number", "format": "float" }, "width": { "minimum": 0, "type": "number", "format": "float" }, "height": { "minimum": 0, "type": "number", "format": "float" } }, "description": "ZoneArea object" }, "extractionParameters": { "type": "object", "additionalProperties": { "type": "string" }, "description": "Parameters for the extraction. Depends on the library used." } } } ] }, { "description": "PDF metadata value from the underlying PDF file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfMetadata" ] }, "metadataName": { "type": "string", "description": "Name of the PDF metadata to extract" } } } ] }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Concat" ] }, "operands": { "type": "array", "items": "[Circular]" } }, "description": "Concat: concatenates all Expressions given in argument" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrClean" ] }, "expr": "[Circular]", "normalizeSpace": { "type": "boolean", "description": "Replaces all Unicode spaces with standard space character (\\u0020) then replace consecutive space characters by a single one." }, "removeDiacritics": { "type": "boolean", "description": "Replaces the accentuated letters with their un-accentuated version" }, "multiline": { "type": "boolean", "description": "Replaces every Unicode line terminator character to the standard linefeed character (\\u000A) and de-duplicates them. If trim is set, it applies on each line. Trim also removes blank lines." }, "trim": { "type": "boolean", "description": "Removes all the control characters at the beginning and the end of the string (Technically, removes all characters equal or below ASCII U+0020 (space character). If multiline is set, applies on all lines rather than the whole string." } }, "description": "Cleans a string" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrNormalizeCase" ] }, "expr": "[Circular]", "toUpper": { "type": "boolean", "description": "is set, the normalization will be to Upper Case, otherwise it will be to Lower Case" } }, "description": "Normalizes the case of the String" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrReplace" ] }, "expr": "[Circular]", "regExpPattern": { "type": "string", "description": "valid Regular Expression that the input string should match" }, "replacement": { "type": "string", "description": "The replacement to use for each match of the string. The replacement can contain $1, $2, ... elements that will be replaced by capturing groups of the match. '\\' is an escape character, so to have a real '$' sign in replacement, use '\\$'. Same for the escape character itself, use '\\\\'." }, "firstOnly": { "type": "boolean", "description": "If set, the match/replacement will be applied to the first match of the string only, otherwise it will apply on all matches." } }, "description": "Normalizes the case of the String" } ] }, "expr2": { "type": "object", "discriminator": { "propertyName": "@type", "mapping": { "exv.Value": "#/components/schemas/ExpressionConstant", "exv.FileName": "#/components/schemas/ExpressionFileName", "exv.PdfMetadata": "#/components/schemas/ExpressionPdfMetadata", "exv.PdfText": "#/components/schemas/ExpressionPdfText", "exv.Reference": "#/components/schemas/ExpressionReference", "exv.Concat": "#/components/schemas/ExpressionConcat", "exv.Substring": "#/components/schemas/ExpressionSubstring", "exv.NumSheetsValue": "#/components/schemas/ExpressionNumSheets", "exv.StrClean": "#/components/schemas/ExpressionStrClean", "exv.StrNormalizeCase": "#/components/schemas/ExpressionStrNormalizeCase", "exv.StrReplace": "#/components/schemas/ExpressionStrReplace" } }, "oneOf": [ { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Value" ] }, "value": { "type": "string" } }, "description": "Pre-defined text value" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Reference" ] }, "identifier": { "type": "string", "description": "Identifier of the element" } }, "description": "Reference another element, depends on the context" }, { "description": "Part of the name of the underlying file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.FileName" ] }, "begin": { "type": "integer", "format": "int64" }, "end": { "type": "integer", "format": "int64" } } } ] }, { "description": "Text extraction from the underlying PDF file of the box. The area parameter is where is located the text to extract", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfText" ] }, "page": { "type": "integer", "description": "Page on which to extract the text. Page -1 means last page, -2 means before last page, and so on. Page starts at 1. Page 0 is invalid and will always return \"\"." }, "area": { "type": "object", "properties": { "left": { "minimum": 0, "type": "number", "format": "float" }, "top": { "minimum": 0, "type": "number", "format": "float" }, "width": { "minimum": 0, "type": "number", "format": "float" }, "height": { "minimum": 0, "type": "number", "format": "float" } }, "description": "ZoneArea object" }, "extractionParameters": { "type": "object", "additionalProperties": { "type": "string" }, "description": "Parameters for the extraction. Depends on the library used." } } } ] }, { "description": "PDF metadata value from the underlying PDF file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfMetadata" ] }, "metadataName": { "type": "string", "description": "Name of the PDF metadata to extract" } } } ] }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Concat" ] }, "operands": { "type": "array", "items": "[Circular]" } }, "description": "Concat: concatenates all Expressions given in argument" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrClean" ] }, "expr": "[Circular]", "normalizeSpace": { "type": "boolean", "description": "Replaces all Unicode spaces with standard space character (\\u0020) then replace consecutive space characters by a single one." }, "removeDiacritics": { "type": "boolean", "description": "Replaces the accentuated letters with their un-accentuated version" }, "multiline": { "type": "boolean", "description": "Replaces every Unicode line terminator character to the standard linefeed character (\\u000A) and de-duplicates them. If trim is set, it applies on each line. Trim also removes blank lines." }, "trim": { "type": "boolean", "description": "Removes all the control characters at the beginning and the end of the string (Technically, removes all characters equal or below ASCII U+0020 (space character). If multiline is set, applies on all lines rather than the whole string." } }, "description": "Cleans a string" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrNormalizeCase" ] }, "expr": "[Circular]", "toUpper": { "type": "boolean", "description": "is set, the normalization will be to Upper Case, otherwise it will be to Lower Case" } }, "description": "Normalizes the case of the String" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrReplace" ] }, "expr": "[Circular]", "regExpPattern": { "type": "string", "description": "valid Regular Expression that the input string should match" }, "replacement": { "type": "string", "description": "The replacement to use for each match of the string. The replacement can contain $1, $2, ... elements that will be replaced by capturing groups of the match. '\\' is an escape character, so to have a real '$' sign in replacement, use '\\$'. Same for the escape character itself, use '\\\\'." }, "firstOnly": { "type": "boolean", "description": "If set, the match/replacement will be applied to the first match of the string only, otherwise it will apply on all matches." } }, "description": "Normalizes the case of the String" } ] } } } ] }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.LessThan", "exb.LessThanOrEqual", "exb.NumericEqual" ] } } } ] }, { "allOf": [ { "required": [ "@type" ], "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.Boolean", "exb.AND", "exb.OR", "exb.NOT", "exb.ContentEqual", "exb.LessThan", "exb.LessThanOrEqual", "exb.NumericEqual", "exb.StrContains", "exb.StrStartsWith", "exb.StrEndsWith", "exb.StrMatches" ] } } }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.StrMatches" ] }, "expr": { "type": "object", "discriminator": { "propertyName": "@type", "mapping": { "exv.Value": "#/components/schemas/ExpressionConstant", "exv.FileName": "#/components/schemas/ExpressionFileName", "exv.PdfMetadata": "#/components/schemas/ExpressionPdfMetadata", "exv.PdfText": "#/components/schemas/ExpressionPdfText", "exv.Reference": "#/components/schemas/ExpressionReference", "exv.Concat": "#/components/schemas/ExpressionConcat", "exv.Substring": "#/components/schemas/ExpressionSubstring", "exv.NumSheetsValue": "#/components/schemas/ExpressionNumSheets", "exv.StrClean": "#/components/schemas/ExpressionStrClean", "exv.StrNormalizeCase": "#/components/schemas/ExpressionStrNormalizeCase", "exv.StrReplace": "#/components/schemas/ExpressionStrReplace" } }, "oneOf": [ { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Value" ] }, "value": { "type": "string" } }, "description": "Pre-defined text value" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Reference" ] }, "identifier": { "type": "string", "description": "Identifier of the element" } }, "description": "Reference another element, depends on the context" }, { "description": "Part of the name of the underlying file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.FileName" ] }, "begin": { "type": "integer", "format": "int64" }, "end": { "type": "integer", "format": "int64" } } } ] }, { "description": "Text extraction from the underlying PDF file of the box. The area parameter is where is located the text to extract", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfText" ] }, "page": { "type": "integer", "description": "Page on which to extract the text. Page -1 means last page, -2 means before last page, and so on. Page starts at 1. Page 0 is invalid and will always return \"\"." }, "area": { "type": "object", "properties": { "left": { "minimum": 0, "type": "number", "format": "float" }, "top": { "minimum": 0, "type": "number", "format": "float" }, "width": { "minimum": 0, "type": "number", "format": "float" }, "height": { "minimum": 0, "type": "number", "format": "float" } }, "description": "ZoneArea object" }, "extractionParameters": { "type": "object", "additionalProperties": { "type": "string" }, "description": "Parameters for the extraction. Depends on the library used." } } } ] }, { "description": "PDF metadata value from the underlying PDF file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfMetadata" ] }, "metadataName": { "type": "string", "description": "Name of the PDF metadata to extract" } } } ] }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Concat" ] }, "operands": { "type": "array", "items": "[Circular]" } }, "description": "Concat: concatenates all Expressions given in argument" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrClean" ] }, "expr": "[Circular]", "normalizeSpace": { "type": "boolean", "description": "Replaces all Unicode spaces with standard space character (\\u0020) then replace consecutive space characters by a single one." }, "removeDiacritics": { "type": "boolean", "description": "Replaces the accentuated letters with their un-accentuated version" }, "multiline": { "type": "boolean", "description": "Replaces every Unicode line terminator character to the standard linefeed character (\\u000A) and de-duplicates them. If trim is set, it applies on each line. Trim also removes blank lines." }, "trim": { "type": "boolean", "description": "Removes all the control characters at the beginning and the end of the string (Technically, removes all characters equal or below ASCII U+0020 (space character). If multiline is set, applies on all lines rather than the whole string." } }, "description": "Cleans a string" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrNormalizeCase" ] }, "expr": "[Circular]", "toUpper": { "type": "boolean", "description": "is set, the normalization will be to Upper Case, otherwise it will be to Lower Case" } }, "description": "Normalizes the case of the String" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrReplace" ] }, "expr": "[Circular]", "regExpPattern": { "type": "string", "description": "valid Regular Expression that the input string should match" }, "replacement": { "type": "string", "description": "The replacement to use for each match of the string. The replacement can contain $1, $2, ... elements that will be replaced by capturing groups of the match. '\\' is an escape character, so to have a real '$' sign in replacement, use '\\$'. Same for the escape character itself, use '\\\\'." }, "firstOnly": { "type": "boolean", "description": "If set, the match/replacement will be applied to the first match of the string only, otherwise it will apply on all matches." } }, "description": "Normalizes the case of the String" } ] }, "regExpPattern": { "type": "string", "description": "valid Regular Expression to check the value against" }, "matchWhole": { "type": "boolean", "description": "if set, indicates that the Regular Expression should match the whole value. If not set, the Regular Expression describe only a part of the value." } } } ] } ] }, "minExpected": { "type": "integer", "description": "default 0. Cannot be negative." }, "maxExpected": { "type": "integer", "description": "default -1. Can only be strictly positive or -1." }, "minMatches": { "type": "integer", "description": "default 0. Cannot be negative." }, "maxMatches": { "type": "integer", "description": "default 1. Can only be strictly positive or -1." } } }, "configuredFiles": { "type": "array", "items": { "type": "object", "properties": { "serviceFileId": { "type": "string", "description": "UUID of a ServiceFile (nul l when adding a new ServiceFile ; if noot null, must exist in current Service)" }, "removable": { "type": "boolean", "description": "if false this ConfiguredFile is mandatory on Job creation" } } } } } } ] }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "box.PDF" ] }, "splitConfig": { "discriminator": { "propertyName": "@type", "mapping": { "bsc.NONE": "#/components/schemas/BoxSplitConfigurationNone", "bsc.PAGE": "#/components/schemas/BoxSplitConfigurationPage", "bsc.PDF_AREA": "#/components/schemas/BoxSplitConfigurationPDFArea" } }, "oneOf": [ { "allOf": [ { "required": [ "@type", "editable" ], "type": "object", "properties": { "editable": { "type": "boolean" }, "@type": { "type": "string", "enum": [ "bsc.NONE", "bsc.PAGE", "bsc.PDF_AREA" ] } } }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "bsc.NONE" ] } } } ] }, { "allOf": [ { "required": [ "@type", "editable" ], "type": "object", "properties": { "editable": { "type": "boolean" }, "@type": { "type": "string", "enum": [ "bsc.NONE", "bsc.PAGE", "bsc.PDF_AREA" ] } } }, { "required": [ "pages" ], "type": "object", "properties": { "@type": { "type": "string", "enum": [ "bsc.PAGE" ] }, "pages": { "type": "integer" } } } ] }, { "allOf": [ { "required": [ "@type", "editable" ], "type": "object", "properties": { "editable": { "type": "boolean" }, "@type": { "type": "string", "enum": [ "bsc.NONE", "bsc.PAGE", "bsc.PDF_AREA" ] } } }, { "required": [ "area", "pages", "value" ], "type": "object", "properties": { "@type": { "type": "string", "enum": [ "bsc.PDF_AREA" ] }, "area": { "type": "object", "properties": { "left": { "minimum": 0, "type": "number", "format": "float" }, "top": { "minimum": 0, "type": "number", "format": "float" }, "width": { "minimum": 0, "type": "number", "format": "float" }, "height": { "minimum": 0, "type": "number", "format": "float" } }, "description": "ZoneArea object" }, "value": { "type": "string" }, "pages": { "type": "integer" }, "extractionParameters": { "type": "object", "additionalProperties": { "type": "string" }, "description": "Parameters for the extraction. Depends on the library used." } } } ] } ] }, "hasAddressPage": { "type": "boolean" }, "appositions": { "type": "array", "items": { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "bap.Overlay" ] }, "id": { "type": "string", "description": "Identifier of this Apposition (integer or UUID or null for creation of a new Apposition)" }, "mode": { "type": "string", "enum": [ "ADDRESSPAGE_BACK", "ADDRESSPAGE_BOTH", "ADDRESSPAGE_FRONT", "DOCUMENT_ALL_PAGES", "DOCUMENT_FIRST_PAGE", "DOCUMENT_FOLLOWING_PAGES", "DOCUMENT_BACK_SIDES", "DOCUMENT_FRONT_SIDES", "DOCUMENT_EVEN", "DOCUMENT_ODD" ] }, "background": { "type": "boolean" }, "editable": { "type": "boolean" }, "serviceFileId": { "type": "string", "description": "optional, id of the ServiceFile in the list of ServiceFiles of the Service" } } } } } } ] }, { "allOf": [ { "allOf": [ { "required": [ "@type", "maxElements", "minElements", "name" ], "type": "object", "properties": { "@type": { "type": "string", "enum": [ "box.PDF", "box.DATA_FILE", "box.ARCHIVE" ] }, "name": { "type": "string" }, "label": { "type": "string" }, "minElements": { "type": "integer" }, "maxElements": { "type": "integer" } } }, { "required": [ "configuredFiles", "main", "metadatas", "parent", "reconcile" ], "type": "object", "properties": { "main": { "type": "boolean", "description": "true if MAIN ; false if ATTACHMENT" }, "parent": { "type": "object", "properties": { "boxName": { "type": "string", "description": "Name of BoxArchive to extract files from. Must be a valid BoxArchive in current Service" }, "fileMatcher": { "discriminator": { "propertyName": "@type", "mapping": { "exb.Boolean": "#/components/schemas/BooleanExpressionConstant", "exb.AND": "#/components/schemas/BooleanExpressionAndOr", "exb.OR": "#/components/schemas/BooleanExpressionAndOr", "exb.NOT": "#/components/schemas/BooleanExpressionNot", "exb.ContentEqual": "#/components/schemas/BooleanExpressionStrEqual", "exb.LessThan": "#/components/schemas/BooleanExpressionNumeric", "exb.LessThanOrEqual": "#/components/schemas/BooleanExpressionNumeric", "exb.NumericEqual": "#/components/schemas/BooleanExpressionNumeric", "exb.StrContains": "#/components/schemas/BooleanExpressionStrEqual", "exb.StrStartsWith": "#/components/schemas/BooleanExpressionStrEqual", "exb.StrEndsWith": "#/components/schemas/BooleanExpressionStrEqual", "exb.StrMatches": "#/components/schemas/BooleanExpressionStrMatches" } }, "oneOf": [ { "allOf": [ { "required": [ "@type" ], "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.Boolean", "exb.AND", "exb.OR", "exb.NOT", "exb.ContentEqual", "exb.LessThan", "exb.LessThanOrEqual", "exb.NumericEqual", "exb.StrContains", "exb.StrStartsWith", "exb.StrEndsWith", "exb.StrMatches" ] } } }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.Boolean" ] }, "value": { "type": "boolean" } } } ] }, { "allOf": [ { "required": [ "@type" ], "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.Boolean", "exb.AND", "exb.OR", "exb.NOT", "exb.ContentEqual", "exb.LessThan", "exb.LessThanOrEqual", "exb.NumericEqual", "exb.StrContains", "exb.StrStartsWith", "exb.StrEndsWith", "exb.StrMatches" ] } } }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.AND", "exb.OR" ] }, "expr1": "[Circular]", "expr2": "[Circular]" } } ] }, { "allOf": [ { "required": [ "@type" ], "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.Boolean", "exb.AND", "exb.OR", "exb.NOT", "exb.ContentEqual", "exb.LessThan", "exb.LessThanOrEqual", "exb.NumericEqual", "exb.StrContains", "exb.StrStartsWith", "exb.StrEndsWith", "exb.StrMatches" ] } } }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.NOT" ] }, "expr": "[Circular]" } } ] }, { "allOf": [ { "allOf": [ { "required": [ "@type" ], "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.Boolean", "exb.AND", "exb.OR", "exb.NOT", "exb.ContentEqual", "exb.LessThan", "exb.LessThanOrEqual", "exb.NumericEqual", "exb.StrContains", "exb.StrStartsWith", "exb.StrEndsWith", "exb.StrMatches" ] } } }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.ContentEqual", "exb.LessThan", "exb.LessThanOrEqual", "exb.NumericEqual" ] }, "expr1": { "type": "object", "discriminator": { "propertyName": "@type", "mapping": { "exv.Value": "#/components/schemas/ExpressionConstant", "exv.FileName": "#/components/schemas/ExpressionFileName", "exv.PdfMetadata": "#/components/schemas/ExpressionPdfMetadata", "exv.PdfText": "#/components/schemas/ExpressionPdfText", "exv.Reference": "#/components/schemas/ExpressionReference", "exv.Concat": "#/components/schemas/ExpressionConcat", "exv.Substring": "#/components/schemas/ExpressionSubstring", "exv.NumSheetsValue": "#/components/schemas/ExpressionNumSheets", "exv.StrClean": "#/components/schemas/ExpressionStrClean", "exv.StrNormalizeCase": "#/components/schemas/ExpressionStrNormalizeCase", "exv.StrReplace": "#/components/schemas/ExpressionStrReplace" } }, "oneOf": [ { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Value" ] }, "value": { "type": "string" } }, "description": "Pre-defined text value" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Reference" ] }, "identifier": { "type": "string", "description": "Identifier of the element" } }, "description": "Reference another element, depends on the context" }, { "description": "Part of the name of the underlying file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.FileName" ] }, "begin": { "type": "integer", "format": "int64" }, "end": { "type": "integer", "format": "int64" } } } ] }, { "description": "Text extraction from the underlying PDF file of the box. The area parameter is where is located the text to extract", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfText" ] }, "page": { "type": "integer", "description": "Page on which to extract the text. Page -1 means last page, -2 means before last page, and so on. Page starts at 1. Page 0 is invalid and will always return \"\"." }, "area": { "type": "object", "properties": { "left": { "minimum": 0, "type": "number", "format": "float" }, "top": { "minimum": 0, "type": "number", "format": "float" }, "width": { "minimum": 0, "type": "number", "format": "float" }, "height": { "minimum": 0, "type": "number", "format": "float" } }, "description": "ZoneArea object" }, "extractionParameters": { "type": "object", "additionalProperties": { "type": "string" }, "description": "Parameters for the extraction. Depends on the library used." } } } ] }, { "description": "PDF metadata value from the underlying PDF file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfMetadata" ] }, "metadataName": { "type": "string", "description": "Name of the PDF metadata to extract" } } } ] }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Concat" ] }, "operands": { "type": "array", "items": "[Circular]" } }, "description": "Concat: concatenates all Expressions given in argument" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrClean" ] }, "expr": "[Circular]", "normalizeSpace": { "type": "boolean", "description": "Replaces all Unicode spaces with standard space character (\\u0020) then replace consecutive space characters by a single one." }, "removeDiacritics": { "type": "boolean", "description": "Replaces the accentuated letters with their un-accentuated version" }, "multiline": { "type": "boolean", "description": "Replaces every Unicode line terminator character to the standard linefeed character (\\u000A) and de-duplicates them. If trim is set, it applies on each line. Trim also removes blank lines." }, "trim": { "type": "boolean", "description": "Removes all the control characters at the beginning and the end of the string (Technically, removes all characters equal or below ASCII U+0020 (space character). If multiline is set, applies on all lines rather than the whole string." } }, "description": "Cleans a string" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrNormalizeCase" ] }, "expr": "[Circular]", "toUpper": { "type": "boolean", "description": "is set, the normalization will be to Upper Case, otherwise it will be to Lower Case" } }, "description": "Normalizes the case of the String" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrReplace" ] }, "expr": "[Circular]", "regExpPattern": { "type": "string", "description": "valid Regular Expression that the input string should match" }, "replacement": { "type": "string", "description": "The replacement to use for each match of the string. The replacement can contain $1, $2, ... elements that will be replaced by capturing groups of the match. '\\' is an escape character, so to have a real '$' sign in replacement, use '\\$'. Same for the escape character itself, use '\\\\'." }, "firstOnly": { "type": "boolean", "description": "If set, the match/replacement will be applied to the first match of the string only, otherwise it will apply on all matches." } }, "description": "Normalizes the case of the String" } ] }, "expr2": { "type": "object", "discriminator": { "propertyName": "@type", "mapping": { "exv.Value": "#/components/schemas/ExpressionConstant", "exv.FileName": "#/components/schemas/ExpressionFileName", "exv.PdfMetadata": "#/components/schemas/ExpressionPdfMetadata", "exv.PdfText": "#/components/schemas/ExpressionPdfText", "exv.Reference": "#/components/schemas/ExpressionReference", "exv.Concat": "#/components/schemas/ExpressionConcat", "exv.Substring": "#/components/schemas/ExpressionSubstring", "exv.NumSheetsValue": "#/components/schemas/ExpressionNumSheets", "exv.StrClean": "#/components/schemas/ExpressionStrClean", "exv.StrNormalizeCase": "#/components/schemas/ExpressionStrNormalizeCase", "exv.StrReplace": "#/components/schemas/ExpressionStrReplace" } }, "oneOf": [ { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Value" ] }, "value": { "type": "string" } }, "description": "Pre-defined text value" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Reference" ] }, "identifier": { "type": "string", "description": "Identifier of the element" } }, "description": "Reference another element, depends on the context" }, { "description": "Part of the name of the underlying file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.FileName" ] }, "begin": { "type": "integer", "format": "int64" }, "end": { "type": "integer", "format": "int64" } } } ] }, { "description": "Text extraction from the underlying PDF file of the box. The area parameter is where is located the text to extract", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfText" ] }, "page": { "type": "integer", "description": "Page on which to extract the text. Page -1 means last page, -2 means before last page, and so on. Page starts at 1. Page 0 is invalid and will always return \"\"." }, "area": { "type": "object", "properties": { "left": { "minimum": 0, "type": "number", "format": "float" }, "top": { "minimum": 0, "type": "number", "format": "float" }, "width": { "minimum": 0, "type": "number", "format": "float" }, "height": { "minimum": 0, "type": "number", "format": "float" } }, "description": "ZoneArea object" }, "extractionParameters": { "type": "object", "additionalProperties": { "type": "string" }, "description": "Parameters for the extraction. Depends on the library used." } } } ] }, { "description": "PDF metadata value from the underlying PDF file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfMetadata" ] }, "metadataName": { "type": "string", "description": "Name of the PDF metadata to extract" } } } ] }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Concat" ] }, "operands": { "type": "array", "items": "[Circular]" } }, "description": "Concat: concatenates all Expressions given in argument" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrClean" ] }, "expr": "[Circular]", "normalizeSpace": { "type": "boolean", "description": "Replaces all Unicode spaces with standard space character (\\u0020) then replace consecutive space characters by a single one." }, "removeDiacritics": { "type": "boolean", "description": "Replaces the accentuated letters with their un-accentuated version" }, "multiline": { "type": "boolean", "description": "Replaces every Unicode line terminator character to the standard linefeed character (\\u000A) and de-duplicates them. If trim is set, it applies on each line. Trim also removes blank lines." }, "trim": { "type": "boolean", "description": "Removes all the control characters at the beginning and the end of the string (Technically, removes all characters equal or below ASCII U+0020 (space character). If multiline is set, applies on all lines rather than the whole string." } }, "description": "Cleans a string" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrNormalizeCase" ] }, "expr": "[Circular]", "toUpper": { "type": "boolean", "description": "is set, the normalization will be to Upper Case, otherwise it will be to Lower Case" } }, "description": "Normalizes the case of the String" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrReplace" ] }, "expr": "[Circular]", "regExpPattern": { "type": "string", "description": "valid Regular Expression that the input string should match" }, "replacement": { "type": "string", "description": "The replacement to use for each match of the string. The replacement can contain $1, $2, ... elements that will be replaced by capturing groups of the match. '\\' is an escape character, so to have a real '$' sign in replacement, use '\\$'. Same for the escape character itself, use '\\\\'." }, "firstOnly": { "type": "boolean", "description": "If set, the match/replacement will be applied to the first match of the string only, otherwise it will apply on all matches." } }, "description": "Normalizes the case of the String" } ] } } } ] }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.ContentEqual", "exb.StrContains", "exb.StrStartsWith", "exb.StrEndsWith" ] } } } ] }, { "allOf": [ { "allOf": [ { "required": [ "@type" ], "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.Boolean", "exb.AND", "exb.OR", "exb.NOT", "exb.ContentEqual", "exb.LessThan", "exb.LessThanOrEqual", "exb.NumericEqual", "exb.StrContains", "exb.StrStartsWith", "exb.StrEndsWith", "exb.StrMatches" ] } } }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.ContentEqual", "exb.LessThan", "exb.LessThanOrEqual", "exb.NumericEqual" ] }, "expr1": { "type": "object", "discriminator": { "propertyName": "@type", "mapping": { "exv.Value": "#/components/schemas/ExpressionConstant", "exv.FileName": "#/components/schemas/ExpressionFileName", "exv.PdfMetadata": "#/components/schemas/ExpressionPdfMetadata", "exv.PdfText": "#/components/schemas/ExpressionPdfText", "exv.Reference": "#/components/schemas/ExpressionReference", "exv.Concat": "#/components/schemas/ExpressionConcat", "exv.Substring": "#/components/schemas/ExpressionSubstring", "exv.NumSheetsValue": "#/components/schemas/ExpressionNumSheets", "exv.StrClean": "#/components/schemas/ExpressionStrClean", "exv.StrNormalizeCase": "#/components/schemas/ExpressionStrNormalizeCase", "exv.StrReplace": "#/components/schemas/ExpressionStrReplace" } }, "oneOf": [ { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Value" ] }, "value": { "type": "string" } }, "description": "Pre-defined text value" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Reference" ] }, "identifier": { "type": "string", "description": "Identifier of the element" } }, "description": "Reference another element, depends on the context" }, { "description": "Part of the name of the underlying file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.FileName" ] }, "begin": { "type": "integer", "format": "int64" }, "end": { "type": "integer", "format": "int64" } } } ] }, { "description": "Text extraction from the underlying PDF file of the box. The area parameter is where is located the text to extract", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfText" ] }, "page": { "type": "integer", "description": "Page on which to extract the text. Page -1 means last page, -2 means before last page, and so on. Page starts at 1. Page 0 is invalid and will always return \"\"." }, "area": { "type": "object", "properties": { "left": { "minimum": 0, "type": "number", "format": "float" }, "top": { "minimum": 0, "type": "number", "format": "float" }, "width": { "minimum": 0, "type": "number", "format": "float" }, "height": { "minimum": 0, "type": "number", "format": "float" } }, "description": "ZoneArea object" }, "extractionParameters": { "type": "object", "additionalProperties": { "type": "string" }, "description": "Parameters for the extraction. Depends on the library used." } } } ] }, { "description": "PDF metadata value from the underlying PDF file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfMetadata" ] }, "metadataName": { "type": "string", "description": "Name of the PDF metadata to extract" } } } ] }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Concat" ] }, "operands": { "type": "array", "items": "[Circular]" } }, "description": "Concat: concatenates all Expressions given in argument" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrClean" ] }, "expr": "[Circular]", "normalizeSpace": { "type": "boolean", "description": "Replaces all Unicode spaces with standard space character (\\u0020) then replace consecutive space characters by a single one." }, "removeDiacritics": { "type": "boolean", "description": "Replaces the accentuated letters with their un-accentuated version" }, "multiline": { "type": "boolean", "description": "Replaces every Unicode line terminator character to the standard linefeed character (\\u000A) and de-duplicates them. If trim is set, it applies on each line. Trim also removes blank lines." }, "trim": { "type": "boolean", "description": "Removes all the control characters at the beginning and the end of the string (Technically, removes all characters equal or below ASCII U+0020 (space character). If multiline is set, applies on all lines rather than the whole string." } }, "description": "Cleans a string" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrNormalizeCase" ] }, "expr": "[Circular]", "toUpper": { "type": "boolean", "description": "is set, the normalization will be to Upper Case, otherwise it will be to Lower Case" } }, "description": "Normalizes the case of the String" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrReplace" ] }, "expr": "[Circular]", "regExpPattern": { "type": "string", "description": "valid Regular Expression that the input string should match" }, "replacement": { "type": "string", "description": "The replacement to use for each match of the string. The replacement can contain $1, $2, ... elements that will be replaced by capturing groups of the match. '\\' is an escape character, so to have a real '$' sign in replacement, use '\\$'. Same for the escape character itself, use '\\\\'." }, "firstOnly": { "type": "boolean", "description": "If set, the match/replacement will be applied to the first match of the string only, otherwise it will apply on all matches." } }, "description": "Normalizes the case of the String" } ] }, "expr2": { "type": "object", "discriminator": { "propertyName": "@type", "mapping": { "exv.Value": "#/components/schemas/ExpressionConstant", "exv.FileName": "#/components/schemas/ExpressionFileName", "exv.PdfMetadata": "#/components/schemas/ExpressionPdfMetadata", "exv.PdfText": "#/components/schemas/ExpressionPdfText", "exv.Reference": "#/components/schemas/ExpressionReference", "exv.Concat": "#/components/schemas/ExpressionConcat", "exv.Substring": "#/components/schemas/ExpressionSubstring", "exv.NumSheetsValue": "#/components/schemas/ExpressionNumSheets", "exv.StrClean": "#/components/schemas/ExpressionStrClean", "exv.StrNormalizeCase": "#/components/schemas/ExpressionStrNormalizeCase", "exv.StrReplace": "#/components/schemas/ExpressionStrReplace" } }, "oneOf": [ { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Value" ] }, "value": { "type": "string" } }, "description": "Pre-defined text value" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Reference" ] }, "identifier": { "type": "string", "description": "Identifier of the element" } }, "description": "Reference another element, depends on the context" }, { "description": "Part of the name of the underlying file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.FileName" ] }, "begin": { "type": "integer", "format": "int64" }, "end": { "type": "integer", "format": "int64" } } } ] }, { "description": "Text extraction from the underlying PDF file of the box. The area parameter is where is located the text to extract", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfText" ] }, "page": { "type": "integer", "description": "Page on which to extract the text. Page -1 means last page, -2 means before last page, and so on. Page starts at 1. Page 0 is invalid and will always return \"\"." }, "area": { "type": "object", "properties": { "left": { "minimum": 0, "type": "number", "format": "float" }, "top": { "minimum": 0, "type": "number", "format": "float" }, "width": { "minimum": 0, "type": "number", "format": "float" }, "height": { "minimum": 0, "type": "number", "format": "float" } }, "description": "ZoneArea object" }, "extractionParameters": { "type": "object", "additionalProperties": { "type": "string" }, "description": "Parameters for the extraction. Depends on the library used." } } } ] }, { "description": "PDF metadata value from the underlying PDF file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfMetadata" ] }, "metadataName": { "type": "string", "description": "Name of the PDF metadata to extract" } } } ] }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Concat" ] }, "operands": { "type": "array", "items": "[Circular]" } }, "description": "Concat: concatenates all Expressions given in argument" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrClean" ] }, "expr": "[Circular]", "normalizeSpace": { "type": "boolean", "description": "Replaces all Unicode spaces with standard space character (\\u0020) then replace consecutive space characters by a single one." }, "removeDiacritics": { "type": "boolean", "description": "Replaces the accentuated letters with their un-accentuated version" }, "multiline": { "type": "boolean", "description": "Replaces every Unicode line terminator character to the standard linefeed character (\\u000A) and de-duplicates them. If trim is set, it applies on each line. Trim also removes blank lines." }, "trim": { "type": "boolean", "description": "Removes all the control characters at the beginning and the end of the string (Technically, removes all characters equal or below ASCII U+0020 (space character). If multiline is set, applies on all lines rather than the whole string." } }, "description": "Cleans a string" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrNormalizeCase" ] }, "expr": "[Circular]", "toUpper": { "type": "boolean", "description": "is set, the normalization will be to Upper Case, otherwise it will be to Lower Case" } }, "description": "Normalizes the case of the String" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrReplace" ] }, "expr": "[Circular]", "regExpPattern": { "type": "string", "description": "valid Regular Expression that the input string should match" }, "replacement": { "type": "string", "description": "The replacement to use for each match of the string. The replacement can contain $1, $2, ... elements that will be replaced by capturing groups of the match. '\\' is an escape character, so to have a real '$' sign in replacement, use '\\$'. Same for the escape character itself, use '\\\\'." }, "firstOnly": { "type": "boolean", "description": "If set, the match/replacement will be applied to the first match of the string only, otherwise it will apply on all matches." } }, "description": "Normalizes the case of the String" } ] } } } ] }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.LessThan", "exb.LessThanOrEqual", "exb.NumericEqual" ] } } } ] }, { "allOf": [ { "required": [ "@type" ], "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.Boolean", "exb.AND", "exb.OR", "exb.NOT", "exb.ContentEqual", "exb.LessThan", "exb.LessThanOrEqual", "exb.NumericEqual", "exb.StrContains", "exb.StrStartsWith", "exb.StrEndsWith", "exb.StrMatches" ] } } }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.StrMatches" ] }, "expr": { "type": "object", "discriminator": { "propertyName": "@type", "mapping": { "exv.Value": "#/components/schemas/ExpressionConstant", "exv.FileName": "#/components/schemas/ExpressionFileName", "exv.PdfMetadata": "#/components/schemas/ExpressionPdfMetadata", "exv.PdfText": "#/components/schemas/ExpressionPdfText", "exv.Reference": "#/components/schemas/ExpressionReference", "exv.Concat": "#/components/schemas/ExpressionConcat", "exv.Substring": "#/components/schemas/ExpressionSubstring", "exv.NumSheetsValue": "#/components/schemas/ExpressionNumSheets", "exv.StrClean": "#/components/schemas/ExpressionStrClean", "exv.StrNormalizeCase": "#/components/schemas/ExpressionStrNormalizeCase", "exv.StrReplace": "#/components/schemas/ExpressionStrReplace" } }, "oneOf": [ { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Value" ] }, "value": { "type": "string" } }, "description": "Pre-defined text value" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Reference" ] }, "identifier": { "type": "string", "description": "Identifier of the element" } }, "description": "Reference another element, depends on the context" }, { "description": "Part of the name of the underlying file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.FileName" ] }, "begin": { "type": "integer", "format": "int64" }, "end": { "type": "integer", "format": "int64" } } } ] }, { "description": "Text extraction from the underlying PDF file of the box. The area parameter is where is located the text to extract", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfText" ] }, "page": { "type": "integer", "description": "Page on which to extract the text. Page -1 means last page, -2 means before last page, and so on. Page starts at 1. Page 0 is invalid and will always return \"\"." }, "area": { "type": "object", "properties": { "left": { "minimum": 0, "type": "number", "format": "float" }, "top": { "minimum": 0, "type": "number", "format": "float" }, "width": { "minimum": 0, "type": "number", "format": "float" }, "height": { "minimum": 0, "type": "number", "format": "float" } }, "description": "ZoneArea object" }, "extractionParameters": { "type": "object", "additionalProperties": { "type": "string" }, "description": "Parameters for the extraction. Depends on the library used." } } } ] }, { "description": "PDF metadata value from the underlying PDF file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfMetadata" ] }, "metadataName": { "type": "string", "description": "Name of the PDF metadata to extract" } } } ] }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Concat" ] }, "operands": { "type": "array", "items": "[Circular]" } }, "description": "Concat: concatenates all Expressions given in argument" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrClean" ] }, "expr": "[Circular]", "normalizeSpace": { "type": "boolean", "description": "Replaces all Unicode spaces with standard space character (\\u0020) then replace consecutive space characters by a single one." }, "removeDiacritics": { "type": "boolean", "description": "Replaces the accentuated letters with their un-accentuated version" }, "multiline": { "type": "boolean", "description": "Replaces every Unicode line terminator character to the standard linefeed character (\\u000A) and de-duplicates them. If trim is set, it applies on each line. Trim also removes blank lines." }, "trim": { "type": "boolean", "description": "Removes all the control characters at the beginning and the end of the string (Technically, removes all characters equal or below ASCII U+0020 (space character). If multiline is set, applies on all lines rather than the whole string." } }, "description": "Cleans a string" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrNormalizeCase" ] }, "expr": "[Circular]", "toUpper": { "type": "boolean", "description": "is set, the normalization will be to Upper Case, otherwise it will be to Lower Case" } }, "description": "Normalizes the case of the String" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrReplace" ] }, "expr": "[Circular]", "regExpPattern": { "type": "string", "description": "valid Regular Expression that the input string should match" }, "replacement": { "type": "string", "description": "The replacement to use for each match of the string. The replacement can contain $1, $2, ... elements that will be replaced by capturing groups of the match. '\\' is an escape character, so to have a real '$' sign in replacement, use '\\$'. Same for the escape character itself, use '\\\\'." }, "firstOnly": { "type": "boolean", "description": "If set, the match/replacement will be applied to the first match of the string only, otherwise it will apply on all matches." } }, "description": "Normalizes the case of the String" } ] }, "regExpPattern": { "type": "string", "description": "valid Regular Expression to check the value against" }, "matchWhole": { "type": "boolean", "description": "if set, indicates that the Regular Expression should match the whole value. If not set, the Regular Expression describe only a part of the value." } } } ] } ] }, "rank": { "type": "integer", "description": "Used to sort multiple 'fileMatcher' expressions extracting from the same BoxArchive (extractor process will ty to match rank 1, then rank 2 ...)" } }, "description": "Allow an AbstractInflatedBox (Doc or DataFile) to retrieve its files from a BoxArchive (Zip) ; 'fileMatcher' boolean expression can use ArchiveFileRelativePathnameValue \"exv.ArchiveFileRelativePathname\" to match a file from its relative pathname in Zip" }, "metadatas": { "type": "array", "items": { "type": "object", "properties": { "name": { "type": "string" }, "persist": { "type": "boolean" }, "editable": { "type": "boolean" }, "content": { "type": "object", "discriminator": { "propertyName": "@type", "mapping": { "exv.Value": "#/components/schemas/ExpressionConstant", "exv.FileName": "#/components/schemas/ExpressionFileName", "exv.PdfMetadata": "#/components/schemas/ExpressionPdfMetadata", "exv.PdfText": "#/components/schemas/ExpressionPdfText", "exv.Reference": "#/components/schemas/ExpressionReference", "exv.Concat": "#/components/schemas/ExpressionConcat", "exv.Substring": "#/components/schemas/ExpressionSubstring", "exv.NumSheetsValue": "#/components/schemas/ExpressionNumSheets", "exv.StrClean": "#/components/schemas/ExpressionStrClean", "exv.StrNormalizeCase": "#/components/schemas/ExpressionStrNormalizeCase", "exv.StrReplace": "#/components/schemas/ExpressionStrReplace" } }, "oneOf": [ { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Value" ] }, "value": { "type": "string" } }, "description": "Pre-defined text value" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Reference" ] }, "identifier": { "type": "string", "description": "Identifier of the element" } }, "description": "Reference another element, depends on the context" }, { "description": "Part of the name of the underlying file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.FileName" ] }, "begin": { "type": "integer", "format": "int64" }, "end": { "type": "integer", "format": "int64" } } } ] }, { "description": "Text extraction from the underlying PDF file of the box. The area parameter is where is located the text to extract", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfText" ] }, "page": { "type": "integer", "description": "Page on which to extract the text. Page -1 means last page, -2 means before last page, and so on. Page starts at 1. Page 0 is invalid and will always return \"\"." }, "area": { "type": "object", "properties": { "left": { "minimum": 0, "type": "number", "format": "float" }, "top": { "minimum": 0, "type": "number", "format": "float" }, "width": { "minimum": 0, "type": "number", "format": "float" }, "height": { "minimum": 0, "type": "number", "format": "float" } }, "description": "ZoneArea object" }, "extractionParameters": { "type": "object", "additionalProperties": { "type": "string" }, "description": "Parameters for the extraction. Depends on the library used." } } } ] }, { "description": "PDF metadata value from the underlying PDF file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfMetadata" ] }, "metadataName": { "type": "string", "description": "Name of the PDF metadata to extract" } } } ] }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Concat" ] }, "operands": { "type": "array", "items": "[Circular]" } }, "description": "Concat: concatenates all Expressions given in argument" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrClean" ] }, "expr": "[Circular]", "normalizeSpace": { "type": "boolean", "description": "Replaces all Unicode spaces with standard space character (\\u0020) then replace consecutive space characters by a single one." }, "removeDiacritics": { "type": "boolean", "description": "Replaces the accentuated letters with their un-accentuated version" }, "multiline": { "type": "boolean", "description": "Replaces every Unicode line terminator character to the standard linefeed character (\\u000A) and de-duplicates them. If trim is set, it applies on each line. Trim also removes blank lines." }, "trim": { "type": "boolean", "description": "Removes all the control characters at the beginning and the end of the string (Technically, removes all characters equal or below ASCII U+0020 (space character). If multiline is set, applies on all lines rather than the whole string." } }, "description": "Cleans a string" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrNormalizeCase" ] }, "expr": "[Circular]", "toUpper": { "type": "boolean", "description": "is set, the normalization will be to Upper Case, otherwise it will be to Lower Case" } }, "description": "Normalizes the case of the String" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrReplace" ] }, "expr": "[Circular]", "regExpPattern": { "type": "string", "description": "valid Regular Expression that the input string should match" }, "replacement": { "type": "string", "description": "The replacement to use for each match of the string. The replacement can contain $1, $2, ... elements that will be replaced by capturing groups of the match. '\\' is an escape character, so to have a real '$' sign in replacement, use '\\$'. Same for the escape character itself, use '\\\\'." }, "firstOnly": { "type": "boolean", "description": "If set, the match/replacement will be applied to the first match of the string only, otherwise it will apply on all matches." } }, "description": "Normalizes the case of the String" } ] } }, "description": "The content is an expression to extract the metadata value. Constraints on the content are: References are the name of the metadatas. Only the metadatas of the current box or metadatas of MAIN boxes (if the current box is not a MAIN box) are allowed. The Box configuration in Expression must match the box in which it is configured. Example: if the box is a MAIN box, fromMain must be set to true. If the box is not a MAIN box, fromMain must be set to false and boxName to the value of this box." } }, "reconcile": { "required": [ "condition" ], "type": "object", "properties": { "condition": { "discriminator": { "propertyName": "@type", "mapping": { "exb.Boolean": "#/components/schemas/BooleanExpressionConstant", "exb.AND": "#/components/schemas/BooleanExpressionAndOr", "exb.OR": "#/components/schemas/BooleanExpressionAndOr", "exb.NOT": "#/components/schemas/BooleanExpressionNot", "exb.ContentEqual": "#/components/schemas/BooleanExpressionStrEqual", "exb.LessThan": "#/components/schemas/BooleanExpressionNumeric", "exb.LessThanOrEqual": "#/components/schemas/BooleanExpressionNumeric", "exb.NumericEqual": "#/components/schemas/BooleanExpressionNumeric", "exb.StrContains": "#/components/schemas/BooleanExpressionStrEqual", "exb.StrStartsWith": "#/components/schemas/BooleanExpressionStrEqual", "exb.StrEndsWith": "#/components/schemas/BooleanExpressionStrEqual", "exb.StrMatches": "#/components/schemas/BooleanExpressionStrMatches" } }, "oneOf": [ { "allOf": [ { "required": [ "@type" ], "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.Boolean", "exb.AND", "exb.OR", "exb.NOT", "exb.ContentEqual", "exb.LessThan", "exb.LessThanOrEqual", "exb.NumericEqual", "exb.StrContains", "exb.StrStartsWith", "exb.StrEndsWith", "exb.StrMatches" ] } } }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.Boolean" ] }, "value": { "type": "boolean" } } } ] }, { "allOf": [ { "required": [ "@type" ], "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.Boolean", "exb.AND", "exb.OR", "exb.NOT", "exb.ContentEqual", "exb.LessThan", "exb.LessThanOrEqual", "exb.NumericEqual", "exb.StrContains", "exb.StrStartsWith", "exb.StrEndsWith", "exb.StrMatches" ] } } }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.AND", "exb.OR" ] }, "expr1": "[Circular]", "expr2": "[Circular]" } } ] }, { "allOf": [ { "required": [ "@type" ], "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.Boolean", "exb.AND", "exb.OR", "exb.NOT", "exb.ContentEqual", "exb.LessThan", "exb.LessThanOrEqual", "exb.NumericEqual", "exb.StrContains", "exb.StrStartsWith", "exb.StrEndsWith", "exb.StrMatches" ] } } }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.NOT" ] }, "expr": "[Circular]" } } ] }, { "allOf": [ { "allOf": [ { "required": [ "@type" ], "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.Boolean", "exb.AND", "exb.OR", "exb.NOT", "exb.ContentEqual", "exb.LessThan", "exb.LessThanOrEqual", "exb.NumericEqual", "exb.StrContains", "exb.StrStartsWith", "exb.StrEndsWith", "exb.StrMatches" ] } } }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.ContentEqual", "exb.LessThan", "exb.LessThanOrEqual", "exb.NumericEqual" ] }, "expr1": { "type": "object", "discriminator": { "propertyName": "@type", "mapping": { "exv.Value": "#/components/schemas/ExpressionConstant", "exv.FileName": "#/components/schemas/ExpressionFileName", "exv.PdfMetadata": "#/components/schemas/ExpressionPdfMetadata", "exv.PdfText": "#/components/schemas/ExpressionPdfText", "exv.Reference": "#/components/schemas/ExpressionReference", "exv.Concat": "#/components/schemas/ExpressionConcat", "exv.Substring": "#/components/schemas/ExpressionSubstring", "exv.NumSheetsValue": "#/components/schemas/ExpressionNumSheets", "exv.StrClean": "#/components/schemas/ExpressionStrClean", "exv.StrNormalizeCase": "#/components/schemas/ExpressionStrNormalizeCase", "exv.StrReplace": "#/components/schemas/ExpressionStrReplace" } }, "oneOf": [ { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Value" ] }, "value": { "type": "string" } }, "description": "Pre-defined text value" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Reference" ] }, "identifier": { "type": "string", "description": "Identifier of the element" } }, "description": "Reference another element, depends on the context" }, { "description": "Part of the name of the underlying file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.FileName" ] }, "begin": { "type": "integer", "format": "int64" }, "end": { "type": "integer", "format": "int64" } } } ] }, { "description": "Text extraction from the underlying PDF file of the box. The area parameter is where is located the text to extract", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfText" ] }, "page": { "type": "integer", "description": "Page on which to extract the text. Page -1 means last page, -2 means before last page, and so on. Page starts at 1. Page 0 is invalid and will always return \"\"." }, "area": { "type": "object", "properties": { "left": { "minimum": 0, "type": "number", "format": "float" }, "top": { "minimum": 0, "type": "number", "format": "float" }, "width": { "minimum": 0, "type": "number", "format": "float" }, "height": { "minimum": 0, "type": "number", "format": "float" } }, "description": "ZoneArea object" }, "extractionParameters": { "type": "object", "additionalProperties": { "type": "string" }, "description": "Parameters for the extraction. Depends on the library used." } } } ] }, { "description": "PDF metadata value from the underlying PDF file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfMetadata" ] }, "metadataName": { "type": "string", "description": "Name of the PDF metadata to extract" } } } ] }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Concat" ] }, "operands": { "type": "array", "items": "[Circular]" } }, "description": "Concat: concatenates all Expressions given in argument" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrClean" ] }, "expr": "[Circular]", "normalizeSpace": { "type": "boolean", "description": "Replaces all Unicode spaces with standard space character (\\u0020) then replace consecutive space characters by a single one." }, "removeDiacritics": { "type": "boolean", "description": "Replaces the accentuated letters with their un-accentuated version" }, "multiline": { "type": "boolean", "description": "Replaces every Unicode line terminator character to the standard linefeed character (\\u000A) and de-duplicates them. If trim is set, it applies on each line. Trim also removes blank lines." }, "trim": { "type": "boolean", "description": "Removes all the control characters at the beginning and the end of the string (Technically, removes all characters equal or below ASCII U+0020 (space character). If multiline is set, applies on all lines rather than the whole string." } }, "description": "Cleans a string" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrNormalizeCase" ] }, "expr": "[Circular]", "toUpper": { "type": "boolean", "description": "is set, the normalization will be to Upper Case, otherwise it will be to Lower Case" } }, "description": "Normalizes the case of the String" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrReplace" ] }, "expr": "[Circular]", "regExpPattern": { "type": "string", "description": "valid Regular Expression that the input string should match" }, "replacement": { "type": "string", "description": "The replacement to use for each match of the string. The replacement can contain $1, $2, ... elements that will be replaced by capturing groups of the match. '\\' is an escape character, so to have a real '$' sign in replacement, use '\\$'. Same for the escape character itself, use '\\\\'." }, "firstOnly": { "type": "boolean", "description": "If set, the match/replacement will be applied to the first match of the string only, otherwise it will apply on all matches." } }, "description": "Normalizes the case of the String" } ] }, "expr2": { "type": "object", "discriminator": { "propertyName": "@type", "mapping": { "exv.Value": "#/components/schemas/ExpressionConstant", "exv.FileName": "#/components/schemas/ExpressionFileName", "exv.PdfMetadata": "#/components/schemas/ExpressionPdfMetadata", "exv.PdfText": "#/components/schemas/ExpressionPdfText", "exv.Reference": "#/components/schemas/ExpressionReference", "exv.Concat": "#/components/schemas/ExpressionConcat", "exv.Substring": "#/components/schemas/ExpressionSubstring", "exv.NumSheetsValue": "#/components/schemas/ExpressionNumSheets", "exv.StrClean": "#/components/schemas/ExpressionStrClean", "exv.StrNormalizeCase": "#/components/schemas/ExpressionStrNormalizeCase", "exv.StrReplace": "#/components/schemas/ExpressionStrReplace" } }, "oneOf": [ { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Value" ] }, "value": { "type": "string" } }, "description": "Pre-defined text value" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Reference" ] }, "identifier": { "type": "string", "description": "Identifier of the element" } }, "description": "Reference another element, depends on the context" }, { "description": "Part of the name of the underlying file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.FileName" ] }, "begin": { "type": "integer", "format": "int64" }, "end": { "type": "integer", "format": "int64" } } } ] }, { "description": "Text extraction from the underlying PDF file of the box. The area parameter is where is located the text to extract", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfText" ] }, "page": { "type": "integer", "description": "Page on which to extract the text. Page -1 means last page, -2 means before last page, and so on. Page starts at 1. Page 0 is invalid and will always return \"\"." }, "area": { "type": "object", "properties": { "left": { "minimum": 0, "type": "number", "format": "float" }, "top": { "minimum": 0, "type": "number", "format": "float" }, "width": { "minimum": 0, "type": "number", "format": "float" }, "height": { "minimum": 0, "type": "number", "format": "float" } }, "description": "ZoneArea object" }, "extractionParameters": { "type": "object", "additionalProperties": { "type": "string" }, "description": "Parameters for the extraction. Depends on the library used." } } } ] }, { "description": "PDF metadata value from the underlying PDF file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfMetadata" ] }, "metadataName": { "type": "string", "description": "Name of the PDF metadata to extract" } } } ] }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Concat" ] }, "operands": { "type": "array", "items": "[Circular]" } }, "description": "Concat: concatenates all Expressions given in argument" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrClean" ] }, "expr": "[Circular]", "normalizeSpace": { "type": "boolean", "description": "Replaces all Unicode spaces with standard space character (\\u0020) then replace consecutive space characters by a single one." }, "removeDiacritics": { "type": "boolean", "description": "Replaces the accentuated letters with their un-accentuated version" }, "multiline": { "type": "boolean", "description": "Replaces every Unicode line terminator character to the standard linefeed character (\\u000A) and de-duplicates them. If trim is set, it applies on each line. Trim also removes blank lines." }, "trim": { "type": "boolean", "description": "Removes all the control characters at the beginning and the end of the string (Technically, removes all characters equal or below ASCII U+0020 (space character). If multiline is set, applies on all lines rather than the whole string." } }, "description": "Cleans a string" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrNormalizeCase" ] }, "expr": "[Circular]", "toUpper": { "type": "boolean", "description": "is set, the normalization will be to Upper Case, otherwise it will be to Lower Case" } }, "description": "Normalizes the case of the String" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrReplace" ] }, "expr": "[Circular]", "regExpPattern": { "type": "string", "description": "valid Regular Expression that the input string should match" }, "replacement": { "type": "string", "description": "The replacement to use for each match of the string. The replacement can contain $1, $2, ... elements that will be replaced by capturing groups of the match. '\\' is an escape character, so to have a real '$' sign in replacement, use '\\$'. Same for the escape character itself, use '\\\\'." }, "firstOnly": { "type": "boolean", "description": "If set, the match/replacement will be applied to the first match of the string only, otherwise it will apply on all matches." } }, "description": "Normalizes the case of the String" } ] } } } ] }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.ContentEqual", "exb.StrContains", "exb.StrStartsWith", "exb.StrEndsWith" ] } } } ] }, { "allOf": [ { "allOf": [ { "required": [ "@type" ], "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.Boolean", "exb.AND", "exb.OR", "exb.NOT", "exb.ContentEqual", "exb.LessThan", "exb.LessThanOrEqual", "exb.NumericEqual", "exb.StrContains", "exb.StrStartsWith", "exb.StrEndsWith", "exb.StrMatches" ] } } }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.ContentEqual", "exb.LessThan", "exb.LessThanOrEqual", "exb.NumericEqual" ] }, "expr1": { "type": "object", "discriminator": { "propertyName": "@type", "mapping": { "exv.Value": "#/components/schemas/ExpressionConstant", "exv.FileName": "#/components/schemas/ExpressionFileName", "exv.PdfMetadata": "#/components/schemas/ExpressionPdfMetadata", "exv.PdfText": "#/components/schemas/ExpressionPdfText", "exv.Reference": "#/components/schemas/ExpressionReference", "exv.Concat": "#/components/schemas/ExpressionConcat", "exv.Substring": "#/components/schemas/ExpressionSubstring", "exv.NumSheetsValue": "#/components/schemas/ExpressionNumSheets", "exv.StrClean": "#/components/schemas/ExpressionStrClean", "exv.StrNormalizeCase": "#/components/schemas/ExpressionStrNormalizeCase", "exv.StrReplace": "#/components/schemas/ExpressionStrReplace" } }, "oneOf": [ { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Value" ] }, "value": { "type": "string" } }, "description": "Pre-defined text value" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Reference" ] }, "identifier": { "type": "string", "description": "Identifier of the element" } }, "description": "Reference another element, depends on the context" }, { "description": "Part of the name of the underlying file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.FileName" ] }, "begin": { "type": "integer", "format": "int64" }, "end": { "type": "integer", "format": "int64" } } } ] }, { "description": "Text extraction from the underlying PDF file of the box. The area parameter is where is located the text to extract", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfText" ] }, "page": { "type": "integer", "description": "Page on which to extract the text. Page -1 means last page, -2 means before last page, and so on. Page starts at 1. Page 0 is invalid and will always return \"\"." }, "area": { "type": "object", "properties": { "left": { "minimum": 0, "type": "number", "format": "float" }, "top": { "minimum": 0, "type": "number", "format": "float" }, "width": { "minimum": 0, "type": "number", "format": "float" }, "height": { "minimum": 0, "type": "number", "format": "float" } }, "description": "ZoneArea object" }, "extractionParameters": { "type": "object", "additionalProperties": { "type": "string" }, "description": "Parameters for the extraction. Depends on the library used." } } } ] }, { "description": "PDF metadata value from the underlying PDF file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfMetadata" ] }, "metadataName": { "type": "string", "description": "Name of the PDF metadata to extract" } } } ] }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Concat" ] }, "operands": { "type": "array", "items": "[Circular]" } }, "description": "Concat: concatenates all Expressions given in argument" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrClean" ] }, "expr": "[Circular]", "normalizeSpace": { "type": "boolean", "description": "Replaces all Unicode spaces with standard space character (\\u0020) then replace consecutive space characters by a single one." }, "removeDiacritics": { "type": "boolean", "description": "Replaces the accentuated letters with their un-accentuated version" }, "multiline": { "type": "boolean", "description": "Replaces every Unicode line terminator character to the standard linefeed character (\\u000A) and de-duplicates them. If trim is set, it applies on each line. Trim also removes blank lines." }, "trim": { "type": "boolean", "description": "Removes all the control characters at the beginning and the end of the string (Technically, removes all characters equal or below ASCII U+0020 (space character). If multiline is set, applies on all lines rather than the whole string." } }, "description": "Cleans a string" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrNormalizeCase" ] }, "expr": "[Circular]", "toUpper": { "type": "boolean", "description": "is set, the normalization will be to Upper Case, otherwise it will be to Lower Case" } }, "description": "Normalizes the case of the String" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrReplace" ] }, "expr": "[Circular]", "regExpPattern": { "type": "string", "description": "valid Regular Expression that the input string should match" }, "replacement": { "type": "string", "description": "The replacement to use for each match of the string. The replacement can contain $1, $2, ... elements that will be replaced by capturing groups of the match. '\\' is an escape character, so to have a real '$' sign in replacement, use '\\$'. Same for the escape character itself, use '\\\\'." }, "firstOnly": { "type": "boolean", "description": "If set, the match/replacement will be applied to the first match of the string only, otherwise it will apply on all matches." } }, "description": "Normalizes the case of the String" } ] }, "expr2": { "type": "object", "discriminator": { "propertyName": "@type", "mapping": { "exv.Value": "#/components/schemas/ExpressionConstant", "exv.FileName": "#/components/schemas/ExpressionFileName", "exv.PdfMetadata": "#/components/schemas/ExpressionPdfMetadata", "exv.PdfText": "#/components/schemas/ExpressionPdfText", "exv.Reference": "#/components/schemas/ExpressionReference", "exv.Concat": "#/components/schemas/ExpressionConcat", "exv.Substring": "#/components/schemas/ExpressionSubstring", "exv.NumSheetsValue": "#/components/schemas/ExpressionNumSheets", "exv.StrClean": "#/components/schemas/ExpressionStrClean", "exv.StrNormalizeCase": "#/components/schemas/ExpressionStrNormalizeCase", "exv.StrReplace": "#/components/schemas/ExpressionStrReplace" } }, "oneOf": [ { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Value" ] }, "value": { "type": "string" } }, "description": "Pre-defined text value" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Reference" ] }, "identifier": { "type": "string", "description": "Identifier of the element" } }, "description": "Reference another element, depends on the context" }, { "description": "Part of the name of the underlying file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.FileName" ] }, "begin": { "type": "integer", "format": "int64" }, "end": { "type": "integer", "format": "int64" } } } ] }, { "description": "Text extraction from the underlying PDF file of the box. The area parameter is where is located the text to extract", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfText" ] }, "page": { "type": "integer", "description": "Page on which to extract the text. Page -1 means last page, -2 means before last page, and so on. Page starts at 1. Page 0 is invalid and will always return \"\"." }, "area": { "type": "object", "properties": { "left": { "minimum": 0, "type": "number", "format": "float" }, "top": { "minimum": 0, "type": "number", "format": "float" }, "width": { "minimum": 0, "type": "number", "format": "float" }, "height": { "minimum": 0, "type": "number", "format": "float" } }, "description": "ZoneArea object" }, "extractionParameters": { "type": "object", "additionalProperties": { "type": "string" }, "description": "Parameters for the extraction. Depends on the library used." } } } ] }, { "description": "PDF metadata value from the underlying PDF file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfMetadata" ] }, "metadataName": { "type": "string", "description": "Name of the PDF metadata to extract" } } } ] }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Concat" ] }, "operands": { "type": "array", "items": "[Circular]" } }, "description": "Concat: concatenates all Expressions given in argument" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrClean" ] }, "expr": "[Circular]", "normalizeSpace": { "type": "boolean", "description": "Replaces all Unicode spaces with standard space character (\\u0020) then replace consecutive space characters by a single one." }, "removeDiacritics": { "type": "boolean", "description": "Replaces the accentuated letters with their un-accentuated version" }, "multiline": { "type": "boolean", "description": "Replaces every Unicode line terminator character to the standard linefeed character (\\u000A) and de-duplicates them. If trim is set, it applies on each line. Trim also removes blank lines." }, "trim": { "type": "boolean", "description": "Removes all the control characters at the beginning and the end of the string (Technically, removes all characters equal or below ASCII U+0020 (space character). If multiline is set, applies on all lines rather than the whole string." } }, "description": "Cleans a string" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrNormalizeCase" ] }, "expr": "[Circular]", "toUpper": { "type": "boolean", "description": "is set, the normalization will be to Upper Case, otherwise it will be to Lower Case" } }, "description": "Normalizes the case of the String" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrReplace" ] }, "expr": "[Circular]", "regExpPattern": { "type": "string", "description": "valid Regular Expression that the input string should match" }, "replacement": { "type": "string", "description": "The replacement to use for each match of the string. The replacement can contain $1, $2, ... elements that will be replaced by capturing groups of the match. '\\' is an escape character, so to have a real '$' sign in replacement, use '\\$'. Same for the escape character itself, use '\\\\'." }, "firstOnly": { "type": "boolean", "description": "If set, the match/replacement will be applied to the first match of the string only, otherwise it will apply on all matches." } }, "description": "Normalizes the case of the String" } ] } } } ] }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.LessThan", "exb.LessThanOrEqual", "exb.NumericEqual" ] } } } ] }, { "allOf": [ { "required": [ "@type" ], "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.Boolean", "exb.AND", "exb.OR", "exb.NOT", "exb.ContentEqual", "exb.LessThan", "exb.LessThanOrEqual", "exb.NumericEqual", "exb.StrContains", "exb.StrStartsWith", "exb.StrEndsWith", "exb.StrMatches" ] } } }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.StrMatches" ] }, "expr": { "type": "object", "discriminator": { "propertyName": "@type", "mapping": { "exv.Value": "#/components/schemas/ExpressionConstant", "exv.FileName": "#/components/schemas/ExpressionFileName", "exv.PdfMetadata": "#/components/schemas/ExpressionPdfMetadata", "exv.PdfText": "#/components/schemas/ExpressionPdfText", "exv.Reference": "#/components/schemas/ExpressionReference", "exv.Concat": "#/components/schemas/ExpressionConcat", "exv.Substring": "#/components/schemas/ExpressionSubstring", "exv.NumSheetsValue": "#/components/schemas/ExpressionNumSheets", "exv.StrClean": "#/components/schemas/ExpressionStrClean", "exv.StrNormalizeCase": "#/components/schemas/ExpressionStrNormalizeCase", "exv.StrReplace": "#/components/schemas/ExpressionStrReplace" } }, "oneOf": [ { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Value" ] }, "value": { "type": "string" } }, "description": "Pre-defined text value" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Reference" ] }, "identifier": { "type": "string", "description": "Identifier of the element" } }, "description": "Reference another element, depends on the context" }, { "description": "Part of the name of the underlying file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.FileName" ] }, "begin": { "type": "integer", "format": "int64" }, "end": { "type": "integer", "format": "int64" } } } ] }, { "description": "Text extraction from the underlying PDF file of the box. The area parameter is where is located the text to extract", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfText" ] }, "page": { "type": "integer", "description": "Page on which to extract the text. Page -1 means last page, -2 means before last page, and so on. Page starts at 1. Page 0 is invalid and will always return \"\"." }, "area": { "type": "object", "properties": { "left": { "minimum": 0, "type": "number", "format": "float" }, "top": { "minimum": 0, "type": "number", "format": "float" }, "width": { "minimum": 0, "type": "number", "format": "float" }, "height": { "minimum": 0, "type": "number", "format": "float" } }, "description": "ZoneArea object" }, "extractionParameters": { "type": "object", "additionalProperties": { "type": "string" }, "description": "Parameters for the extraction. Depends on the library used." } } } ] }, { "description": "PDF metadata value from the underlying PDF file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfMetadata" ] }, "metadataName": { "type": "string", "description": "Name of the PDF metadata to extract" } } } ] }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Concat" ] }, "operands": { "type": "array", "items": "[Circular]" } }, "description": "Concat: concatenates all Expressions given in argument" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrClean" ] }, "expr": "[Circular]", "normalizeSpace": { "type": "boolean", "description": "Replaces all Unicode spaces with standard space character (\\u0020) then replace consecutive space characters by a single one." }, "removeDiacritics": { "type": "boolean", "description": "Replaces the accentuated letters with their un-accentuated version" }, "multiline": { "type": "boolean", "description": "Replaces every Unicode line terminator character to the standard linefeed character (\\u000A) and de-duplicates them. If trim is set, it applies on each line. Trim also removes blank lines." }, "trim": { "type": "boolean", "description": "Removes all the control characters at the beginning and the end of the string (Technically, removes all characters equal or below ASCII U+0020 (space character). If multiline is set, applies on all lines rather than the whole string." } }, "description": "Cleans a string" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrNormalizeCase" ] }, "expr": "[Circular]", "toUpper": { "type": "boolean", "description": "is set, the normalization will be to Upper Case, otherwise it will be to Lower Case" } }, "description": "Normalizes the case of the String" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrReplace" ] }, "expr": "[Circular]", "regExpPattern": { "type": "string", "description": "valid Regular Expression that the input string should match" }, "replacement": { "type": "string", "description": "The replacement to use for each match of the string. The replacement can contain $1, $2, ... elements that will be replaced by capturing groups of the match. '\\' is an escape character, so to have a real '$' sign in replacement, use '\\$'. Same for the escape character itself, use '\\\\'." }, "firstOnly": { "type": "boolean", "description": "If set, the match/replacement will be applied to the first match of the string only, otherwise it will apply on all matches." } }, "description": "Normalizes the case of the String" } ] }, "regExpPattern": { "type": "string", "description": "valid Regular Expression to check the value against" }, "matchWhole": { "type": "boolean", "description": "if set, indicates that the Regular Expression should match the whole value. If not set, the Regular Expression describe only a part of the value." } } } ] } ] }, "minExpected": { "type": "integer", "description": "default 0. Cannot be negative." }, "maxExpected": { "type": "integer", "description": "default -1. Can only be strictly positive or -1." }, "minMatches": { "type": "integer", "description": "default 0. Cannot be negative." }, "maxMatches": { "type": "integer", "description": "default 1. Can only be strictly positive or -1." } } }, "configuredFiles": { "type": "array", "items": { "type": "object", "properties": { "serviceFileId": { "type": "string", "description": "UUID of a ServiceFile (nul l when adding a new ServiceFile ; if noot null, must exist in current Service)" }, "removable": { "type": "boolean", "description": "if false this ConfiguredFile is mandatory on Job creation" } } } } } } ] }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "boxDATA_FILE" ] }, "csvParserConfiguration": { "required": [ "encoding", "separator" ], "type": "object", "properties": { "encoding": { "type": "string", "description": "Encoding of the file for parsing. Must be a known encoding of the JVM." }, "separator": { "maxLength": 1, "type": "string" }, "quoteChar": { "maxLength": 1, "type": "string" }, "headerPresent": { "type": "boolean" }, "usedColumnNames": { "type": "array", "description": "List of column name. Only one of usedColumnNames and metadataMapping should be configured.", "items": { "type": "string" } }, "metadataMapping": { "type": "object", "additionalProperties": { "type": "string" }, "description": "Map of column Index -> Name of column. Only one of usedColumnNames and metadataMapping should be configured." } } }, "fixedWidthParserConfiguration": { "required": [ "columnWidths", "encoding", "metadataMapping" ], "type": "object", "properties": { "encoding": { "type": "string" }, "columnWidths": { "type": "array", "description": "The list of columns fixed width. Indicates both the number of columns in the file (columnWidths.length) and the size of each column (columnWidths[x]).", "items": { "type": "integer", "format": "int32" } }, "metadataMapping": { "type": "object", "additionalProperties": { "type": "string" }, "description": "Map of column Index -> Name of column" } } } } } ] }, { "allOf": [ { "required": [ "@type", "maxElements", "minElements", "name" ], "type": "object", "properties": { "@type": { "type": "string", "enum": [ "box.PDF", "box.DATA_FILE", "box.ARCHIVE" ] }, "name": { "type": "string" }, "label": { "type": "string" }, "minElements": { "type": "integer" }, "maxElements": { "type": "integer" } } }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "box.ARCHIVE" ] }, "encoding": { "type": "string", "description": "Encoding of file names within Zip archive (if null default is 'IBM437')" } } } ] } ] } }, "serviceMetadatas": { "type": "array", "description": "Optional list of ServiceMetadata (common to whole Job)", "items": { "discriminator": { "propertyName": "@type", "mapping": { "svm.ConstantMetadata": "#/components/schemas/ConstantMetadata", "svm.ControlledValue": "#/components/schemas/ControlledValueMetadata" } }, "oneOf": [ { "allOf": [ { "required": [ "@type", "name" ], "type": "object", "properties": { "@type": { "type": "string", "enum": [ "svm.ConstantMetadata", "svm.ControlledValue" ] }, "name": { "type": "string" }, "editable": { "type": "boolean", "description": "if true, can be entered by User on Job creation" } } }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "svm.ConstantMetadata" ] }, "mandatory": { "type": "boolean", "description": "If true, Job must be created with a non-empty value for this Metadata" } } } ] }, { "allOf": [ { "required": [ "@type", "name" ], "type": "object", "properties": { "@type": { "type": "string", "enum": [ "svm.ConstantMetadata", "svm.ControlledValue" ] }, "name": { "type": "string" }, "editable": { "type": "boolean", "description": "if true, can be entered by User on Job creation" } } }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "svm.ControlledValue" ] }, "controlledValueName": { "type": "string", "description": "Name of a ControlledValue in the OrganizationalUnit associated with this Service" } } } ] } ] } }, "packRequirements": { "type": "object", "additionalProperties": { "type": "object", "properties": { "content": { "type": "object", "discriminator": { "propertyName": "@type", "mapping": { "exv.Value": "#/components/schemas/ExpressionConstant", "exv.FileName": "#/components/schemas/ExpressionFileName", "exv.PdfMetadata": "#/components/schemas/ExpressionPdfMetadata", "exv.PdfText": "#/components/schemas/ExpressionPdfText", "exv.Reference": "#/components/schemas/ExpressionReference", "exv.Concat": "#/components/schemas/ExpressionConcat", "exv.Substring": "#/components/schemas/ExpressionSubstring", "exv.NumSheetsValue": "#/components/schemas/ExpressionNumSheets", "exv.StrClean": "#/components/schemas/ExpressionStrClean", "exv.StrNormalizeCase": "#/components/schemas/ExpressionStrNormalizeCase", "exv.StrReplace": "#/components/schemas/ExpressionStrReplace" } }, "oneOf": [ { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Value" ] }, "value": { "type": "string" } }, "description": "Pre-defined text value" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Reference" ] }, "identifier": { "type": "string", "description": "Identifier of the element" } }, "description": "Reference another element, depends on the context" }, { "description": "Part of the name of the underlying file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.FileName" ] }, "begin": { "type": "integer", "format": "int64" }, "end": { "type": "integer", "format": "int64" } } } ] }, { "description": "Text extraction from the underlying PDF file of the box. The area parameter is where is located the text to extract", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfText" ] }, "page": { "type": "integer", "description": "Page on which to extract the text. Page -1 means last page, -2 means before last page, and so on. Page starts at 1. Page 0 is invalid and will always return \"\"." }, "area": { "type": "object", "properties": { "left": { "minimum": 0, "type": "number", "format": "float" }, "top": { "minimum": 0, "type": "number", "format": "float" }, "width": { "minimum": 0, "type": "number", "format": "float" }, "height": { "minimum": 0, "type": "number", "format": "float" } }, "description": "ZoneArea object" }, "extractionParameters": { "type": "object", "additionalProperties": { "type": "string" }, "description": "Parameters for the extraction. Depends on the library used." } } } ] }, { "description": "PDF metadata value from the underlying PDF file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfMetadata" ] }, "metadataName": { "type": "string", "description": "Name of the PDF metadata to extract" } } } ] }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Concat" ] }, "operands": { "type": "array", "items": "[Circular]" } }, "description": "Concat: concatenates all Expressions given in argument" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrClean" ] }, "expr": "[Circular]", "normalizeSpace": { "type": "boolean", "description": "Replaces all Unicode spaces with standard space character (\\u0020) then replace consecutive space characters by a single one." }, "removeDiacritics": { "type": "boolean", "description": "Replaces the accentuated letters with their un-accentuated version" }, "multiline": { "type": "boolean", "description": "Replaces every Unicode line terminator character to the standard linefeed character (\\u000A) and de-duplicates them. If trim is set, it applies on each line. Trim also removes blank lines." }, "trim": { "type": "boolean", "description": "Removes all the control characters at the beginning and the end of the string (Technically, removes all characters equal or below ASCII U+0020 (space character). If multiline is set, applies on all lines rather than the whole string." } }, "description": "Cleans a string" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrNormalizeCase" ] }, "expr": "[Circular]", "toUpper": { "type": "boolean", "description": "is set, the normalization will be to Upper Case, otherwise it will be to Lower Case" } }, "description": "Normalizes the case of the String" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrReplace" ] }, "expr": "[Circular]", "regExpPattern": { "type": "string", "description": "valid Regular Expression that the input string should match" }, "replacement": { "type": "string", "description": "The replacement to use for each match of the string. The replacement can contain $1, $2, ... elements that will be replaced by capturing groups of the match. '\\' is an escape character, so to have a real '$' sign in replacement, use '\\$'. Same for the escape character itself, use '\\\\'." }, "firstOnly": { "type": "boolean", "description": "If set, the match/replacement will be applied to the first match of the string only, otherwise it will apply on all matches." } }, "description": "Normalizes the case of the String" } ] }, "editableConfiguration": { "type": "boolean", "description": "Expression configuration can be redefined on Job creation" }, "editableValue": { "type": "boolean", "description": "Expression value can be edited after Pack/PackGroup creation (to modify eligibility)" } } } }, "channels": { "type": "array", "items": { "type": "object", "properties": { "id": { "type": "integer", "description": "Id of Channel entity (MUST be allowed in OU)", "format": "int64" }, "label": { "type": "string" }, "shipmentRequirements": { "type": "object", "additionalProperties": { "type": "object", "properties": { "content": { "type": "object", "discriminator": { "propertyName": "@type", "mapping": { "exv.Value": "#/components/schemas/ExpressionConstant", "exv.FileName": "#/components/schemas/ExpressionFileName", "exv.PdfMetadata": "#/components/schemas/ExpressionPdfMetadata", "exv.PdfText": "#/components/schemas/ExpressionPdfText", "exv.Reference": "#/components/schemas/ExpressionReference", "exv.Concat": "#/components/schemas/ExpressionConcat", "exv.Substring": "#/components/schemas/ExpressionSubstring", "exv.NumSheetsValue": "#/components/schemas/ExpressionNumSheets", "exv.StrClean": "#/components/schemas/ExpressionStrClean", "exv.StrNormalizeCase": "#/components/schemas/ExpressionStrNormalizeCase", "exv.StrReplace": "#/components/schemas/ExpressionStrReplace" } }, "oneOf": [ { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Value" ] }, "value": { "type": "string" } }, "description": "Pre-defined text value" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Reference" ] }, "identifier": { "type": "string", "description": "Identifier of the element" } }, "description": "Reference another element, depends on the context" }, { "description": "Part of the name of the underlying file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.FileName" ] }, "begin": { "type": "integer", "format": "int64" }, "end": { "type": "integer", "format": "int64" } } } ] }, { "description": "Text extraction from the underlying PDF file of the box. The area parameter is where is located the text to extract", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfText" ] }, "page": { "type": "integer", "description": "Page on which to extract the text. Page -1 means last page, -2 means before last page, and so on. Page starts at 1. Page 0 is invalid and will always return \"\"." }, "area": { "type": "object", "properties": { "left": { "minimum": 0, "type": "number", "format": "float" }, "top": { "minimum": 0, "type": "number", "format": "float" }, "width": { "minimum": 0, "type": "number", "format": "float" }, "height": { "minimum": 0, "type": "number", "format": "float" } }, "description": "ZoneArea object" }, "extractionParameters": { "type": "object", "additionalProperties": { "type": "string" }, "description": "Parameters for the extraction. Depends on the library used." } } } ] }, { "description": "PDF metadata value from the underlying PDF file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfMetadata" ] }, "metadataName": { "type": "string", "description": "Name of the PDF metadata to extract" } } } ] }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Concat" ] }, "operands": { "type": "array", "items": "[Circular]" } }, "description": "Concat: concatenates all Expressions given in argument" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrClean" ] }, "expr": "[Circular]", "normalizeSpace": { "type": "boolean", "description": "Replaces all Unicode spaces with standard space character (\\u0020) then replace consecutive space characters by a single one." }, "removeDiacritics": { "type": "boolean", "description": "Replaces the accentuated letters with their un-accentuated version" }, "multiline": { "type": "boolean", "description": "Replaces every Unicode line terminator character to the standard linefeed character (\\u000A) and de-duplicates them. If trim is set, it applies on each line. Trim also removes blank lines." }, "trim": { "type": "boolean", "description": "Removes all the control characters at the beginning and the end of the string (Technically, removes all characters equal or below ASCII U+0020 (space character). If multiline is set, applies on all lines rather than the whole string." } }, "description": "Cleans a string" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrNormalizeCase" ] }, "expr": "[Circular]", "toUpper": { "type": "boolean", "description": "is set, the normalization will be to Upper Case, otherwise it will be to Lower Case" } }, "description": "Normalizes the case of the String" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrReplace" ] }, "expr": "[Circular]", "regExpPattern": { "type": "string", "description": "valid Regular Expression that the input string should match" }, "replacement": { "type": "string", "description": "The replacement to use for each match of the string. The replacement can contain $1, $2, ... elements that will be replaced by capturing groups of the match. '\\' is an escape character, so to have a real '$' sign in replacement, use '\\$'. Same for the escape character itself, use '\\\\'." }, "firstOnly": { "type": "boolean", "description": "If set, the match/replacement will be applied to the first match of the string only, otherwise it will apply on all matches." } }, "description": "Normalizes the case of the String" } ] }, "editableConfiguration": { "type": "boolean", "description": "Expression configuration can be redefined on Job creation" }, "editableValue": { "type": "boolean", "description": "Expression value can be edited after Pack/PackGroup creation (to modify eligibility)" } } } }, "outputFilesConfig": { "type": "object", "additionalProperties": { "type": "object", "properties": { "options": { "type": "array", "items": { "type": "object", "properties": { "id": { "type": "integer", "format": "int64" }, "rank": { "type": "integer" }, "default": { "type": "boolean" } } } }, "composition": { "type": "object", "properties": { "operations": { "type": "array", "items": { "type": "object", "properties": { "boxIdentifier": { "type": "object", "properties": { "main": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if main is true. Otherwise, indicates the name of the target box" } } }, "rotationDirection": { "type": "string", "enum": [ "LEFT", "RIGHT", "NONE" ] }, "margins": { "type": "object", "additionalProperties": { "type": "object", "properties": { "left": { "minimum": 0, "type": "number", "format": "float" }, "top": { "minimum": 0, "type": "number", "format": "float" }, "right": { "minimum": 0, "type": "number", "format": "float" }, "bottom": { "minimum": 0, "type": "number", "format": "float" } }, "description": "MarginArea object" } }, "nbDuplicates": { "minimum": 0, "type": "integer", "format": "int64" }, "canStartOnBackSide": { "type": "boolean", "description": "true if this chunk can start on the back side of the previous chunk (if the latter ends on an odd page)" }, "skipAddressPage": { "type": "boolean", "description": "true if the address page of the box should not be added to the composition (available only if the box has an address page)" }, "deduplicateOnRegroup": { "type": "boolean", "description": "true if the identical attachment chunks should NOT be deduplicated when several packs are regrouped (available only if the box is NO main and has NO reconcile configuration)" }, "appositions": { "type": "array", "items": { "discriminator": { "propertyName": "@type", "mapping": { "ofa.RECTANGLE": "#/components/schemas/ServiceChannelOutputFileCompositionAppositionBase", "ofa.TEXT": "#/components/schemas/ServiceChannelOutputFileCompositionAppositionText" } }, "oneOf": [ { "allOf": [ { "required": [ "@type", "area" ], "type": "object", "properties": { "@type": { "type": "string", "enum": [ "ofa.RECTANGLE" ] }, "area": { "type": "object", "properties": { "left": { "minimum": 0, "type": "number", "format": "float" }, "top": { "minimum": 0, "type": "number", "format": "float" }, "width": { "minimum": 0, "type": "number", "format": "float" }, "height": { "minimum": 0, "type": "number", "format": "float" } }, "description": "ZoneArea object" }, "pageFilter": { "type": "string", "description": "Page description. Can be a single page number, an interval (1:3), an open interval - includes a single excluded boundary (:3 means strictly below page 3, hence page 1 or 2, 2: is for page 3 and above) or keywords among 'all', 'odd' and 'even' for respective page description." }, "bgColor": { "type": "object", "properties": { "r": { "type": "integer" }, "g": { "type": "integer" }, "b": { "type": "integer" }, "a": { "type": "number", "format": "float" } }, "description": "Color object int values between 0 and 255, alpha use a float value between 0.0 and 1.0" } } } ] }, { "allOf": [ { "required": [ "@type", "area" ], "type": "object", "properties": { "@type": { "type": "string", "enum": [ "ofa.RECTANGLE" ] }, "area": { "type": "object", "properties": { "left": { "minimum": 0, "type": "number", "format": "float" }, "top": { "minimum": 0, "type": "number", "format": "float" }, "width": { "minimum": 0, "type": "number", "format": "float" }, "height": { "minimum": 0, "type": "number", "format": "float" } }, "description": "ZoneArea object" }, "pageFilter": { "type": "string", "description": "Page description. Can be a single page number, an interval (1:3), an open interval - includes a single excluded boundary (:3 means strictly below page 3, hence page 1 or 2, 2: is for page 3 and above) or keywords among 'all', 'odd' and 'even' for respective page description." }, "bgColor": { "type": "object", "properties": { "r": { "type": "integer" }, "g": { "type": "integer" }, "b": { "type": "integer" }, "a": { "type": "number", "format": "float" } }, "description": "Color object int values between 0 and 255, alpha use a float value between 0.0 and 1.0" } } }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "ofa.TEXT" ] }, "contentEvaluator": { "type": "object", "discriminator": { "propertyName": "@type", "mapping": { "exv.Value": "#/components/schemas/ExpressionConstant", "exv.FileName": "#/components/schemas/ExpressionFileName", "exv.PdfMetadata": "#/components/schemas/ExpressionPdfMetadata", "exv.PdfText": "#/components/schemas/ExpressionPdfText", "exv.Reference": "#/components/schemas/ExpressionReference", "exv.Concat": "#/components/schemas/ExpressionConcat", "exv.Substring": "#/components/schemas/ExpressionSubstring", "exv.NumSheetsValue": "#/components/schemas/ExpressionNumSheets", "exv.StrClean": "#/components/schemas/ExpressionStrClean", "exv.StrNormalizeCase": "#/components/schemas/ExpressionStrNormalizeCase", "exv.StrReplace": "#/components/schemas/ExpressionStrReplace" } }, "oneOf": [ { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Value" ] }, "value": { "type": "string" } }, "description": "Pre-defined text value" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Reference" ] }, "identifier": { "type": "string", "description": "Identifier of the element" } }, "description": "Reference another element, depends on the context" }, { "description": "Part of the name of the underlying file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.FileName" ] }, "begin": { "type": "integer", "format": "int64" }, "end": { "type": "integer", "format": "int64" } } } ] }, { "description": "Text extraction from the underlying PDF file of the box. The area parameter is where is located the text to extract", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfText" ] }, "page": { "type": "integer", "description": "Page on which to extract the text. Page -1 means last page, -2 means before last page, and so on. Page starts at 1. Page 0 is invalid and will always return \"\"." }, "area": { "type": "object", "properties": { "left": { "minimum": 0, "type": "number", "format": "float" }, "top": { "minimum": 0, "type": "number", "format": "float" }, "width": { "minimum": 0, "type": "number", "format": "float" }, "height": { "minimum": 0, "type": "number", "format": "float" } }, "description": "ZoneArea object" }, "extractionParameters": { "type": "object", "additionalProperties": { "type": "string" }, "description": "Parameters for the extraction. Depends on the library used." } } } ] }, { "description": "PDF metadata value from the underlying PDF file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfMetadata" ] }, "metadataName": { "type": "string", "description": "Name of the PDF metadata to extract" } } } ] }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Concat" ] }, "operands": { "type": "array", "items": "[Circular]" } }, "description": "Concat: concatenates all Expressions given in argument" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrClean" ] }, "expr": "[Circular]", "normalizeSpace": { "type": "boolean", "description": "Replaces all Unicode spaces with standard space character (\\u0020) then replace consecutive space characters by a single one." }, "removeDiacritics": { "type": "boolean", "description": "Replaces the accentuated letters with their un-accentuated version" }, "multiline": { "type": "boolean", "description": "Replaces every Unicode line terminator character to the standard linefeed character (\\u000A) and de-duplicates them. If trim is set, it applies on each line. Trim also removes blank lines." }, "trim": { "type": "boolean", "description": "Removes all the control characters at the beginning and the end of the string (Technically, removes all characters equal or below ASCII U+0020 (space character). If multiline is set, applies on all lines rather than the whole string." } }, "description": "Cleans a string" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrNormalizeCase" ] }, "expr": "[Circular]", "toUpper": { "type": "boolean", "description": "is set, the normalization will be to Upper Case, otherwise it will be to Lower Case" } }, "description": "Normalizes the case of the String" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrReplace" ] }, "expr": "[Circular]", "regExpPattern": { "type": "string", "description": "valid Regular Expression that the input string should match" }, "replacement": { "type": "string", "description": "The replacement to use for each match of the string. The replacement can contain $1, $2, ... elements that will be replaced by capturing groups of the match. '\\' is an escape character, so to have a real '$' sign in replacement, use '\\$'. Same for the escape character itself, use '\\\\'." }, "firstOnly": { "type": "boolean", "description": "If set, the match/replacement will be applied to the first match of the string only, otherwise it will apply on all matches." } }, "description": "Normalizes the case of the String" } ] }, "margins": { "type": "object", "properties": { "left": { "minimum": 0, "type": "number", "format": "float" }, "top": { "minimum": 0, "type": "number", "format": "float" }, "right": { "minimum": 0, "type": "number", "format": "float" }, "bottom": { "minimum": 0, "type": "number", "format": "float" } }, "description": "MarginArea object" }, "fontName": { "type": "string" }, "fontSize": { "type": "number", "format": "float" }, "fontColor": { "type": "object", "properties": { "r": { "type": "integer" }, "g": { "type": "integer" }, "b": { "type": "integer" }, "a": { "type": "number", "format": "float" } }, "description": "Color object int values between 0 and 255, alpha use a float value between 0.0 and 1.0" }, "linespace": { "type": "integer", "format": "float" }, "vAlign": { "type": "string", "description": "Vertical alignment of TEXT inside the box. Only applies for type TEXT.", "enum": [ "BOTTOM", "MIDDLE", "TOP" ] }, "rtl": { "type": "boolean" } } } ] } ] } } } } } } } } } } }, "description": "See Channel Entity for Requirement and OutputFile configurations" } }, "groupingConfiguration": { "type": "object", "properties": { "name": { "type": "string" }, "groups": { "type": "array", "description": "SendingGroup names MUST be unique whithin a SendingStrategy", "items": { "type": "object", "properties": { "name": { "type": "string" }, "serviceChannels": { "type": "array", "description": "array (Set in Java) labels of main ServiceChannel (all ServiceChannel labels MUST be defined in parent SendingService)", "items": { "type": "string" } }, "fallbacks": { "type": "array", "description": "array (Set in Java) labels of fallback ServiceChannel (all ServiceChannel labels MUST be defined in parent SendingService)", "items": { "type": "string" } }, "additionalCondition": { "discriminator": { "propertyName": "@type", "mapping": { "exb.Boolean": "#/components/schemas/BooleanExpressionConstant", "exb.AND": "#/components/schemas/BooleanExpressionAndOr", "exb.OR": "#/components/schemas/BooleanExpressionAndOr", "exb.NOT": "#/components/schemas/BooleanExpressionNot", "exb.ContentEqual": "#/components/schemas/BooleanExpressionStrEqual", "exb.LessThan": "#/components/schemas/BooleanExpressionNumeric", "exb.LessThanOrEqual": "#/components/schemas/BooleanExpressionNumeric", "exb.NumericEqual": "#/components/schemas/BooleanExpressionNumeric", "exb.StrContains": "#/components/schemas/BooleanExpressionStrEqual", "exb.StrStartsWith": "#/components/schemas/BooleanExpressionStrEqual", "exb.StrEndsWith": "#/components/schemas/BooleanExpressionStrEqual", "exb.StrMatches": "#/components/schemas/BooleanExpressionStrMatches" } }, "oneOf": [ { "allOf": [ { "required": [ "@type" ], "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.Boolean", "exb.AND", "exb.OR", "exb.NOT", "exb.ContentEqual", "exb.LessThan", "exb.LessThanOrEqual", "exb.NumericEqual", "exb.StrContains", "exb.StrStartsWith", "exb.StrEndsWith", "exb.StrMatches" ] } } }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.Boolean" ] }, "value": { "type": "boolean" } } } ] }, { "allOf": [ { "required": [ "@type" ], "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.Boolean", "exb.AND", "exb.OR", "exb.NOT", "exb.ContentEqual", "exb.LessThan", "exb.LessThanOrEqual", "exb.NumericEqual", "exb.StrContains", "exb.StrStartsWith", "exb.StrEndsWith", "exb.StrMatches" ] } } }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.AND", "exb.OR" ] }, "expr1": "[Circular]", "expr2": "[Circular]" } } ] }, { "allOf": [ { "required": [ "@type" ], "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.Boolean", "exb.AND", "exb.OR", "exb.NOT", "exb.ContentEqual", "exb.LessThan", "exb.LessThanOrEqual", "exb.NumericEqual", "exb.StrContains", "exb.StrStartsWith", "exb.StrEndsWith", "exb.StrMatches" ] } } }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.NOT" ] }, "expr": "[Circular]" } } ] }, { "allOf": [ { "allOf": [ { "required": [ "@type" ], "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.Boolean", "exb.AND", "exb.OR", "exb.NOT", "exb.ContentEqual", "exb.LessThan", "exb.LessThanOrEqual", "exb.NumericEqual", "exb.StrContains", "exb.StrStartsWith", "exb.StrEndsWith", "exb.StrMatches" ] } } }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.ContentEqual", "exb.LessThan", "exb.LessThanOrEqual", "exb.NumericEqual" ] }, "expr1": { "type": "object", "discriminator": { "propertyName": "@type", "mapping": { "exv.Value": "#/components/schemas/ExpressionConstant", "exv.FileName": "#/components/schemas/ExpressionFileName", "exv.PdfMetadata": "#/components/schemas/ExpressionPdfMetadata", "exv.PdfText": "#/components/schemas/ExpressionPdfText", "exv.Reference": "#/components/schemas/ExpressionReference", "exv.Concat": "#/components/schemas/ExpressionConcat", "exv.Substring": "#/components/schemas/ExpressionSubstring", "exv.NumSheetsValue": "#/components/schemas/ExpressionNumSheets", "exv.StrClean": "#/components/schemas/ExpressionStrClean", "exv.StrNormalizeCase": "#/components/schemas/ExpressionStrNormalizeCase", "exv.StrReplace": "#/components/schemas/ExpressionStrReplace" } }, "oneOf": [ { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Value" ] }, "value": { "type": "string" } }, "description": "Pre-defined text value" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Reference" ] }, "identifier": { "type": "string", "description": "Identifier of the element" } }, "description": "Reference another element, depends on the context" }, { "description": "Part of the name of the underlying file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.FileName" ] }, "begin": { "type": "integer", "format": "int64" }, "end": { "type": "integer", "format": "int64" } } } ] }, { "description": "Text extraction from the underlying PDF file of the box. The area parameter is where is located the text to extract", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfText" ] }, "page": { "type": "integer", "description": "Page on which to extract the text. Page -1 means last page, -2 means before last page, and so on. Page starts at 1. Page 0 is invalid and will always return \"\"." }, "area": { "type": "object", "properties": { "left": { "minimum": 0, "type": "number", "format": "float" }, "top": { "minimum": 0, "type": "number", "format": "float" }, "width": { "minimum": 0, "type": "number", "format": "float" }, "height": { "minimum": 0, "type": "number", "format": "float" } }, "description": "ZoneArea object" }, "extractionParameters": { "type": "object", "additionalProperties": { "type": "string" }, "description": "Parameters for the extraction. Depends on the library used." } } } ] }, { "description": "PDF metadata value from the underlying PDF file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfMetadata" ] }, "metadataName": { "type": "string", "description": "Name of the PDF metadata to extract" } } } ] }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Concat" ] }, "operands": { "type": "array", "items": "[Circular]" } }, "description": "Concat: concatenates all Expressions given in argument" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrClean" ] }, "expr": "[Circular]", "normalizeSpace": { "type": "boolean", "description": "Replaces all Unicode spaces with standard space character (\\u0020) then replace consecutive space characters by a single one." }, "removeDiacritics": { "type": "boolean", "description": "Replaces the accentuated letters with their un-accentuated version" }, "multiline": { "type": "boolean", "description": "Replaces every Unicode line terminator character to the standard linefeed character (\\u000A) and de-duplicates them. If trim is set, it applies on each line. Trim also removes blank lines." }, "trim": { "type": "boolean", "description": "Removes all the control characters at the beginning and the end of the string (Technically, removes all characters equal or below ASCII U+0020 (space character). If multiline is set, applies on all lines rather than the whole string." } }, "description": "Cleans a string" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrNormalizeCase" ] }, "expr": "[Circular]", "toUpper": { "type": "boolean", "description": "is set, the normalization will be to Upper Case, otherwise it will be to Lower Case" } }, "description": "Normalizes the case of the String" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrReplace" ] }, "expr": "[Circular]", "regExpPattern": { "type": "string", "description": "valid Regular Expression that the input string should match" }, "replacement": { "type": "string", "description": "The replacement to use for each match of the string. The replacement can contain $1, $2, ... elements that will be replaced by capturing groups of the match. '\\' is an escape character, so to have a real '$' sign in replacement, use '\\$'. Same for the escape character itself, use '\\\\'." }, "firstOnly": { "type": "boolean", "description": "If set, the match/replacement will be applied to the first match of the string only, otherwise it will apply on all matches." } }, "description": "Normalizes the case of the String" } ] }, "expr2": { "type": "object", "discriminator": { "propertyName": "@type", "mapping": { "exv.Value": "#/components/schemas/ExpressionConstant", "exv.FileName": "#/components/schemas/ExpressionFileName", "exv.PdfMetadata": "#/components/schemas/ExpressionPdfMetadata", "exv.PdfText": "#/components/schemas/ExpressionPdfText", "exv.Reference": "#/components/schemas/ExpressionReference", "exv.Concat": "#/components/schemas/ExpressionConcat", "exv.Substring": "#/components/schemas/ExpressionSubstring", "exv.NumSheetsValue": "#/components/schemas/ExpressionNumSheets", "exv.StrClean": "#/components/schemas/ExpressionStrClean", "exv.StrNormalizeCase": "#/components/schemas/ExpressionStrNormalizeCase", "exv.StrReplace": "#/components/schemas/ExpressionStrReplace" } }, "oneOf": [ { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Value" ] }, "value": { "type": "string" } }, "description": "Pre-defined text value" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Reference" ] }, "identifier": { "type": "string", "description": "Identifier of the element" } }, "description": "Reference another element, depends on the context" }, { "description": "Part of the name of the underlying file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.FileName" ] }, "begin": { "type": "integer", "format": "int64" }, "end": { "type": "integer", "format": "int64" } } } ] }, { "description": "Text extraction from the underlying PDF file of the box. The area parameter is where is located the text to extract", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfText" ] }, "page": { "type": "integer", "description": "Page on which to extract the text. Page -1 means last page, -2 means before last page, and so on. Page starts at 1. Page 0 is invalid and will always return \"\"." }, "area": { "type": "object", "properties": { "left": { "minimum": 0, "type": "number", "format": "float" }, "top": { "minimum": 0, "type": "number", "format": "float" }, "width": { "minimum": 0, "type": "number", "format": "float" }, "height": { "minimum": 0, "type": "number", "format": "float" } }, "description": "ZoneArea object" }, "extractionParameters": { "type": "object", "additionalProperties": { "type": "string" }, "description": "Parameters for the extraction. Depends on the library used." } } } ] }, { "description": "PDF metadata value from the underlying PDF file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfMetadata" ] }, "metadataName": { "type": "string", "description": "Name of the PDF metadata to extract" } } } ] }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Concat" ] }, "operands": { "type": "array", "items": "[Circular]" } }, "description": "Concat: concatenates all Expressions given in argument" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrClean" ] }, "expr": "[Circular]", "normalizeSpace": { "type": "boolean", "description": "Replaces all Unicode spaces with standard space character (\\u0020) then replace consecutive space characters by a single one." }, "removeDiacritics": { "type": "boolean", "description": "Replaces the accentuated letters with their un-accentuated version" }, "multiline": { "type": "boolean", "description": "Replaces every Unicode line terminator character to the standard linefeed character (\\u000A) and de-duplicates them. If trim is set, it applies on each line. Trim also removes blank lines." }, "trim": { "type": "boolean", "description": "Removes all the control characters at the beginning and the end of the string (Technically, removes all characters equal or below ASCII U+0020 (space character). If multiline is set, applies on all lines rather than the whole string." } }, "description": "Cleans a string" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrNormalizeCase" ] }, "expr": "[Circular]", "toUpper": { "type": "boolean", "description": "is set, the normalization will be to Upper Case, otherwise it will be to Lower Case" } }, "description": "Normalizes the case of the String" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrReplace" ] }, "expr": "[Circular]", "regExpPattern": { "type": "string", "description": "valid Regular Expression that the input string should match" }, "replacement": { "type": "string", "description": "The replacement to use for each match of the string. The replacement can contain $1, $2, ... elements that will be replaced by capturing groups of the match. '\\' is an escape character, so to have a real '$' sign in replacement, use '\\$'. Same for the escape character itself, use '\\\\'." }, "firstOnly": { "type": "boolean", "description": "If set, the match/replacement will be applied to the first match of the string only, otherwise it will apply on all matches." } }, "description": "Normalizes the case of the String" } ] } } } ] }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.ContentEqual", "exb.StrContains", "exb.StrStartsWith", "exb.StrEndsWith" ] } } } ] }, { "allOf": [ { "allOf": [ { "required": [ "@type" ], "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.Boolean", "exb.AND", "exb.OR", "exb.NOT", "exb.ContentEqual", "exb.LessThan", "exb.LessThanOrEqual", "exb.NumericEqual", "exb.StrContains", "exb.StrStartsWith", "exb.StrEndsWith", "exb.StrMatches" ] } } }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.ContentEqual", "exb.LessThan", "exb.LessThanOrEqual", "exb.NumericEqual" ] }, "expr1": { "type": "object", "discriminator": { "propertyName": "@type", "mapping": { "exv.Value": "#/components/schemas/ExpressionConstant", "exv.FileName": "#/components/schemas/ExpressionFileName", "exv.PdfMetadata": "#/components/schemas/ExpressionPdfMetadata", "exv.PdfText": "#/components/schemas/ExpressionPdfText", "exv.Reference": "#/components/schemas/ExpressionReference", "exv.Concat": "#/components/schemas/ExpressionConcat", "exv.Substring": "#/components/schemas/ExpressionSubstring", "exv.NumSheetsValue": "#/components/schemas/ExpressionNumSheets", "exv.StrClean": "#/components/schemas/ExpressionStrClean", "exv.StrNormalizeCase": "#/components/schemas/ExpressionStrNormalizeCase", "exv.StrReplace": "#/components/schemas/ExpressionStrReplace" } }, "oneOf": [ { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Value" ] }, "value": { "type": "string" } }, "description": "Pre-defined text value" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Reference" ] }, "identifier": { "type": "string", "description": "Identifier of the element" } }, "description": "Reference another element, depends on the context" }, { "description": "Part of the name of the underlying file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.FileName" ] }, "begin": { "type": "integer", "format": "int64" }, "end": { "type": "integer", "format": "int64" } } } ] }, { "description": "Text extraction from the underlying PDF file of the box. The area parameter is where is located the text to extract", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfText" ] }, "page": { "type": "integer", "description": "Page on which to extract the text. Page -1 means last page, -2 means before last page, and so on. Page starts at 1. Page 0 is invalid and will always return \"\"." }, "area": { "type": "object", "properties": { "left": { "minimum": 0, "type": "number", "format": "float" }, "top": { "minimum": 0, "type": "number", "format": "float" }, "width": { "minimum": 0, "type": "number", "format": "float" }, "height": { "minimum": 0, "type": "number", "format": "float" } }, "description": "ZoneArea object" }, "extractionParameters": { "type": "object", "additionalProperties": { "type": "string" }, "description": "Parameters for the extraction. Depends on the library used." } } } ] }, { "description": "PDF metadata value from the underlying PDF file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfMetadata" ] }, "metadataName": { "type": "string", "description": "Name of the PDF metadata to extract" } } } ] }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Concat" ] }, "operands": { "type": "array", "items": "[Circular]" } }, "description": "Concat: concatenates all Expressions given in argument" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrClean" ] }, "expr": "[Circular]", "normalizeSpace": { "type": "boolean", "description": "Replaces all Unicode spaces with standard space character (\\u0020) then replace consecutive space characters by a single one." }, "removeDiacritics": { "type": "boolean", "description": "Replaces the accentuated letters with their un-accentuated version" }, "multiline": { "type": "boolean", "description": "Replaces every Unicode line terminator character to the standard linefeed character (\\u000A) and de-duplicates them. If trim is set, it applies on each line. Trim also removes blank lines." }, "trim": { "type": "boolean", "description": "Removes all the control characters at the beginning and the end of the string (Technically, removes all characters equal or below ASCII U+0020 (space character). If multiline is set, applies on all lines rather than the whole string." } }, "description": "Cleans a string" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrNormalizeCase" ] }, "expr": "[Circular]", "toUpper": { "type": "boolean", "description": "is set, the normalization will be to Upper Case, otherwise it will be to Lower Case" } }, "description": "Normalizes the case of the String" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrReplace" ] }, "expr": "[Circular]", "regExpPattern": { "type": "string", "description": "valid Regular Expression that the input string should match" }, "replacement": { "type": "string", "description": "The replacement to use for each match of the string. The replacement can contain $1, $2, ... elements that will be replaced by capturing groups of the match. '\\' is an escape character, so to have a real '$' sign in replacement, use '\\$'. Same for the escape character itself, use '\\\\'." }, "firstOnly": { "type": "boolean", "description": "If set, the match/replacement will be applied to the first match of the string only, otherwise it will apply on all matches." } }, "description": "Normalizes the case of the String" } ] }, "expr2": { "type": "object", "discriminator": { "propertyName": "@type", "mapping": { "exv.Value": "#/components/schemas/ExpressionConstant", "exv.FileName": "#/components/schemas/ExpressionFileName", "exv.PdfMetadata": "#/components/schemas/ExpressionPdfMetadata", "exv.PdfText": "#/components/schemas/ExpressionPdfText", "exv.Reference": "#/components/schemas/ExpressionReference", "exv.Concat": "#/components/schemas/ExpressionConcat", "exv.Substring": "#/components/schemas/ExpressionSubstring", "exv.NumSheetsValue": "#/components/schemas/ExpressionNumSheets", "exv.StrClean": "#/components/schemas/ExpressionStrClean", "exv.StrNormalizeCase": "#/components/schemas/ExpressionStrNormalizeCase", "exv.StrReplace": "#/components/schemas/ExpressionStrReplace" } }, "oneOf": [ { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Value" ] }, "value": { "type": "string" } }, "description": "Pre-defined text value" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Reference" ] }, "identifier": { "type": "string", "description": "Identifier of the element" } }, "description": "Reference another element, depends on the context" }, { "description": "Part of the name of the underlying file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.FileName" ] }, "begin": { "type": "integer", "format": "int64" }, "end": { "type": "integer", "format": "int64" } } } ] }, { "description": "Text extraction from the underlying PDF file of the box. The area parameter is where is located the text to extract", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfText" ] }, "page": { "type": "integer", "description": "Page on which to extract the text. Page -1 means last page, -2 means before last page, and so on. Page starts at 1. Page 0 is invalid and will always return \"\"." }, "area": { "type": "object", "properties": { "left": { "minimum": 0, "type": "number", "format": "float" }, "top": { "minimum": 0, "type": "number", "format": "float" }, "width": { "minimum": 0, "type": "number", "format": "float" }, "height": { "minimum": 0, "type": "number", "format": "float" } }, "description": "ZoneArea object" }, "extractionParameters": { "type": "object", "additionalProperties": { "type": "string" }, "description": "Parameters for the extraction. Depends on the library used." } } } ] }, { "description": "PDF metadata value from the underlying PDF file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfMetadata" ] }, "metadataName": { "type": "string", "description": "Name of the PDF metadata to extract" } } } ] }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Concat" ] }, "operands": { "type": "array", "items": "[Circular]" } }, "description": "Concat: concatenates all Expressions given in argument" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrClean" ] }, "expr": "[Circular]", "normalizeSpace": { "type": "boolean", "description": "Replaces all Unicode spaces with standard space character (\\u0020) then replace consecutive space characters by a single one." }, "removeDiacritics": { "type": "boolean", "description": "Replaces the accentuated letters with their un-accentuated version" }, "multiline": { "type": "boolean", "description": "Replaces every Unicode line terminator character to the standard linefeed character (\\u000A) and de-duplicates them. If trim is set, it applies on each line. Trim also removes blank lines." }, "trim": { "type": "boolean", "description": "Removes all the control characters at the beginning and the end of the string (Technically, removes all characters equal or below ASCII U+0020 (space character). If multiline is set, applies on all lines rather than the whole string." } }, "description": "Cleans a string" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrNormalizeCase" ] }, "expr": "[Circular]", "toUpper": { "type": "boolean", "description": "is set, the normalization will be to Upper Case, otherwise it will be to Lower Case" } }, "description": "Normalizes the case of the String" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrReplace" ] }, "expr": "[Circular]", "regExpPattern": { "type": "string", "description": "valid Regular Expression that the input string should match" }, "replacement": { "type": "string", "description": "The replacement to use for each match of the string. The replacement can contain $1, $2, ... elements that will be replaced by capturing groups of the match. '\\' is an escape character, so to have a real '$' sign in replacement, use '\\$'. Same for the escape character itself, use '\\\\'." }, "firstOnly": { "type": "boolean", "description": "If set, the match/replacement will be applied to the first match of the string only, otherwise it will apply on all matches." } }, "description": "Normalizes the case of the String" } ] } } } ] }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.LessThan", "exb.LessThanOrEqual", "exb.NumericEqual" ] } } } ] }, { "allOf": [ { "required": [ "@type" ], "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.Boolean", "exb.AND", "exb.OR", "exb.NOT", "exb.ContentEqual", "exb.LessThan", "exb.LessThanOrEqual", "exb.NumericEqual", "exb.StrContains", "exb.StrStartsWith", "exb.StrEndsWith", "exb.StrMatches" ] } } }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.StrMatches" ] }, "expr": { "type": "object", "discriminator": { "propertyName": "@type", "mapping": { "exv.Value": "#/components/schemas/ExpressionConstant", "exv.FileName": "#/components/schemas/ExpressionFileName", "exv.PdfMetadata": "#/components/schemas/ExpressionPdfMetadata", "exv.PdfText": "#/components/schemas/ExpressionPdfText", "exv.Reference": "#/components/schemas/ExpressionReference", "exv.Concat": "#/components/schemas/ExpressionConcat", "exv.Substring": "#/components/schemas/ExpressionSubstring", "exv.NumSheetsValue": "#/components/schemas/ExpressionNumSheets", "exv.StrClean": "#/components/schemas/ExpressionStrClean", "exv.StrNormalizeCase": "#/components/schemas/ExpressionStrNormalizeCase", "exv.StrReplace": "#/components/schemas/ExpressionStrReplace" } }, "oneOf": [ { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Value" ] }, "value": { "type": "string" } }, "description": "Pre-defined text value" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Reference" ] }, "identifier": { "type": "string", "description": "Identifier of the element" } }, "description": "Reference another element, depends on the context" }, { "description": "Part of the name of the underlying file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.FileName" ] }, "begin": { "type": "integer", "format": "int64" }, "end": { "type": "integer", "format": "int64" } } } ] }, { "description": "Text extraction from the underlying PDF file of the box. The area parameter is where is located the text to extract", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfText" ] }, "page": { "type": "integer", "description": "Page on which to extract the text. Page -1 means last page, -2 means before last page, and so on. Page starts at 1. Page 0 is invalid and will always return \"\"." }, "area": { "type": "object", "properties": { "left": { "minimum": 0, "type": "number", "format": "float" }, "top": { "minimum": 0, "type": "number", "format": "float" }, "width": { "minimum": 0, "type": "number", "format": "float" }, "height": { "minimum": 0, "type": "number", "format": "float" } }, "description": "ZoneArea object" }, "extractionParameters": { "type": "object", "additionalProperties": { "type": "string" }, "description": "Parameters for the extraction. Depends on the library used." } } } ] }, { "description": "PDF metadata value from the underlying PDF file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfMetadata" ] }, "metadataName": { "type": "string", "description": "Name of the PDF metadata to extract" } } } ] }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Concat" ] }, "operands": { "type": "array", "items": "[Circular]" } }, "description": "Concat: concatenates all Expressions given in argument" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrClean" ] }, "expr": "[Circular]", "normalizeSpace": { "type": "boolean", "description": "Replaces all Unicode spaces with standard space character (\\u0020) then replace consecutive space characters by a single one." }, "removeDiacritics": { "type": "boolean", "description": "Replaces the accentuated letters with their un-accentuated version" }, "multiline": { "type": "boolean", "description": "Replaces every Unicode line terminator character to the standard linefeed character (\\u000A) and de-duplicates them. If trim is set, it applies on each line. Trim also removes blank lines." }, "trim": { "type": "boolean", "description": "Removes all the control characters at the beginning and the end of the string (Technically, removes all characters equal or below ASCII U+0020 (space character). If multiline is set, applies on all lines rather than the whole string." } }, "description": "Cleans a string" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrNormalizeCase" ] }, "expr": "[Circular]", "toUpper": { "type": "boolean", "description": "is set, the normalization will be to Upper Case, otherwise it will be to Lower Case" } }, "description": "Normalizes the case of the String" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrReplace" ] }, "expr": "[Circular]", "regExpPattern": { "type": "string", "description": "valid Regular Expression that the input string should match" }, "replacement": { "type": "string", "description": "The replacement to use for each match of the string. The replacement can contain $1, $2, ... elements that will be replaced by capturing groups of the match. '\\' is an escape character, so to have a real '$' sign in replacement, use '\\$'. Same for the escape character itself, use '\\\\'." }, "firstOnly": { "type": "boolean", "description": "If set, the match/replacement will be applied to the first match of the string only, otherwise it will apply on all matches." } }, "description": "Normalizes the case of the String" } ] }, "regExpPattern": { "type": "string", "description": "valid Regular Expression to check the value against" }, "matchWhole": { "type": "boolean", "description": "if set, indicates that the Regular Expression should match the whole value. If not set, the Regular Expression describe only a part of the value." } } } ] } ] } }, "description": "Optional 'additionalCondition' field additional boolean condition matched after ServiceChannels eligibility. If not used assume always true." } } }, "description": "All main ServiceChannels of the first matching (eligible) SendingGroup will be used to create Shipments from a PackGroup" }, "sendingStrategy": { "type": "object", "properties": { "groupingMetadataName": { "type": "string", "description": "Name of Metadata OR Requirement used for grouping strategy" }, "groupOnRequirement": { "type": "boolean", "description": "If true name of a Requirement (Pack or ServiceChannel scope) if false name of a Metadata" } } } } }, "serviceFiles": { "type": "array", "items": { "type": "object", "properties": { "id": { "type": "string" }, "originalFileName": { "type": "string" }, "fileSize": { "type": "integer", "format": "int64" }, "storedDate": { "type": "integer", "format": "int64" } }, "description": "File associated to the service for background configuration" } }, "enabled": { "type": "boolean" }, "allowJobCreation": { "type": "boolean" }, "inconsistent": { "type": "boolean", "description": "true if this SendingService is inconsistent with OrganizationnalUnit Channels and NOT usable ; default is false" }, "forceServiceUpdate": { "type": "boolean", "description": "Write-only, force Service update invalidating possible pending jobs ; If false and the Service update cannot invalidate Jobs ; return an error" } } } } }, "description": "organizationalUnit an services are optional fields (only returned if 'withProfileDetail' is true) ; organizationalUnit is never returned for Super-Admin"}

Responses

StatusMeaningDescriptionSchema
200OKCall triggeredAuthenticateResponse

checkAuthenticate

Code samples

# You can also use wgetcurl -X GET mycloud.nirva-software.com/authentication/check \ -H 'Accept: application/json' \ -H 'X-Auth-Token: API_KEY'

GET /authentication/check

Check authenticate

Check if token still alive

Example responses

200 Response

{ "type": "object", "properties": { "authToken": { "type": "string", "example": "341DDE1C0699452B8E1A74C1B119D82D381DC84771A4065CB53157786B5D4D3B" }, "authTokenExpirationDate": { "type": "string", "example": "1519837961835" }, "user": { "type": "object", "properties": { "id": { "type": "integer", "format": "int64" }, "profile": { "type": "object", "properties": { "id": { "type": "integer", "format": "int64" }, "organizationalUnit": { "type": "object", "properties": { "id": { "type": "integer", "format": "int64" }, "name": { "type": "string", "description": "login or displayable name" } }, "description": "In JSON Objects, other entities (Branding, Parent OU, group...) can be referenced by an IdentifierDTO Object" }, "name": { "type": "string" }, "roleName": { "type": "string", "description": "name of RoleTemplaate or [CUSTOM]" }, "permissions": { "type": "integer", "description": "Permissions on User itself (bit 0 is VIEW_ORDER, bit 1 is CREATE_ORDER, bit 2 is VALIDATE_ORDER)" }, "permissionsOnGroup": { "type": "integer", "description": "Permissions on Group (for Goup validator)" }, "permissionsOnOU": { "type": "integer", "description": "Permissions on OrganizationalUnit (bit 3 is ADMIN_USER, bit 4 is ADMIN_SERVICE, bit 16 is ADMIN_CHILDREN OrganizationalUnits, bit 29 is SUPER_ADMIN_VIEW, bit 30 is SUPER_ADMIN)" } }, "description": "field can be null id super admin" }, "login": { "type": "string" }, "password": { "type": "string", "format": "password" }, "allowAddresses": { "type": "string", "description": "Optional comma-separated list of allowed IP address matcher (Unique address, CIDR prefix notation or range) Ex. \"1.2.3.4, 2000:ABCD:789::1/56, 10.0.10.1-10.0.11.3\". If null, all source IP addresses allowed for this User ; sensitive data filtered out for non Super-Admin view" }, "title": { "type": "string" }, "firstName": { "type": "string" }, "lastName": { "type": "string" }, "emailAddress": { "type": "string", "format": "email" }, "phoneNumber": { "type": "string" }, "mobileNumber": { "type": "string" }, "dropboxToken": { "type": "string" }, "enable": { "type": "boolean" }, "accountExpired": { "type": "boolean" }, "group": { "type": "object", "properties": { "id": { "type": "integer", "format": "int64" }, "name": { "type": "string", "description": "login or displayable name" } }, "description": "In JSON Objects, other entities (Branding, Parent OU, group...) can be referenced by an IdentifierDTO Object" }, "passwordExpireDays": { "type": "integer", "description": "Number of days before password expire. Null if not known (Super-Admin has NO OU). Integer.MAX_VALUE if no expiration policy in User OU." } } }, "organizationalUnit": { "type": "object", "properties": { "id": { "type": "integer", "format": "int64" }, "creationdate": { "type": "integer", "format": "int64" }, "accountIdentifier": { "type": "string", "description": "Only ASCII 0-9 A-Z a-z and -._~" }, "name": { "type": "string" }, "branding": { "type": "object", "properties": { "id": { "type": "integer", "format": "int64" }, "name": { "type": "string", "description": "login or displayable name" } }, "description": "In JSON Objects, other entities (Branding, Parent OU, group...) can be referenced by an IdentifierDTO Object" }, "parent": { "type": "object", "properties": { "id": { "type": "integer", "format": "int64" }, "name": { "type": "string", "description": "login or displayable name" } }, "description": "In JSON Objects, other entities (Branding, Parent OU, group...) can be referenced by an IdentifierDTO Object" }, "allowOUChildren": { "type": "boolean" }, "freezeDelayDays": { "type": "integer" }, "fileDelayDays": { "type": "integer" }, "dataDelayDays": { "type": "integer" }, "accountingCode": { "type": "string" }, "productionCode": { "type": "string" }, "partnerCode": { "type": "string" }, "billingType": { "type": "string" }, "ceilingType": { "type": "string" }, "ceilingTarget": { "type": "string" }, "ceilingFrequency": { "type": "string" }, "forceCategory": { "type": "boolean" }, "displayBilling": { "type": "boolean" }, "logoFile": { "type": "string" }, "defaultMailCountry": { "type": "string" }, "minPasswordEntropy": { "type": "integer", "description": "Minimum number of entropy bits, interger part of log2(guesses) ; only checked if > 0", "format": "int32" }, "maxPasswordValidityDays": { "type": "integer", "description": "Maximum number of days between password change by User ; only checked if > 0", "format": "int32" }, "properties": { "type": "object", "properties": { "currency": { "type": "string", "description": "3 chars" }, "timeZone": { "type": "string", "description": "default timeZone is UTC" }, "displayReturnAddress": { "type": "boolean" }, "emailAddress": { "type": "string" }, "senderAddress": { "type": "object", "properties": { "addressLines": { "type": "string" }, "countryCode": { "type": "string" } }, "description": "PostalAddress: addressLines separated by \\n. countryCode with 2 chars" }, "returnAddress": { "type": "object", "properties": { "addressLines": { "type": "string" }, "countryCode": { "type": "string" } }, "description": "PostalAddress: addressLines separated by \\n. countryCode with 2 chars" }, "siret": { "type": "string" }, "controlledValues": { "type": "array", "items": { "type": "object", "properties": { "name": { "type": "string" }, "elements": { "type": "array", "items": { "type": "string" } }, "allowFreeValue": { "type": "boolean", "description": "If true, user can enter a metadat value outside the elements list" } }, "description": "Can be used as ControlledValueMetadata in Service Metadata" } } } }, "enabled": { "type": "boolean" }, "accountExpired": { "type": "boolean" } }, "description": "Note: parent parameter can be NULL if root OU" }, "services": { "type": "array", "items": { "type": "object", "properties": { "id": { "type": "integer" }, "type": { "type": "string", "enum": [ "SIMPLE_UNIQUE", "SIMPLE_MULTIPLE", "PREPROCESSING", "ADVANCED" ] }, "name": { "type": "string" }, "organizationalUnit": { "type": "object", "properties": { "id": { "type": "integer", "format": "int64" }, "name": { "type": "string", "description": "login or displayable name" } }, "description": "In JSON Objects, other entities (Branding, Parent OU, group...) can be referenced by an IdentifierDTO Object" }, "properties": { "type": "object", "properties": { "description": { "type": "string" }, "iconName": { "type": "string" }, "boxes": { "type": "array", "items": { "discriminator": { "propertyName": "@type", "mapping": { "box.PDF": "#/components/schemas/BoxDoc", "box.DATA_FILE": "#/components/schemas/BoxDataFile", "box.ARCHIVE": "#/components/schemas/BoxArchive" } }, "oneOf": [ { "allOf": [ { "allOf": [ { "required": [ "@type", "maxElements", "minElements", "name" ], "type": "object", "properties": { "@type": { "type": "string", "enum": [ "box.PDF", "box.DATA_FILE", "box.ARCHIVE" ] }, "name": { "type": "string" }, "label": { "type": "string" }, "minElements": { "type": "integer" }, "maxElements": { "type": "integer" } } }, { "required": [ "configuredFiles", "main", "metadatas", "parent", "reconcile" ], "type": "object", "properties": { "main": { "type": "boolean", "description": "true if MAIN ; false if ATTACHMENT" }, "parent": { "type": "object", "properties": { "boxName": { "type": "string", "description": "Name of BoxArchive to extract files from. Must be a valid BoxArchive in current Service" }, "fileMatcher": { "discriminator": { "propertyName": "@type", "mapping": { "exb.Boolean": "#/components/schemas/BooleanExpressionConstant", "exb.AND": "#/components/schemas/BooleanExpressionAndOr", "exb.OR": "#/components/schemas/BooleanExpressionAndOr", "exb.NOT": "#/components/schemas/BooleanExpressionNot", "exb.ContentEqual": "#/components/schemas/BooleanExpressionStrEqual", "exb.LessThan": "#/components/schemas/BooleanExpressionNumeric", "exb.LessThanOrEqual": "#/components/schemas/BooleanExpressionNumeric", "exb.NumericEqual": "#/components/schemas/BooleanExpressionNumeric", "exb.StrContains": "#/components/schemas/BooleanExpressionStrEqual", "exb.StrStartsWith": "#/components/schemas/BooleanExpressionStrEqual", "exb.StrEndsWith": "#/components/schemas/BooleanExpressionStrEqual", "exb.StrMatches": "#/components/schemas/BooleanExpressionStrMatches" } }, "oneOf": [ { "allOf": [ { "required": [ "@type" ], "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.Boolean", "exb.AND", "exb.OR", "exb.NOT", "exb.ContentEqual", "exb.LessThan", "exb.LessThanOrEqual", "exb.NumericEqual", "exb.StrContains", "exb.StrStartsWith", "exb.StrEndsWith", "exb.StrMatches" ] } } }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.Boolean" ] }, "value": { "type": "boolean" } } } ] }, { "allOf": [ { "required": [ "@type" ], "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.Boolean", "exb.AND", "exb.OR", "exb.NOT", "exb.ContentEqual", "exb.LessThan", "exb.LessThanOrEqual", "exb.NumericEqual", "exb.StrContains", "exb.StrStartsWith", "exb.StrEndsWith", "exb.StrMatches" ] } } }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.AND", "exb.OR" ] }, "expr1": "[Circular]", "expr2": "[Circular]" } } ] }, { "allOf": [ { "required": [ "@type" ], "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.Boolean", "exb.AND", "exb.OR", "exb.NOT", "exb.ContentEqual", "exb.LessThan", "exb.LessThanOrEqual", "exb.NumericEqual", "exb.StrContains", "exb.StrStartsWith", "exb.StrEndsWith", "exb.StrMatches" ] } } }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.NOT" ] }, "expr": "[Circular]" } } ] }, { "allOf": [ { "allOf": [ { "required": [ "@type" ], "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.Boolean", "exb.AND", "exb.OR", "exb.NOT", "exb.ContentEqual", "exb.LessThan", "exb.LessThanOrEqual", "exb.NumericEqual", "exb.StrContains", "exb.StrStartsWith", "exb.StrEndsWith", "exb.StrMatches" ] } } }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.ContentEqual", "exb.LessThan", "exb.LessThanOrEqual", "exb.NumericEqual" ] }, "expr1": { "type": "object", "discriminator": { "propertyName": "@type", "mapping": { "exv.Value": "#/components/schemas/ExpressionConstant", "exv.FileName": "#/components/schemas/ExpressionFileName", "exv.PdfMetadata": "#/components/schemas/ExpressionPdfMetadata", "exv.PdfText": "#/components/schemas/ExpressionPdfText", "exv.Reference": "#/components/schemas/ExpressionReference", "exv.Concat": "#/components/schemas/ExpressionConcat", "exv.Substring": "#/components/schemas/ExpressionSubstring", "exv.NumSheetsValue": "#/components/schemas/ExpressionNumSheets", "exv.StrClean": "#/components/schemas/ExpressionStrClean", "exv.StrNormalizeCase": "#/components/schemas/ExpressionStrNormalizeCase", "exv.StrReplace": "#/components/schemas/ExpressionStrReplace" } }, "oneOf": [ { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Value" ] }, "value": { "type": "string" } }, "description": "Pre-defined text value" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Reference" ] }, "identifier": { "type": "string", "description": "Identifier of the element" } }, "description": "Reference another element, depends on the context" }, { "description": "Part of the name of the underlying file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.FileName" ] }, "begin": { "type": "integer", "format": "int64" }, "end": { "type": "integer", "format": "int64" } } } ] }, { "description": "Text extraction from the underlying PDF file of the box. The area parameter is where is located the text to extract", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfText" ] }, "page": { "type": "integer", "description": "Page on which to extract the text. Page -1 means last page, -2 means before last page, and so on. Page starts at 1. Page 0 is invalid and will always return \"\"." }, "area": { "type": "object", "properties": { "left": { "minimum": 0, "type": "number", "format": "float" }, "top": { "minimum": 0, "type": "number", "format": "float" }, "width": { "minimum": 0, "type": "number", "format": "float" }, "height": { "minimum": 0, "type": "number", "format": "float" } }, "description": "ZoneArea object" }, "extractionParameters": { "type": "object", "additionalProperties": { "type": "string" }, "description": "Parameters for the extraction. Depends on the library used." } } } ] }, { "description": "PDF metadata value from the underlying PDF file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfMetadata" ] }, "metadataName": { "type": "string", "description": "Name of the PDF metadata to extract" } } } ] }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Concat" ] }, "operands": { "type": "array", "items": "[Circular]" } }, "description": "Concat: concatenates all Expressions given in argument" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrClean" ] }, "expr": "[Circular]", "normalizeSpace": { "type": "boolean", "description": "Replaces all Unicode spaces with standard space character (\\u0020) then replace consecutive space characters by a single one." }, "removeDiacritics": { "type": "boolean", "description": "Replaces the accentuated letters with their un-accentuated version" }, "multiline": { "type": "boolean", "description": "Replaces every Unicode line terminator character to the standard linefeed character (\\u000A) and de-duplicates them. If trim is set, it applies on each line. Trim also removes blank lines." }, "trim": { "type": "boolean", "description": "Removes all the control characters at the beginning and the end of the string (Technically, removes all characters equal or below ASCII U+0020 (space character). If multiline is set, applies on all lines rather than the whole string." } }, "description": "Cleans a string" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrNormalizeCase" ] }, "expr": "[Circular]", "toUpper": { "type": "boolean", "description": "is set, the normalization will be to Upper Case, otherwise it will be to Lower Case" } }, "description": "Normalizes the case of the String" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrReplace" ] }, "expr": "[Circular]", "regExpPattern": { "type": "string", "description": "valid Regular Expression that the input string should match" }, "replacement": { "type": "string", "description": "The replacement to use for each match of the string. The replacement can contain $1, $2, ... elements that will be replaced by capturing groups of the match. '\\' is an escape character, so to have a real '$' sign in replacement, use '\\$'. Same for the escape character itself, use '\\\\'." }, "firstOnly": { "type": "boolean", "description": "If set, the match/replacement will be applied to the first match of the string only, otherwise it will apply on all matches." } }, "description": "Normalizes the case of the String" } ] }, "expr2": { "type": "object", "discriminator": { "propertyName": "@type", "mapping": { "exv.Value": "#/components/schemas/ExpressionConstant", "exv.FileName": "#/components/schemas/ExpressionFileName", "exv.PdfMetadata": "#/components/schemas/ExpressionPdfMetadata", "exv.PdfText": "#/components/schemas/ExpressionPdfText", "exv.Reference": "#/components/schemas/ExpressionReference", "exv.Concat": "#/components/schemas/ExpressionConcat", "exv.Substring": "#/components/schemas/ExpressionSubstring", "exv.NumSheetsValue": "#/components/schemas/ExpressionNumSheets", "exv.StrClean": "#/components/schemas/ExpressionStrClean", "exv.StrNormalizeCase": "#/components/schemas/ExpressionStrNormalizeCase", "exv.StrReplace": "#/components/schemas/ExpressionStrReplace" } }, "oneOf": [ { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Value" ] }, "value": { "type": "string" } }, "description": "Pre-defined text value" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Reference" ] }, "identifier": { "type": "string", "description": "Identifier of the element" } }, "description": "Reference another element, depends on the context" }, { "description": "Part of the name of the underlying file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.FileName" ] }, "begin": { "type": "integer", "format": "int64" }, "end": { "type": "integer", "format": "int64" } } } ] }, { "description": "Text extraction from the underlying PDF file of the box. The area parameter is where is located the text to extract", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfText" ] }, "page": { "type": "integer", "description": "Page on which to extract the text. Page -1 means last page, -2 means before last page, and so on. Page starts at 1. Page 0 is invalid and will always return \"\"." }, "area": { "type": "object", "properties": { "left": { "minimum": 0, "type": "number", "format": "float" }, "top": { "minimum": 0, "type": "number", "format": "float" }, "width": { "minimum": 0, "type": "number", "format": "float" }, "height": { "minimum": 0, "type": "number", "format": "float" } }, "description": "ZoneArea object" }, "extractionParameters": { "type": "object", "additionalProperties": { "type": "string" }, "description": "Parameters for the extraction. Depends on the library used." } } } ] }, { "description": "PDF metadata value from the underlying PDF file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfMetadata" ] }, "metadataName": { "type": "string", "description": "Name of the PDF metadata to extract" } } } ] }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Concat" ] }, "operands": { "type": "array", "items": "[Circular]" } }, "description": "Concat: concatenates all Expressions given in argument" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrClean" ] }, "expr": "[Circular]", "normalizeSpace": { "type": "boolean", "description": "Replaces all Unicode spaces with standard space character (\\u0020) then replace consecutive space characters by a single one." }, "removeDiacritics": { "type": "boolean", "description": "Replaces the accentuated letters with their un-accentuated version" }, "multiline": { "type": "boolean", "description": "Replaces every Unicode line terminator character to the standard linefeed character (\\u000A) and de-duplicates them. If trim is set, it applies on each line. Trim also removes blank lines." }, "trim": { "type": "boolean", "description": "Removes all the control characters at the beginning and the end of the string (Technically, removes all characters equal or below ASCII U+0020 (space character). If multiline is set, applies on all lines rather than the whole string." } }, "description": "Cleans a string" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrNormalizeCase" ] }, "expr": "[Circular]", "toUpper": { "type": "boolean", "description": "is set, the normalization will be to Upper Case, otherwise it will be to Lower Case" } }, "description": "Normalizes the case of the String" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrReplace" ] }, "expr": "[Circular]", "regExpPattern": { "type": "string", "description": "valid Regular Expression that the input string should match" }, "replacement": { "type": "string", "description": "The replacement to use for each match of the string. The replacement can contain $1, $2, ... elements that will be replaced by capturing groups of the match. '\\' is an escape character, so to have a real '$' sign in replacement, use '\\$'. Same for the escape character itself, use '\\\\'." }, "firstOnly": { "type": "boolean", "description": "If set, the match/replacement will be applied to the first match of the string only, otherwise it will apply on all matches." } }, "description": "Normalizes the case of the String" } ] } } } ] }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.ContentEqual", "exb.StrContains", "exb.StrStartsWith", "exb.StrEndsWith" ] } } } ] }, { "allOf": [ { "allOf": [ { "required": [ "@type" ], "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.Boolean", "exb.AND", "exb.OR", "exb.NOT", "exb.ContentEqual", "exb.LessThan", "exb.LessThanOrEqual", "exb.NumericEqual", "exb.StrContains", "exb.StrStartsWith", "exb.StrEndsWith", "exb.StrMatches" ] } } }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.ContentEqual", "exb.LessThan", "exb.LessThanOrEqual", "exb.NumericEqual" ] }, "expr1": { "type": "object", "discriminator": { "propertyName": "@type", "mapping": { "exv.Value": "#/components/schemas/ExpressionConstant", "exv.FileName": "#/components/schemas/ExpressionFileName", "exv.PdfMetadata": "#/components/schemas/ExpressionPdfMetadata", "exv.PdfText": "#/components/schemas/ExpressionPdfText", "exv.Reference": "#/components/schemas/ExpressionReference", "exv.Concat": "#/components/schemas/ExpressionConcat", "exv.Substring": "#/components/schemas/ExpressionSubstring", "exv.NumSheetsValue": "#/components/schemas/ExpressionNumSheets", "exv.StrClean": "#/components/schemas/ExpressionStrClean", "exv.StrNormalizeCase": "#/components/schemas/ExpressionStrNormalizeCase", "exv.StrReplace": "#/components/schemas/ExpressionStrReplace" } }, "oneOf": [ { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Value" ] }, "value": { "type": "string" } }, "description": "Pre-defined text value" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Reference" ] }, "identifier": { "type": "string", "description": "Identifier of the element" } }, "description": "Reference another element, depends on the context" }, { "description": "Part of the name of the underlying file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.FileName" ] }, "begin": { "type": "integer", "format": "int64" }, "end": { "type": "integer", "format": "int64" } } } ] }, { "description": "Text extraction from the underlying PDF file of the box. The area parameter is where is located the text to extract", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfText" ] }, "page": { "type": "integer", "description": "Page on which to extract the text. Page -1 means last page, -2 means before last page, and so on. Page starts at 1. Page 0 is invalid and will always return \"\"." }, "area": { "type": "object", "properties": { "left": { "minimum": 0, "type": "number", "format": "float" }, "top": { "minimum": 0, "type": "number", "format": "float" }, "width": { "minimum": 0, "type": "number", "format": "float" }, "height": { "minimum": 0, "type": "number", "format": "float" } }, "description": "ZoneArea object" }, "extractionParameters": { "type": "object", "additionalProperties": { "type": "string" }, "description": "Parameters for the extraction. Depends on the library used." } } } ] }, { "description": "PDF metadata value from the underlying PDF file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfMetadata" ] }, "metadataName": { "type": "string", "description": "Name of the PDF metadata to extract" } } } ] }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Concat" ] }, "operands": { "type": "array", "items": "[Circular]" } }, "description": "Concat: concatenates all Expressions given in argument" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrClean" ] }, "expr": "[Circular]", "normalizeSpace": { "type": "boolean", "description": "Replaces all Unicode spaces with standard space character (\\u0020) then replace consecutive space characters by a single one." }, "removeDiacritics": { "type": "boolean", "description": "Replaces the accentuated letters with their un-accentuated version" }, "multiline": { "type": "boolean", "description": "Replaces every Unicode line terminator character to the standard linefeed character (\\u000A) and de-duplicates them. If trim is set, it applies on each line. Trim also removes blank lines." }, "trim": { "type": "boolean", "description": "Removes all the control characters at the beginning and the end of the string (Technically, removes all characters equal or below ASCII U+0020 (space character). If multiline is set, applies on all lines rather than the whole string." } }, "description": "Cleans a string" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrNormalizeCase" ] }, "expr": "[Circular]", "toUpper": { "type": "boolean", "description": "is set, the normalization will be to Upper Case, otherwise it will be to Lower Case" } }, "description": "Normalizes the case of the String" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrReplace" ] }, "expr": "[Circular]", "regExpPattern": { "type": "string", "description": "valid Regular Expression that the input string should match" }, "replacement": { "type": "string", "description": "The replacement to use for each match of the string. The replacement can contain $1, $2, ... elements that will be replaced by capturing groups of the match. '\\' is an escape character, so to have a real '$' sign in replacement, use '\\$'. Same for the escape character itself, use '\\\\'." }, "firstOnly": { "type": "boolean", "description": "If set, the match/replacement will be applied to the first match of the string only, otherwise it will apply on all matches." } }, "description": "Normalizes the case of the String" } ] }, "expr2": { "type": "object", "discriminator": { "propertyName": "@type", "mapping": { "exv.Value": "#/components/schemas/ExpressionConstant", "exv.FileName": "#/components/schemas/ExpressionFileName", "exv.PdfMetadata": "#/components/schemas/ExpressionPdfMetadata", "exv.PdfText": "#/components/schemas/ExpressionPdfText", "exv.Reference": "#/components/schemas/ExpressionReference", "exv.Concat": "#/components/schemas/ExpressionConcat", "exv.Substring": "#/components/schemas/ExpressionSubstring", "exv.NumSheetsValue": "#/components/schemas/ExpressionNumSheets", "exv.StrClean": "#/components/schemas/ExpressionStrClean", "exv.StrNormalizeCase": "#/components/schemas/ExpressionStrNormalizeCase", "exv.StrReplace": "#/components/schemas/ExpressionStrReplace" } }, "oneOf": [ { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Value" ] }, "value": { "type": "string" } }, "description": "Pre-defined text value" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Reference" ] }, "identifier": { "type": "string", "description": "Identifier of the element" } }, "description": "Reference another element, depends on the context" }, { "description": "Part of the name of the underlying file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.FileName" ] }, "begin": { "type": "integer", "format": "int64" }, "end": { "type": "integer", "format": "int64" } } } ] }, { "description": "Text extraction from the underlying PDF file of the box. The area parameter is where is located the text to extract", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfText" ] }, "page": { "type": "integer", "description": "Page on which to extract the text. Page -1 means last page, -2 means before last page, and so on. Page starts at 1. Page 0 is invalid and will always return \"\"." }, "area": { "type": "object", "properties": { "left": { "minimum": 0, "type": "number", "format": "float" }, "top": { "minimum": 0, "type": "number", "format": "float" }, "width": { "minimum": 0, "type": "number", "format": "float" }, "height": { "minimum": 0, "type": "number", "format": "float" } }, "description": "ZoneArea object" }, "extractionParameters": { "type": "object", "additionalProperties": { "type": "string" }, "description": "Parameters for the extraction. Depends on the library used." } } } ] }, { "description": "PDF metadata value from the underlying PDF file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfMetadata" ] }, "metadataName": { "type": "string", "description": "Name of the PDF metadata to extract" } } } ] }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Concat" ] }, "operands": { "type": "array", "items": "[Circular]" } }, "description": "Concat: concatenates all Expressions given in argument" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrClean" ] }, "expr": "[Circular]", "normalizeSpace": { "type": "boolean", "description": "Replaces all Unicode spaces with standard space character (\\u0020) then replace consecutive space characters by a single one." }, "removeDiacritics": { "type": "boolean", "description": "Replaces the accentuated letters with their un-accentuated version" }, "multiline": { "type": "boolean", "description": "Replaces every Unicode line terminator character to the standard linefeed character (\\u000A) and de-duplicates them. If trim is set, it applies on each line. Trim also removes blank lines." }, "trim": { "type": "boolean", "description": "Removes all the control characters at the beginning and the end of the string (Technically, removes all characters equal or below ASCII U+0020 (space character). If multiline is set, applies on all lines rather than the whole string." } }, "description": "Cleans a string" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrNormalizeCase" ] }, "expr": "[Circular]", "toUpper": { "type": "boolean", "description": "is set, the normalization will be to Upper Case, otherwise it will be to Lower Case" } }, "description": "Normalizes the case of the String" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrReplace" ] }, "expr": "[Circular]", "regExpPattern": { "type": "string", "description": "valid Regular Expression that the input string should match" }, "replacement": { "type": "string", "description": "The replacement to use for each match of the string. The replacement can contain $1, $2, ... elements that will be replaced by capturing groups of the match. '\\' is an escape character, so to have a real '$' sign in replacement, use '\\$'. Same for the escape character itself, use '\\\\'." }, "firstOnly": { "type": "boolean", "description": "If set, the match/replacement will be applied to the first match of the string only, otherwise it will apply on all matches." } }, "description": "Normalizes the case of the String" } ] } } } ] }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.LessThan", "exb.LessThanOrEqual", "exb.NumericEqual" ] } } } ] }, { "allOf": [ { "required": [ "@type" ], "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.Boolean", "exb.AND", "exb.OR", "exb.NOT", "exb.ContentEqual", "exb.LessThan", "exb.LessThanOrEqual", "exb.NumericEqual", "exb.StrContains", "exb.StrStartsWith", "exb.StrEndsWith", "exb.StrMatches" ] } } }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.StrMatches" ] }, "expr": { "type": "object", "discriminator": { "propertyName": "@type", "mapping": { "exv.Value": "#/components/schemas/ExpressionConstant", "exv.FileName": "#/components/schemas/ExpressionFileName", "exv.PdfMetadata": "#/components/schemas/ExpressionPdfMetadata", "exv.PdfText": "#/components/schemas/ExpressionPdfText", "exv.Reference": "#/components/schemas/ExpressionReference", "exv.Concat": "#/components/schemas/ExpressionConcat", "exv.Substring": "#/components/schemas/ExpressionSubstring", "exv.NumSheetsValue": "#/components/schemas/ExpressionNumSheets", "exv.StrClean": "#/components/schemas/ExpressionStrClean", "exv.StrNormalizeCase": "#/components/schemas/ExpressionStrNormalizeCase", "exv.StrReplace": "#/components/schemas/ExpressionStrReplace" } }, "oneOf": [ { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Value" ] }, "value": { "type": "string" } }, "description": "Pre-defined text value" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Reference" ] }, "identifier": { "type": "string", "description": "Identifier of the element" } }, "description": "Reference another element, depends on the context" }, { "description": "Part of the name of the underlying file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.FileName" ] }, "begin": { "type": "integer", "format": "int64" }, "end": { "type": "integer", "format": "int64" } } } ] }, { "description": "Text extraction from the underlying PDF file of the box. The area parameter is where is located the text to extract", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfText" ] }, "page": { "type": "integer", "description": "Page on which to extract the text. Page -1 means last page, -2 means before last page, and so on. Page starts at 1. Page 0 is invalid and will always return \"\"." }, "area": { "type": "object", "properties": { "left": { "minimum": 0, "type": "number", "format": "float" }, "top": { "minimum": 0, "type": "number", "format": "float" }, "width": { "minimum": 0, "type": "number", "format": "float" }, "height": { "minimum": 0, "type": "number", "format": "float" } }, "description": "ZoneArea object" }, "extractionParameters": { "type": "object", "additionalProperties": { "type": "string" }, "description": "Parameters for the extraction. Depends on the library used." } } } ] }, { "description": "PDF metadata value from the underlying PDF file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfMetadata" ] }, "metadataName": { "type": "string", "description": "Name of the PDF metadata to extract" } } } ] }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Concat" ] }, "operands": { "type": "array", "items": "[Circular]" } }, "description": "Concat: concatenates all Expressions given in argument" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrClean" ] }, "expr": "[Circular]", "normalizeSpace": { "type": "boolean", "description": "Replaces all Unicode spaces with standard space character (\\u0020) then replace consecutive space characters by a single one." }, "removeDiacritics": { "type": "boolean", "description": "Replaces the accentuated letters with their un-accentuated version" }, "multiline": { "type": "boolean", "description": "Replaces every Unicode line terminator character to the standard linefeed character (\\u000A) and de-duplicates them. If trim is set, it applies on each line. Trim also removes blank lines." }, "trim": { "type": "boolean", "description": "Removes all the control characters at the beginning and the end of the string (Technically, removes all characters equal or below ASCII U+0020 (space character). If multiline is set, applies on all lines rather than the whole string." } }, "description": "Cleans a string" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrNormalizeCase" ] }, "expr": "[Circular]", "toUpper": { "type": "boolean", "description": "is set, the normalization will be to Upper Case, otherwise it will be to Lower Case" } }, "description": "Normalizes the case of the String" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrReplace" ] }, "expr": "[Circular]", "regExpPattern": { "type": "string", "description": "valid Regular Expression that the input string should match" }, "replacement": { "type": "string", "description": "The replacement to use for each match of the string. The replacement can contain $1, $2, ... elements that will be replaced by capturing groups of the match. '\\' is an escape character, so to have a real '$' sign in replacement, use '\\$'. Same for the escape character itself, use '\\\\'." }, "firstOnly": { "type": "boolean", "description": "If set, the match/replacement will be applied to the first match of the string only, otherwise it will apply on all matches." } }, "description": "Normalizes the case of the String" } ] }, "regExpPattern": { "type": "string", "description": "valid Regular Expression to check the value against" }, "matchWhole": { "type": "boolean", "description": "if set, indicates that the Regular Expression should match the whole value. If not set, the Regular Expression describe only a part of the value." } } } ] } ] }, "rank": { "type": "integer", "description": "Used to sort multiple 'fileMatcher' expressions extracting from the same BoxArchive (extractor process will ty to match rank 1, then rank 2 ...)" } }, "description": "Allow an AbstractInflatedBox (Doc or DataFile) to retrieve its files from a BoxArchive (Zip) ; 'fileMatcher' boolean expression can use ArchiveFileRelativePathnameValue \"exv.ArchiveFileRelativePathname\" to match a file from its relative pathname in Zip" }, "metadatas": { "type": "array", "items": { "type": "object", "properties": { "name": { "type": "string" }, "persist": { "type": "boolean" }, "editable": { "type": "boolean" }, "content": { "type": "object", "discriminator": { "propertyName": "@type", "mapping": { "exv.Value": "#/components/schemas/ExpressionConstant", "exv.FileName": "#/components/schemas/ExpressionFileName", "exv.PdfMetadata": "#/components/schemas/ExpressionPdfMetadata", "exv.PdfText": "#/components/schemas/ExpressionPdfText", "exv.Reference": "#/components/schemas/ExpressionReference", "exv.Concat": "#/components/schemas/ExpressionConcat", "exv.Substring": "#/components/schemas/ExpressionSubstring", "exv.NumSheetsValue": "#/components/schemas/ExpressionNumSheets", "exv.StrClean": "#/components/schemas/ExpressionStrClean", "exv.StrNormalizeCase": "#/components/schemas/ExpressionStrNormalizeCase", "exv.StrReplace": "#/components/schemas/ExpressionStrReplace" } }, "oneOf": [ { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Value" ] }, "value": { "type": "string" } }, "description": "Pre-defined text value" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Reference" ] }, "identifier": { "type": "string", "description": "Identifier of the element" } }, "description": "Reference another element, depends on the context" }, { "description": "Part of the name of the underlying file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.FileName" ] }, "begin": { "type": "integer", "format": "int64" }, "end": { "type": "integer", "format": "int64" } } } ] }, { "description": "Text extraction from the underlying PDF file of the box. The area parameter is where is located the text to extract", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfText" ] }, "page": { "type": "integer", "description": "Page on which to extract the text. Page -1 means last page, -2 means before last page, and so on. Page starts at 1. Page 0 is invalid and will always return \"\"." }, "area": { "type": "object", "properties": { "left": { "minimum": 0, "type": "number", "format": "float" }, "top": { "minimum": 0, "type": "number", "format": "float" }, "width": { "minimum": 0, "type": "number", "format": "float" }, "height": { "minimum": 0, "type": "number", "format": "float" } }, "description": "ZoneArea object" }, "extractionParameters": { "type": "object", "additionalProperties": { "type": "string" }, "description": "Parameters for the extraction. Depends on the library used." } } } ] }, { "description": "PDF metadata value from the underlying PDF file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfMetadata" ] }, "metadataName": { "type": "string", "description": "Name of the PDF metadata to extract" } } } ] }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Concat" ] }, "operands": { "type": "array", "items": "[Circular]" } }, "description": "Concat: concatenates all Expressions given in argument" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrClean" ] }, "expr": "[Circular]", "normalizeSpace": { "type": "boolean", "description": "Replaces all Unicode spaces with standard space character (\\u0020) then replace consecutive space characters by a single one." }, "removeDiacritics": { "type": "boolean", "description": "Replaces the accentuated letters with their un-accentuated version" }, "multiline": { "type": "boolean", "description": "Replaces every Unicode line terminator character to the standard linefeed character (\\u000A) and de-duplicates them. If trim is set, it applies on each line. Trim also removes blank lines." }, "trim": { "type": "boolean", "description": "Removes all the control characters at the beginning and the end of the string (Technically, removes all characters equal or below ASCII U+0020 (space character). If multiline is set, applies on all lines rather than the whole string." } }, "description": "Cleans a string" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrNormalizeCase" ] }, "expr": "[Circular]", "toUpper": { "type": "boolean", "description": "is set, the normalization will be to Upper Case, otherwise it will be to Lower Case" } }, "description": "Normalizes the case of the String" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrReplace" ] }, "expr": "[Circular]", "regExpPattern": { "type": "string", "description": "valid Regular Expression that the input string should match" }, "replacement": { "type": "string", "description": "The replacement to use for each match of the string. The replacement can contain $1, $2, ... elements that will be replaced by capturing groups of the match. '\\' is an escape character, so to have a real '$' sign in replacement, use '\\$'. Same for the escape character itself, use '\\\\'." }, "firstOnly": { "type": "boolean", "description": "If set, the match/replacement will be applied to the first match of the string only, otherwise it will apply on all matches." } }, "description": "Normalizes the case of the String" } ] } }, "description": "The content is an expression to extract the metadata value. Constraints on the content are: References are the name of the metadatas. Only the metadatas of the current box or metadatas of MAIN boxes (if the current box is not a MAIN box) are allowed. The Box configuration in Expression must match the box in which it is configured. Example: if the box is a MAIN box, fromMain must be set to true. If the box is not a MAIN box, fromMain must be set to false and boxName to the value of this box." } }, "reconcile": { "required": [ "condition" ], "type": "object", "properties": { "condition": { "discriminator": { "propertyName": "@type", "mapping": { "exb.Boolean": "#/components/schemas/BooleanExpressionConstant", "exb.AND": "#/components/schemas/BooleanExpressionAndOr", "exb.OR": "#/components/schemas/BooleanExpressionAndOr", "exb.NOT": "#/components/schemas/BooleanExpressionNot", "exb.ContentEqual": "#/components/schemas/BooleanExpressionStrEqual", "exb.LessThan": "#/components/schemas/BooleanExpressionNumeric", "exb.LessThanOrEqual": "#/components/schemas/BooleanExpressionNumeric", "exb.NumericEqual": "#/components/schemas/BooleanExpressionNumeric", "exb.StrContains": "#/components/schemas/BooleanExpressionStrEqual", "exb.StrStartsWith": "#/components/schemas/BooleanExpressionStrEqual", "exb.StrEndsWith": "#/components/schemas/BooleanExpressionStrEqual", "exb.StrMatches": "#/components/schemas/BooleanExpressionStrMatches" } }, "oneOf": [ { "allOf": [ { "required": [ "@type" ], "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.Boolean", "exb.AND", "exb.OR", "exb.NOT", "exb.ContentEqual", "exb.LessThan", "exb.LessThanOrEqual", "exb.NumericEqual", "exb.StrContains", "exb.StrStartsWith", "exb.StrEndsWith", "exb.StrMatches" ] } } }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.Boolean" ] }, "value": { "type": "boolean" } } } ] }, { "allOf": [ { "required": [ "@type" ], "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.Boolean", "exb.AND", "exb.OR", "exb.NOT", "exb.ContentEqual", "exb.LessThan", "exb.LessThanOrEqual", "exb.NumericEqual", "exb.StrContains", "exb.StrStartsWith", "exb.StrEndsWith", "exb.StrMatches" ] } } }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.AND", "exb.OR" ] }, "expr1": "[Circular]", "expr2": "[Circular]" } } ] }, { "allOf": [ { "required": [ "@type" ], "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.Boolean", "exb.AND", "exb.OR", "exb.NOT", "exb.ContentEqual", "exb.LessThan", "exb.LessThanOrEqual", "exb.NumericEqual", "exb.StrContains", "exb.StrStartsWith", "exb.StrEndsWith", "exb.StrMatches" ] } } }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.NOT" ] }, "expr": "[Circular]" } } ] }, { "allOf": [ { "allOf": [ { "required": [ "@type" ], "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.Boolean", "exb.AND", "exb.OR", "exb.NOT", "exb.ContentEqual", "exb.LessThan", "exb.LessThanOrEqual", "exb.NumericEqual", "exb.StrContains", "exb.StrStartsWith", "exb.StrEndsWith", "exb.StrMatches" ] } } }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exb.ContentEqual", "exb.LessThan", "exb.LessThanOrEqual", "exb.NumericEqual" ] }, "expr1": { "type": "object", "discriminator": { "propertyName": "@type", "mapping": { "exv.Value": "#/components/schemas/ExpressionConstant", "exv.FileName": "#/components/schemas/ExpressionFileName", "exv.PdfMetadata": "#/components/schemas/ExpressionPdfMetadata", "exv.PdfText": "#/components/schemas/ExpressionPdfText", "exv.Reference": "#/components/schemas/ExpressionReference", "exv.Concat": "#/components/schemas/ExpressionConcat", "exv.Substring": "#/components/schemas/ExpressionSubstring", "exv.NumSheetsValue": "#/components/schemas/ExpressionNumSheets", "exv.StrClean": "#/components/schemas/ExpressionStrClean", "exv.StrNormalizeCase": "#/components/schemas/ExpressionStrNormalizeCase", "exv.StrReplace": "#/components/schemas/ExpressionStrReplace" } }, "oneOf": [ { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Value" ] }, "value": { "type": "string" } }, "description": "Pre-defined text value" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Reference" ] }, "identifier": { "type": "string", "description": "Identifier of the element" } }, "description": "Reference another element, depends on the context" }, { "description": "Part of the name of the underlying file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.FileName" ] }, "begin": { "type": "integer", "format": "int64" }, "end": { "type": "integer", "format": "int64" } } } ] }, { "description": "Text extraction from the underlying PDF file of the box. The area parameter is where is located the text to extract", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfText" ] }, "page": { "type": "integer", "description": "Page on which to extract the text. Page -1 means last page, -2 means before last page, and so on. Page starts at 1. Page 0 is invalid and will always return \"\"." }, "area": { "type": "object", "properties": { "left": { "minimum": 0, "type": "number", "format": "float" }, "top": { "minimum": 0, "type": "number", "format": "float" }, "width": { "minimum": 0, "type": "number", "format": "float" }, "height": { "minimum": 0, "type": "number", "format": "float" } }, "description": "ZoneArea object" }, "extractionParameters": { "type": "object", "additionalProperties": { "type": "string" }, "description": "Parameters for the extraction. Depends on the library used." } } } ] }, { "description": "PDF metadata value from the underlying PDF file of the box", "allOf": [ { "type": "object", "properties": { "@type": { "type": "string" }, "fromMain": { "type": "boolean", "description": "If true, the target box is a MAIN box" }, "boxName": { "type": "string", "description": "Ignored if fromMain is true. Otherwise, indicates the name of the target box" } }, "description": "Properties common to all box files" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.PdfMetadata" ] }, "metadataName": { "type": "string", "description": "Name of the PDF metadata to extract" } } } ] }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.Concat" ] }, "operands": { "type": "array", "items": "[Circular]" } }, "description": "Concat: concatenates all Expressions given in argument" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrClean" ] }, "expr": "[Circular]", "normalizeSpace": { "type": "boolean", "description": "Replaces all Unicode spaces with standard space character (\\u0020) then replace consecutive space characters by a single one." }, "removeDiacritics": { "type": "boolean", "description": "Replaces the accentuated letters with their un-accentuated version" }, "multiline": { "type": "boolean", "description": "Replaces every Unicode line terminator character to the standard linefeed character (\\u000A) and de-duplicates them. If trim is set, it applies on each line. Trim also removes blank lines." }, "trim": { "type": "boolean", "description": "Removes all the control characters at the beginning and the end of the string (Technically, removes all characters equal or below ASCII U+0020 (space character). If multiline is set, applies on all lines rather than the whole string." } }, "description": "Cleans a string" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "exv.StrNormalizeCase" ] }, "expr": "[Circular]", "toUpper": { "type": "boolean", "description": "is set, the normalization will be to Upper Case, otherwise it will be to Lower Case" } }, "description": "Normalizes the case of the String" }, { "type": "object", "properties": { "@type": { "type": "string", "enum": [ "ex