Skip to content

MetaverseStandards/Metaverse-Ontology

Β 
Β 

Repository files navigation

Metaverse Ontology - Hybrid Logseq + OWL Design

A formal ontology for metaverse concepts using an innovative hybrid approach that combines Logseq markdown for human readability with OWL Functional Syntax for formal reasoning.

🌟 Key Features

  • Orthogonal Classification: Two-dimensional design (Physicality Γ— Role) enabling automatic inference of 9 intersection classes
  • Logseq-Native Format: Pure outline format with collapsed blocks, queryable properties, and section IDs
  • Automated Extraction: Rust tool to parse Logseq files and generate complete OWL ontology
  • OWL 2 DL Compliant: Full support for formal reasoning and consistency checking
  • Dual Purpose: Human-readable in Logseq, machine-extractable for reasoners
  • ETSI Aligned: Domain classification based on ETSI metaverse standards

πŸ“ Project Structure

OntologyDesign/
β”œβ”€β”€ README.md                          # This file
β”‚
β”œβ”€β”€ docs/                              # πŸ“š Documentation
β”‚   β”œβ”€β”€ guides/
β”‚   β”‚   β”œβ”€β”€ QUICKSTART.md             # 5-minute setup guide
β”‚   β”‚   └── MIGRATION_GUIDE.md        # How to migrate concepts
β”‚   β”œβ”€β”€ reference/
β”‚   β”‚   β”œβ”€β”€ TEMPLATE.md               # Standard concept format template
β”‚   β”‚   β”œβ”€β”€ FORMAT_STANDARDIZED.md    # Complete format specification
β”‚   β”‚   β”œβ”€β”€ URIMapping.md             # Wikilink β†’ IRI conversion rules
β”‚   β”‚   └── LOGSEQ_TAG_USAGE.md       # Using metaverseOntology tag
β”‚   β”œβ”€β”€ IMPLEMENTATION_STATUS.md      # Feature completion status
β”‚   β”œβ”€β”€ MIGRATION_STATUS.md           # 260+ concept migration progress
β”‚   └── task.md                       # Original design requirements
β”‚
β”œβ”€β”€ OntologyDefinition.md             # 🎯 Core ontology header & base classes
β”œβ”€β”€ PropertySchema.md                  # πŸ”— All object/data/annotation properties
β”œβ”€β”€ ETSIDomainClassification.md       # πŸ›οΈ ETSI domain taxonomy
β”œβ”€β”€ ValidationTests.md                 # βœ… Test cases for reasoning
β”‚
β”œβ”€β”€ Avatar.md                          # πŸ“˜ Example: VirtualAgent class
β”œβ”€β”€ DigitalTwin.md                     # πŸ“— Example: HybridObject class
β”‚
β”œβ”€β”€ VisioningLab/                      # πŸ”¬ 260+ concept files
β”‚   β”œβ”€β”€ Game Engine.md                # Example: VirtualObject class
β”‚   └── [...]                         # (migration in progress)
β”‚
└── logseq-owl-extractor/             # πŸ¦€ Rust extraction tool
    β”œβ”€β”€ Cargo.toml                     # Dependencies
    β”œβ”€β”€ README.md                      # Tool documentation
    └── src/
        β”œβ”€β”€ main.rs                    # CLI interface
        β”œβ”€β”€ parser.rs                  # Markdown parser
        β”œβ”€β”€ converter.rs               # Wikilink β†’ IRI conversion
        └── assembler.rs               # Ontology assembly & validation

πŸš€ Quick Start

1. Build the Extractor

cd logseq-owl-extractor
cargo build --release

2. Extract OWL from Logseq Files

./logseq-owl-extractor/target/release/logseq-owl-extractor \
  --input . \
  --output metaverse-ontology.ofn \
  --validate

3. View in ProtΓ©gΓ© or Use with Reasoner

# Open in ProtΓ©gΓ© (GUI)
protege metaverse-ontology.ofn

# Or classify with whelk-rs (CLI)
whelk classify metaverse-ontology.ofn

πŸ“– See docs/guides/QUICKSTART.md for detailed instructions.

🎯 Design Philosophy

Orthogonal Classification

The ontology uses two independent dimensions:

Physicality Role β†’ Result
Physical Agent PhysicalAgent (e.g., Human)
Virtual Agent VirtualAgent (e.g., Avatar)
Hybrid Agent HybridAgent (e.g., Cyborg)
Physical Object PhysicalObject (e.g., VR Headset)
Virtual Object VirtualObject (e.g., 3D Model)
Hybrid Object HybridObject (e.g., Digital Twin)
... ... ... (9 total combinations)

This allows:

  • Natural multiple inheritance
  • Automatic classification by reasoners
  • Clean separation of concerns

Logseq-Native Format

Each concept is defined in a pure Logseq outline format:

