summaryrefslogtreecommitdiff
path: root/src/core/model/Document.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/model/Document.hpp')
-rw-r--r--src/core/model/Document.hpp16
1 files changed, 14 insertions, 2 deletions
diff --git a/src/core/model/Document.hpp b/src/core/model/Document.hpp
index 993df9e..466185b 100644
--- a/src/core/model/Document.hpp
+++ b/src/core/model/Document.hpp
@@ -353,7 +353,7 @@ private:
public:
AnnotationEntity(Manager &mgr, Handle<Node> parent,
- Handle<StructuredClass> descriptor, Variant attributes,
+ Handle<AnnotationClass> descriptor, Variant attributes,
Handle<Anchor> start, Handle<Anchor> end,
std::string name = "")
: DocumentEntity(mgr, parent, descriptor, attributes, std::move(name)),
@@ -415,6 +415,9 @@ private:
// TODO: Might there be several roots? E.g. metadata?
Owned<StructuredEntity> root;
NodeVector<AnnotationEntity> annotations;
+ NodeVector<Domain> domains;
+
+ void continueResolve(ResolutionState &state) override;
public:
Document(Manager &mgr, std::string name)
@@ -428,7 +431,16 @@ public:
Rooted<StructuredEntity> getRoot() const { return root; }
- NodeVector<AnnotationEntity> getAnnotations() { return annotations; }
+ NodeVector<AnnotationEntity> &getAnnotations() { return annotations; }
+
+ const NodeVector<Domain> &getDomains() const { return domains; }
+
+ void addDomain(Handle<Domain> d) { domains.push_back(d); }
+
+ void addDomains(const std::vector<Handle<Domain>> d)
+ {
+ domains.insert(domains.end(), d.begin(), d.end());
+ }
};
}