Addressable entities and operators in RAQL

Galaxies

The following galaxies are built into RAQL. The scheme of each galaxy contains by convention a tuple with one component named after the galaxy. For example the galaxy “revisions” contains one component called “revision” that contains the revisions managed by the Integration Service.

Galaxy

Component type

Description

attributeDefs

attributeDef

The galaxy containing all attribute definitions

attributeTypes

attributeType

The transient galaxy containing the existing attribute types of all tenants

auditTrail

auditEvent

The galaxy containing all audit trail events

(This galaxy can only be searched on its own: A query on this galaxy may not include another non-transient galaxy. This is because the audit trail may reside in a separate database from other repository entities.)

authUser

authUser

The galaxy containing the currently authenticated user

batchItems

batchItem

The galaxy containing all items in open batch operations

binaryObjects

binaryObject

The galaxy containing all binary objects

client:accessObjects

accessObject

A galaxy for modeling customized aspects in the client (WorkplaceClient / AdminClient)

contentProperties

contentProperty

The transient galaxy contains the content properties when accessing the contents of a revision. Use this galaxy to restrict access to content properties.

contents

content

The transient galaxy containing the current content object when accessing the contents of a revision. Use this galaxy to restrict access to content objects.

documents

document

The galaxy containing all documents

documentTypes

documentType

The galaxy containing all document types

events

event

The galaxy containing all retention events

folders

folder

The galaxy containing all folder entries. This includes entries of type “folder” and of type “document”.

holds

hold

The galaxy containing all retention holds (active and already lifted)

Integrationservice:operations

integrationserviceOperation

The galaxy containing all integration service operations to which the execute right can be specified on the service bean level

metadata

revision x attribute value

The galaxy containing all revisions of a document type and projections of some of their metadata

params:createDocument

document

This galaxy contains the document type that is about to be created during a permission check for creating a document type. Similar to the “params:createRevision” galaxy, permissions related to creating a document type must use this galaxy in their queries.

params:createRevision

revision

The transient galaxy containing the newly created revision during the createDocument or createMultipleDocuments requests. Use this galaxy to define the create right for the initial revision of documents.

params:documentType

documentType

The transient galaxy contains the newly created document type during the createDocumentType request. Use this galaxy to define the create right for document types.

params:eraseRevision

revision

The transient galaxy contains the revisions to be erased in an eraseDocument request. Use this galaxy to define the erase permission for the revisions of a document. Only function "erase" is checked on this galaxy.

params:restoreRevision

revision

The transient galaxy contains the revisions to be restored in a restoreDocument request. Use this galaxy to define the restore permission for the revisions of a document. Only function "restore" is checked on this galaxy.

plans

plan

The galaxy containing all retention plans.

plan:document

document

During the execution of a retention plan, this transient galaxy contains the document to which the plan belongs.

plan:revision

revision

Since 9.3.3: During the execution of a retention plan, this transient galaxy contains the latest revision of the document to which the plan belongs.

plans

plan

The galaxy containing all retention plans

revisions

revision

The galaxy containing all revisions

roles

role

The galaxy containing all defined roles

webservice:operations

webserviceOperation

The galaxy containing all integration web service operations. Use this galaxy to specify the execute right for web service operations.

Types without galaxies

The following non-primitive RAQL types have no dedicated galaxies:

  • attribute: This type is returned by the ima:metadata:<attributeName> operators. It represents an attribute definition and an attribute value. Operators such as ima:attribute:matches or ima:attribute:isEmpty can be used on this type.

  • retentionMark: This type is returned by the ima:document:retentionMark operator and represents the retention status of a given document.

  • planState: This type is returned by the ima:plan:state operator and represents the current wait or execution state of the plan.

Attribute values galaxy

For each attribute definition in the system there is a galaxy that contains all non-empty attribute values for that definition and the revisions they belong to. These galaxies allow access to attribute values for grouping or sorting. To formulate restrictions on attribute values, the “ima:attribute:matches” operator can be used.