- ### OntologyBlock
  id:: avatar-ontology
  collapsed:: true
	- metaverseOntology:: true
	- term-id:: 20067
	- preferred-term:: Avatar
	- definition:: Digital representation of a person...
	- owl:class:: mv:Avatar
	- owl:physicality:: VirtualEntity
	- owl:role:: Agent
	- owl:inferred-class:: mv:VirtualAgent
	- #### Relationships
	  id:: avatar-relationships
		- has-part:: [[Visual Mesh]], [[Animation Rig]]
		- requires:: [[3D Rendering Engine]]
	- #### OWL Axioms
	  id:: avatar-owl-axioms
	  collapsed:: true
		- ```clojure
		  Declaration(Class(mv:Avatar))
		  SubClassOf(mv:Avatar mv:VirtualEntity)
		  SubClassOf(mv:Avatar mv:Agent)
		  ```
- ## About Avatars
	- Human-readable description and examples...

Benefits:

  • βœ… Tidy: Everything collapses into ### OntologyBlock
  • βœ… Queryable: metaverseOntology:: true tag enables Logseq queries
  • βœ… Referenceable: Section IDs allow block references
  • βœ… Readable: Clojure syntax highlighting for OWL code
  • βœ… Extractable: Parser extracts properties and OWL blocks
  • βœ… Documented: Human context in "About" section
  • βœ… Linked: WikiLinks create knowledge graph

πŸ“š Documentation

Getting Started

Document Description
QUICKSTART.md Get started in 5 minutes
MIGRATION_GUIDE.md How to migrate VisioningLab concepts

Reference

Document Description
TEMPLATE.md Standard concept format template
FORMAT_STANDARDIZED.md Complete format specification
URIMapping.md Wikilink to IRI conversion rules
LOGSEQ_TAG_USAGE.md Using metaverseOntology tag for queries

Additional Resources

Document Description
CONSOLIDATED_KNOWLEDGEBASE.md Complete project overview
FORWARD_IMPLEMENTATION_PLAN.md Future enhancements roadmap
SOLUTION_ARCHITECTURE_STRATEGY.md Technical architecture details

Tools

Document Description
logseq-owl-extractor/README.md Extractor tool documentation

πŸ§ͺ Example Concepts

Avatar.md - VirtualAgent

Classification:

  • owl:physicality:: VirtualEntity
  • owl:role:: Agent
  • owl:inferred-class:: mv:VirtualAgent βœ…

Key Properties:

  • Represents exactly one user or AI agent
  • Requires 3D Rendering Engine
  • Enables User Embodiment and Social Presence
  • Has parts: Visual Mesh, Animation Rig

OWL Axioms:

Declaration(Class(mv:Avatar))
SubClassOf(mv:Avatar mv:VirtualEntity)
SubClassOf(mv:Avatar mv:Agent)
SubClassOf(mv:Avatar
  ObjectExactCardinality(1 mv:represents mv:Agent)
)

➑️ Reasoner infers: Avatar βŠ‘ VirtualAgent


DigitalTwin.md - HybridObject

Classification:

  • owl:physicality:: HybridEntity
  • owl:role:: Object
  • owl:inferred-class:: mv:HybridObject βœ…

Key Properties:

  • Binds physical entity to virtual representation
  • Synchronizes data in real-time
  • Requires IoT sensors and data streams
  • Implemented in Infrastructure Layer

OWL Axioms:

Declaration(Class(mv:DigitalTwin))
SubClassOf(mv:DigitalTwin mv:HybridEntity)
SubClassOf(mv:DigitalTwin mv:Object)
SubClassOf(mv:DigitalTwin
  ObjectExactCardinality(1 mv:synchronizesWith mv:PhysicalEntity)
)

➑️ Reasoner infers: DigitalTwin βŠ‘ HybridObject


Classification:

  • owl:physicality:: VirtualEntity
  • owl:role:: Object
  • owl:inferred-class:: mv:VirtualObject βœ…

Key Properties:

  • Software platform for real-time 3D experiences
  • Has parts: Rendering Pipeline, Physics Engine, Asset Manager
  • Belongs to InfrastructureDomain and CreativeMediaDomain

➑️ Reasoner infers: GameEngine βŠ‘ VirtualObject

βœ… Validation Tests

The ontology includes test cases for:

  • βœ… Inference: Avatar β†’ VirtualAgent classification
  • βœ… Consistency: Valid Digital Twin with proper bindings
  • ⚠️ Inconsistency Detection: Digital Twin missing required binding
  • ❌ Disjointness Violation: Entity in both Physical and Virtual

See ValidationTests.md for details.

πŸ’‘ Use Cases

1. Metaverse Interoperability Standards

  • Define common vocabulary for cross-platform metaverse systems
  • Enable semantic interoperability between virtual worlds
  • Support ETSI and ISO metaverse standardization efforts

