1.2 System Fields
1.2.1 System Fields in General
By default, the old enaio® REST API returns certain basic parameters to every result object. With the DMS service for enaio®, we want to minimize the amount of unnecessary data that is transferred to enaio® client. The concept of basic parameters is no longer available in the DMS service for enaio®. Clients must explicitly query the system fields they want to see in the result set, except for the following three:
system:objectId
system:objectTypeId
system:baseTypeId
The following table shows all enaio® system fields that can be queried. System fields always have the prefix system:
. In the table below, the system fields that are highlighted in blue and are lower case are identical to yuuvis® Momentum system fields and can be used in queries for both technologies. The other system fields that are not highlighted in blue and written in upper case can only be used for enaio® and do not apply to yuuvis®. Each object type belongs to one of the following types:
Folder
Register
Document
Folders are the top level. They can have registers and documents as their children. Documents are the lowest level and cannot have any children. Registers are in between. In the columns three, four and five of the following table the availability of any system field is displayed. If the cell contains a Yes, the system field is available for this kind of object type, otherwise it is not. The minimum required enaio server version is stated in the column. If this column is empty, the system column is available on all versions of the DMS service for enaio®.
|
| Available for | Available for | Available for |
| Min. enaio® version |
---|---|---|---|---|---|---|
| String | Yes | Yes | Yes | The ID of the object. |
|
| String | Yes | Yes | Yes | User name of the user who created the object. |
|
| DateTime | Yes | Yes | Yes | Date and time of creation of this object. |
|
| String | Yes | Yes | Yes | User name of the user who last modified the object. |
|
| DateTime | Yes | Yes | Yes | Date and time of the last modification of the object. |
|
| String | Yes |
|
| ID of the variant root object. |
|
| String | Yes |
|
| ID of the user who checked out the object. |
|
| DateTime | Yes |
|
| Date and time the object was checked out. |
|
| Integer | Yes |
|
| Amount of content files attached to the object. |
|
| Integer | Yes |
|
| Binary encoded information in this integer value. See separate table below. |
|
| String | Yes |
|
| User name of the user who archived the object. |
|
| Date | Yes |
|
| Date the object was archived. If it is not archived, then the date of creation. |
|
| Integer | Yes |
|
| The main type of the object. |
|
| Integer | Yes |
|
| The co-type of the object. |
|
| Integer | Yes |
|
| Technical ID of the media where the content is located. |
|
| String | Yes |
|
| Relative path to the content file on the medium. |
|
| Integer | Yes | Yes | Yes | Number of links the object contains. |
|
| Integer | Yes | Yes | Yes | The ID of the foreign archive. 0 if the content is not stored in a foreign archive. |
|
| String | Yes | Yes | Yes | ID of the content on the foreign archive. For reference documents, this is the object Id of the original object. |
|
| String | Yes | Yes | Yes | User name of the enaio user who owns the object. |
|
| DateTime | Yes | Yes | Yes | Timestamp the object was moved into the recycle bin. |
|
| Integer | Yes | Yes | Yes | If the index data history is active for this object, this value is 1. Else it is 0. |
|
| Integer | Yes |
|
| If the content history is active for this object, this value is 1. Else it is 0. |
|
| Integer | Yes |
|
| ID of the mime type for this object. |
|
| Integer | Yes |
|
| The total size of all content in bytes of the object. |
|
| Date | Yes |
|
| Planned retention date. If there is no retention planned, the value is null and the system field is not in the result. |
|
| Date | Yes |
|
| Retention date. If there is no retention, the value is null and the system field is not in the result. |
|
| Integer | Yes |
|
| Possible values: 0 – not signed 1 – signed in older versions 2 – signed in current version |
|
| Integer | Yes |
|
| The amount of locations of the object. |
|
| Integer | Yes |
|
| Rendtion page count of the content. |
|
| Integer | Yes | Yes |
| PDF annotations count. |
|
| Integer | Yes | Yes | Yes | Text notes (details viewer) count. |
|
| Integer | Yes* |
|
| ID of the first parent folder in which the document is located. It does not matter whether it is inside a register of the folder. |
|
| Integer | Yes* |
|
| ID of the parent register. If the document is directly located inside a folder, this value is 0. Multiple locations are not taken into account. |
|
| Integer | Yes* |
|
| Object type ID of the parent register. If the document is directly located inside a folder, this value is 0. Multiple locations are not taken into account. |
|
| Integer |
| Yes |
| ID of the folder the register is located in. |
|
| Integer |
| Yes |
| ID of the parent register. If the register is directly inside a folder, the value is 0. |
|
| Integer |
| Yes |
| If the register is available in enaio® coLab, this system field has the value 1, otherwise NULL. | 10.10 |
| Integer |
| Yes* |
| Object type ID of the folder the register is located in. |
|
| Integer |
| Yes* |
| Object type ID of the parent register. If the register is directly inside a folder, the value is 0. |
|
| Integer |
|
| Yes | If the Folder is available through enaio® coLab this system field has the value 1, otherwise NULL. | 10.10 |
*) These system fields are only available in the [POST] /search endpoint, not [GET] /{objectId}.
1.2.2 System Field OBJECT_SEARCHFLAGS
In addition to the above listed system fields, there is one special system field called system:OBJECT_SEARCHFLAGS
.
This system field is only available for search conditions and can take a bit-based integer value.
Bit Value (Decimal) | Description |
---|---|
1 | The document objects in the result are archived |
2 | The document objects in the result are approved for archiving |
4 | The document objects in the result are not approved for archiving |
8 | The objects in the result have no content |
16 | The objects in the result are locked (checked out) by me |
32 | The objects in the result are locked (checked out) by someone else |
64 | The objects in the result are located inside a register |
128 | The objects in the result are located directly inside a folder |
256 | The objects in the result are loaned out |
512 | Each one of the objects in the result references another document |
1024 | The objects in the result have multiple locations |
2048 | The document objects in the result have variants |
4096 | The document objects in the result are signed in the current version |
8192 | The document objects in the result are signed in one of the previous versions |
Each bit can be added together. If the condition is The objects in the result have no content AND The objects in the result have multiple locations, then a client must add Integer 8 + Integer 1024 = 1032 as the value.
Then both criteria are in the condition.
1.2.3 System Field OBJECT_FLAGS
The system field system:OBJECT_FLAGS
contains binary information if it is queried. The following table describes the values:
Bit-Value (Decimal) | Description |
---|---|
0 | Document is archived. |
1 | Document is marked for archiving. |
2 | Document is not marked for archiving. |
4 | Error in images. |
8 | No images. |
16 | Document is archived but DIA not yet. |
32 | Document is archived and for the archiving user not visible. |
64 | Document content is located on a foreign server. |
128 | Object is in the workflow tray. |
1.2.4 System Fields for Basic Parameters
As initially pointed out, the concept of basic parameters is not longer applied. They can be queried using the options in [POST] /search, but they are available as system fields in the result. The following table brings both worlds together and shows which basic parameter is equal to which system field.
Basic Parameter | System Field | Available for | Available for | Available for |
---|---|---|---|---|
Creator |
| Yes | Yes | Yes |
Created |
| Yes | Yes | Yes |
CreationDate |
| Yes | Yes | Yes |
Modifier |
| Yes | Yes | Yes |
Modified |
| Yes | Yes | Yes |
Owner |
| Yes | Yes | Yes |
Links |
| Yes | Yes | Yes |
TxtNoticeCount |
| Yes | Yes | Yes |
PdfAnnotationCount |
| Yes | Yes |
|
SystemID |
| Yes | Yes | Yes |
ForeignID |
| Yes | Yes | Yes |
ArchiveState |
| Yes | Yes | Yes |
Archivist |
| Yes | Yes | Yes |
ArchiveDate |
| Yes | Yes | Yes |
Locked |
| Yes |
|
|
Version |
| Yes |
|
|
RetentionDate |
| Yes |
|
|
RetentionPlannedDate |
| Yes |
|
|
DocumentPageCount |
| Yes |
|
|
1.2.5 System Fields for Quering Variants
The following system fields are NOT queriable and are returned only on variant queries. They are not part of the Core-API and are enaio-only system fields.
System Field | Data type | Description |
---|---|---|
| String | The Version number of the variant. |
| Boolean | True if the variant is the active one. Otherweise false. |
| Integer | The ObjectId of the Object from which the variant was created. |
1.2.6 System Field for Quering Locked Objects
The following system fields are NOT queriable and are returned only if the locked objects are queried. They are not part of the Core-API and are enaio-only system fields.
System Field | Data type | Description |
---|---|---|
| DateTime | This system field is returned for a search on |