class
can be used to indicate the sub-type of data-center as primary or alternate.local-definitions
of an Assessment Plan or Assessment Results.local-definitions
of an Assessment Plan or Assessment Results.location
defined in the metadata
of the SSP, Assessment Plan, or Assessment Results.party
in the metadata
of the SSP, Assessment Plan, or Assessment Results.user
defined in the SSP, or in the local-definitions
of an Assessment Plan or Assessment Results.local-definitions
of an Assessment Plan or Assessment Results.local-definitions
of an Assessment Plan or Assessment Results.location
defined in the metadata
of the SSP, Assessment Plan, or Assessment Results.party
in the metadata
of the SSP, Assessment Plan, or Assessment Results.user
defined in the SSP, or in the local-definitions
of an Assessment Plan or Assessment Results.local-definitions
of an Assessment Plan or Assessment Results.local-definitions
of an Assessment Plan or Assessment Results.location
defined in the metadata
of the SSP, Assessment Plan, or Assessment Results.party
in the metadata
of the SSP, Assessment Plan, or Assessment Results.user
defined in the SSP, or in the local-definitions
of an Assessment Plan or Assessment Results.class
can be used to indicate the sub-type of data-center as primary or alternate.
+ { $validating-filename }
contains { @elements} {
+ mx:pluralize(@elements/number(),'element') } and { @attributes } {
+ mx:pluralize(@attributes/number(),'attribute') }.
{ count(.//mx:report) } { mx:pluralize(count(.//mx:report),'issue') } reported.
+
+
Good news - nothing to report - the instance is valid. 🚀 +
+{ @class }{ @level[not(.='ERROR')] ! (' ' || .) }
+{ . }
+ { @test }
+ { @matching }
+ { @xpath }
+
+
+
+ at
, atx
, mini-itx
or an alternative.x86
, x86-64
, arm
, or an alternative.pata
(parallel ATA), sata
(Serial ATA), or an alternative.pci
(PCI, e.g. Peripheral Component Interconnect), pcie
(PCI Express), or an alternative.name
.id-ref
. This insert mechanism allows the selection of which text value from the object to dynamically include based on the application's display requirements.type
. The specific value to include is based on the application's display requirements, which will likely use a specific data element associated with the type
(e.g., title, identifier, value, etc.) that is appropriate for the application.
+ { $validating-filename }
contains { @elements} {
+ mx:pluralize(@elements/number(),'element') } and { @attributes } {
+ mx:pluralize(@attributes/number(),'attribute') }.
{ count(.//mx:report) } { mx:pluralize(count(.//mx:report),'issue') } reported.
+
+
Good news - nothing to report - the instance is valid. 🚀 +
+{ @class }{ @level[not(.='ERROR')] ! (' ' || .) }
+{ . }
+ { @test }
+ { @matching }
+ { @xpath }
+
+
+
+ A metaschema can be small and yet deep.
+id-ref
. This insert mechanism allows the selection of which text value from the object to dynamically include based on the application's display requirements.type
. The specific value to include is based on the application's display requirements, which will likely use a specific data element associated with the type
(e.g., title, identifier, value, etc.) that is appropriate for the application.A metaschema can be small and yet deep.
+Find examples of both valid and invalid markup-line and markup-multiline in a pretend operational context.
+Here's some okay markup multiline, all clear.
+A markup zoo
permits all kinds of inline markup including bold, strong, italic, emphasis, code
, subscript, superscript, hypertext anchors, (insertion points and images)
Including:
+A glossary to Metaschema technology.
+Nothing here is normative.
+A metaschema is a composed artifact representing an abstract information model. If you are reading this you probably already have a good idea of what a metaschema is. In encoded form, a specific metaschema will define a set of rules to be tested over data instances - actual data
, however stored and expressed. Data instances (documents or data sets) can be discriminated on the basis of whether and to what extent they follow such rules, thus serving as valid instances of the complex object type (or one such object type) defined by the metaschema.
When a data set or document is known or knowable as valid, it becomes possible to make with confidence a large set of assertions regarding its contents, based on information known from the metaschema. Essentially it converts the problem of interpreting the document contents from an open world
to a closed world
problem, by defining structures and boundaries for the information space into which data can be projected and declaring as out of bounds
anything that is likely to pose problems because not well defined, or defined at all.
A Metaschema module represents implementations of the individual information elements of the information model using definitions
. +A module is synonym for a metaschema as defined above.
+An assembly is a complex object defined in a metaschema. Its properties include a name (identifier); a name in use (a tag to be used in data); and a model, including both permitted flags(appearing one each at most), assemblies, and fields (potentially appearing in multiples).
+Assemblies have formal names (often giving more information than the tag or name-in-use) and descriptions, and they may be defined with additional constraints to apply either to themselves or descendants (structures within data content).
+At least one assembly must be designated in a metaschema as a possible root assembly, that is to say the data object that contains all other data objects given, and thus the scope for parsing. Assemblies not defined as possible roots cannot appear at the top
(meaning, themselves comprising the entire data instance), but they will commonly be permitted inside other definitions in a well-defined arrangement.
An assembly is like a record type whose properties can include other records - or in XML, a complexType (element with complex element content, not mixed or text content).
+A field, like an assembly, is a data structure. Unlike assemblies, however, fields have no models (containing further fields and assemblies), instead presenting a single atomic value of a designated type (using the field definition's as-type
). Datatypes for fields (and flags) include not only strings and numbers of different types (integer etc.) but also time-and-duration types, URIs and more.
Like assemblies, fields can have flags, providing for an additional layer for annotation
of the field value.
Flags are simple named data points associated with individual assemblies or fields.
+Like fields, flags have atomic values that can be assigned data types and validated for the lexical forms associated with those types.
+An XML representation will often use attribute syntax to represent flags, as a convenience.
+Values are data points associated singly with fields or flags. Values can be assigned a type, in which case their lexical form must (for the data to be metaschema-valid) conform to requirements for that type.
+Note that fields have their own values, while they can also have flags with their own values.
+Assemblies do not have values, while a composite value
can always be constructed for an assembly from the values of its contents, or by applying an appropriate function or filter.
Some parting words.
+Take note here.
+An endnote, with emphasis.
+A metaschema can be small and yet deep.
+For a more extensive model supporting definitions, acronyms etc. build this out into an assembly. + As a field, this supports some control over the vocabulary and formatting without heavier embedded metadata.
+Of course you could always make a structured glossary out of regular and controlled parts for your terminology, and use this inside it, potentially with title/insert.
+A whole number is expected here although '0' is permitted. Values among siblings are not constrained to be ordered, only different. Ordering is up to the receiving application.
+An application may constrain the value of the node to a datatype or other requirement, on the basis of @key, @class or other association(s).
{ @xspec }
- { @xspec/replace(.,'.*/','') }
{ @xspec/replace(.,'.*/','') }
- { local-name(..) }/{ local-name(.) }: { . }
-{ local-name(..) }/{ local-name(.) }: { . }
-{ local-name(..) }/{ local-name(.) }: { format-dateTime(xs:dateTime(.),'[MNn] [D1], [Y0001] [H01]:[m01]:[s01]') } ({.}
)