This section describes format of ReqView files with .reqw extension which are based on human readable JSON format.
This gives you advantage to store ReqView files under a revision control system (such as SVN, GIT, Mercurial, …) and use your favorite text comparison and merge tools. You can also easily implement your own tools for extracting information from ReqView documents or format conversions not supported by ReqView Synchronizer.
Each ReqView file has the following header:
id is a unique project identifier
name is a project name
format is a data format version string
template is present only for project / document templates and its set to “project” or “document” respectively
cipher is an OpenSSL cipher name, currently we support only aes-256 with CBC mode
iv is an initialization vector for the CBC mode, it is computed by OpenSSL when creating the key from user supplied password
salt is a parameter for decryption
documents is an array of documents described in Section Document below
attachments is a set of external attachments (images, documents, …) described in Section Attachments
traceability describes configuration of traceability links between objects in the project
If file is encrypted then documents, attachments and traceability sections are encoded as base64 text without line feeds.
id is a unique ID of the document
guid is a global unique ID of the document
name is a document name string
lastChangedOn is date of last modification in ISO format
lastChangedBy is description of the author of the last modification
lastId is the ID of the last created object in the document (integer >= 0)
data is an array of objects (requirements, tests, etc.), see Section Data.
view describes visual configuration of columns in the Requirements Table, see Section View.
synchronizer stores properties which Synchronizer uses for pairing ReqView document with its original import from a RM tool
Data section stores an object array corresponding to the highest level sections and requirements. Each section has property children storing array of descendant sections and requirements.
id is a unique integer identifier
guid is a global unique integer identifier
heading is a section heading string
text is a requirement text string
status is an example custom attribute
discussion is an array of comments where each comment stores date (ISO string), author name, email and company name and comment text
history is an array of change records where each change record stores changed property, date of change (ISO string) and author of change
attachments is an array of references to attachments, see Section Attachments
children is an ordered array of direct descendants (both sections and requirements)
links is an object storing links. The example illustrates an outgoing Reference link to the object with id 25 in the same document, see Section Traceability
View object stores information related to the current document view:
columns is an ordered array of columns, where each column can have the following properties:
attribute an identifier of attribute, i.e. an internal attribute “id”, “description”, “discussion” or a custom attribute, e.g. “status”
width is optional width of the column, e.g. “100px”, “20em”, “30%” or “auto” (column will use whatever space remains); the default value is “auto”
hidden is optional flag which specifies if the column is hidden; the default value is false
folding is an ordered array of IDs of sections that are displayed as collapsed
Each attachment is assigned an unique attachment identifier in the following form: reqid_seqnum_filename.ext, where reqid is id of the related requirement, seqnum is sequential number of the attachment and filename.ext is the original file name and extension.
data stores an attachment content encoded according to data URI scheme
src path to an external attachment file (only for decrypted files)
The traceability links configuration has the following JSON format:
linkTypeId is a link type identifier
name is a link type name
source is a short text describing the role of the link source
target is a short text describing the role of the link target