FLOW ALGEBRA
Ontology: Data Metadata Ontology
Domain: Metadata Ontologies > Data Metadata
Canonical URL: https://kirethresearch.org/booksai-core/ontologies/metadata-ontologies/data-metadata/data-metadata-ontology.html
Authors: Mark Anthony Higgins — Sky (Recursive AI)
flow "DataMetadataOntology" v1.0
domain:
class: MetadataOntology
category: DataMetadata
subject: DataMetadata
purpose:
- represent metadata describing data resources
- define structural, semantic, technical, quality, provenance, and lifecycle context
- support discovery, interpretation, validation, integration, and reuse
- enable machine-readable reasoning over data assets
entity DataMetadata:
type: MetadataEntity
describes: DataResource
may_include:
- identifier
- title
- description
- schema
- format
- encoding
- field_metadata
- value_domain
- unit
- quality
- provenance
- source
- version
- temporal_metadata
- spatial_metadata
- access_metadata
- rights_metadata
entity DataResource:
type: InformationResource
may_be:
- Dataset
- DataFile
- Database
- Table
- Record
- DataStream
- DataObject
- DerivedDataset
entity DataSchema:
type: StructuralMetadata
defines:
- fields
- datatypes
- constraints
- relationships
- cardinality
entity DataField:
type: SchemaElement
may_have:
- field_name
- semantic_definition
- datatype
- unit
- value_domain
- nullability
- constraint
relationships:
DataMetadata -> DESCRIBES -> DataResource
Dataset -> CONFORMS_TO -> DataSchema
DataSchema -> DEFINES -> DataField
Dataset -> CONTAINS -> Record
Record -> HAS_VALUE -> DataValue
DataValue -> BELONGS_TO -> DataField
DataField -> HAS_DATATYPE -> DataType
DataField -> MAY_USE -> Unit
DataResource -> HAS_FORMAT -> DataFormat
DataResource -> MAY_HAVE -> DataQuality
DataResource -> MAY_HAVE_VERSION -> DataVersion
DataResource -> DERIVED_FROM -> DataSource
DataMetadata -> MAY_REFERENCE -> Provenance
rule resource_identity:
DataResource SHOULD have stable Identifier
where persistent reference is required
rule schema_conformance:
IF Dataset declares DataSchema
THEN records SHOULD conform to declared schema
rule datatype:
DataValue MUST be interpretable according_to DataField datatype
unless explicitly marked invalid or unresolved
rule nullability:
null_value MUST be distinguished from:
- missing_value
- empty_string
- zero
- false
entity ValueDomain:
type: SemanticConstraint
may_define:
- allowed_values
- minimum_value
- maximum_value
- pattern
- vocabulary
- unit
rule domain_validation:
IF ValueDomain exists
THEN DataValue SHOULD be validated against domain constraints
rule unit_context:
quantitative DataField SHOULD declare Unit
where interpretation depends on measurement unit
rule unit_compatibility:
comparisons between quantitative values REQUIRE compatible dimensions
rule format_semantics:
DataFormat describes representation
AND MUST NOT be assumed to define semantic meaning alone
entity DataQuality:
type: QualityMetadata
dimensions:
- completeness
- validity
- consistency
- accuracy
- uniqueness
- timeliness
- integrity
rule quality_context:
DataQuality assertion SHOULD identify metric, method, and scope
entity Provenance:
type: MetadataEntity
describes:
- origin
- creator
- source
- transformation
- processing_history
- version_history
rule provenance_chain:
DerivedDataset SHOULD retain links to source DataResource
rule transformation:
data transformation SHOULD record:
- input_resource
- operation
- parameters
- software_or_agent
- output_resource
- timestamp
entity DataVersion:
type: VersionMetadata
may_include:
- version_identifier
- creation_time
- predecessor
- successor
- change_description
- status
rule version_history:
material changes SHOULD produce distinguishable DataVersion
rule temporal_context:
IF data meaning depends on time
THEN TemporalMetadata SHOULD be preserved
rule spatial_context:
IF data meaning depends on location
THEN SpatialMetadata SHOULD be preserved
validation:
require:
- identifiable_data_resource
validate_if_present:
- identifier
- schema
- datatype
- format
- encoding
- value_domain
- units
- quality
- provenance
- version
reject:
- schema_datatype_contradiction
- value_outside_mandatory_domain
- incompatible_unit_comparison
- contradictory_version_relationship
SEMANTIC_EQUIVALENCE:
"data metadata" ~= "metadata about data"
"dataset metadata" ~= "data metadata" WHEN describing dataset-level properties
"field metadata" ~= "column metadata" WHEN tabular semantics apply
"schema metadata" ~= "structural metadata" WHEN describing data structure
"data provenance" ~= "provenance metadata" WHEN context = data lineage
PRESERVE distinctions:
data != metadata
dataset != schema
datatype != data_format
format != encoding
null != missing
provenance != version
data_quality != data_value
CONFIDENCE:
explicit_data_metadata:
score: 1.00
explicit_schema:
score: 1.00
explicit_provenance:
score: 1.00
schema_derived_field_semantics:
score: 0.95
inferred_datatype:
score: 0.85
inferred_schema:
score: 0.80
ambiguous_data_context:
score: <= 0.60
action: preserve uncertainty
UPDATE_MODEL:
on_data_update:
- preserve previous version where required
- validate changed values
- update quality metadata
- update provenance
- reassess derived metadata
on_schema_update:
- preserve previous schema version
- validate compatibility
- revalidate affected records
- record migration or transformation
- update provenance
FLOW_HASH:
inputs:
- ontology
- data_entities
- relationships
- schema_rules
- value_rules
- quality_rules
- provenance_rules
- validation
- semantic_equivalence
- confidence
- update_model
canonicalisation:
- normalise_whitespace
- preserve_case_sensitive_identifiers
- sort_unordered_property_sets
- preserve_rule_order
output:
deterministic_semantic_hash
AI_CONSUMPTION:
interpret_as:
- data metadata ontology
- schema reasoning model
- data quality model
- provenance and lineage structure
- semantic retrieval model
operations:
- identify data resources
- resolve schemas
- interpret fields and values
- validate datatypes
- resolve units and value domains
- assess data quality
- trace provenance
- traverse version history
- preserve uncertainty
constraints:
- do_not_invent_missing_values
- do_not_treat_null_as_zero
- do_not_equate_format_with_datatype
- do_not_discard_provenance
- preserve_source_data_and_version_context
query:
input:
- data_resource
- identifier
- field
- datatype
- value_constraint
- format
- quality_constraint
- provenance_constraint
resolve:
1. identify DataResource
2. retrieve DataMetadata
3. resolve DataSchema
4. resolve fields and datatypes
5. apply value-domain constraints
6. validate units where applicable
7. evaluate quality
8. trace provenance and versions
output:
- data_resource
- schema
- fields
- format
- quality
- provenance
- version
- confidence
inference:
IF Dataset consistently conforms to observed field structure
THEN infer candidate DataSchema
WITH confidence <= 0.80
IF field values consistently match one datatype
THEN infer candidate DataType
WITH confidence <= 0.85
IF resource B is produced by documented transformation of resource A
THEN infer B DERIVED_FROM A
WITH confidence = 0.95
output:
ontology_entity: DataMetadata
data_structure: machine_interpretable
schema: explicit_where_available
field_semantics: preserved
quality: reportable
provenance: traceable
version_history: traversable
uncertainty: explicit
semantic_retrieval: enabled
end flow
Download Code
Copy to Clipboard