The attribute values galaxies have a common prefix “attributeValues:” followed by the name of the attribute. Assuming there is a document type with the attribute “invoiceNumber” in the system, then the galaxy “attributeValues:invoiceNumber” contains all non-empty attribute values of this type with their respective revisions. If the attribute is a multi-value attribute, then the galaxy may contain multiple entries for the same revision, one for each attribute value belonging to the revision. The permissions to revisions restrict the contents of these galaxies as well, that is, the galaxy only contains values for revisions that the current role is allowed to read.

The attribute values galaxies have two columns. The first column is named “revisions” and contains objects of the type “revision”. The second column is named “values” and contains objects of the attribute’s value type.

The following example groups revisions with an “invoiceDate” attribute by that date and counts them:

Copy

Example with galaxy "attributeValues"

groupingProject(["date", ref("values")],
                ["count", aggregation(count, ref("revisions"))],
                galaxy(attributeValues:invoiceDate))

 

Metadata galaxy

The metadata galaxy projects one or more attributes of a document type at the same time. It is just a syntactic shortcut to project multiple values at once.

The galaxy must have one or more constant parameters that specify the names of the attributes to project. All attributes must be part of the same document type. The resulting query will contain all revisions of that document type with the given attribute values projected. The columns will have the name of the projected attribute.

The difference to the “attributeValues” galaxy is that this galaxy always contains an entry per revision, even if the projected attributes are empty. In such a case the attribute values will be null.

Copy
Example with galaxy "metadata"
galaxy(metadata, const("invoiceDate"), const("invoiceNumber"))

 

This example is internally transformed into the query:

Copy

Query example in the context of the galaxy "metadata"

project(["revisions", ref("revisions")],
        ["invoiceDate", ima:attribute:value(ima:metadata:invoiceDate(ref("revisions")))],
        ["invoiceNumber", ima:attribute:value(ima:metadata:invoiceNumber(ref("revisions")))],
  restrict(=(ima:documentType:name(ima:revision:documentType(ref("revisions"))),
             const("invoice")),
    galaxy(revisions)))

Since the galaxy is transformed into a query involving the operator “ima:attribute:value”, the restrictions concerning the use of this operator apply.

Numeric operators

Operator name

Arguments

Return value

Semantics

abs

number

number

Returns the absolute value

-

number [x number]

number

Subtracts the argument values or negates a value

+

[number...]

number

Adds the argument values

*

number x number

number

Multiplies the argument values

ima:string

Operator name

Arguments

Return value

Semantics

ima:string:length

string

number

Returns the length of the argument value (number of characters)

ima:string:concat

string x string

string

Returns a string that is the concatenation of the argument values

ima:string:index

string x string

number

Finds the second argument value in the first argument value and Returns the index. If the first argument is not found, return -1.

ima:string:substring

string x number x number

string

Extracts a part of the argument value and returns it. The second argument value is the position (with a range  from 1 to string length) . The third argument is the length of the part to extract (with a range from 1 to n; if n exceeds the actual string length, the complete rest of the string is returned) .

ima:string:lowercase

string

string

Returns the argument in lower case

ima:string:uppercase

string

string

Returns the argument in upper case

ima:string:match

string x string

boolean

Returns true if the string given as the first argument matches the pattern given as second argument. There are two wildcard characters allowed in the pattern: * for a character sequence of arbitrary length and ? for a single character.
Restriction: The search pattern must be a string constant.

ima:string:matchEscaped

string x string

boolean

Similar to the above “ima:string:match” with additional support of escaping wildcard characters:

\* matches the asterisk “*” and does not interpret it as a wildcard

\? matches the question mark “?” and does not interpret it as a wildcard

\\ matches the backslash “\” and does not interpret it as an escape character

ima:datetime

Operator name

Arguments

Return value

Semantics

ima:dateTime:now

none

dateTime

Returns a dateTime with the current time

ima:dateTime:dayOfMonth

dateTime

number

Returns the day of month of the argument value

ima:dateTime:month

dateTime

number

Returns the month of the argument value

ima:dateTime:year

dateTime

number

Returns the year of the argument value

ima:dateTime:hour

dateTime

number

Returns the hour of the argument value

ima:dateTime:minutes

dateTime

number

Returns the minutes of the argument value

ima:dateTime:seconds

dateTime

number

Returns the seconds of the argument value

ima:dateTime:week

dateTime

number

