Cross-parts submodels:
CitedPerson:ids(DecoratedId[]):idranktagsources(DocReference[]):typetagcitationnote
sources(DocReference[])name(ProperName):languagetagpieces(ProperNamePiece[]):typevalue
rank
HistoricalDate: referenced fromCadmus.Parts.
TaleInfoPart* (it.vedph.renovella.tale-info)TaleStoryPart* (it.vedph.renovella.tale-story)AvailableWitnessesPart(it.vedph.renovella.available-witnesses)BibliographyPart* (it.vedph.bibliography)PoeticTextsPart(it.vedph.renovella.poetic-texts)CategoriesPart(it.vedph.categories)IndexKeywordsPart(it.vedph.index-keywords)ExternalIdsPart(it.vedph.external-ids)NotePart(it.vedph.note")
TaleInfoPart* (it.vedph.renovella.tale-info)TaleStoryPart* (it.vedph.renovella.tale-story)AvailableWitnessesPart(it.vedph.renovella.available-witnesses)BibliographyPart* (it.vedph.bibliography)PoeticTextsPart(it.vedph.renovella.poetic-texts)CategoriesPart(it.vedph.categories)IndexKeywordsPart(it.vedph.index-keywords)ExternalIdsPart(it.vedph.external-ids)NotePart(it.vedph.note")DocReferencesPart* for mss, just quoting the signature (it.vedph.doc-references)
ID: it.vedph.renovella.available-witnesses
Information about witnesses (essentially manuscripts) available for the specified item (tale or tales collection).
witnesses(AvailableWitness):id* (string)isPartial(boolean)note(string)externalIds(string[])
ID: it.vedph.renovella.tale-info
Essential information about a tale or a tales collection.
collectionId: the human-readable ID of the collection. Empty if this is not a collection.containerId: the ID of the collection this tale belongs to.ordinal(number): the ordinal number of the tale in its container.title* (string)author(CitedPerson):name(ProperName):language(string)tag(string)pieces(ProperNamePiece[]):type(string)value(string)
rank(short)ids(DecoratedId[]):id(string)rank(int)tag(string)sources(DocReference[])
sources(DocReference[]):type(string)tag(string)citation(string)note(string)
dedicatee(CitedPerson)place* (string)date* (HistoricalDate)language(string: thesaurustale-languages)genres* (string[]: thesaurustale-genres)structure(string)rubric(string)incipit(string)explicit(string)narrator(string)
ID: it.vedph.renovella.tale-story
Data about the tale's story.
summary* (string)prologue(string)epilogue(string)characters* (StoryCharacter[])name(string)sex(string;MorFor-when not applicable)role* (string: thesaurusstory-roles)isGroup(boolean): true if this is a collective designation for a group (e.g. "facchini")
age(string)date* (HistoricalDate)places* (StoryPlace):type* (string, thesaurusstory-place-types: e.g. city, country, etc)place(string)location(string): location inside place (e.g. "Chiesa di S.Anna")
ID: it.vedph.renovella.poetic-texts.
- texts (
PoeticText[]):incipit* (string)metre* (string) T:poetic-text-metresnote(string)
- 2024-07-19: updated packages.
- 2024-06-10: updated packages.
- 2024-05-24: updated packages.
- 2024-04-16: updated test packages.
- 2024-04-08: upgraded to .NET 8.
- 2023-09-29: updated packages.
- 2023-08-30: updated test packages.
- 2023-07-26:
- updated packages.
- removed
structurepin fromTaleInfoPartas it contains a summary rather than a short definition.
- 2023-06-23: updated packages.
- 2023-05-19: updated packages.
- 2023-03-15: migrated to new backend configuration.
- 2022-12-23: updated packages.
- 2022-11-10: upgraded to NET 7.
- 2022-10-11: updated packages (
IRepositoryProvider).
-
2022-02-18: completed PoeticTextsPart.
-
2022-02-08: upgraded packages.
-
2021-11-11: upgraded to NET 6.
-
2021-10-25: updated packages.
-
2021-10-16: refactored dependencies so that
DocReferenceandProperName(formerlyPersonName) are from bricks; also, the sub-model cited person is no more from Itinera, but defined inside this project. This implies these changes in the database parts of typeTaleInfoPart:- rename:
authoranddedicateehave:name.piecesinstead ofname.parts.- remodel:
ids.sourceshave newDocReferenceinstead oftag,author,work,location. We can merge the last 3 fields intocitationfollowing some convention. The new model hastype,tag,citation,note. - remodel:
sourcesas above.
- remodel:
- rename:
Upgrade instructions:
(1) TaleInfoPart for author:
// get records before update
db.parts.find({
"typeId" : "it.vedph.renovella.tale-info",
"content.author.name.parts" : {
$exists : true
}
});
// update renaming 'parts' into 'pieces'
db.parts.updateMany(
{
"typeId" : "it.vedph.renovella.tale-info",
"content.author.name.parts" : { $exists : true }
},
{
$rename: {
"content.author.name.parts": "content.author.name.pieces"
}
}, false, true);(2) TaleInfoPart for dedicatee:
// get records before update
db.parts.find({
"typeId" : "it.vedph.renovella.tale-info",
"content.dedicatee.name.parts" : {
$exists : true
}
});
// update renaming 'parts' into 'pieces'
db.parts.updateMany(
{
"typeId" : "it.vedph.renovella.tale-info",
"content.dedicatee.name.parts" : { $exists : true }
},
{
$rename: {
"content.dedicatee.name.parts": "content.dedicatee.name.pieces"
}
}, false, true);(3) TaleInfoPart for references:
// get all the author's sources
db.parts.find({
"typeId" : "it.vedph.renovella.tale-info",
"content.author.sources" : {
$exists : true, $ne: []
}
});As we just have 1 case and it's not clear how the team prefers to handle this, we have better leave this to manual editing.
(4) TaleInfoPart for ID references:
// get all the author's IDs sources
db.parts.find({
"typeId" : "it.vedph.renovella.tale-info",
"content.author.ids.sources" : {
$exists : true, $ne: []
}
});As we just have 6 cases and it's not clear how the team prefers to handle this, we have better leave this to manual editing.
- 2022-05-12: added
AvailableWitnessesPart.
- 2022-05-01: upgraded to NET6.0.
- 2022-04-21: updated packages.