The base schema
Important design committees have demonstrated that you can build huge
schemas with very little expression power. This has given XML (schemas)
a (deserved) bad name. This base schema for Meshy Space tries to avoid
those pitfalls with various shameless short-cuts.
The elements in base use standards when they exist. There are many
standards, and people have put a lot of effort in composing them. Meshy Space
defines a uniform use of them.
- Download the full schema. (Most browsers
will not show it, as it is XML: do "view source")
This base schema defines the b:unit
of operation. It could have been named object, atom,
item, entry, file, quantum, or blob:
the Unit is an sequence of octets (bytes) with some meaning.
When you merge the features for these abstract thingies in many
application, you get a unified idea about managing data.
Wrapping data in Units (standardization)
For easier access, the components defined by this schema are split
into a few accessible categories. This is for documentation only: they form
one namespace and one XML schema.
- Units
- Groups the payload data, with meta-data, documentation, and definitions
into one data-structure. The Unit of knowledge.
- Constants, Units which represent facts
- Many sets of namespaced constants are used, mainly to explictly refer to
values defined in RFCs, IANA, and other standardization bodies.
- Definitions group configuration logic
- Describe relations to other units, and simplify the "body" of the Unit.
- Documentation
- Organize the documentation of a single Unit. This handles translation as
well.
- Payloads
- Contain the data of each unit (in-lined) or as reference. Some payloads
are native to the Meshy Space infrastructure.
- Values
- Representations of basic values, like expressions and numbers.
Organizing the Units (governance)
Where the b:unit contains the data, and maintains Unit related
meta-data, the b:namespace manages the collection of Units. This
in structured in separate layers, for separate sets of management complications.
- Namespaces: related data
- One archive with related data, for instance "your pictures", "a Linux distribution",
"my business documents". The Namespace knows where the data is (Units on Shards),
and how to search (Index instances). It also keeps track of referenced other
Namespaces.
- Collections: logical organization of Units
- Within one Namespace, you can organize Units in (sub-)Collections, like files in
directories.
- Rules: restricting the organization of Units
- Access-rights, name- and content restriction, life-cycle settings.
- Server: physical organization
- Saving, loading, and searching Units: Shards and Indexes.
The schema header
<schema xmlns="http://www.w3.org/2001/XMLSchema" version="0.1.0"
elementFormDefault="qualified" attributeFormDefault="qualified"
targetNamespace="https://schemas.meshy.space/base.xsd"
xmlnsb="https://schemas.meshy.space/base.xsd"
>
mark@overmeer.net
Web-pages generated on 2023-12-19
|