Returns the week of the year of the argument value (calendar week)

ima:dateTime:toString

dateTime

string

Returns the String representation like for ImaDateTime

ima:dateTime:toDate

dateTime

date

Returns the date part  of the dateTime value  as ImaDate

ima:dateTime:toTime

dateTime

time

Returns the time part of the dateTime value as ImaTime

ima:dateTime:add

dateTime x number x …

dateTime

Since 9.3.3: Adds an interval to the specified dateTime value. The possible numeric arguments are (in this order): years, months, days, hours, minutes, seconds, milliseconds. If an argument is not provided, it defaults to 0. The calculation is performed in the time zone of the value.

Consider the additional notes: Behavior of the add operator for time intervals

ima:dateTime:startOfDay

dateTime

dateTime

Since 9.5.3: Returns the start of the day given as argument. That is exactly the time 00:00:00.000 at the respective day in the time zone of the value.

ima:dateTime:endOfDay

dateTime

dateTime

Since 9.5.3: Returns the end of the day given as argument. That is exactly the time 23:59:59.999 at the respective day in the time zone of the value.

ima:dateTime:startOfMonth

dateTime

dateTime

Since 9.8.1: Returns the start of the month given as argument. That is exactly the time 00:00:00.000 at the first day of the respective month in the time zone of the value.

ima:dateTime:endOfMonth

dateTime

dateTime

Since 9.8.1: Returns the end of the month given as argument. That is exactly the time 23:59:59.999 at the last day of the respective month in the time zone of the value.

ima:dateTime:startOfYear

dateTime

dateTime

Since 9.8.1: Returns the start of the year given as argument. That is exactly the time 00:00:00.000 at the first day of the respective year in the time zone of the value.

ima:dateTime:endOfYear

dateTime

dateTime

Since 9.8.1: Returns the end of the year given as argument. That is exactly the time 23:59:59.999 at the last day of the respective year in the time zone of the value.

ima:date

Operator name

Arguments

Return value

Semantics

ima:date:dayOfMonth

date

number

Returns the day of month of the argument value

ima:date:month

date

number

Returns the month of the argument value

ima:date:year

date

number

Returns the year of the argument value

ima:date:toString

date

string

Returns the string representation

ima:date:add

date x number x  …

date

Since 9.3.3: Adds an interval to the specified date value. The possible numeric arguments are (in this order): years, months, days. If an argument is not provided, it defaults to 0.

Consider the additional notes: Behavior of the add operator for time intervals

ima:date:startOfMonth

date

date

Since 9.8.1: Returns the start of the month given as argument. That is the first day of the respective month.

ima:date:endOfMonth

date

date

Since 9.8.1: Returns the end of the month given as argument. That is the last day of the respective month.

ima:date:startOfYear

date

date

Since 9.8.1: Returns the start of the year given as argument. That is the first day of the respective year.

ima:date:endOfYear

date

date

Since 9.8.1: Returns the end of the year given as argument. That is the last day of the respective year.

ima:time

Operator name

Arguments

Return value

Semantics

ima:time:hour

time

number

Returns the hour of the argument value

ima:time:minutes

time

number

Returns the minutes  of the argument value

ima:time:seconds

time

number

Returns the seconds of the argument value

ima:time:toString

time

string

Returns the string representation

ima:time:add

time x number x …

time

Since 9.3.3: Adds an interval to the specified time value. The possible numeric arguments are (in this order): hours, minutes, seconds, milliseconds. If an argument is not provided, it defaults to 0.

Consider the additional notes: Behavior of the add operator for time intervals

Behavior of the add operator for time intervals

Using multiple arguments in one “add” operation can yield an unpredictable result. To be on the safe side, use multiple add operations to have control of the internal calculation order. In a bracketed RAQL expression the innermost add operation is executed first, and the outermost operation is executed last. It is important to note hat this order can have an influence on the result. Consider the following example where 1 month and 1 day is added but the order determines the eventual result:

  • adding a month first:

    29.02.2016 + 1M = 29.03.2016; 29.03.2016 + 1D = 30.03.2016

  • adding a day first:

    29.02.2016 + 1D = 01.03.2016; 01.03.2016 + 1M = 01.04.2016

