tno-terminology-design / tev2-tools

The Terminology Engine (v2) is a set of specifications and tools that caters for the creation and maintenance (i.e. curation) of terminologies. This repository contains the sources for the tools.
Apache License 2.0
2 stars 3 forks source link

Termselection arguments that support non-matching #15

Open RieksJ opened 9 months ago

RieksJ commented 9 months ago

Currently, termselection can add or remove MRG entries based on the (existing) values of fields.

For example, status[draft] selects entries that have a field status: draft.

However, it would be nice to have a syntax that would be capable of selecting all entries that have a status field defined, whose value is NOT draft.

This issue calls for proposals for such a syntax (e.g. using the ! character, as in status[!draft]), deciding on it, and then modify the TEv2 specifications and implement it.

Ca5e commented 9 months ago

The proposed syntax using the ! character should work fine, as an alternative I'd say using the keyword not may work well. status[!draft] status[not draft]

RieksJ commented 9 months ago

This raises other ponderings: what would be the meaning of

Would logical expressions make sense (i.e.: can we think of realistic use-cases for that)?

RieksJ commented 7 months ago

I would like to do this, because there is a need for it (in the digital passports projects).

However, I want to start small, implementing the following features:

@Ca5e: can you comment on this?