mirror of
https://github.com/Theodor-Springmann-Stiftung/lenz-web.git
synced 2025-10-29 17:25:32 +00:00
Lots of stuff
This commit is contained in:
32
xmlparsing/models.go
Normal file
32
xmlparsing/models.go
Normal file
@@ -0,0 +1,32 @@
|
||||
package xmlparsing
|
||||
|
||||
import "fmt"
|
||||
|
||||
type IXMLItem interface {
|
||||
fmt.Stringer
|
||||
// INFO:
|
||||
// - Keys should be unique
|
||||
// - Keys[0] has the special meaning of the primary key (for FTS etc.)
|
||||
Keys() []any
|
||||
Type() string
|
||||
}
|
||||
|
||||
type ILibrary interface {
|
||||
Parse(meta ParseMeta) error
|
||||
}
|
||||
|
||||
type ResolvingMap[T IXMLItem] map[string][]Resolved[T]
|
||||
|
||||
type ReferenceResolver[T IXMLItem] interface {
|
||||
References() ResolvingMap[T]
|
||||
}
|
||||
|
||||
type Resolved[T IXMLItem] struct {
|
||||
Item *T
|
||||
Reference string
|
||||
Category string
|
||||
Cert bool
|
||||
Conjecture bool
|
||||
Comment string
|
||||
MetaData map[string]string
|
||||
}
|
||||
Reference in New Issue
Block a user