2. Knowledge Graph Construction

  • Build queryable knowledge base of metaverse concepts
  • Link related concepts through formal relationships
  • Support semantic search and discovery

3. Application Development

  • Reference ontology for metaverse platform architects
  • Semantic validation of system designs
  • Documentation and communication tool for teams

4. Research & Analysis

  • Classify emerging metaverse technologies
  • Track evolution of metaverse concepts over time
  • Identify gaps and opportunities in the metaverse stack

5. Automated Reasoning

  • Automatically infer concept classifications
  • Detect inconsistencies in system designs
  • Validate architectural constraints

πŸ”§ Technology Stack

Component Technology Purpose
Ontology Language OWL 2 DL Formal knowledge representation
Syntax OWL Functional Syntax Machine-readable axioms
Source Format Logseq Markdown Human-readable editing
Parser/Validator horned-owl (Rust) OWL parsing and validation
Reasoner HermiT, Pellet, whelk-rs Automatic classification and consistency checking
Knowledge Editor Logseq Visual outliner for navigation
Ontology Viewer ProtΓ©gΓ© GUI for visualizing class hierarchy
Extraction Tool Custom Rust tool Convert Logseq β†’ OWL
Version Control Git + Markdown Track changes over time

πŸ› οΈ Extractor Tool Features

The logseq-owl-extractor Rust tool provides:

  • πŸ“ Parse Logseq markdown - Extracts properties and OWL blocks from outline format
  • πŸ”— Combine OWL blocks - Assembles axioms from multiple concept files
  • πŸ—οΈ Build complete ontology - Includes header from OntologyDefinition.md
  • βœ… Validate syntax - Uses horned-owl to check OWL 2 DL compliance
  • πŸ”„ Convert wikilinks - Transforms [[Page Name]] to mv:PageName IRIs
  • 🎯 Property conversion - Optional conversion of Logseq properties to OWL axioms
  • πŸ“Š Two format support - Handles both code fence and direct indented OWL blocks
  • πŸ” Error reporting - Clear messages for syntax errors with line numbers

Example usage:

logseq-owl-extractor --input . --output ontology.ofn --validate

See logseq-owl-extractor/README.md for full documentation.

πŸ“Š Current Status

Production Ready - Full 281-concept metaverse ontology with OWL 2 DL compliance

Component Status
Metaverse Concepts βœ… 281 concepts fully migrated
OWL Validation βœ… Zero errors, OWL 2 DL compliant
Multi-format Export βœ… OWL/XML, Turtle, JSON-LD
Visualization βœ… WebVOWL ready
Documentation βœ… Complete

🀝 Contributing

Contributions welcome! To add a new concept:

  1. Use the template: Copy docs/reference/TEMPLATE.md
  2. Follow exemplars: Study Avatar.md, DigitalTwin.md, or VisioningLab/Game Engine.md
  3. Classify correctly: Use Physicality Γ— Role dimensions (see docs/guides/MIGRATION_GUIDE.md)
  4. Add metaverseOntology tag: Include metaverseOntology:: true property
  5. Validate: Run the extractor to check OWL syntax
  6. Submit PR: Include description of concept and its classification

Adding New Concepts - Quick Checklist

  • Filename matches concept name (spaces OK)
  • ### OntologyBlock heading with collapsed:: true
  • metaverseOntology:: true is first property
  • Unique term-id assigned
  • Clear definition provided
  • owl:physicality dimension correct (Physical/Virtual/Hybrid)
  • owl:role dimension correct (Agent/Object/Process)
  • owl:inferred-class matches physicality + role
  • At least one ETSI domain assigned
  • OWL Axioms in code fence with ```clojure syntax
  • File extracts successfully with logseq-owl-extractor
  • Human-readable "About" section included

See docs/reference/TEMPLATE.md for full validation checklist.

πŸ“– Learn More

OWL 2 Resources

Metaverse Standards

Tools


πŸ“„ Licence

This project is licensed under the Mozilla Public Licence 2.0. See the LICENSE file for details.


πŸ‘₯ Authors

John O'Hare for DreamLab - AI Ltd based on VisioningLab open Metaverse Ontology

πŸ™ Acknowledgments

  • Built with horned-owl by Phillip Lord
  • Inspired by the Logseq knowledge management approach
  • Aligned with ETSI and ISO metaverse standards

πŸŽ‰ Ready to Explore?

Visualize the Ontology:

  1. Download metaverse-ontology-webvowl.owl
  2. Visit WebVOWL
  3. Upload and explore 281+ metaverse concepts interactively!

Additional Documentation:


About

No description, website, or topics provided.

Resources

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Rust 52.6%
  • Shell 32.7%
  • Python 8.0%
  • JavaScript 6.7%