summaryrefslogtreecommitdiff
path: root/Tag.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Tag.cs')
-rw-r--r--Tag.cs22
1 files changed, 22 insertions, 0 deletions
diff --git a/Tag.cs b/Tag.cs
new file mode 100644
index 0000000..c662c42
--- /dev/null
+++ b/Tag.cs
@@ -0,0 +1,22 @@
+using System.ComponentModel.DataAnnotations;
+using System.ComponentModel.DataAnnotations.Schema;
+
+namespace HyperBooru;
+
+public enum TagSource {
+ Internal,
+ UserTag
+}
+
+public class TagDefinition : HBObject {
+ public TagSource Source { get; set; } = TagSource.Internal;
+ public string? Namespace { get; set; }
+ public string Name { get; set; }
+ public virtual List<TagDefinition> ImplicitTags { get; set; } = new();
+}
+
+public class Tag : HBObject {
+ public virtual TagDefinition TagDefinition { get; set; }
+ public DateTime CreateTime { get; set; } = DateTime.Now;
+ public virtual HBObject Target { get; set; }
+} \ No newline at end of file