There is a risk of unpredictable results with any date/time add-operation if years and months are added as there is no standardized calculation method and these units cannot be mapped to a constant number of days.

ima:namedvalue

Operator name

Arguments

Return value

Semantics

ima:namedValue:create

string x A

namedA

Creates a named value out of a name and a value

ima:namedValue:name

namedA

string

Returns the name of a named value

ima:namedValue:value

namedA

A

Returns the value of a named value

ima:revision

Operator name

Return value

Semantics

ima:revision:revId

uuid

Returns the revision id

ima:revision:docId

uuid

Returns the document id of the revision’s document

ima:revision:docTypeId

uuid

Returns the document type id to which the revision belongs

ima:revision:documentCreationTime

dateTime

Returns the creation time of the revision’s document

ima:revision:creationTime

dateTime

Returns the creation time of the revision

ima:revision:modificationTime

dateTime

Returns the modification time of the revision

ima:revision:isFrozen

boolean

Returns true if the revision is frozen

ima:revision:isLatest

boolean

Returns true if the revision is the latest revision of its document

ima:revision:isWorkingCopy

boolean

Returns true if the revision is the checked out working copy revision of its document

ima:revision:document

document

Returns the revision’s document

ima:revision:documentType

documentType

Returns the document type to which the revision belongs

ima:revision:partition

string

Returns the partition of the revision’s document

ima:document

Operator name

Return value

Semantics

ima:document:docId

uuid

Returns the document id

ima:document:docTypeId

uuid

Returns the document type id to which the document belongs

ima:document:creationTime

dateTime

Returns the creation time of the document

ima:document:latestRevision

revision

Returns the latest revision of the document

ima:document:documentType

documentType

Returns the document type to which the document belongs

ima:document:retentionMark

retentionMark

Returns the document’s retention mark

ima:document:partition

string

Returns the partition of the document

ima:attribute

Operator name

Arguments

Return value

Semantics

ima:attribute:isEmpty

attribute

boolean

Returns true if the attribute holds no value, false otherwise

ima:attribute:hasValue

attribute x A

boolean

Returns true if the attribute holds at least one value that is equal to the given input value, false otherwise

ima:attribute:matches

attribute x
lambda(A -> boolean)

boolean

Applies the given lambda expression to all existing values of the given attribute. Returns true if the lambda evaluates to true for at least one attribute value. If the attribute has no values, the result is false.

ima:attribute:value

attribute

A

Returns the value(s) of the attribute. If the attribute contains no value, the result is null. See also the extra information below.

ima:binaryObject

Operator name

Arguments

Return value

Semantics

ima:binaryObject:id

binaryObject

uuid

Returns the UUID representing the binary object

ima:binaryObject:fileSize

binaryObject

number

Returns the file size of the binary object

ima:binaryObject:fileName

binaryObject

string

Returns the filename of the binary object

ima:binaryObject:mimeType

binaryObject

string

Returns the mime type of the binary object

ima:binaryObject:hasProperty

binaryObject x string [x string]

boolean

Returns true if the content has a property with the given key and value (case sensitive). If the value parameter is omitted, the operator returns true if the content has any property with the given key (regardless of the value).

ima:binaryObject:hashDigest

binaryObject

string

Returns the hash digest of the binary object

ima:binaryObject:hashAlgorithm

binaryObject

string

Returns the hash algorithm that was used to compute the hash digest

ima:binaryObject:revisionId

binaryObject

uuid

Returns the revision id to which the binary object belongs

ima:binaryObject:revision

binaryObject

revision

Returns the revision to which the binary object belongs

ima:binaryObject:partition

binaryObject

string

Returns the partition of the binary object’s revision

ima:binaryObject:propertyMatches

binaryObject x lambda (string , string -> boolean)

boolean

Returns true if the content has a property for which the given lambda parameter evaluates to true. Notice that the lambda must take two variables (the first one for the key and the second one for the value).

ima:documenttype

Operator name

Return value

Semantics

ima:documentType:id

uuid

Returns the UUID of the document type

ima:documentType:name

string

Returns the name of the document type

ima:documentType:isSystemType

boolean

Returns true if the document type is a system document type, false otherwise

ima:attributedefinition

Operator name

Return value

