Declarative metadata structure (IRPCDeclarativeMetadataStructure)

View as Markdown

Reads and validates the whole metadata structure of a vault as one declarative JSON document. Preview feature, off by default.

gRPC serviceMFiles.IRPCDeclarativeMetadataStructure
Book and levelAdministration API, specialized
Methods8
Proto filemfiles/IRPCDeclarativeMetadataStructure.proto

Overview

Not available by default. The declarative metadata structure is a preview feature. On a server where it is not enabled, every method fails with "Not implemented." (gRPC status UNKNOWN, error code 0x80004001) before any rights check. SetDeclarativeMetadataStructureBeginSession, SetDeclarativeMetadataStructureEndSession and NewDeclarativeMetadataStructureRevisionAvailable are not implemented even when the feature is on.

The declarative format. A declarative metadata structure document is a JSON text that describes the vault's object types, value lists, classes, class groups, property definitions, workflows and named access control lists, with the users, user groups and value list items they refer to. Elements refer to each other by name, not by vault-specific ID, so the document can be read, compared and edited by people and tools. Property names are camelCase and enumerations are strings. The document also carries schemaVersion, writerInfo, and the structure's revision (positive: a revision from the declarative configuration service; negative: a revision made locally on this server, with revisionBase naming the revision it is based on). GenerateDeclarativeMetadataStructureSchema returns the JSON Schema of the format.

How the two services relate. IRPCDeclarativeMetadataStructureAsProtobuf exchanges the same structure as a typed DeclarativeMetadataStructure message that uses the vault's IDs. This service exchanges the declarative JSON document as a string. The server converts between the two with the declarative configuration converter that is installed with M-Files Server: GetDeclarativeMetadataStructure builds the typed structure and converts it to JSON; SetDeclarativeMetadataStructure validates or converts JSON in the other direction.

Methods

MethodSummaryFacts
CancelDeclarativeMetadataStructureRevisionGenerationPauseEnds the calling session's pause of automatic revision generation.admin session returns metadata structure version
GenerateDeclarativeMetadataStructureSchemaGets the JSON Schema document that describes the declarative metadata structure format.admin session returns metadata structure version
GetDeclarativeMetadataStructureGets the vault's current metadata structure as a declarative JSON document.admin session returns metadata structure version
NewDeclarativeMetadataStructureRevisionAvailableReserved for telling the server that a new structure revision is available. Not implemented.admin session returns metadata structure version
PauseDeclarativeMetadataStructureRevisionGenerationStarts, extends or reads a pause of automatic revision generation for the calling session.admin session returns metadata structure version
SetDeclarativeMetadataStructureValidates a declarative JSON document against the schema, or converts it for deployment.admin session returns metadata structure version
SetDeclarativeMetadataStructureBeginSessionReserved for setting a structure in several parts. Not implemented.admin session returns metadata structure version
SetDeclarativeMetadataStructureEndSessionReserved for setting a structure in several parts. Not implemented.admin session returns metadata structure version