This repository has been archived by the owner on Jun 7, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathcore.meta
138 lines (113 loc) · 7.46 KB
/
core.meta
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
["0", "0", "identifier"] ; identifier(0).identifier(0) = "identifier"
["1", "0", "Attribute.value-type"] ; attribute/value-type(1).identifier(0) = "attribute/value-type"
["2", "0", "String"] ; String(2).identifier(0) = "String"
["3", "0", "Reference"] ; Reference(3).identifier(0) = "Reference"
["0", "1", "2"] ; identifier(0).attribute/value-type(1) = String(2)
["1", "1", "3"] ; attribute/value-type(1).attribute/value-type(1) = Reference(3)
["4", "0", "comment"] ; comment(4).identifier(0) = "comment"
["4", "1", "2"] ; comment(4).attribute/value-type(1) = String(2)
;; comment(4).comment(4) = "Comment attribute. Can be attached to any element to describe its meaning and add useful notes."
["4", "4", "Comment attribute. Can be attached to any element to describe its meaning and add useful notes."]
;; Attach comments for the rest of elements.
;; identifier(0).comment(4) = "Identifier is a human-friendly name of the element. Usually assumed to be unique, so you could find element by its identifier."
["0", "4", "Identifier is a human-friendly name of the element. Usually assumed to be unique, so you could find element by its identifier."]
["1", "4", "Type of the attribute values."] ; attribute/value-type(1).comment(4) = "Type of the attribute values."
;; String(2).comment(4) = "String value must be a valid UTF-8–encoded string."
["2", "4", "String value must be a valid UTF-8–encoded string."]
;; Reference(3).comment(4) = "Reference value is an id of another element."
["3", "4", "Reference value is an id of another element."]
["5", "0", "type"] ; type(5).identifier(0) = "type"
["5", "4", "Type of the element."] ; type(5).comment(4) = "Type of the element."
["5", "1", "3"] ; type(5).attribute/value-type(1) = Reference(3)
["6", "0", "Type"] ; Type(6).identifier(0) = "Type"
;; Type(6).comment(4) = "Element describes a type of other elements."
["6", "4", "Element describes a type of other elements."]
["6", "5", "6"] ; Type(6).type(5) = Type(6)
["7", "0", "Attribute"] ; Attribute(7).identifier(0) = "Attribute"
["7", "4", "Element describes an attribute."] ; Attribute(7).comment(4) = "Element describes an attribute."
["7", "5", "6"] ; Attribute(7).type(5) = Type(6)
;; Assign types to other elements
["0", "5", "7"] ; identifier(0).type(5) = Attribute(7)
["1", "5", "7"] ; attribute/value-type(1).type(5) = Attribute(7)
["4", "5", "7"] ; comment(4).type(5) = Attribute(7)
["5", "5", "7"] ; type(5).type(5) = Attribute(7)
["8", "0", "ValueType"] ; ValueType(8).identifier(0) = "ValueType"
;; ValueType(8).comment(4) = "Element describes types of values."
["8", "4", "Element describes types of values."]
["8", "5", "6"] ; ValueType(8).type(5) = Type(6)
["2", "5", "8"] ; String(2).type(5) = ValueType(8)
["3", "5", "8"] ; Reference(3).type(5) = ValueType(8)
["9", "0", "NaturalNumber"] ; NaturalNumber(9).identifier(0) = "NaturalNumber"
["9", "5", "8"] ; NaturalNumber(9).type(5) = ValueType(8)
;; NaturalNumber(9).comment(4) = "Value is an ASCII-decimal-encoded natural number. e.g., \"42\" represents a number 42."
["9", "4", "Value is an ASCII-decimal-encoded natural number. e.g., \"42\" represents a number 42."]
["10", "0", "Attribute.reference-type"] ; attribute/reference-type(10).identifier(0) = "attribute/reference-type"
["10", "5", "7"] ; attribute/reference-type(10).type(5) = Attribute(7)
;; attribute/reference-type(10).comment(4) = "When attribute/value-type(1) is Reference(3), attribute/reference-type(10) describes what type the reference is supposed to point to."
["10", "4", "When attribute/value-type(1) is Reference(3), attribute/reference-type(10) describes what type the reference is supposed to point to."]
["10", "1", "3"] ; attribute/reference-type(10).attribute/value-type(1) = Reference(3)
["10", "10", "6"] ; attribute/reference-type(10).attribute/reference-type(10) = Type(6)
;; assign attribute/reference-type to other reference-attributes.
["1", "10", "8"] ; attribute/value-type(1).attribute/reference-type(10) = ValueType(8)
["5", "10", "6"] ; type(5).attribute/reference-type(10) = Type(6)
["11", "0", "IntegerNumber"] ; IntegerNumber(11).identifier(0) = "IntegerNumber"
["11", "5", "8"] ; IntegerNumber(11).type(5) = ValueType(8)
;; IntegerNumber(11).comment(4) = "Value is an decimal-encoded integer number. e.g., \"-42\" represents number -42."
["11", "4", "Value is an decimal-encoded integer number. e.g., \"-42\" represents number -42."]
["12", "0", "Language"]
["12", "5", "6"]
["13", "0", "Language.entity"]
["13", "5", "7"]
["13", "1", "3"]
;; meta.core(14) : Language(12) {
["14", "0", "meta.core"]
["14", "5", "12"]
;; assign all other entities to meta.core(14).Language.entity(13)
["-1", "14", "13", "0"] ; identifier
["-2", "14", "13", "1"] ; Attribute.value-type
["-3", "14", "13", "2"] ; String
["-4", "14", "13", "3"] ; Reference
["-5", "14", "13", "4"] ; comment
["-6", "14", "13", "5"] ; type
["-7", "14", "13", "6"] ; Type
["-8", "14", "13", "7"] ; Attribute
["-9", "14", "13", "8"] ; ValueType
["-10", "14", "13", "9"] ; NaturalNumber
["-11", "14", "13", "10"] ; Attribute.reference-type
["-12", "14", "13", "11"] ; IntegerNumber
["-13", "14", "13", "12"] ; Language
["-14", "14", "13", "13"] ; Language.entity
;; }
["15", "0", "Type.attribute"]
["15", "4", "Allows associating attributes with specific types. Useful for when attribute is only useful for specific entity types."]
["15", "5", "7"]
["15", "1", "3"]
["15", "10", "7"]
["-15", "14", "13", "15"]
;; Type.attribute only makes sense for Type entities
["6", "15", "15"] ; Type(6).Type.attribute(15) = Type.attribute(15)
["7", "15", "1"] ; Attribute(7).Type.attribute(15) = Attribute.value-type(1)
["7", "15", "10"] ; Attribute(7).Type.attribute(15) = Attribute.reference-type(10)
["12", "15", "13"] ; Language(12).Type.attribute(15) = Language.entity(13)
["16", "0", "after"]
["16", "4", "Can be assigned to atoms/entities to ensure ordering of things."]
["16", "5", "7"]
["16", "1", "3"]
["-16", "14", "13", "16"]
;; assign order to meta.core(14).Language.entity(13)
; identifier
["-5", "16", "-1"] ; comment
["-16", "16", "-5"] ; after
["-6", "16", "-16"] ; type
["-7", "16", "-6"] ; Type
["-15", "16", "-7"] ; Type.attribute
["-8", "16", "-15"] ; Attribute
["-2", "16", "-8"] ; Attribute.value-type
["-11", "16", "-2"] ; Attribute.reference-type
["-9", "16", "-11"] ; ValueType
["-3", "16", "-9"] ; String
["-10", "16", "-3"] ; NaturalNumber
["-12", "16", "-10"] ; IntegerNumber
["-4", "16", "-12"] ; Reference
["-13", "16", "-4"] ; Language
["-14", "16", "-13"] ; Language.entity