Semantics

ima:attributeDefinition:id

uuid

Returns the UUID of the attribute definition

ima:attributeDefinition:name

string

Returns the name of the attribute definition

ima: attributetype

Operator name

Return value

Semantics

ima:attributeType:id

uuid

Returns the UUID of the attribute type

ima: attributeType:name

string

Returns the name of the attribute type

ima: attributeType:baseType

string

Returns the base type of the attribute type

ima:batchitem

Operator name

Return value

Semantics

ima:batchItem:batchId

uuid

Returns the batch id of the batch item

ima:batchItem:docId

uuid

Returns the document id of the batch item

ima:batchItem:addTime

dateTime

Returns the time at which the document was added to the batch

ima:role

Operator name

Return value

Semantics

ima:role:id

uuid

Returns the id of the role

ima:role:name

string

Returns the name of the role

ima:retentionmark

Operator name

Arguments

Return value

Semantics

ima:retentionMark:tag

retentionMark

string

Returns the retention tag as a string

ima:retentionMark:protectionTime

retentionMark

dateTime

Returns the protection time

ima:retentionMark:message

retentionMark

string

Returns the optional message

ima:plan

Operator name

Arguments

Return value

Semantics

ima:plan:id

plan

uuid

Returns the UUID of the plan

ima:plan:name

plan

string

Returns the name of the plan

ima:plan:docId

plan

uuid

Returns the UUID of the plan’s document

ima:plan:document

plan

document

Returns the plan’s document

ima:plan:roleName

plan

string

Returns the name of the role for plan execution

ima:plan:role

plan

role

Returns the role for plan execution

ima:plan:state

plan

planState

Returns the state of the plan

ima:planstate

Operator name

Arguments

Return value

Semantics

ima:planState:action

planState

string

Returns the state action as a string

ima:planState:waitTime

planState

dateTime

Returns the wait time or null if the state does not have a wait time

ima:planState:waitEventId

planState

uuid

Returns the UUID of the wait event or null if the state is not waiting for an event

ima:planState:waitInfo

planState

string

Returns the wait info

ima:hold

Operator name

Arguments

Return value

Semantics

ima:hold:id

hold

uuid

Returns the UUID of the legal hold

ima:hold:name

hold

string

Returns the name of the legal hold

ima:hold:docId

hold

uuid

Returns the UUID of the legal hold’s document

ima:hold:document

hold

document

Returns the legal hold’s document

ima:hold:isActive

hold

boolean

Returns true if the legal hold is active

ima:hold:isCurrent

hold

boolean

Returns true if the legal hold is the current legal hold of its document

ima:hold:planId

hold

uuid

Returns the UUID of the legal hold’s plan

ima:hold:plan

hold

Plan

Returns the legal hold’s plan

ima:hold:creationTime

hold

dateTime

Returns the creation time of the legal hold

ima:hold:liftingTime

hold

dateTime

Returns the lifting time of the legal hold

ima:event

Operator name

Arguments

Return value

Semantics

ima:event:id

event

uuid

Returns the UUID of the event

ima:event:name

event

string

Returns the name of the event

ima:event:isGlobal

event

boolean

Returns true if the event is a global event

ima:event:isPeriodic

event

boolean

Returns true if the event is a periodic event

ima:event:isSignaled

event

boolean

Returns true if the event has been signaled (global events only)

ima:event:signalTime

event

dateTime

Returns the last time the event was signaled (global events only)

ima:event:isDocumentSignaled

event x document

boolean

Returns true if the event has been signaled for the given document (document-specific events only)

ima:event:documentSignalTime

event x document

dateTime

Returns the last time the event was signaled for the given document (document-specific events only)

Miscellaneous operators

Operator name

Arguments

Return value

Semantics

ima:authUser:name

authUser

string

Returns the name of the authenticated user

ima:session:userName

none

string

Returns the name of the currently authenticated user (same value as returned in the authUser galaxy). If there is no authenticated user, the result is a null value.

ima:session:userFullName

none

string

Returns the full name of the currently authenticated user. If there is no authenticated user, the result is a null value.

ima:session:userMail

none

string

Returns the mail address of the currently authenticated user. If there is no authenticated user, the result is a null value.

