SN-YO is a Semantic Web ontology for representing Surya Namaskar (Sun Salutation) yoga knowledge. It models asanas, pose occurrences, sequence variants, breathing patterns, mantras, chakras, body-part involvement, posture constraints, common pose errors, and correction guidance in a structured OWL knowledge graph.
The ontology is designed to support queryable yoga knowledge, comparative study of Surya Namaskar traditions, and downstream tools such as educational explorers, reasoning systems, and ontology-grounded coaching interfaces.
Use the PURL identifiers below when referring to SN-YO ontology resources from documentation, SPARQL queries, imports, and external tools. The core module is the main ontology vocabulary and should be used first when referring to SN-YO classes and properties.
| Ontology file | PURL URI |
|---|---|
| Core ontology module | https://purl.org/ai4s/yoga/sn-yo/core |
| Merged ontology / full graph | https://purl.org/ai4s/yoga/sn-yo/ontology |
| Base Surya Namaskar sequence | https://purl.org/ai4s/yoga/sn-yo/base-sn |
| Variant 01 | https://purl.org/ai4s/yoga/sn-yo/variant01 |
| Variant 02 | https://purl.org/ai4s/yoga/sn-yo/variant02 |
| Variant 03 | https://purl.org/ai4s/yoga/sn-yo/variant03 |
- Separates an
Asanafrom a numberedPoseoccurrence in a sequence. - Models the base Surya Namaskar sequence and multiple traditional variants.
- Captures pose transitions, repeated poses, inverse poses, laterality, support type, chakra, mantra, breathing pattern, and safety annotations.
- Includes a correction layer for posture rules, constraints, common errors, and correction instructions.
- Provides multilingual labels for asanas and breathing patterns across the six official United Nations languages and 22 Indian scheduled languages.
- Publishes the ontology as OWL/RDF with supporting documentation and visual diagrams.
index.html: Interactive SN-YO website.models/master.owl: Merged ontology used by the website and external tools.models/modules/: Modular OWL files for the core model, base sequence, and variants.models/label_csv and script/: Label CSV and helper script for multilingual label generation.docs/ontology-doc.html: Generated ontology documentation.metadata/: Ontology metadata.source/: Reference source files used during ontology construction.images/: Ontology diagrams and visual exports.css/andjs/: Static website assets.
Use the SN-YO website to browse the ontology overview, competency questions, project files, metadata, and visual resources.
The companion SN-YE explorer provides predefined and natural-language query interfaces over the ontology. Its source repository is available at ai4society/sn-ye.
SN-YO includes rdfs:label values for asanas and breathing-pattern entities in the six official United Nations languages (ar, zh, en, fr, ru, and es) and the 22 Indian scheduled languages listed in the Eighth Schedule of the Constitution of India, for 28 languages in total. Indian language identifiers use web-standard BCP 47 / ISO 639 tags such as hi, te, brx, doi, kok, sat, and mni. The current tags are kept stable so website queries and language selectors continue to work consistently.
The source label table is models/label_csv and script/SN_YO_labels_combined.csv; these labels are materialized into models/modules/core.owl and the merged models/master.owl.
For asanas, the labels preserve canonical Sanskrit-derived yoga posture names across language scripts. They are intended as script-adapted display labels for pose names, not as independent descriptive translations such as "Cobra Pose" or "Mountain Pose" in every language. This reflects common yoga usage, where Sanskrit posture names are often retained and adapted to the writing system used by the target language.
Breathing-pattern labels, including BreathingPattern, Inhale, Exhale, and Hold, use short language-specific display phrases. These are ordinary language expressions rather than Sanskrit posture names. The current labels are retained for ontology querying, UI display, and future review.
References used for language scope and tagging include the Government of India Eighth Schedule language list, ISO 639 language codes, BCP 47 language tags, and script resources such as the Devanagari language documentation.
Serve the repository with any static file server:
python3 -m http.server 8080Then open http://127.0.0.1:8080/.
This project is licensed under the MIT License.