-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathglossary-ekg.tex
340 lines (314 loc) · 13.5 KB
/
glossary-ekg.tex
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
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
%%
%% The main glossary (but only the EKG related terms of the main glossary),
%% use this for any terms that are NOT:
%%
%% - Concepts (use glossary-concepts.tex for that)
%% - Business Terms (use glossary-business.tex for that)
%% - Ontologies (use glossary-ontologies.tex for that)
%%
%% Do also not store any customer specific terms here, use
%% glossary-<customer-code>.tex for that.
%%
%% \newglossaryentry{⟨label⟩}{
%% type=\acronymtype,
%% name={⟨abbrv⟩},
%% description={⟨long⟩},
%% text={⟨abbrv⟩},
%% first={⟨long⟩ (⟨abbrv⟩)},
%% plural={⟨abbrv⟩s},
%% firstplural={⟨long⟩s (⟨abbrv⟩s)},
%% ⟨options⟩
%% }
%%
%% Common keys:
%%
%% - name
%% The name of the entry (as it will appear in the glossary).
%% - description
%% A brief description of this entry (to appear in the glossary).
%% - text
%% How this entry will appear in the document text where the singular form is required.
%% If this key is omitted the value of name will be used.
%% - first
%% How this entry will appear in the document text the first time it is used,
%% where the first use requires the singular form.
%% If this key is omitted the value of text is used.
%% - plural
%% How this entry will appear in the document text where the plural form is required.
%% If this key is omitted, the value is obtained by appending the letter “s” to the value of the text key.
%% - firstplural
%% How this entry will appear in the document text the first time it is used,
%% where the first use requires the plural form.
%% If this field is omitted, the value is obtained by appending the letter “s” to the value of the first key.
%% - symbol
%% This key is provided to allow the user to specify an associated symbol, but most glossary styles ignore this value.
%% - sort
%% This value indicates how to sort this entry (analogous to using the @ character in the argument of \index.
%% Creating an Index (makeidx package)). If this key is omitted the value of name is used.
%% - type
%% This is the glossary type to which this entry belongs.
%% If omitted the main (default) glossary is assumed.
%%
%\newacronym[see={[Glossary:]{ekg:ekg}}]{ekg}{EKG}{Enterprise Knowledge Graph}% ekg the acronym
%\newacronym[shortplural={EKGs},longplural={Enterprise Knowledge Graphs}]{ekg}{EKG}{Enterprise Knowledge Graph}
\newglossaryentry{ekg}{% ekg the acronym
type=\acronymtype, % notice this, this is not a normal glossary entry but an acronym
name={EKG},
text={EKG},
short={EKG},
long={Enterprise Knowledge Graph},
description={Enterprise Knowledge Graph},
first={Enterprise Knowledge Graph (EKG)\glsadd{ekg:ekg}},
firstplural={Enterprise Knowledge Graphs (EKGs)\glsadd{ekg:ekg}},
shortplural={EKGs},
longplural={Enterprise Knowledge Graphs},
see=[Glossary:]{ekg:ekg}
}
\newglossaryentry{ekg:ekg}{% ekg:ekg the glossary entry
type=\glsdefaulttype,
name={EKG},
description={%
much like "the web" is a virtual concept, an \glsentryshort{ekg} is a virtual concept that combines all
information and knowledge of an enterprise\,---\,at any level in the organization\,---\,or ecosystem.
}
}
\newglossaryentry{ekg:coe}{
type=\glsdefaulttype,
name={\glsentryshort{coe} for the \glsentryshort{ekg}},
plural={\glsentryplural{coe} for the \glsentryshort{ekg}},
% firstplural={\glsreset{coe}\glspl{coe} for the \gls{ekg}},
description={%
the group of people that is overseeing the \glsentryshort{ekg}
}
}
\newglossaryentry{ekg:architecture:system}{
type=\glsdefaulttype,
name={EKG system architecture},
description={%
the logical \gls{system-architecture} of \glsentryshort{ekg} is divided into multiple layers or environments such as
\gls{ekg:platform}, \gls{ekg:storage} and \gls{ekg:dataops:environment}.
}
}
\newacronym[see={[General Terms:]{ekg:platform}}]{ekgp}{EKG/\-Platform}{Enterprise Knowledge Graph Platform\glsadd{ekg:platform}}
\newglossaryentry{ekg:platform}{
type=\glsdefaulttype,
name={EKG/Platform},
description={%
a logical \gls{system-architecture} component (see \gls{ekg:architecture:system}),
the layer of software services that provide and serve the \gls{ekg} to end-users and other systems.
The platform logically is a set services that enforce any of the specified policies in the
\glspl{sdd} that have been published in the \gls{ekg}.
}
}
\newglossaryentry{ekg:storage}{
type=\glsdefaulttype,
name={EKG/Storage},
text={EKG/Storage},
description={%
a logical \gls{system-architecture} component, the layer of data-storage services such as a "Triplestore"
or an "Object Store" that serve the various other layers in the \gls{ekg:architecture:system}.
}
}
\newacronym[see={[Glossary:]{ekg:storage:objectstore}}]{s3}{S3}{Simple Storage Service}
\newglossaryentry{s3}{% s3 the acronym, refers to "object store"
type=\acronymtype,
name={S3},
text={S3},
description={Simple Storage Service},
first={Simple Storage Service (S3)\glsadd{ekg:storage:objectstore}},
shortplural={S3-services},
longplural={S3-services},
see=[Glossary:]{ekg:storage:objectstore}
}
\newglossaryentry{ekg:storage:objectstore}{
type=\glsdefaulttype,
name={object store},
text={object store},
description={%
"object store" in the context of \gls{ekg:architecture:system} refers to "object storage" or
"cloud object storage"
(such as \href{https://aws.amazon.com/what-is-cloud-object-storage/}{Amazon's AWS \gls{s3} service}).
the \gls{ekg:storage} layer of \gls{ekg:architecture:system} always contains an object store (supporting the
s3 api, usually the product \href{https://min.io}{MinIO} is used for that).
Many backend storage mechanisms can be supported e.g. NAS, HDFS, Azure, Google Storage etc.
}
}
\newglossaryentry{ekg:method}{
type=\glsdefaulttype,
name={EKG/Method},
text={EKG/Method},
first={EKG/Method},
description={%
a methodological approach to the development of an \glsxtrfull{ekg}, covering all practices from the definition
of desired business outcomes to deployment of \glsxtrshort{ekg} use cases that deliver on these outcomes and beyond.
}
}
\newglossaryentry{ekg:dataops}{
type=\glsdefaulttype,
name={EKG/DataOps},
text={EKG/DataOps},
first={EKG/DataOps\glsadd{ekg:dataops:practice}\glsadd{ekg:dataops:environment}},
description={%
the word EKG/DataOps has two meanings: a) it stands for a "practice" (see \gls{ekg:dataops:practice}) and
b) it serves as the name of a logical \gls{system-architecture} component,
the environment in which all "DataOps Pipelines" are running.
}
}
\newglossaryentry{ekg:dataops:practice}{
type=\glsdefaulttype,
name={practice},
text={EKG/DataOps Practice},
description={%
the DataOps practice,\,---\,as defined by the \gls{ekg:method}\,---\,is one of the practices
that the \gls{ekg:coe} executes.
}
}
\newglossaryentry{ekg:dataops:environment}{
type=\glsdefaulttype,
name={EKG/DataOps environment},
text={EKG/DataOps environment},
description={%
a logical \gls{system-architecture} component, the environment where \glspl{ekg:dataops:pipeline} run.
Since \glspl{ekg:dataops:pipeline} can run anywhere and any given data provider can publish their own
data as a \gls{sdd} in any technical or physical environment, the actual DataOps "environment"
is just a logical concept that does not necessarily map one-to-one to a particular physical environment.
}
}
\newglossaryentry{ekg:dataops:pipeline}{
type=\glsdefaulttype,
name={EKG/DataOps pipeline},
text={EKG/DataOps pipeline},
plural={EKG/DataOps pipelines},
description={%
a DataOps pipeline in the \gls{ekg:dataops:environment} is a series of programs, called "steps",
that are run in sequence\,---\,hence the name pipeline\,---\,where the first step captures the data
from a given source and the last step produces an \gls{sdd} (for "inbound pipelines") or
any other type of artifact (for "outbound pipelines").
Each DataOps pipeline step takes an input and produces an output based on its configuration which usually
refers to a model that instructs the DataOps pipeline step how to process the data.
Crafting these models is the main activity in the \gls{ekg:dataops:practice}.
}
}
\newglossaryentry{ekg:monitoring}{
type=\glsdefaulttype,
name={EKG/Monitoring},
description={..todo..}
}
\newglossaryentry{sdd}{% sdd the acronym
type=\acronymtype, % notice this, this is not a normal glossary entry but an acronym
name={SDD},
text={SDD},
short={SDD},
description={self-describing dataset},
long={self-describing dataset},
first={self-describing dataset (SDD)\glsadd{ekg:sdd}},
firstplural={self-describing datasets (SDDs)\glsadd{ekg:sdd}},
shortplural={SDDs},
longplural={self-describing datasets},
see=[Glossary:]{ekg:sdd}
}
\newglossaryentry{ekg:sdd}{
type=\glsdefaulttype,
name={self-describing dataset (SDD)},
text={self-describing dataset},
longplural={self-describing datasets},
firstplural={self-describing datasets (SDDs)},
description={%
an \gls{ekg} is logically composed of a set of \textit{self-describing datasets} that provide information about
lineage, provenance, pedigree, maturity, quality, governance, entitlement policies, retention policies,
security labels, IP policies, pricing policies, caching policies,
organizational ownership\index{organizational!ownership}, accountabilities\index{accountability},
data quality feedback loop\index{data!quality feedback loop}, \iindex{issue management} policies and so forth.
Any given system owner that connects their data to the \gls{ekg} becomes in fact a publisher of a
self-describing dataset and can therefore control how \myuline{their} data is handled by the \gls{ekg:platform}.
The \gls{ekg:platform} consists of services that enforce any of the specified policies in the
self-describing dataset.
At the technical level, datasets can be files or streams or API definitions etc.
\iflabelexists{sec:ekg-principle-self-describing}{%
See also principle
\textit{\ref{sec:ekg-principle-self-describing}~\nameref{sec:ekg-principle-self-describing}}
on page \pageref{sec:ekg-principle-self-describing}.
}{%
See also principle \textit{5 Self-describing} in the \gls{ekgmanifesto}.
}\index{principles!Self-describing}
}
}
\newglossaryentry{ekg:predicate}{
type=\glsdefaulttype,
name={predicate},
text={predicate},
description={%
asserting an "\gls{rdf} triple" says that some relationship\,---\,indicated by the predicate\,---\,holds
between the resources denoted by the subject and object.
This statement corresponding to an RDF triple is known as an RDF statement.
The predicate itself is an \gls{iri} and denotes a property, that is,
a resource that can be thought of as a binary relation.
}
}
\newglossaryentry{ekg:identifier}{
name={{EKG/ID}},%
text={{EKG/ID}},
type=\glsdefaulttype,%
first="Enterprise Knowledge Graph Identifier (EKG/ID)",
firstplural="Enterprise Knowledge Graph Identifiers (EKG/IDs)",
description={
A universally unique opaque (i.e. meaningless) number, either based on a hash or a random number, optionally
signed that uniquely identifies an object in the \gls{ekg}.
Usually the EKG/ID is part of an \gls{ekg:iri} but at higher levels of EKG maturity not necessarily so since
permanent resolvability of EKG/IDs will be guaranteed via future non-HTTP based standards.
}
}
\newglossaryentry{ekg:iri}{
name={EKG/IRI},%
text={EKG/IRI\glsadd{iri}},
type=\glsdefaulttype,%
first="Enterprise Knowledge Graph IRI (EKG/IRI)",
firstplural="Enterprise Knowledge Graph IRIs (EKG/IRI)",
description={
A special type of identifier, based on the \gls{iri}-standard, that forms the
identity of an object in the \gls{ekg}.
Any given object in an \gls{ekg} has at least one EKG/IRI for which special rules are defined by the \gls{ekgf}
to allow interoperability between various instances of the \gls{ekg:platform}. For instance, an EKG/IRI has
to be universally unique, opaque (as in "meaningless") and resolvable (for the duration of the life-cycle of
the thing or object it represents).
}
}
\newglossaryentry{ekg:iri:predicate}{
type=\glsdefaulttype,
name={predicate-IRI},
text={predicate-IRI},
description={%
see \gls{ekg:predicate}
}
}
\newglossaryentry{canonical-identifier}{ % TODO: Since this is an EKG specific explanation we should prefix it with ekg:
name={canonical identifier},%
type=\glsdefaulttype,%
text={canonical identifier},%
description={an alternative name for \gls{ekg:iri}}
}
\newglossaryentry{ekg:use-case}{
type=\glsdefaulttype,
name={\glsentryshort{ekg} use case},
text={\glsentryshort{ekg} use case},
description={%
TODO
}
}
\newglossaryentry{ekg:ontologist}{
type=\glsdefaulttype,
name={ontologist},
text={ontologist},
description={%
TODO
}
}
\newglossaryentry{ekg:rdf-schema}{
type=\glsdefaulttype,
name={RDF Schema},
text={RDF Schema},
description={%
TODO
\href{https://www.w3.org/TR/rdf-schema/}{RDF Schema}
}
}