ima:session:groupName

none

string

Returns the name of the current group. If there is no current group, the result is a null value.

ima:session:
applicationName

none

string

Returns the name of the calling ImageMaster application (ImaWebService, Client, etc). If no application can be identified, the result is a null value.

ima:session:clientName

none

string

Returns the name of the external client calling the ImageMaster. This value can be set via a header when calling the ImaWebService. If no external client is involved or the header was not set, the result is a null value.

ima:set:isMember

A x setOf(A)

boolean

Returns true if the argument value is a member in the set. The type A must be one of: boolean, string, number or uuid.

ima:set:exists

setOf(A)

boolean

Returns true if the argument set is not empty

ima:uuid:toString

uuid

string

Returns the given UUID as a string

ima:integrationService:
operation:name

integrationservice
Operation

string

Returns the name of the integration service operation

ima:webservice:
operationName

webserviceOperation

string

Returns the name of the web service operation

ima:webservice:portName

webserviceOperation

string

Returns the name of the web service port of the operation

ima:auditevent

Operator name

Arguments

Return value

Semantics

ima:audit:id

auditEvent

uuid

Returns the unique ID of the event

ima:audit:name

auditEvent

string

Returns the name of the event

ima:audit:category

auditEvent

string

Returns the category of the event

ima:audit:module

auditEvent

string

Returns the module that created the event

ima:audit:statusCode

auditEvent

string

Returns the event status code

ima:audit:time

auditEvent

dateTime

Returns the time of the event

ima:audit:userName

auditEvent

string

Returns the user causing the event or NULL if no username was recorded

ima:audit:requestId

auditEvent

string

Returns the request ID of the event

ima:audit:documentId

auditEvent

uuid

Returns the document ID of the associated document or NULL if no document is associated with the event

ima:audit:documentTypeName

auditEvent

string

Returns the name of the document type of the associated document or null if there is no associated document

ima:audit:isSuccess

auditEvent

boolean

Returns true if the event represents a successful action (status code is “OK”)

ima:audit:hasProperty

auditEvent x string [x string]

boolean

Returns true if the event has a property with the given key and value (case-sensitive). If the value parameter is omitted, the operator returns true if the event has any property with the given key (regardless of value).

ima:audit:matches

auditEvent x lambda(string x string -> boolean)

boolean

Returns true if the event has a property for which the given lambda parameter evaluates to true. Notice that the lambda must take two variables (the first one for the key and the second one for the value).

ima:folder

Operator name Arguments Return value Semantics

ima:folder:id

folder

uuid

Returns the unique Id of the folder entry.

ima:folder:name

folder

string

Returns the name of the folder entry within its parent folder.

ima:folder:path

folder

string

Returns the full path of the folder entry.

ima:folder:type

folder

string

Returns the type of folder entry. The result is either "FOLDER" or "DOCUMENT".

ima:folder:parentId

folder

uuid

Returns the unique Id of the folder entry's parent folder. If the entry is the root folder, the result is NULL.

ima:folder:parentPartition

folder

string

Returns the partition key of the folder entry's parent folder. If the entry is the root folder, the result is NULL.

ima:folder:creationTime

folder

dateTime

Returns the creation time of the folder entry.

ima:folder:modificationTime

folder

dateTime

Returns the last modification time of the folder entry.

ima:folder:isFolder

folder

boolean

Returns true if the entry represents a folder.

ima:folder:isDocument

folder

boolean

Returns true if the entry represents a document.

ima:folder:isRoot

folder

boolean

Returns true if the entry is the root folder.

ima:folder:documentId

folder

uuid

Returns the unique Id of the document that is associated with the folder entry. If the entry represents a folder, the result is NULL.

ima:folder:partition

folder

string

Returns the partition key of the folder entry.

ima:folder:references

folder x document

boolean

Returns true if the folder entry is associated with the specified document.

 

folder x revision

boolean

Returns true if the folder entry is associated with the document of the specified revision.

ima:folder:contains

folder x folder

boolean

Returns true if the first folder argument contains the second folder argument as a direct child.

 

folder x document

boolean

Returns true if the folder contains a document folder entry referencing the given document as a direct child.

 

folder x revision

boolean

