Skip to content

Saved filter file

A named filter saved as YAML in the repository (D-056, SR-070): a *.yaml file directly in the filters folder of the workspace file. The same condition language is the where of every command that takes a selection, so a saved filter gives the same elements in app, CLI, API and MCP (SR-070 AK3). Element references may take any form (resolveRef); filter.save writes UUIDs.

Field Type Required Description
reqseq-filter 1 yes
name name yes Name of a saved filter, unique in the workspace ignoring case (spec-frage #363); used to call it (selection.filter). Saving under an existing name replaces that filter.
description string no
view view no Elements that apply in this view; also the view of its verification conditions without variant.
where condition yes Combinable condition (SR-069). Exactly one operator per object. all: every condition holds ([] holds), any: some holds ([] does not), not: it does not hold.
sort array of sortKey no Order of element.list when its input gives no sort.

Name of a saved filter, unique in the workspace ignoring case (spec-frage #363); used to call it (selection.filter). Saving under an existing name replaces that filter.

Type: string.

Combinable condition (SR-069). Exactly one operator per object. all: every condition holds ([] holds), any: some holds ([] does not), not: it does not hold.

Type: object or object or object or object or object or object or object or object or object or object or object or object or object or propertyCondition or relationCondition.

Type: array of key.

Condition on the values of any property: none when it is absent, null or [], else the items of a list or the one value. exists: some value, missing: none (both without value). eq: some value equals value (1 is not “1”), ne: not eq, in: some value equals an item of the list value. contains: some text contains value, ignoring case. lt, le, gt, ge: numbers with numbers, texts with texts by code units (ISO dates compare as dates). matches: some text matches the JavaScript regular expression value (flag u). A choice may be given by its display name. A key that holds relations takes element references, with eq, ne, in, exists and missing only.

Type: object.

Field Type Required Description
property key yes Fixed metamodel key of a type, property, relation kind or status value. Readable English, lower case, dashes (D-043, SR-010 AK2).
op one of "eq", "ne", "in", "contains", "lt", "le", "gt", "ge", "exists", "missing", "matches" yes
value any no

Condition on relations, e.g. without child: {relation: {meaning: derivation, direction: down}, exists: false} (SR-069 AK3). Evidence is a relation direction too. exists: true without to counts a relation also when its target is not available; with to, only an available other end that meets it.

Type: object.

Field Type Required Description
relation object yes
relation.kind key no A relation kind or a property of kind relation (validity, packages); with meaning, the kind must have it.
relation.meaning one of "derivation", "replacement", "succession", "exclusion" no Every relation kind with this meaning. Neither kind nor meaning: every relation kind.
relation.direction one of "up", "down", "evidence" no up = outgoing (to parents), down = incoming (from children), evidence = verification records pointing at the element in the view of the selection, else in the core (a record without variant holds for the core, one with a variant for that variant), of any version and result; validation records do not count (D-007); no kind, meaning or to. Absent: up or down.
relation.to condition no Condition the other end must meet.
exists boolean yes

Sort by a property, the short ID, or the derivation hierarchy (SR-075). Nothing about order is ever stored in element files.

Type: object.

Field Type Required Description
by one of "id", "identifier", "hierarchy", "type", "status", "title" or key yes id: short ID. identifier: the identifier property (meaning identifier, e.g. SR-36), digit runs by number (SR-9 before SR-10; ascending: elements without one follow by short ID; desc reverses; shadows a property named identifier). type, status: metamodel order. title: the title property. hierarchy: the derivation tree, ascending only. Else a property key (not one that holds relations), by its first value: choices in metamodel order, then numbers, texts (ignoring case), booleans; no value last in both orders.
order one of "asc", "desc" no Default: "asc".
reqseq-filter: 1
name: Unverified requirements of Pro
description: Valid requirements of the Pro variant without passed evidence.
view: ca0dd4a9-1365-45ce-8110-d62071160b58
where:
all:
- type: [system-requirement]
- invalid: false
- not: { verification: [verified, indirect], variant: ca0dd4a9-1365-45ce-8110-d62071160b58 }
- any:
- { relation: { meaning: derivation, direction: down }, exists: false }
- { property: emergent, op: eq, value: "yes" }
sort:
- { by: hierarchy }