Diego Cabello

<<<Back to Ents

ENTS 0.5 Specification

Date:

Words: 510

Draft: < 6 > · Most recent

Default Tag -

The Normal Tag is denoted by simple dash. Nesting for a normal tag and all other tag types is four spaces.

Dud Tag +

The dud tag is used to contain tags but not to label files.

+ Reading Level
    - Not Read
    - Skimmed
    - Partially Read
    - Read
    - Re-read
+ Format
    - Journal
    - Book
    - Webpage

Much cleaner!

Now you can query files tagged with any reading level, or any material format, or any union of the two, without being able to explicily tag a file with “reading level” or “format” literally.

Exception Tag *

For an exclusive tag, an object can be tagged with this tag, but if it is, than it can’t be tagged by any of it’s children. It is denoted by an asterix *. It gets its name “exclusive” from it can either label a file itself, or its children can label a file, but not both. This is advantageous where, if you have a category where you have some tags in it that label many files, and then you have some other files that could be labeled by the parent tag but there are not enough of them to warrant making another child tag, and then it becomes enough of them where it does warrant making a new child tag, than trying to tag with the new child tag will raise the exclusive error. This keeps the labeling space clean.

Example:

* instruction sets
    - arm
    - x86
    - risc-v 

If I had 10 documents each for ARM, x86, and Risc-V and one document for AVR, it might not warrant creating a new child tag for AVR. So I can tag the AVR documents with the “instruction sets” exclusive tag. The documents tagged with the other instruction sets cannot be tagged with the “instruction sets” exclusive tag, for the sake of keeping a clean tagspace. But if I got more documents for AVR where it does warrant making a new tag “AVR”. Now, if I go to tag my documents with the AVR tag, it will not let it unless the exclusive tag “instruction sets” has been removed, for the sake of a clean tagspace.

Aliases ()

When tagging a file or running a query, it might be faster to have an alias for frequently used tags or tags with longer names. Aliases are denoted inside parenthases () after a tag’s regular name. Aliases can be used on regular tags or dud tags.

Example:

+ Reading Level (rl)
    - Not Read
    - Skimmed
    - Partially Read
    - Read
    - Re-read

Now running lents filter rl will return any file tagged with any reading level.

Potential Future Implementations

Scalars[1-N]

  • assigns a numeric value for the tag to the object

> Enums[1-N]
    - Option 1
    - Option N
  • a scalar with lablers

** Matrix

  • makes a matrix between two or more scalars

/ pick-few tag

  • you can tag an object with only one of this tag’s children’s tags. used in conjunction with regular tag -, dud tag +, exclusive tag +-, or scalars >

& Backreferences

  • Makes a link between two tags. If you reference one tag with the other on the same line than whenever you tag an object with that tag the engine automatically tags it with the other tag.

~ Not

  • Will probably be used with Matrixes

<<<Back to Ents

Made with Sculblog