Returns true if the folder contains a document folder entry referencing the given revision's document as a direct child.

ima:folder:hasDescendant

folder x folder

boolean

Returns true if the first folder argument has the second folder argument as a descendant (child, grandchild, etc).

 

folder x document

boolean

Returns true if the folder has a descendant that references the given document.

 

folder x revision

boolean

Returns true if the folder has a descendant that references the given revision's document.

ima:folder:isInPath

folder x string

boolean

Returns true if the folder is contained as a direct child within the specified path.

ima:folder:isBelowPath

folder x string

boolean

Returns true if the folder is contained as any descendant within the specified path.

ima:folder:hasProperty

folder x string

boolean

Returns true if the folder has any property with the specified name (of any property type).

 

folder x string x A

boolean

Returns true if the folder has a property with the given name and value.

ima:folder:matchesString

folder x lambda(string x string -> boolean)

boolean

Returns true if the folder has a property of type string that matches the given lambda parameter.

ima:folder:matchesDate

folder x lambda(string x date -> boolean)

boolean

Returns true if the folder has a property of type date that matches the given lambda parameter.

ima:folder:matchesTime

folder x lambda(string x time -> boolean)

boolean

Returns true if the folder has a property of type time that matches the given lambda parameter.

ima:folder:matchesDateTime

folder x lambda(string x dateTime -> boolean)

boolean

Returns true if the folder has a property of type dateTime that matches the given lambda parameter.

ima:folder:matchesBoolean

folder x lambda(string x boolean -> boolean)

boolean

Returns true if the folder has a property of type boolean that matches the given lambda parameter.

ima:folder:matchesDecimal

folder x lambda(string x decimal -> boolean)

boolean

Returns true if the folder has a property of type decimal that matches the given lambda parameter.

ima:folder:matchesUuid

folder x lambda(string x uuid -> boolean)

boolean

Returns true if the folder has a property of type uuid that matches the given lambda parameter.

ima:folder:fromId

uuid

folder

Returns the (constant) folder entry with the given id. The uuid parameter must be a constant value. The caller must have the right to read this constant folder to execute a query with this operator.

 

uuid x string

folder

Returns the (constant) folder entry with the given id and partition key. Both parameters must be constants.

ima:folder:fromPath

string

folder

Returns the (constant) folder entry with the given path. The parameter must be a constant.

ima:folder:isHidden

folder

boolean

Since 9.10.1: Returns true if the folder entry has a boolean property named "hidden" with the value true. (This property is used to mark folders that should not be visible in the Client)

ima:folder:creatingUser

folder

string

Since 9.14.2: Returns creating username.

ima:folder:modifyingUser

folder

string

Since 9.14.2: Returns modifying username.

ima:folder:isLocked

folder

boolean

Since 9.14.2: Returns true if the folder entry has the 'locked' flag set.

Miscellaneous operators

Operator name Arguments Return value Semantics

ima:authUser:name

authUser

string

Returns the name of the authenticated user.

ima:integrationService:operation:name

integrationserviceOperation

string

Returns the name of the integration service operation.

ima:session:userName

none

string

Returns the name of the currently authenticated user (same value as returned in the authUser galaxy). If there is no authenticated user, the result is a null value.

ima:session:userFullName none string Returns the full name of the currently authenticated user. If there is no authenticated user, the result is a null value.
ima:session:userMail none string Returns the mail address of the currently authenticated user. If there is no authenticated user, the result is a null value.
ima:session:groupName none string Returns the name of the current group. If there is no current group, the result is a null value.

ima:session:applicationName

none

string

Returns the name of the calling ImageMaster application (ImaWebService, Client, etc). If no application can be identified, the result is a null value.

ima:session:clientName

none

string

Returns the name of the external client calling the ImageMaster. This value can be set via a header when calling the ImaWebService. If no external client is involved or the header was not set, the result is a null value.

ima:set:exists

setOf(A)

boolean

Return true if the argument set is not empty.

ima:uuid:toString

uuid

string

Returns the given UUID as a string.

ima:webservice:operationName

webserviceOperation

string

Returns the name of the web service operation.

ima:webservice:portName

webserviceOperation

string

Returns the name of the web service port of the operation.