time-link / timelink-kleio

Provides translation of files in Kleio notation into XML and other formats. Part of Timelink.
1 stars 0 forks source link

Parser could use inheritance to check for part groups #10

Open joaquimrcarvalho opened 1 year ago

joaquimrcarvalho commented 1 year ago

Currently it is not possible to use abstract groups in part lists. Part lists need to enumerate the specific groups that can occur.

This prevents to higher level groups to define possible contained groups at an abstract level.

A good use case is the top level group kleio:

part name=kleio;
        also=structure,translator,autorels,obs,prefix,translations;
        position=structure,translator,obs;
        part=historical-source,fonte,authority-register, identifications

Note that we need to specify fonte and identifications even though they are specializations of historical-source and authority-register.

This could make it difficult to add new sources and register types in a multi file layout.

joaquimrcarvalho commented 8 months ago

See updatePath(OldGroup,OldID,NewGroup,Path,NewPath):-

joaquimrcarvalho commented 7 months ago

This is necessary to allow user defined new groups to be added easily, otherwise groups like "sources" and "fontes" have to be changed to integrate new types of acts.