diff --git a/44inua/.htaccess b/44inua/.htaccess new file mode 100644 index 0000000000..57b0faf00f --- /dev/null +++ b/44inua/.htaccess @@ -0,0 +1,3 @@ +Options +FollowSymLinks +RewriteEngine on +RewriteRule ^(.*)$ https://44.in.ua/$1 [R=302,L] diff --git a/44inua/README.md b/44inua/README.md new file mode 100644 index 0000000000..abb57d3c1e --- /dev/null +++ b/44inua/README.md @@ -0,0 +1,10 @@ +# w3id for 44inua (Technical Bureau 44) + +This w3id is used for Technical Bureau 44 (https://44.in.ua). +It provides stable and persistent identifiers for: +- JSON-LD contexts and vocabularies +- Technical SEO and Performance audit metadata +- E-commerce data structures + +## Maintainers +- @44inua (Technical Bureau 44) diff --git a/AgoraOWL/.htaccess b/AgoraOWL/.htaccess new file mode 100644 index 0000000000..ab455a5cff --- /dev/null +++ b/AgoraOWL/.htaccess @@ -0,0 +1,80 @@ +# Turn off MultiViews +Options -MultiViews + +# Add content types for RDF serializations +AddType application/rdf+xml .rdf +AddType application/rdf+xml .owl +AddType text/turtle .ttl +AddType application/n-triples .nt +AddType application/ld+json .jsonld + +RewriteEngine On +RewriteBase / + +# ----------------------------------------------------------------------------- +# GENERIC RULES (FUTURE-PROOF) +# This regex matches "latest" OR any "X.Y.Z" semantic version string. +# $1 captures the folder name (e.g., "latest", "0.2.1", "1.0.0") +# $3 captures the vocabulary name (if present) +# ----------------------------------------------------------------------------- + +# Rule 1: Vocabularies (e.g., /latest/vocabularies/sector-scheme) - Always serve Turtle +RewriteRule ^(latest|([0-9]+\.[0-9]+\.[0-9]+))/vocabularies/([a-zA-Z0-9_-]+)$ https://khaosresearch.github.io/AgoraOWL/$1/vocabularies/$3.ttl [R=303,L] + +# Rule 2: Versioned/Latest Ontology PID (e.g., /0.2.1 or /latest) - Content Negotiation +# HTML request (browser) -> Widoco docs index for THAT version +RewriteCond %{HTTP_ACCEPT} (text/html|application/xhtml\+xml) +RewriteRule ^(latest|([0-9]+\.[0-9]+\.[0-9]+))$ https://khaosresearch.github.io/AgoraOWL/$1/index-en.html [R=303,L] + +# Specific RDF format requests -> Raw file with corresponding extension for THAT version +RewriteCond %{HTTP_ACCEPT} text/turtle +RewriteRule ^(latest|([0-9]+\.[0-9]+\.[0-9]+))$ https://khaosresearch.github.io/AgoraOWL/$1/ontology.ttl [R=303,L] + +# RDF/XML request -> .owl file +RewriteCond %{HTTP_ACCEPT} application/rdf\+xml +RewriteRule ^(latest|([0-9]+\.[0-9]+\.[0-9]+))$ https://khaosresearch.github.io/AgoraOWL/$1/ontology.owl [R=303,L] + +RewriteCond %{HTTP_ACCEPT} application/n-triples +RewriteRule ^(latest|([0-9]+\.[0-9]+\.[0-9]+))$ https://khaosresearch.github.io/AgoraOWL/$1/ontology.nt [R=303,L] + +RewriteCond %{HTTP_ACCEPT} application/ld\+json +RewriteRule ^(latest|([0-9]+\.[0-9]+\.[0-9]+))$ https://khaosresearch.github.io/AgoraOWL/$1/ontology.jsonld [R=303,L] + +# Fallback for versioned/latest PIDs (if Accept header is missing or doesn't match known RDF types) -> Turtle file +RewriteRule ^(latest|([0-9]+\.[0-9]+\.[0-9]+))$ https://khaosresearch.github.io/AgoraOWL/$1/ontology.ttl [R=303,L] + +# ----------------------------------------------------------------------------- +# RULES FOR THE BASE URI ( /AgoraOWL ) -> Redirects to "latest" +# ----------------------------------------------------------------------------- + +# Rule 3: HTML request for base URI -> redirect to "latest" docs index +RewriteCond %{HTTP_ACCEPT} !application/rdf\+xml.*(text/html|application/xhtml\+xml) +RewriteCond %{HTTP_ACCEPT} text/html [OR] +RewriteCond %{HTTP_ACCEPT} application/xhtml\+xml [OR] +RewriteCond %{HTTP_USER_AGENT} ^Mozilla/.* +RewriteRule ^$ https://khaosresearch.github.io/AgoraOWL/latest/index-en.html [R=303,L] + +# Rule 4: HTML request for a term (e.g., /DataProfile) -> redirect to anchor in "latest" docs +RewriteCond %{HTTP_ACCEPT} !application/rdf\+xml.*(text/html|application/xhtml\+xml) +RewriteCond %{HTTP_ACCEPT} text/html [OR] +RewriteCond %{HTTP_ACCEPT} application/xhtml\+xml [OR] +RewriteCond %{HTTP_USER_AGENT} ^Mozilla/.* +# Match only if it's NOT a version string or "latest" or "vocabularies" - i.e., it's likely a term +RewriteCond %{REQUEST_URI} !^/(latest|([0-9]+\.[0-9]+\.[0-9]+)|vocabularies)/?$ +RewriteRule ^(.+)$ https://khaosresearch.github.io/AgoraOWL/latest/index-en.html#$1 [R=303,NE,L] + +# Rule 5: Specific RDF format requests for base URI -> redirect to "latest" raw file +RewriteCond %{HTTP_ACCEPT} text/turtle +RewriteRule ^$ https://khaosresearch.github.io/AgoraOWL/latest/ontology.ttl [R=303,L] + +# RDF/XML request -> .owl file +RewriteCond %{HTTP_ACCEPT} application/rdf\+xml +RewriteRule ^$ https://khaosresearch.github.io/AgoraOWL/latest/ontology.owl [R=303,L] + +RewriteCond %{HTTP_ACCEPT} application/n-triples +RewriteRule ^$ https://khaosresearch.github.io/AgoraOWL/latest/ontology.nt [R=303,L] +RewriteCond %{HTTP_ACCEPT} application/ld\+json +RewriteRule ^$ https://khaosresearch.github.io/AgoraOWL/latest/ontology.jsonld [R=303,L] + +# Rule 6: Fallback for base URI -> "latest" Turtle file +RewriteRule ^$ https://khaosresearch.github.io/AgoraOWL/latest/ontology.ttl [R=303,L] diff --git a/AgoraOWL/README.md b/AgoraOWL/README.md new file mode 100644 index 0000000000..d328b50586 --- /dev/null +++ b/AgoraOWL/README.md @@ -0,0 +1,55 @@ +# AgoraOWL + +**Persistent identifier (PID) home** for the AgoraOWL ontology and related resources. + +This directory hosts the redirection rules (via `.htaccess`) that resolve the PID + and its associated versions and vocabularies. + +## πŸ”— Resolvable Resources + +The redirection rules point to the ontology documentation and files hosted on GitHub Pages: +**`https://khaosresearch.github.io/AgoraOWL/`** + +### Main Ontology (Latest & Versioned) + +The base PID redirects to the **latest** version. Specific versions can be accessed via `/` (e.g., ). + +- **HTML Docs (for browsers):** + - `https://w3id.org/AgoraOWL/` (Redirects to latest docs) + - `https://w3id.org/AgoraOWL/0.0.1/` (Redirects to versioned docs) + +- **RDF Serializations (for tools, using `Accept` header):** + - **Turtle (.ttl):** `https://khaosresearch.github.io/AgoraOWL/latest/ontology.ttl` + - **RDF/XML (.owl):** `https://khaosresearch.github.io/AgoraOWL/latest/ontology.owl` + - **N-Triples (.nt):** `https://khaosresearch.github.io/AgoraOWL/latest/ontology.nt` + - **JSON-LD (.jsonld):** `https://khaosresearch.github.io/AgoraOWL/latest/ontology.jsonld` + +### Modular Vocabularies + +Vocabulary PIDs are resolvable _per version_. For example: + + +This PID will redirect to the raw `.ttl` file: + +- `https://khaosresearch.github.io/AgoraOWL/latest/vocabularies/sector-scheme.ttl` +- `https://khaosresearch.github.io/AgoraOWL/0.0.1/vocabularies/agro-vocab.ttl` + +## πŸ“¦ Content Negotiation + +The `.htaccess` provides content negotiation based on the `Accept` header: + +- `text/html` β†’ HTML documentation (e.g., `.../latest/index-en.html`) +- `text/turtle` β†’ Turtle file (e.g., `.../latest/ontology.ttl`) +- `application/rdf+xml` β†’ RDF/XML file (e.g., `.../latest/ontology.owl`) +- `application/n-triples` β†’ N-Triples file (e.g., `.../latest/ontology.nt`) +- `application/ld+json` β†’ JSON-LD file (e.g., `.../latest/ontology.jsonld`) +- Default/Fallback β†’ Turtle file (e.g., `.../latest/ontology.ttl`) + +## 🧭 Scope + +**AgoraOWL** is an ontology aligned with **IDSA** and connected to **BIGOWL** (Data, Algorithms, Problems, Workflows). +It models data assets, data apps, profiles, and workflows, using modular SKOS vocabularies for domains, data types, and observed properties. + +## πŸ‘₯ Maintainers + +- MartΓ­n J. SalvachΓΊa ([@MartinM10](https://github.com/MartinM10)) - `` - `` diff --git a/CMECS/.htaccess b/CMECS/.htaccess index 65be12001a..9f45e975ad 100644 --- a/CMECS/.htaccess +++ b/CMECS/.htaccess @@ -8,7 +8,8 @@ RewriteEngine on -#redirect terms to https://ecoportal.lifewatch.eu/ontologies -#test using https://w3id.org/CMECS/CMECS_00000389 (Geologic Substrate) +# 1. Redirect the root (/CMECS/ or /CMECS) to the summary page +RewriteRule ^$ https://ecoportal.lifewatch.eu/ontologies/CMECS?p=summary [R=301,L] +# 2. Redirect individual terms (e.g., /CMECS/CMECS_00000389) RewriteRule ^([^/#]+)/?$ http://ecoportal.lifewatch.eu/ontologies/CMECS/$1 [R=301,L] diff --git a/EDAAnOWL/.htaccess b/EDAAnOWL/.htaccess index d94dc5de7f..ab455a5cff 100644 --- a/EDAAnOWL/.htaccess +++ b/EDAAnOWL/.htaccess @@ -19,32 +19,32 @@ RewriteBase / # ----------------------------------------------------------------------------- # Rule 1: Vocabularies (e.g., /latest/vocabularies/sector-scheme) - Always serve Turtle -RewriteRule ^(latest|([0-9]+\.[0-9]+\.[0-9]+))/vocabularies/([a-zA-Z0-9_-]+)$ https://khaosresearch.github.io/EDAAnOWL/$1/vocabularies/$3.ttl [R=303,L] +RewriteRule ^(latest|([0-9]+\.[0-9]+\.[0-9]+))/vocabularies/([a-zA-Z0-9_-]+)$ https://khaosresearch.github.io/AgoraOWL/$1/vocabularies/$3.ttl [R=303,L] # Rule 2: Versioned/Latest Ontology PID (e.g., /0.2.1 or /latest) - Content Negotiation # HTML request (browser) -> Widoco docs index for THAT version RewriteCond %{HTTP_ACCEPT} (text/html|application/xhtml\+xml) -RewriteRule ^(latest|([0-9]+\.[0-9]+\.[0-9]+))$ https://khaosresearch.github.io/EDAAnOWL/$1/index-en.html [R=303,L] +RewriteRule ^(latest|([0-9]+\.[0-9]+\.[0-9]+))$ https://khaosresearch.github.io/AgoraOWL/$1/index-en.html [R=303,L] # Specific RDF format requests -> Raw file with corresponding extension for THAT version RewriteCond %{HTTP_ACCEPT} text/turtle -RewriteRule ^(latest|([0-9]+\.[0-9]+\.[0-9]+))$ https://khaosresearch.github.io/EDAAnOWL/$1/ontology.ttl [R=303,L] +RewriteRule ^(latest|([0-9]+\.[0-9]+\.[0-9]+))$ https://khaosresearch.github.io/AgoraOWL/$1/ontology.ttl [R=303,L] # RDF/XML request -> .owl file RewriteCond %{HTTP_ACCEPT} application/rdf\+xml -RewriteRule ^(latest|([0-9]+\.[0-9]+\.[0-9]+))$ https://khaosresearch.github.io/EDAAnOWL/$1/ontology.owl [R=303,L] +RewriteRule ^(latest|([0-9]+\.[0-9]+\.[0-9]+))$ https://khaosresearch.github.io/AgoraOWL/$1/ontology.owl [R=303,L] RewriteCond %{HTTP_ACCEPT} application/n-triples -RewriteRule ^(latest|([0-9]+\.[0-9]+\.[0-9]+))$ https://khaosresearch.github.io/EDAAnOWL/$1/ontology.nt [R=303,L] +RewriteRule ^(latest|([0-9]+\.[0-9]+\.[0-9]+))$ https://khaosresearch.github.io/AgoraOWL/$1/ontology.nt [R=303,L] RewriteCond %{HTTP_ACCEPT} application/ld\+json -RewriteRule ^(latest|([0-9]+\.[0-9]+\.[0-9]+))$ https://khaosresearch.github.io/EDAAnOWL/$1/ontology.jsonld [R=303,L] +RewriteRule ^(latest|([0-9]+\.[0-9]+\.[0-9]+))$ https://khaosresearch.github.io/AgoraOWL/$1/ontology.jsonld [R=303,L] # Fallback for versioned/latest PIDs (if Accept header is missing or doesn't match known RDF types) -> Turtle file -RewriteRule ^(latest|([0-9]+\.[0-9]+\.[0-9]+))$ https://khaosresearch.github.io/EDAAnOWL/$1/ontology.ttl [R=303,L] +RewriteRule ^(latest|([0-9]+\.[0-9]+\.[0-9]+))$ https://khaosresearch.github.io/AgoraOWL/$1/ontology.ttl [R=303,L] # ----------------------------------------------------------------------------- -# RULES FOR THE BASE URI ( /EDAAnOWL ) -> Redirects to "latest" +# RULES FOR THE BASE URI ( /AgoraOWL ) -> Redirects to "latest" # ----------------------------------------------------------------------------- # Rule 3: HTML request for base URI -> redirect to "latest" docs index @@ -52,7 +52,7 @@ RewriteCond %{HTTP_ACCEPT} !application/rdf\+xml.*(text/html|application/xhtml\+ RewriteCond %{HTTP_ACCEPT} text/html [OR] RewriteCond %{HTTP_ACCEPT} application/xhtml\+xml [OR] RewriteCond %{HTTP_USER_AGENT} ^Mozilla/.* -RewriteRule ^$ https://khaosresearch.github.io/EDAAnOWL/latest/index-en.html [R=303,L] +RewriteRule ^$ https://khaosresearch.github.io/AgoraOWL/latest/index-en.html [R=303,L] # Rule 4: HTML request for a term (e.g., /DataProfile) -> redirect to anchor in "latest" docs RewriteCond %{HTTP_ACCEPT} !application/rdf\+xml.*(text/html|application/xhtml\+xml) @@ -61,20 +61,20 @@ RewriteCond %{HTTP_ACCEPT} application/xhtml\+xml [OR] RewriteCond %{HTTP_USER_AGENT} ^Mozilla/.* # Match only if it's NOT a version string or "latest" or "vocabularies" - i.e., it's likely a term RewriteCond %{REQUEST_URI} !^/(latest|([0-9]+\.[0-9]+\.[0-9]+)|vocabularies)/?$ -RewriteRule ^(.+)$ https://khaosresearch.github.io/EDAAnOWL/latest/index-en.html#$1 [R=303,NE,L] +RewriteRule ^(.+)$ https://khaosresearch.github.io/AgoraOWL/latest/index-en.html#$1 [R=303,NE,L] # Rule 5: Specific RDF format requests for base URI -> redirect to "latest" raw file RewriteCond %{HTTP_ACCEPT} text/turtle -RewriteRule ^$ https://khaosresearch.github.io/EDAAnOWL/latest/ontology.ttl [R=303,L] +RewriteRule ^$ https://khaosresearch.github.io/AgoraOWL/latest/ontology.ttl [R=303,L] # RDF/XML request -> .owl file RewriteCond %{HTTP_ACCEPT} application/rdf\+xml -RewriteRule ^$ https://khaosresearch.github.io/EDAAnOWL/latest/ontology.owl [R=303,L] +RewriteRule ^$ https://khaosresearch.github.io/AgoraOWL/latest/ontology.owl [R=303,L] RewriteCond %{HTTP_ACCEPT} application/n-triples -RewriteRule ^$ https://khaosresearch.github.io/EDAAnOWL/latest/ontology.nt [R=303,L] +RewriteRule ^$ https://khaosresearch.github.io/AgoraOWL/latest/ontology.nt [R=303,L] RewriteCond %{HTTP_ACCEPT} application/ld\+json -RewriteRule ^$ https://khaosresearch.github.io/EDAAnOWL/latest/ontology.jsonld [R=303,L] +RewriteRule ^$ https://khaosresearch.github.io/AgoraOWL/latest/ontology.jsonld [R=303,L] # Rule 6: Fallback for base URI -> "latest" Turtle file -RewriteRule ^$ https://khaosresearch.github.io/EDAAnOWL/latest/ontology.ttl [R=303,L] \ No newline at end of file +RewriteRule ^$ https://khaosresearch.github.io/AgoraOWL/latest/ontology.ttl [R=303,L] diff --git a/EDAAnOWL/README.md b/EDAAnOWL/README.md index f1469592b8..15bd16c4ca 100644 --- a/EDAAnOWL/README.md +++ b/EDAAnOWL/README.md @@ -1,4 +1,12 @@ -# EDAAnOWL +> [!IMPORTANT] +> The ontology name and its directory have been updated. Previously **EDAAnOWL**, now **AgoraOWL**. +> The ontology name and its directory have been updated. Previously **EDAAnOWL**, it is now **AgoraOWL**. + +> [!NOTE] +> The **EDAAnOWL** PermaID remains the same and now references **AgoraOWL**. + + +# AgoraOWL **Persistent identifier (PID) home** for the EDAAnOWL ontology and related resources. @@ -8,7 +16,7 @@ This directory hosts the redirection rules (via `.htaccess`) that resolve the PI ## πŸ”— Resolvable Resources The redirection rules point to the ontology documentation and files hosted on GitHub Pages: -**`https://khaosresearch.github.io/EDAAnOWL/`** +**`https://khaosresearch.github.io/AgoraOWL/`** ### Main Ontology (Latest & Versioned) @@ -20,10 +28,10 @@ The base PID redirects to the **latest** version. Sp - `https://w3id.org/EDAAnOWL/0.0.1/` (Redirects to versioned docs) - **RDF Serializations (for tools, using `Accept` header):** - - **Turtle (.ttl):** `https://khaosresearch.github.io/EDAAnOWL/latest/ontology.ttl` - - **RDF/XML (.owl):** `https://khaosresearch.github.io/EDAAnOWL/latest/ontology.owl` - - **N-Triples (.nt):** `https://khaosresearch.github.io/EDAAnOWL/latest/ontology.nt` - - **JSON-LD (.jsonld):** `https://khaosresearch.github.io/EDAAnOWL/latest/ontology.jsonld` + - **Turtle (.ttl):** `https://khaosresearch.github.io/AgoraOWL/latest/ontology.ttl` + - **RDF/XML (.owl):** `https://khaosresearch.github.io/AgoraOWL/latest/ontology.owl` + - **N-Triples (.nt):** `https://khaosresearch.github.io/AgoraOWL/latest/ontology.nt` + - **JSON-LD (.jsonld):** `https://khaosresearch.github.io/AgoraOWL/latest/ontology.jsonld` ### Modular Vocabularies @@ -32,8 +40,8 @@ Vocabulary PIDs are resolvable _per version_. For example: This PID will redirect to the raw `.ttl` file: -- `https://khaosresearch.github.io/EDAAnOWL/latest/vocabularies/sector-scheme.ttl` -- `https://khaosresearch.github.io/EDAAnOWL/0.0.1/vocabularies/agro-vocab.ttl` +- `https://khaosresearch.github.io/AgoraOWL/latest/vocabularies/sector-scheme.ttl` +- `https://khaosresearch.github.io/AgoraOWL/0.0.1/vocabularies/agro-vocab.ttl` ## πŸ“¦ Content Negotiation @@ -48,7 +56,7 @@ The `.htaccess` provides content negotiation based on the `Accept` header: ## 🧭 Scope -**EDAAnOWL** is an ontology aligned with **IDSA** and connected to **BIGOWL** (Data, Algorithms, Problems, Workflows). +**AgoraOWL** is an ontology aligned with **IDSA** and connected to **BIGOWL** (Data, Algorithms, Problems, Workflows). It models data assets, data apps, profiles, and workflows, using modular SKOS vocabularies for domains, data types, and observed properties. ## πŸ‘₯ Maintainers diff --git a/PaN/NeXus/.htaccess b/PaN/NeXus/.htaccess new file mode 100644 index 0000000000..eab8a31a41 --- /dev/null +++ b/PaN/NeXus/.htaccess @@ -0,0 +1,9 @@ +Header set Access-Control-Allow-Origin * +Options +FollowSymLinks +RewriteEngine On + +# Root: Redirect to github repository +RewriteRule ^$ https://github.com/nexusformat/NeXusOntology [R=303,L] + +# Redirect definitions path to the raw OWL file +RewriteRule ^nexusformat/definitions$ https://raw.githubusercontent.com/nexusformat/NeXusOntology/refs/heads/main/ontology/NeXusOntology.owl [R=303,L] \ No newline at end of file diff --git a/PaN/NeXus/README.md b/PaN/NeXus/README.md new file mode 100644 index 0000000000..423c0178c9 --- /dev/null +++ b/PaN/NeXus/README.md @@ -0,0 +1,18 @@ +# NeXus Ontology + +This folder uses .htaccess rules to provide stable, resolvable URI for NeXus Ontology. + +## Description +Github repository: +- /PaN/NeXus/ β†’ https://github.com/nexusformat/NeXusOntology + +NeXus Ontology: +- /PaN/NeXus/nexusformat/definitions β†’ https://raw.githubusercontent.com/nexusformat/NeXusOntology/refs/heads/main/ontology/NeXusOntology.owl + +## Contact + +* Heike GΓΆrzig (heike.goerzig@helmholtz-berlin.de), +[Helmholtz Zentrum Berlin](https://www.helmholtz-berlin.de/), Germany, [@hgoerzig](https://github.com/hgoerzig) + +* Aaron Brewster (NIAC Chair) (nexus-committee@nexusformat.org), +[Lawrence Berkeley National Laboratory](https://www.lbl.gov/), USA \ No newline at end of file diff --git a/PaN/README.md b/PaN/README.md index bf043fbd21..835b8d2aa6 100644 --- a/PaN/README.md +++ b/PaN/README.md @@ -12,3 +12,6 @@ This repository manages persistent HTTP identifiers (PIDs) under `w3id.org/PaN/` * Marjolaine Bodin (marjolaine.bodin@esrf.fr), ESRF, France, [@bodinm](https://github.com/bodinm) * Wout De Nolf (wout.de_nolf@esrf.fr), ESRF, France, [@woutdenolf](https://github.com/woutdenolf) * Nadine Fischer (nadine.fischer@esrf.fr), ESRF, France +* Heike GΓΆrzig (heike.goerzig@helmholtz-berlin.de), [Helmholtz Zentrum Berlin](https://www.helmholtz-berlin.de/), Germany, [@hgoerzig](https://github.com/hgoerzig) +* Aaron Brewster (NIAC Chair) (nexus-committee@nexusformat.org), [Lawrence Berkeley National Laboratory](https://www.lbl.gov/), USA +* Paul Millar (paul.millar@desy.de), [Deutsches Elektronen-Synchrotron (DESY)](https://desy.de/), Germany, [@paulmillar](https://github.com/paulmillar) diff --git a/agi-governance/.htaccess b/agi-governance/.htaccess new file mode 100644 index 0000000000..e0ab743d65 --- /dev/null +++ b/agi-governance/.htaccess @@ -0,0 +1,20 @@ +# AGI Governance Compliance Model β€” w3id.org persistent URI redirect +# Vocabulary: https://w3id.org/agi-governance/evidence/ns/v1.0/ +# Norms base: https://w3id.org/agi-governance/norms/ +# Maintainer: pablo.coronaf@infotec.mx +# GitHub: https://github.com/pcoronaf/agi-governance + +Options -MultiViews +RewriteEngine on + +# Redirect vocabulary namespace to GitHub repository +RewriteRule ^evidence/ns/v1\.0/?$ https://github.com/pcoronaf/agi-governance/blob/main/agi_governance_legalruleml.xml [R=303,L] + +# Redirect norms base URI to repository +RewriteRule ^norms/?$ https://github.com/pcoronaf/agi-governance/blob/main/agi_governance_legalruleml.xml [R=303,L] + +# Redirect root to repository landing page +RewriteRule ^$ https://github.com/pcoronaf/agi-governance [R=303,L] + +# Catch-all: redirect anything else under /agi-governance/ to the repository +RewriteRule ^(.*)$ https://github.com/pcoronaf/agi-governance [R=303,L] diff --git a/agi-governance/README.md b/agi-governance/README.md new file mode 100644 index 0000000000..dfcfbe4241 --- /dev/null +++ b/agi-governance/README.md @@ -0,0 +1,29 @@ +# agi-governance + +Persistent URI namespace for the AGI Governance Compliance Model vocabulary and norms. + +## URIs maintained here + +| URI | Resolves to | +|-----|-------------| +| https://w3id.org/agi-governance | Repository landing page | +| https://w3id.org/agi-governance/evidence/ns/v1.0/ | AGI Evidence Vocabulary (agiev) LegalRuleML encoding | +| https://w3id.org/agi-governance/norms/ | AGI governance norm encodings base URI | + +## Maintainers + +- Pablo Corona Fraga β€” pablo.coronaf@infotec.mx + INFOTEC, Mexico City, Mexico + ORCID: 0000-0001-5012-9468 + Github username: pcoronaf + +- Amin M.E-A. Diab β€” adiab3@jhu.edu + Johns Hopkins University, Baltimore, MD, USA + +## Related publication + +Corona Fraga, P., Diab, A.M.E-A., Hwang, S.H., & Diaz, V. (2026). +Machine-checkable compliance for AGI Governance: Formalizing principles +as auditable norms and evidence-linked indicators. Manuscript under review. + +Repository: https://github.com/pcoronaf/agi-governance diff --git a/arknet/.htaccess b/arknet/.htaccess new file mode 100644 index 0000000000..28caaedf57 --- /dev/null +++ b/arknet/.htaccess @@ -0,0 +1,47 @@ +RewriteEngine on + +# Turn off MultiViews +Options -MultiViews + +# Directive to ensure RDF files served as appropriate content type +AddType application/rdf+xml .rdf +AddType application/rdf+xml .owl +AddType text/turtle .ttl +AddType text/n3 .n3 +AddType application/n-triples .nt +AddType application/ld+json .json + + +### Ontology modules: core, process, architecture, tech, privacy +# Serve Turtle content for ontology modules +RewriteCond %{HTTP_ACCEPT} text/turtle [OR] +RewriteCond %{HTTP_ACCEPT} text/\* [OR] +RewriteCond %{HTTP_ACCEPT} \*/turtle +RewriteRule ^(core|process|architecture|tech|privacy)$ https://git.changinggraph.org/kogn-io/arknet/raw/branch/main/ontology/$1.ttl [R=303,L] + +# Serve HTML content for ontology modules +RewriteCond %{HTTP_ACCEPT} !application/rdf\+xml.*(text/html|application/xhtml\+xml) +RewriteCond %{HTTP_ACCEPT} text/html [OR] +RewriteCond %{HTTP_ACCEPT} application/xhtml\+xml [OR] +RewriteCond %{HTTP_USER_AGENT} ^Mozilla/.* +RewriteRule ^(core|process|architecture|tech|privacy)$ https://git.changinggraph.org/kogn-io/arknet/src/branch/main/ontology/$1.ttl [R=303,L] + +# Serve RDF/XML content for ontology modules +RewriteCond %{HTTP_ACCEPT} \*/\* [OR] +RewriteCond %{HTTP_ACCEPT} application/rdf\+xml +RewriteRule ^(core|process|architecture|tech|privacy)$ https://git.changinggraph.org/kogn-io/arknet/raw/branch/main/ontology/$1.ttl [R=303,L] + + +### SHACL shapes +RewriteRule ^shapes/(.+)$ https://git.changinggraph.org/kogn-io/arknet/raw/branch/main/shapes/$1.ttl [R=303,L] + + +### Root: redirect to repository +# Serve Turtle for root namespace +RewriteCond %{HTTP_ACCEPT} text/turtle [OR] +RewriteCond %{HTTP_ACCEPT} text/\* [OR] +RewriteCond %{HTTP_ACCEPT} \*/turtle +RewriteRule ^$ https://git.changinggraph.org/kogn-io/arknet/raw/branch/main/ontology/core.ttl [R=303,L] + +# Default: redirect to repository +RewriteRule ^$ https://git.changinggraph.org/kogn-io/arknet [R=303,L] diff --git a/arknet/README.md b/arknet/README.md new file mode 100644 index 0000000000..b0c1b39dea --- /dev/null +++ b/arknet/README.md @@ -0,0 +1,14 @@ +## arknet – Semantic Architecture Modeling for Domain-Driven Design + +A semantic modeling platform for software architecture based on Domain-Driven Design. +Architecture models in RDF/OWL (W3C standards) instead of proprietary DSLs – +validatable (SHACL), queryable (SPARQL), and AI-ready (MCP). + +### Resources + +* Repository: https://git.changinggraph.org/kogn-io/arknet +* Part of: https://kogn.io + +### Contact + +* Fred Robert Hauschel (@hauschel) diff --git a/ascs-ev/README.md b/ascs-ev/README.md index 8dc5834003..e3cd89275d 100644 --- a/ascs-ev/README.md +++ b/ascs-ev/README.md @@ -7,7 +7,7 @@ Homepage: ## Subfolders - `envited-x/` - ENVITED-X Simulation Asset Ontologies -- `simpulse-id/` - SimpulseID Credentials (planned) +- `simpulse-id/` - SimpulseID Credentials ## GitHub Repository diff --git a/ascs-ev/simpulse-id/.htaccess b/ascs-ev/simpulse-id/.htaccess new file mode 100644 index 0000000000..182268580b --- /dev/null +++ b/ascs-ev/simpulse-id/.htaccess @@ -0,0 +1,67 @@ +Header set Access-Control-Allow-Origin * + +# MIME types for RDF serializations +AddType application/rdf+xml .rdf +AddType application/rdf+xml .owl +AddType text/turtle .ttl +AddType application/n-triples .nt +AddType application/ld+json .json +AddType application/ld+json .jsonld + +Options +FollowSymLinks +RewriteEngine on + +# ============================================================================= +# SimpulseID Credentials Ontology - Static GitHub Pages resolution +# Pattern: /ascs-ev/simpulse-id/v{version}[/][shapes|context] +# Target: ascs-ev.github.io/simpulse-id-credentials/w3id/ascs-ev/simpulse-id/... +# ============================================================================= + +# --- Turtle / RDF-XML --- + +# Ontology (versioned) +RewriteCond %{HTTP_ACCEPT} text/turtle [OR] +RewriteCond %{HTTP_ACCEPT} application/rdf\+xml +RewriteRule ^(v[0-9]+)/?$ https://ascs-ev.github.io/simpulse-id-credentials/w3id/ascs-ev/simpulse-id/$1/ontology.ttl [R=303,L] + +# SHACL shapes (versioned) +RewriteCond %{HTTP_ACCEPT} text/turtle [OR] +RewriteCond %{HTTP_ACCEPT} application/rdf\+xml +RewriteRule ^(v[0-9]+)/shapes/?$ https://ascs-ev.github.io/simpulse-id-credentials/w3id/ascs-ev/simpulse-id/$1/shapes.ttl [R=303,L] + +# --- JSON-LD --- + +# JSON-LD context (versioned) +RewriteCond %{HTTP_ACCEPT} application/ld\+json [OR] +RewriteCond %{HTTP_ACCEPT} application/json +RewriteRule ^(v[0-9]+)/?$ https://ascs-ev.github.io/simpulse-id-credentials/w3id/ascs-ev/simpulse-id/$1/context.jsonld [R=303,L] + +# JSON-LD shapes (versioned) β€” no JSON-LD shapes published, serve Turtle +RewriteCond %{HTTP_ACCEPT} application/ld\+json [OR] +RewriteCond %{HTTP_ACCEPT} application/json +RewriteRule ^(v[0-9]+)/shapes/?$ https://ascs-ev.github.io/simpulse-id-credentials/w3id/ascs-ev/simpulse-id/$1/shapes.ttl [R=303,L] + +# --- Context sub-path (direct URL for JSON-LD @context references) --- +# JSON-LD processors fetch @context URLs with a plain GET (no Accept header), +# so these rules have no content-negotiation guard. + +# Versioned context +RewriteRule ^(v[0-9]+)/context/?$ https://ascs-ev.github.io/simpulse-id-credentials/w3id/ascs-ev/simpulse-id/$1/context.jsonld [R=303,L] + +# --- Bare class IRIs: /simpulse-id/v1/ClassName --- +# Individual class IRIs resolve to the ontology +RewriteCond %{HTTP_ACCEPT} text/turtle [OR] +RewriteCond %{HTTP_ACCEPT} application/rdf\+xml +RewriteRule ^(v[0-9]+)/.+$ https://ascs-ev.github.io/simpulse-id-credentials/w3id/ascs-ev/simpulse-id/$1/ontology.ttl [R=303,L] + +RewriteCond %{HTTP_ACCEPT} application/ld\+json [OR] +RewriteCond %{HTTP_ACCEPT} application/json +RewriteRule ^(v[0-9]+)/.+$ https://ascs-ev.github.io/simpulse-id-credentials/w3id/ascs-ev/simpulse-id/$1/context.jsonld [R=303,L] + +# --- HTML fallback β€” redirect browsers to documentation --- +RewriteRule ^(v[0-9]+)/?$ https://ascs-ev.github.io/simpulse-id-credentials/reference/schemas/ [R=303,L] +RewriteRule ^(v[0-9]+)/shapes/?$ https://ascs-ev.github.io/simpulse-id-credentials/reference/schemas/ [R=303,L] +RewriteRule ^(v[0-9]+)/.+$ https://ascs-ev.github.io/simpulse-id-credentials/reference/schemas/ [R=303,L] + +# --- Root redirect to documentation --- +RewriteRule ^$ https://ascs-ev.github.io/simpulse-id-credentials/ [R=303,L] diff --git a/ascs-ev/simpulse-id/README.md b/ascs-ev/simpulse-id/README.md new file mode 100644 index 0000000000..30b26bf706 --- /dev/null +++ b/ascs-ev/simpulse-id/README.md @@ -0,0 +1,32 @@ +# SimpulseID Credentials Ontology + +SimpulseID defines verifiable credential schemas for the ENVITED-X ecosystem, built on the Harbour Credentials library and Gaia-X Trust Framework. + +## Homepage + +- + +## Documentation + +Refer to the documentation site for the schema reference: + +- + +## URL Patterns + +- `https://w3id.org/ascs-ev/simpulse-id/v{version}/` β€” Ontology namespace (for prefix) +- `https://w3id.org/ascs-ev/simpulse-id/v{version}` β€” Ontology IRI (for owl:Ontology) +- `https://w3id.org/ascs-ev/simpulse-id/v{version}/shapes` β€” SHACL shapes +- `https://w3id.org/ascs-ev/simpulse-id/v{version}/context` β€” JSON-LD context + +## Resolution + +W3ID IRIs resolve to static files published on GitHub Pages via the release workflow. + +## GitHub Repository + +- + +## Contacts + +- Carlo van Driesten (GitHub: [@jdsika](https://github.com/jdsika)) diff --git a/battinfo/.htaccess b/battinfo/.htaccess index 1dc76333f9..a8c94b725e 100644 --- a/battinfo/.htaccess +++ b/battinfo/.htaccess @@ -7,65 +7,54 @@ ########################################################################## Options +FollowSymLinks - -# Rewrite engine setup RewriteEngine On - ########################################################################## ## Redirections to raw files in the GitHub repo ########################################################################## -# Redirect to raw files in the GitHub repo (like figures, etc) RewriteRule ^raw/([^0-9].*)$ https://raw.githubusercontent.com/BIG-MAP/BattINFO/master/$1 [R=303,NE,L] RewriteRule ^raw/([0-9][^/]*)/(.*)$ https://raw.githubusercontent.com/BIG-MAP/BattINFO/master/$1/$2 [R=303,NE,L] - ########################################################################## -## Redirection Rules +## Ontology root and documentation ########################################################################## -# Rule 1a: https://w3id.org/battinfo -# Alias: https://w3id.org/battinfo/ -# Redirect to GitHub Pages -# If the request appears coming from a browser, redirect to html documentation otherwise to squashed turtle file. +# https://w3id.org/battinfo RewriteCond %{HTTP_ACCEPT} text/html [OR] RewriteCond %{HTTP_ACCEPT} application/xhtml\+xml RewriteRule ^$ https://big-map.github.io/BattINFO/battinfo.html [R=303,NE,L] RewriteRule ^$ https://big-map.github.io/BattINFO/battinfo.ttl [R=303,NE,L] -# Rule 1b: https://w3id.org/battinfo/inferred -# Redirect to GitHub Pages -# Inferred ontology (only turtle) on GitHub Pages +# https://w3id.org/battinfo/inferred RewriteRule ^inferred/?$ https://big-map.github.io/BattINFO/battinfo-inferred.ttl [R=303,NE,L] -# Rule 1c: https://w3id.org/battinfo/turtle -# Redirect to GitHub Pages -# Squashed ontology on GitHub Pages +# https://w3id.org/battinfo/turtle RewriteRule ^turtle/?$ https://big-map.github.io/BattINFO/battinfo.ttl [R=303,NE,L] +########################################################################## +## Source/latest aliases +########################################################################## -# Rule 2a: https://w3id.org/battinfo/source -# Alias: https://w3id.org/battinfo/latest -# Redirect to master branch RewriteRule ^/$ https://raw.githubusercontent.com/BIG-MAP/BattINFO/master/battinfo.ttl [R=303,NE,L] RewriteRule ^latest/?$ https://raw.githubusercontent.com/BIG-MAP/BattINFO/master/battinfo.ttl [R=303,NE,L] RewriteRule ^source/?$ https://raw.githubusercontent.com/BIG-MAP/BattINFO/master/battinfo.ttl [R=303,NE,L] +########################################################################## +## Versioned ontology routes +########################################################################## -# Rule 3a: https://w3id.org/battinfo/{VERSION} -# Alias: https://w3id.org/battinfo/{VERSION}/ -# Redirect to specified version branch -# If the request appears coming from a browser, redirect to html documentation otherwise to squashed turtle file for given version. RewriteCond %{HTTP_ACCEPT} text/html [OR] RewriteCond %{HTTP_ACCEPT} application/xhtml\+xml RewriteRule ^([0-9][^/]*)/?$ https://big-map.github.io/BattINFO/battinfo/versions/$1/battinfo.html [R=303,NE,L] RewriteRule ^([0-9][^/]*)/?$ https://big-map.github.io/BattINFO/battinfo/versions/$1/battinfo.ttl [R=303,NE,L] -# -# Rule 3b: https://w3id.org/battinfo/{VERSION}/inferred -# Redirect to GitHub Pages + RewriteRule ^([0-9][^/]*)/inferred/?$ https://big-map.github.io/BattINFO/battinfo/versions/$1/battinfo-inferred.ttl [R=303,NE,L] -# -# Rule 3c: https://w3id.org/battinfo/{VERSION}/turtle -# Redirect to GitHub Pages RewriteRule ^([0-9][^/]*)/turtle/?$ https://big-map.github.io/BattINFO/battinfo/versions/$1/battinfo.ttl [R=303,NE,L] + +########################################################################## +## Generic BattINFO object id redirects to Battery Genome registry +########################################################################## + +RewriteRule ^([a-z-]+)/([^/]+)/?$ https://www.battery-genome.org/registry/$1/$2 [R=303,NE,L] + diff --git a/battinfo/readme.md b/battinfo/readme.md index 025f2d7afe..4e9ee9babf 100644 --- a/battinfo/readme.md +++ b/battinfo/readme.md @@ -1,31 +1,55 @@ # BattINFO -This [W3ID](https://w3id.org) provides a persistent URI namespace for the [Battery Interface Ontology (BattINFO)](https://github.com/BIG-MAP/BattINFO). + +This [W3ID](https://w3id.org) provides a persistent URI namespace for the [Battery Interface Ontology (BattINFO)](https://github.com/BIG-MAP/BattINFO), and for BattINFO-governed persistent object identifiers that resolve to the [Battery Genome](https://www.battery-genome.org) registry. ## Redirection Rules + This section contains a general summary of the logic behind the redirection rules. 1. `https://w3id.org/battinfo --> https://big-map.github.io/BattINFO/battinfo{.html|.ttl}` - - Alias: https://w3id.org/battinfo/ - - If the user is accessing this from a browser, redirect to html documentation on GitHub Pages. + - Alias: `https://w3id.org/battinfo/` + - If the user is accessing this from a browser, redirect to HTML documentation on GitHub Pages. - Otherwise, redirect to the squashed `.ttl` file on GitHub Pages. - - Special case for inferred ontology: `https://w3id.org/battinfo/inferred --> https://big-map.github.io/BattINFO/battinfo-inferred.ttl` + - Special case for inferred ontology: + `https://w3id.org/battinfo/inferred --> https://big-map.github.io/BattINFO/battinfo-inferred.ttl` 2. `https://w3id.org/battinfo/source --> https://raw.githubusercontent.com/BIG-MAP/BattINFO/master/battinfo.ttl` - - Alias: https://w3id.org/battinfo/latest - - Target: `battinfo.ttl` file in the root of the master branch. + - Alias: `https://w3id.org/battinfo/latest` + - Target: `battinfo.ttl` file in the root of the `master` branch. + +3. `https://w3id.org/battinfo/{VERSION} --> https://big-map.github.io/BattINFO/battinfo/versions/{VERSION}/battinfo{.html|.ttl}` + - Alias: `https://w3id.org/battinfo/{VERSION}/` + - If the user is accessing this from a browser, redirect to HTML documentation for the given version on GitHub Pages. + - Otherwise, redirect to the squashed `.ttl` file for the given version on GitHub Pages. + - Special case for inferred ontology: + `https://w3id.org/battinfo/{VERSION}/inferred --> https://big-map.github.io/BattINFO/battinfo/versions/{VERSION}/battinfo-inferred.ttl` + +4. `https://w3id.org/battinfo/{TYPE}/{ID} --> https://www.battery-genome.org/registry/{TYPE}/{ID}` + - BattINFO object IRIs use a generic two-segment pattern. + - The `TYPE` segment is preserved when redirecting into Battery Genome. + - This keeps BattINFO persistent identifiers aligned with Battery Genome registry URLs. + - Examples: + - `https://w3id.org/battinfo/cell-type/pge5-wer6-2q82-v9k0` + `--> https://www.battery-genome.org/registry/cell-type/pge5-wer6-2q82-v9k0` + - `https://w3id.org/battinfo/material/abc123` + `--> https://www.battery-genome.org/registry/material/abc123` -3. `https://w3id.org/battinfo/{VERSION} --> https://big-map.github.io/BattINFO/versions/{VERSION}/battinfo{.html|.ttl}` - - Alias: https://w3id.org/battinfo/{VERSION}/ - - If the user is accessing this from a browser, redirect to html documentation for given version on GitHub Pages. - - Otherwise, redirect to squashed `.ttl` file for given version on GitHub Pages. - - Special case for inferred ontology: `https://w3id.org/battinfo/{VERSION}/inferred --> https://big-map.github.io/BattINFO/versions/{VERSION}/battinfo-inferred.ttl` +## Meaning of placeholders -### Meaning of placeholders - `{VERSION}`: Version number. Must start with a digit to distinguish it from domain or path names. +- `{TYPE}`: BattINFO object type slug, for example `cell`, `cell-type`, `material`, `protocol`, `dataset`, or `model`. +- `{ID}`: Persistent local identifier for the referenced object. + +## Notes + +- Special BattINFO routes such as `/raw`, `/latest`, `/source`, `/turtle`, `/inferred`, and versioned paths are handled before the generic `{TYPE}/{ID}` redirect. +- The generic object redirect assumes that Battery Genome supports the route pattern: + `https://www.battery-genome.org/registry/{TYPE}/{ID}` ## Contacts + This space is maintained by [SINTEF](https://www.sintef.no/en/). For any questions or issues, please contact [BattINFO Team](mailto:simon.clark@sintef.no). Current maintainers: -[Simon Clark](https://github.com/jsimonclark) +- [Simon Clark](https://github.com/jsimonclark) diff --git a/bcore/.htaccess b/bcore/.htaccess new file mode 100644 index 0000000000..63b3728b7f --- /dev/null +++ b/bcore/.htaccess @@ -0,0 +1,104 @@ +# https://w3id.org/bcore redirects to https://github.com/TUD-IMB/bcore +# +# ## Contact +# This space is administered by: +# +# Tim Noack +# tim.noack@tu-dresden.de +# GitHub username: NoackTim + + +# Directive to ensure *.rdf files served as appropriate content type, +# if not present in main apache config +AddType application/rdf+xml .rdf +AddType application/rdf+xml .owl +AddType text/turtle .ttl +AddType text/n3 .n3 +AddType application/n-triples .nt +AddType application/ld+json .json + +RewriteEngine on + +# Turn off MultiViews +Options -MultiViews + +### Rewrite rules for latest version +# Rewrite rule to serve HTML content from the vocabulary URI if requested +RewriteCond %{HTTP_ACCEPT} !application/rdf\+xml.*(text/html|application/xhtml\+xml) +RewriteCond %{HTTP_ACCEPT} text/html [OR] +RewriteCond %{HTTP_ACCEPT} application/xhtml\+xml [OR] +RewriteCond %{HTTP_USER_AGENT} ^Mozilla/.* +RewriteRule ^$ https://tud-imb.github.io/BCore/ [R=303,L] + +# Rewrite rule to serve TTL content from the vocabulary URI if requested +RewriteCond %{HTTP_ACCEPT} ^.*text/turtle.* [OR] +RewriteCond %{HTTP_ACCEPT} text/\* [OR] +RewriteCond %{HTTP_ACCEPT} \*/turtle +RewriteRule ^$ https://tud-imb.github.io/BCore/bcore.ttl [R=303,L] + +# Rewrite rule to serve JSON-LD content from the vocabulary URI if requested +RewriteCond %{HTTP_ACCEPT} application/ld\+json +RewriteRule ^$ https://tud-imb.github.io/BCore/bcore.jsonld [R=303,L] + +# Rewrite rule to serve RDF/XML content from the vocabulary URI if requested +RewriteCond %{HTTP_ACCEPT} \*/\* [OR] +RewriteCond %{HTTP_ACCEPT} application/rdf\+xml +RewriteRule ^$ https://tud-imb.github.io/BCore/bcore.rdf [R=303,L] + +# Rewrite rule to serve N-Triples content from the vocabulary URI if requested +RewriteCond %{HTTP_ACCEPT} application/n-triples +RewriteRule ^$ https://tud-imb.github.io/BCore/bcore.nt [R=303,L] + +# Rewrite rule to serve N3 content from the vocabulary URI if requested +RewriteCond %{HTTP_ACCEPT} ^.*text/n3.* [OR] +RewriteCond %{HTTP_ACCEPT} text/\* [OR] +RewriteCond %{HTTP_ACCEPT} \*/n3 +RewriteRule ^$ https://tud-imb.github.io/BCore/bcore.n3 [R=303,L] + +# If suffix ttl, redirect to turtle version +RewriteRule ^bcore.ttl$ https://tud-imb.github.io/BCore/bcore.ttl [R=303,L] + +# If suffix html, redirect to html version +RewriteRule ^bcore.html$ https://tud-imb.github.io/BCore/ [R=303,L] + +# If suffix rdf, redirect to rdf version +RewriteRule ^bcore.rdf$ https://tud-imb.github.io/BCore/bcore.rdf [R=303,L] + +# If suffix jsonld, redirect to jsonld version +RewriteRule ^bcore.jsonld$ https://tud-imb.github.io/BCore/bcore.jsonld [R=303,L] + +# If suffix nt, redirect to nt version +RewriteRule ^bcore.nt$ https://tud-imb.github.io/BCore/bcore.nt [R=303,L] + +# If suffix n3, redirect to N3 version +RewriteRule ^bcore.n3$ https://tud-imb.github.io/BCore/bcore.n3 [R=303,L] + + +### Rewrite rules for any other version +# Rewrite rule to serve TTL content from the vocabulary URI if requested +RewriteCond %{HTTP_ACCEPT} text/turtle [OR] +RewriteCond %{HTTP_ACCEPT} text/\* [OR] +RewriteCond %{HTTP_ACCEPT} \*/turtle +RewriteRule ^bcore-?([0-9]+\.[0-9]+\.[0-9]+)$ https://tud-imb.github.io/BCore/bcore-$1.ttl [R=302,NE,L] + +# Rewrite rule to serve JSON-LD content from the vocabulary URI if requested +RewriteCond %{HTTP_ACCEPT} application/ld\+json +RewriteRule ^bcore-?([0-9]+\.[0-9]+\.[0-9]+)$ https://tud-imb.github.io/BCore/bcore-$1.jsonld [R=302,NE,L] + +# Rewrite rule to serve RDF/XML content from the vocabulary URI if requested +RewriteCond %{HTTP_ACCEPT} \*/\* [OR] +RewriteCond %{HTTP_ACCEPT} application/rdf\+xml +RewriteRule ^bcore-?([0-9]+\.[0-9]+\.[0-9]+)$ https://tud-imb.github.io/BCore/bcore-$1.rdf [R=302,NE,L] + +# Rewrite rule to serve N-Triples content from the vocabulary URI if requested +RewriteCond %{HTTP_ACCEPT} application/n-triples +RewriteRule ^bcore-?([0-9]+\.[0-9]+\.[0-9]+)$ https://tud-imb.github.io/BCore/bcore-$1.nt [R=302,NE,L] + +# Rewrite rule to serve N3 content from the vocabulary URI if requested +RewriteCond %{HTTP_ACCEPT} ^.*text/n3.* [OR] +RewriteCond %{HTTP_ACCEPT} text/\* [OR] +RewriteCond %{HTTP_ACCEPT} \*/n3 +RewriteRule ^bcore-?([0-9]+\.[0-9]+\.[0-9]+)$ https://tud-imb.github.io/BCore/bcore-$1.n3 [R=302,NE,L] + +### Default response +RewriteRule ^$ https://tud-imb.github.io/BCore/ [R=303,L] diff --git a/bcore/README.md b/bcore/README.md new file mode 100644 index 0000000000..9ae1e314bd --- /dev/null +++ b/bcore/README.md @@ -0,0 +1,9 @@ +# Bridge Core Ontology + +The Bridge Core Ontology (BCore) enables the represetation of a bridge structure, its components and material, as well as the infrastructure and media files connected to it and the environment and location of the bridge. + +Recommended namespace for BCore: https://w3id.org/bcore# + +**Contact** +- Tim Noack (GitHub: NoackTim) +- Morris Florek (GitHub: morrisfl) diff --git a/bedo/.htaccess b/bedo/.htaccess new file mode 100644 index 0000000000..9194aa069d --- /dev/null +++ b/bedo/.htaccess @@ -0,0 +1,24 @@ +Options +FollowSymLinks +RewriteEngine On + +# RDF/XML +RewriteCond %{HTTP_ACCEPT} application/rdf\+xml +RewriteRule ^$ https://xiaolisong1126.github.io/bedo/ontology.xml [R=303,L] + +# Turtle +RewriteCond %{HTTP_ACCEPT} text/turtle [OR] +RewriteCond %{HTTP_ACCEPT} application/x-turtle +RewriteRule ^$ https://xiaolisong1126.github.io/bedo/ontology.ttl [R=303,L] + +# JSON-LD +RewriteCond %{HTTP_ACCEPT} application/ld\+json +RewriteRule ^$ https://xiaolisong1126.github.io/bedo/ontology.jsonld [R=303,L] + +# HTML for browsers +RewriteCond %{HTTP_ACCEPT} text/html [OR] +RewriteCond %{HTTP_ACCEPT} application/xhtml\+xml [OR] +RewriteCond %{HTTP_USER_AGENT} ^Mozilla/.* +RewriteRule ^$ https://xiaolisong1126.github.io/bedo/ [R=303,L] + +# Fallback +RewriteRule ^$ https://xiaolisong1126.github.io/bedo/ontology.ttl [R=303,L] diff --git a/bedo/README.md b/bedo/README.md new file mode 100644 index 0000000000..2bf396e921 --- /dev/null +++ b/bedo/README.md @@ -0,0 +1,14 @@ +# BEDO: Bridge Engineering Drawing Ontology + +This directory contains the redirection rules for the permanent identifier of the Bridge Engineering Drawing Ontology (BEDO). + +## Namespace +- `https://w3id.org/bedo#` + +## Target Domain +- `https://xiaolisong1126.github.io/bedo/` + +## Maintainer / Contact +- **Name:** Xiaoli Song +- **GitHub:** [@XiaoliSong1126](https://github.com/XiaoliSong1126) +- **Email:** xiaolisong1126@gmail.com diff --git a/cdif/.htaccess b/cdif/.htaccess index b846e8063f..72716cb73e 100644 --- a/cdif/.htaccess +++ b/cdif/.htaccess @@ -53,27 +53,27 @@ SetEnvIf Request_URI ^.*$ ECRR_BASE=https://usgin.github.io/ecrrBuildingBlocks # content negotiation as building block identifiers. # # Mapping: -# core/1.0 β†’ cdifProperties/cdifMandatory +# core/1.0 β†’ cdifProperties/cdifCore # discovery/1.0 β†’ cdifProperties/cdifOptional # data_description/1.0 β†’ cdifProperties/cdifDataDescription # manifest/1.0 β†’ cdifProperties/cdifArchiveDistribution # provenance/1.0 β†’ cdifProperties/cdifProvenance # xasDiscovery/1.0 β†’ xasProperties/xasOptional -# xasCore/1.0 β†’ xasProperties/xasRequired +# xasCore/1.0 β†’ xasProperties/xasCore # ============================================================ # ---- Conformance URI sub-paths ---- # These MUST come before the bare conformance URI rules so that # {component}/{version}/{resource} is matched before {component}/{version} -# --- core/1.0 sub-paths β†’ cdifMandatory --- +# --- core/1.0 sub-paths β†’ cdifCore --- RewriteCond %{HTTP_ACCEPT} application/schema\+json [OR] RewriteCond %{HTTP_ACCEPT} application/json -RewriteRule ^core/1\.0/schema/?$ %{ENV:BB_BASE}/build/annotated/bbr/metadata/cdifProperties/cdifMandatory/schema.json [R=303,L] -RewriteRule ^core/1\.0/schema/?$ %{ENV:BB_BASE}/build/annotated/bbr/metadata/cdifProperties/cdifMandatory/schema.yaml [R=303,L] -RewriteRule ^core/1\.0/resolved/?$ %{ENV:BB_BASE}/_sources/cdifProperties/cdifMandatory/resolvedSchema.json [R=303,L] -RewriteRule ^core/1\.0/shacl/?$ %{ENV:BB_BASE}/_sources/cdifProperties/cdifMandatory/rules.shacl [R=303,L] -RewriteRule ^core/1\.0/context/?$ %{ENV:BB_BASE}/build/annotated/bbr/metadata/cdifProperties/cdifMandatory/context.jsonld [R=303,L] +RewriteRule ^core/1\.0/schema/?$ %{ENV:BB_BASE}/build/annotated/bbr/metadata/cdifProperties/cdifCore/schema.json [R=303,L] +RewriteRule ^core/1\.0/schema/?$ %{ENV:BB_BASE}/build/annotated/bbr/metadata/cdifProperties/cdifCore/schema.yaml [R=303,L] +RewriteRule ^core/1\.0/resolved/?$ %{ENV:BB_BASE}/_sources/cdifProperties/cdifCore/resolvedSchema.json [R=303,L] +RewriteRule ^core/1\.0/shacl/?$ %{ENV:BB_BASE}/_sources/cdifProperties/cdifCore/rules.shacl [R=303,L] +RewriteRule ^core/1\.0/context/?$ %{ENV:BB_BASE}/build/annotated/bbr/metadata/cdifProperties/cdifCore/context.jsonld [R=303,L] # --- discovery/1.0 sub-paths β†’ cdifOptional --- RewriteCond %{HTTP_ACCEPT} application/schema\+json [OR] @@ -120,29 +120,29 @@ RewriteRule ^xasDiscovery/1\.0/resolved/?$ %{ENV:BB_BASE}/_sources/xasProperties RewriteRule ^xasDiscovery/1\.0/shacl/?$ %{ENV:BB_BASE}/_sources/xasProperties/xasOptional/rules.shacl [R=303,L] RewriteRule ^xasDiscovery/1\.0/context/?$ %{ENV:BB_BASE}/build/annotated/bbr/metadata/xasProperties/xasOptional/context.jsonld [R=303,L] -# --- xasCore/1.0 sub-paths β†’ xasRequired --- +# --- xasCore/1.0 sub-paths β†’ xasCore --- RewriteCond %{HTTP_ACCEPT} application/schema\+json [OR] RewriteCond %{HTTP_ACCEPT} application/json -RewriteRule ^xasCore/1\.0/schema/?$ %{ENV:BB_BASE}/build/annotated/bbr/metadata/xasProperties/xasRequired/schema.json [R=303,L] -RewriteRule ^xasCore/1\.0/schema/?$ %{ENV:BB_BASE}/build/annotated/bbr/metadata/xasProperties/xasRequired/schema.yaml [R=303,L] -RewriteRule ^xasCore/1\.0/resolved/?$ %{ENV:BB_BASE}/_sources/xasProperties/xasRequired/resolvedSchema.json [R=303,L] -RewriteRule ^xasCore/1\.0/shacl/?$ %{ENV:BB_BASE}/_sources/xasProperties/xasRequired/rules.shacl [R=303,L] -RewriteRule ^xasCore/1\.0/context/?$ %{ENV:BB_BASE}/build/annotated/bbr/metadata/xasProperties/xasRequired/context.jsonld [R=303,L] +RewriteRule ^xasCore/1\.0/schema/?$ %{ENV:BB_BASE}/build/annotated/bbr/metadata/xasProperties/xasCore/schema.json [R=303,L] +RewriteRule ^xasCore/1\.0/schema/?$ %{ENV:BB_BASE}/build/annotated/bbr/metadata/xasProperties/xasCore/schema.yaml [R=303,L] +RewriteRule ^xasCore/1\.0/resolved/?$ %{ENV:BB_BASE}/_sources/xasProperties/xasCore/resolvedSchema.json [R=303,L] +RewriteRule ^xasCore/1\.0/shacl/?$ %{ENV:BB_BASE}/_sources/xasProperties/xasCore/rules.shacl [R=303,L] +RewriteRule ^xasCore/1\.0/context/?$ %{ENV:BB_BASE}/build/annotated/bbr/metadata/xasProperties/xasCore/context.jsonld [R=303,L] # ---- Conformance URI bare paths (content negotiation) ---- -# --- core/1.0 β†’ cdifMandatory --- +# --- core/1.0 β†’ cdifCore --- RewriteCond %{HTTP_ACCEPT} application/schema\+json -RewriteRule ^core/1\.0/?$ %{ENV:BB_BASE}/build/annotated/bbr/metadata/cdifProperties/cdifMandatory/schema.json [R=303,L] +RewriteRule ^core/1\.0/?$ %{ENV:BB_BASE}/build/annotated/bbr/metadata/cdifProperties/cdifCore/schema.json [R=303,L] RewriteCond %{HTTP_ACCEPT} application/yaml -RewriteRule ^core/1\.0/?$ %{ENV:BB_BASE}/build/annotated/bbr/metadata/cdifProperties/cdifMandatory/schema.yaml [R=303,L] +RewriteRule ^core/1\.0/?$ %{ENV:BB_BASE}/build/annotated/bbr/metadata/cdifProperties/cdifCore/schema.yaml [R=303,L] RewriteCond %{HTTP_ACCEPT} text/turtle -RewriteRule ^core/1\.0/?$ %{ENV:BB_BASE}/_sources/cdifProperties/cdifMandatory/rules.shacl [R=303,L] +RewriteRule ^core/1\.0/?$ %{ENV:BB_BASE}/_sources/cdifProperties/cdifCore/rules.shacl [R=303,L] RewriteCond %{HTTP_ACCEPT} application/ld\+json -RewriteRule ^core/1\.0/?$ %{ENV:BB_BASE}/build/annotated/bbr/metadata/cdifProperties/cdifMandatory/context.jsonld [R=303,L] +RewriteRule ^core/1\.0/?$ %{ENV:BB_BASE}/build/annotated/bbr/metadata/cdifProperties/cdifCore/context.jsonld [R=303,L] RewriteCond %{HTTP_ACCEPT} application/json -RewriteRule ^core/1\.0/?$ %{ENV:BB_BASE}/build/generateddocs/json-full/bbr/metadata/cdifProperties/cdifMandatory/index.json [R=303,L] -RewriteRule ^core/1\.0/?$ %{ENV:BB_BASE}/bblock/cdif.bbr.metadata.cdifProperties.cdifMandatory [R=303,L] +RewriteRule ^core/1\.0/?$ %{ENV:BB_BASE}/build/generateddocs/json-full/bbr/metadata/cdifProperties/cdifCore/index.json [R=303,L] +RewriteRule ^core/1\.0/?$ %{ENV:BB_BASE}/bblock/cdif.bbr.metadata.cdifProperties.cdifCore [R=303,L] # --- discovery/1.0 β†’ cdifOptional --- RewriteCond %{HTTP_ACCEPT} application/schema\+json @@ -209,23 +209,23 @@ RewriteCond %{HTTP_ACCEPT} application/json RewriteRule ^xasDiscovery/1\.0/?$ %{ENV:BB_BASE}/build/generateddocs/json-full/bbr/metadata/xasProperties/xasOptional/index.json [R=303,L] RewriteRule ^xasDiscovery/1\.0/?$ %{ENV:BB_BASE}/bblock/cdif.bbr.metadata.xasProperties.xasOptional [R=303,L] -# --- xasCore/1.0 β†’ xasRequired --- +# --- xasCore/1.0 β†’ xasCore --- RewriteCond %{HTTP_ACCEPT} application/schema\+json -RewriteRule ^xasCore/1\.0/?$ %{ENV:BB_BASE}/build/annotated/bbr/metadata/xasProperties/xasRequired/schema.json [R=303,L] +RewriteRule ^xasCore/1\.0/?$ %{ENV:BB_BASE}/build/annotated/bbr/metadata/xasProperties/xasCore/schema.json [R=303,L] RewriteCond %{HTTP_ACCEPT} application/yaml -RewriteRule ^xasCore/1\.0/?$ %{ENV:BB_BASE}/build/annotated/bbr/metadata/xasProperties/xasRequired/schema.yaml [R=303,L] +RewriteRule ^xasCore/1\.0/?$ %{ENV:BB_BASE}/build/annotated/bbr/metadata/xasProperties/xasCore/schema.yaml [R=303,L] RewriteCond %{HTTP_ACCEPT} text/turtle -RewriteRule ^xasCore/1\.0/?$ %{ENV:BB_BASE}/_sources/xasProperties/xasRequired/rules.shacl [R=303,L] +RewriteRule ^xasCore/1\.0/?$ %{ENV:BB_BASE}/_sources/xasProperties/xasCore/rules.shacl [R=303,L] RewriteCond %{HTTP_ACCEPT} application/ld\+json -RewriteRule ^xasCore/1\.0/?$ %{ENV:BB_BASE}/build/annotated/bbr/metadata/xasProperties/xasRequired/context.jsonld [R=303,L] +RewriteRule ^xasCore/1\.0/?$ %{ENV:BB_BASE}/build/annotated/bbr/metadata/xasProperties/xasCore/context.jsonld [R=303,L] RewriteCond %{HTTP_ACCEPT} application/json -RewriteRule ^xasCore/1\.0/?$ %{ENV:BB_BASE}/build/generateddocs/json-full/bbr/metadata/xasProperties/xasRequired/index.json [R=303,L] -RewriteRule ^xasCore/1\.0/?$ %{ENV:BB_BASE}/bblock/cdif.bbr.metadata.xasProperties.xasRequired [R=303,L] +RewriteRule ^xasCore/1\.0/?$ %{ENV:BB_BASE}/build/generateddocs/json-full/bbr/metadata/xasProperties/xasCore/index.json [R=303,L] +RewriteRule ^xasCore/1\.0/?$ %{ENV:BB_BASE}/bblock/cdif.bbr.metadata.xasProperties.xasCore [R=303,L] # ============================================================ # Domain-specific building blocks (separate repos) # These MUST come before the generic two-segment rules. -# adaProperties/adaProfiles β†’ geochemBuildingBlocks +# geochemProperties/adaProfiles β†’ geochemBuildingBlocks (formerly adaProperties) # DDEproperties/DDEProfiles β†’ ddeBuildingBlocks # ecrrProperties/ecrrProfiles β†’ ecrrBuildingBlocks # ============================================================ @@ -251,12 +251,23 @@ RewriteRule ^bbr/metadata/profiles/ecrrProfiles/([^/]+)/shacl/?$ %{ENV:ECRR_BASE RewriteRule ^bbr/metadata/profiles/ecrrProfiles/([^/]+)/context/?$ %{ENV:ECRR_BASE}/build/annotated/bbr/metadata/profiles/ecrrProfiles/$1/context.jsonld [R=303,L] RewriteRule ^bbr/metadata/profiles/ecrrProfiles/([^/]+)/?$ %{ENV:ECRR_BASE}/bblock/ecrr.bbr.metadata.profiles.ecrrProfiles.$1 [R=303,L] -# --- ADA properties --- -RewriteRule ^bbr/metadata/adaProperties/([^/]+)/schema/?$ %{ENV:ADA_BASE}/build/annotated/bbr/metadata/adaProperties/$1/schema.yaml [R=303,L] -RewriteRule ^bbr/metadata/adaProperties/([^/]+)/resolved/?$ %{ENV:ADA_BASE}/_sources/adaProperties/$1/resolvedSchema.json [R=303,L] -RewriteRule ^bbr/metadata/adaProperties/([^/]+)/shacl/?$ %{ENV:ADA_BASE}/_sources/adaProperties/$1/rules.shacl [R=303,L] -RewriteRule ^bbr/metadata/adaProperties/([^/]+)/context/?$ %{ENV:ADA_BASE}/build/annotated/bbr/metadata/adaProperties/$1/context.jsonld [R=303,L] -RewriteRule ^bbr/metadata/adaProperties/([^/]+)/?$ %{ENV:ADA_BASE}/bblock/ada.bbr.metadata.adaProperties.$1 [R=303,L] +# --- Geochem properties (renamed from adaProperties) --- +RewriteRule ^bbr/metadata/geochemProperties/([^/]+)/schema/?$ %{ENV:ADA_BASE}/build/annotated/bbr/metadata/geochemProperties/$1/schema.yaml [R=303,L] +RewriteRule ^bbr/metadata/geochemProperties/([^/]+)/resolved/?$ %{ENV:ADA_BASE}/_sources/geochemProperties/$1/resolvedSchema.json [R=303,L] +RewriteRule ^bbr/metadata/geochemProperties/([^/]+)/shacl/?$ %{ENV:ADA_BASE}/_sources/geochemProperties/$1/rules.shacl [R=303,L] +RewriteRule ^bbr/metadata/geochemProperties/([^/]+)/context/?$ %{ENV:ADA_BASE}/build/annotated/bbr/metadata/geochemProperties/$1/context.jsonld [R=303,L] +RewriteRule ^bbr/metadata/geochemProperties/([^/]+)/?$ %{ENV:ADA_BASE}/bblock/ada.bbr.metadata.geochemProperties.$1 [R=303,L] + +# --- ADA properties (legacy alias β†’ geochemProperties) --- +RewriteRule ^bbr/metadata/adaProperties/([^/]+)/schema/?$ %{ENV:ADA_BASE}/build/annotated/bbr/metadata/geochemProperties/$1/schema.yaml [R=303,L] +RewriteRule ^bbr/metadata/adaProperties/([^/]+)/resolved/?$ %{ENV:ADA_BASE}/_sources/geochemProperties/$1/resolvedSchema.json [R=303,L] +RewriteRule ^bbr/metadata/adaProperties/([^/]+)/shacl/?$ %{ENV:ADA_BASE}/_sources/geochemProperties/$1/rules.shacl [R=303,L] +RewriteRule ^bbr/metadata/adaProperties/([^/]+)/context/?$ %{ENV:ADA_BASE}/build/annotated/bbr/metadata/geochemProperties/$1/context.jsonld [R=303,L] +RewriteRule ^bbr/metadata/adaProperties/([^/]+)/?$ %{ENV:ADA_BASE}/bblock/ada.bbr.metadata.geochemProperties.$1 [R=303,L] + +# --- DDE legacy aliases for renamed BBs --- +RewriteRule ^bbr/metadata/DDEproperties/ddeMandatory(/.*)?$ /cdif/bbr/metadata/DDEproperties/ddeCore$1 [R=303,L] +RewriteRule ^bbr/metadata/DDEproperties/ddeSubject(/.*)?$ /cdif/bbr/metadata/DDEproperties/ddeCatalogRecord$1 [R=303,L] # --- DDE properties --- RewriteRule ^bbr/metadata/DDEproperties/([^/]+)/schema/?$ %{ENV:DDE_BASE}/build/annotated/bbr/metadata/DDEproperties/$1/schema.yaml [R=303,L] @@ -265,6 +276,9 @@ RewriteRule ^bbr/metadata/DDEproperties/([^/]+)/shacl/?$ %{ENV:DDE_BASE}/_source RewriteRule ^bbr/metadata/DDEproperties/([^/]+)/context/?$ %{ENV:DDE_BASE}/build/annotated/bbr/metadata/DDEproperties/$1/context.jsonld [R=303,L] RewriteRule ^bbr/metadata/DDEproperties/([^/]+)/?$ %{ENV:DDE_BASE}/bblock/dde.bbr.metadata.DDEproperties.$1 [R=303,L] +# --- ECRR legacy alias for renamed BB --- +RewriteRule ^bbr/metadata/ecrrProperties/ecrrBase(/.*)?$ /cdif/bbr/metadata/ecrrProperties/ecrrCore$1 [R=303,L] + # --- ECRR properties --- RewriteRule ^bbr/metadata/ecrrProperties/([^/]+)/schema/?$ %{ENV:ECRR_BASE}/build/annotated/bbr/metadata/ecrrProperties/$1/schema.yaml [R=303,L] RewriteRule ^bbr/metadata/ecrrProperties/([^/]+)/resolved/?$ %{ENV:ECRR_BASE}/_sources/ecrrProperties/$1/resolvedSchema.json [R=303,L] @@ -342,6 +356,14 @@ RewriteRule ^bbr/metadata/profiles/([^/]+)/([^/]+)/?$ %{ENV:BB_BASE}/bblock/cdif # Fallback β†’ viewer page RewriteRule ^bbr/metadata/profiles/([^/]+)/([^/]+)/?$ %{ENV:BB_BASE}/bblock/cdif.bbr.metadata.profiles.$1.$2 [R=303,L] +# ============================================================ +# Legacy aliases for renamed CDIF core BBs +# These MUST come before the generic two-segment rules +# ============================================================ +RewriteRule ^bbr/metadata/cdifProperties/cdifMandatory(/.*)?$ /cdif/bbr/metadata/cdifProperties/cdifCore$1 [R=303,L] +RewriteRule ^bbr/metadata/xasProperties/xasRequired(/.*)?$ /cdif/bbr/metadata/xasProperties/xasCore$1 [R=303,L] +RewriteRule ^bbr/metadata/xasProperties/xasSubject(/.*)?$ /cdif/bbr/metadata/cdifProperties/cdifCatalogRecord$1 [R=303,L] + # ============================================================ # Building Block resources (two-segment): /cdif/bbr/metadata/{category}/{name}/{resource} # Explicit sub-paths β€” these always resolve to the named resource diff --git a/celine-eu/.htaccess b/celine-eu/.htaccess new file mode 100644 index 0000000000..d3eb7fe185 --- /dev/null +++ b/celine-eu/.htaccess @@ -0,0 +1,55 @@ +Options +FollowSymLinks +RewriteEngine on + +# CELINE Core Ontology β€” https://w3id.org/celine-eu +# Contact: https://github.com/celine-eu +# Docs: https://celine-eu.github.io/ontologies/ + +AddType text/turtle .ttl +AddType application/rdf+xml .owl +AddType application/ld+json .jsonld +AddType application/n-triples .nt + +# ── Ontology root IRI: https://w3id.org/celine-eu ────────────────────────── + +RewriteCond %{HTTP_ACCEPT} !application/rdf\+xml.*(text/html|application/xhtml\+xml) +RewriteCond %{HTTP_ACCEPT} text/html [OR] +RewriteCond %{HTTP_ACCEPT} application/xhtml\+xml [OR] +RewriteCond %{HTTP_USER_AGENT} ^Mozilla/.* +RewriteRule ^$ https://celine-eu.github.io/ontologies/ [R=303,L] + +RewriteCond %{HTTP_ACCEPT} text/turtle +RewriteRule ^$ https://raw.githubusercontent.com/celine-eu/ontologies/main/releases/current/ontology.ttl [R=303,L] + +RewriteCond %{HTTP_ACCEPT} application/rdf\+xml +RewriteRule ^$ https://raw.githubusercontent.com/celine-eu/ontologies/main/releases/current/ontology.owl [R=303,L] + +RewriteCond %{HTTP_ACCEPT} application/ld\+json +RewriteRule ^$ https://raw.githubusercontent.com/celine-eu/ontologies/main/releases/current/ontology.jsonld [R=303,L] + +RewriteCond %{HTTP_ACCEPT} application/n-triples +RewriteRule ^$ https://raw.githubusercontent.com/celine-eu/ontologies/main/releases/current/ontology.nt [R=303,L] + +RewriteRule ^$ https://celine-eu.github.io/ontologies/ [R=303,L] + +# ── Versioned IRI: https://w3id.org/celine-eu/vX.Y ───────────────────────── + +RewriteCond %{HTTP_ACCEPT} !application/rdf\+xml.*(text/html|application/xhtml\+xml) +RewriteCond %{HTTP_ACCEPT} text/html [OR] +RewriteCond %{HTTP_ACCEPT} application/xhtml\+xml [OR] +RewriteCond %{HTTP_USER_AGENT} ^Mozilla/.* +RewriteRule ^(v[0-9]+\.[0-9]+)$ https://celine-eu.github.io/ontologies/ [R=303,L] + +RewriteCond %{HTTP_ACCEPT} text/turtle +RewriteRule ^(v[0-9]+\.[0-9]+)$ https://raw.githubusercontent.com/celine-eu/ontologies/main/releases/$1/ontology.ttl [R=303,L] + +RewriteCond %{HTTP_ACCEPT} application/rdf\+xml +RewriteRule ^(v[0-9]+\.[0-9]+)$ https://raw.githubusercontent.com/celine-eu/ontologies/main/releases/$1/ontology.owl [R=303,L] + +RewriteCond %{HTTP_ACCEPT} application/ld\+json +RewriteRule ^(v[0-9]+\.[0-9]+)$ https://raw.githubusercontent.com/celine-eu/ontologies/main/releases/$1/ontology.jsonld [R=303,L] + +RewriteCond %{HTTP_ACCEPT} application/n-triples +RewriteRule ^(v[0-9]+\.[0-9]+)$ https://raw.githubusercontent.com/celine-eu/ontologies/main/releases/$1/ontology.nt [R=303,L] + +RewriteRule ^(v[0-9]+\.[0-9]+)$ https://celine-eu.github.io/ontologies/ [R=303,L] diff --git a/celine-eu/README.md b/celine-eu/README.md new file mode 100644 index 0000000000..a1957bed5c --- /dev/null +++ b/celine-eu/README.md @@ -0,0 +1,39 @@ +# /celine-eu + +Persistent URI namespace for the **CELINE Core Ontology** β€” a lightweight +orchestration profile for Renewable Energy Communities (RECs) and Digital +Twin workflows connecting PECO, SAREF, SOSA/SSN and BIGG. + +CELINE is a Horizon Europe project (Grant Agreement No. 101160667). + +## Redirects + +Serializations are served from the WIDOCO-generated `releases/current/` directory. + +| Accept | Target | +|---|---| +| `text/html` | https://celine-eu.github.io/ontologies/ | +| `text/turtle` | https://raw.githubusercontent.com/celine-eu/ontologies/main/releases/current/ontology.ttl | +| `application/rdf+xml` | https://raw.githubusercontent.com/celine-eu/ontologies/main/releases/current/ontology.owl | +| `application/ld+json` | https://raw.githubusercontent.com/celine-eu/ontologies/main/releases/current/ontology.jsonld | +| `application/n-triples` | https://raw.githubusercontent.com/celine-eu/ontologies/main/releases/current/ontology.nt | + +Versioned IRIs (`/celine-eu/vX.Y`) resolve to the corresponding `releases/$version/` files. + +## References + +- Project website: https://www.celineproject.eu/ +- GitHub organisation: https://github.com/celine-eu +- Documentation: https://celine-eu.github.io/ + +## Contact + +This space is administered by the CELINE project team. + +GitHub organisation: [celine-eu](https://github.com/celine-eu) + +**lc-spxl** (SPXL), https://github.com/lc-spxl + +**mpavan23** (SPXL), https://github.com/mpavan23 + +**ewidl** (AIT), https://github.com/ewidl diff --git a/climoo/.htaccess b/climoo/.htaccess index 7ad7187fc0..2e6c41cf49 100644 --- a/climoo/.htaccess +++ b/climoo/.htaccess @@ -20,6 +20,7 @@ RedirectMatch 302 ^/climoo/releases/?$ https://github.com/ClimOO/ClimOO-Ontolog ## Redirect to RDF content when accessing the root namespace RedirectMatch 302 ^/climoo/?$ https://raw.githubusercontent.com/ClimOO/ClimOO-Ontology/refs/heads/main/climoo.ttl +RedirectMatch 302 ^/climoo/(climoo[^/]*)$ https://raw.githubusercontent.com/ClimOO/ClimOO-Ontology/refs/heads/main//$1.ttl ## Redirect documentation requests explicitly RedirectMatch 302 ^/climoo/docs/?$ https://github.com/ClimOO/ClimOO-Ontology/docs/index.html diff --git a/daont/.htaccess b/daont/.htaccess new file mode 100644 index 0000000000..78fe1b5bf4 --- /dev/null +++ b/daont/.htaccess @@ -0,0 +1,52 @@ +Header set Access-Control-Allow-Origin * +Options -MultiViews +Options +FollowSymLinks + +# Directive to ensure *.rdf files served as appropriate content type, +# if not present in main apache config +AddType application/rdf+xml .rdf +AddType text/turtle .ttl +AddType application/n-triples .n3 +AddType application/ld+json .json + +RewriteEngine on +SetEnvIf Accept ^.+$ SYNTAX=other +SetEnvIf Accept ^.*application/rdf\+xml.* SYNTAX=rdf +SetEnvIf Accept ^.*text/turtle.* SYNTAX=ttl +SetEnvIf Accept ^.*application/json-ld.* SYNTAX=json +SetEnvIf Accept ^.*application/n-triples.* SYNTAX=nt +SetEnvIf Accept ^.*text/html.* SYNTAX=html +SetEnvIf Accept ^\*/\*$ SYNTAX=ttl +SetEnvIf Request_URI ^.*$ ROOT_URL=https://cefriel.github.io/daont-ontology + +##### Ontology ##### + +# Versioned ontology releases +RewriteCond %{ENV:SYNTAX} ^(rdf|ttl|json|nt)$ +RewriteRule ^([0-9].[0-9].[0-9])/?$ %{ENV:ROOT_URL}/daont/$1/daont.%{ENV:SYNTAX} [R=303,L] + +# Latest ontology releases +RewriteCond %{ENV:SYNTAX} ^(rdf|ttl|json|nt)$ +RewriteRule ^/?$ %{ENV:ROOT_URL}/daont/latest/daont.%{ENV:SYNTAX} [R=303,L] + +# Versioned ontology documentation +RewriteCond %{ENV:SYNTAX} ^html$ +RewriteRule ^([0-9].[0-9].[0-9])/?$ %{ENV:ROOT_URL}/daont/$1/index.html [R=303,L] + +# Latest ontology documentation +RewriteCond %{ENV:SYNTAX} ^html$ +RewriteRule ^/?$ %{ENV:ROOT_URL}/daont/latest/index.html [R=303,L] + +# No serialisation available +RewriteCond %{ENV:SYNTAX} ^other$ +RewriteRule ^/?$ %{ENV:ROOT_URL}/406.html [R=406,L] + + +##### Default ##### + +# Specification repo +RewriteCond %{ENV:MARKER} ^other$ +RewriteRule ^.*$ https://github.com/cefriel/daont-ontology [R=303,L] + +# Default response +RewriteRule ^.*$ https://github.com/cefriel/daont-ontology [R=303,L] \ No newline at end of file diff --git a/daont/README.md b/daont/README.md new file mode 100644 index 0000000000..c50d350b8a --- /dev/null +++ b/daont/README.md @@ -0,0 +1,12 @@ +# /daont/ + +This permanent w3id [`https://w3id.org/daont/`](https://w3id.org/daont/) redirects to the Digital Assets Ontology (DAOnt). + +## Contact +This space is administered by: + +**Valentina Carriero** +[Cefriel](https://www.cefriel.com) + +GitHub: [valecarriero](https://github.com/valecarriero) +ORCID: [0000-0003-1427-3723](https://orcid.org/0000-0003-1427-3723) \ No newline at end of file diff --git a/dcatr/.htaccess b/dcatr/.htaccess new file mode 100644 index 0000000000..b388be0752 --- /dev/null +++ b/dcatr/.htaccess @@ -0,0 +1,48 @@ +# /dcatr/ +# +# DCAT-R (Data Catalog Vocabulary for RDF Repositories) +# https://w3id.org/dcatr redirects to https://dcat-r.github.io/spec/ +# +# ## Contact +# This space is administered by: +# +# Marcel Otto +# marcelotto@gmx.de +# GitHub username: marcelotto + +Options +FollowSymLinks +RewriteEngine on + +# --- Content negotiation for https://w3id.org/dcatr --- + +# Turtle +RewriteCond %{HTTP_ACCEPT} text/turtle [OR] +RewriteCond %{HTTP_ACCEPT} application/x-turtle +RewriteRule ^$ https://dcat-r.github.io/spec/dcatr.ttl [R=303,NE,L] + +# JSON-LD +RewriteCond %{HTTP_ACCEPT} application/ld\+json +RewriteRule ^$ https://dcat-r.github.io/spec/dcatr.jsonld [R=303,NE,L] + +# RDF/XML +RewriteCond %{HTTP_ACCEPT} application/rdf\+xml +RewriteRule ^$ https://dcat-r.github.io/spec/dcatr.rdf [R=303,NE,L] + +# N-Triples +RewriteCond %{HTTP_ACCEPT} application/n-triples +RewriteRule ^$ https://dcat-r.github.io/spec/dcatr.nt [R=303,NE,L] + +# HTML (explicit) +RewriteCond %{HTTP_ACCEPT} text/html [OR] +RewriteCond %{HTTP_ACCEPT} application/xhtml\+xml +RewriteRule ^$ https://dcat-r.github.io/spec/ [R=303,NE,L] + +# Default: HTML +RewriteRule ^$ https://dcat-r.github.io/spec/ [R=303,NE,L] + +# --- Direct file access --- +RewriteRule ^dcatr\.ttl$ https://dcat-r.github.io/spec/dcatr.ttl [R=303,NE,L] +RewriteRule ^dcatr\.nt$ https://dcat-r.github.io/spec/dcatr.nt [R=303,NE,L] +RewriteRule ^dcatr\.rdf$ https://dcat-r.github.io/spec/dcatr.rdf [R=303,NE,L] +RewriteRule ^dcatr\.jsonld$ https://dcat-r.github.io/spec/dcatr.jsonld [R=303,NE,L] +RewriteRule ^context\.jsonld$ https://dcat-r.github.io/spec/context.jsonld [R=303,NE,L] diff --git a/dcatr/README.md b/dcatr/README.md new file mode 100644 index 0000000000..c28c3212d2 --- /dev/null +++ b/dcatr/README.md @@ -0,0 +1,11 @@ +# DCAT-R + +GitHub: + +Spec: + +Vocabulary: + +Contacts: + +- Marcel Otto (GitHub: [@marcelotto](https://github.com/marcelotto)) diff --git a/earthsemantics/OSO/.htaccess b/earthsemantics/OSO/.htaccess new file mode 100644 index 0000000000..32d6539456 --- /dev/null +++ b/earthsemantics/OSO/.htaccess @@ -0,0 +1,27 @@ +Options +FollowSymLinks +RewriteEngine On + +# Version IRIs +RewriteRule ^1\.0\.0/?$ https://raw.githubusercontent.com/emso-eric/oso-ontology/main/versions/1.0.0/OSO.ttl [R=302,L] +RewriteRule ^1\.0\.1/?$ https://raw.githubusercontent.com/emso-eric/oso-ontology/main/versions/1.0.1/OSO.ttl [R=302,L] + +# SPARQL endpoint +RewriteRule ^sparql/?$ https://virtuoso.ifremer.fr/oso/sparql/ [R=302,L] + +# SPARQL UI +RewriteRule ^ui/?$ https://virtuoso.ifremer.fr/oso/ [R=302,L] + +# Turtle +RewriteCond %{HTTP_ACCEPT} text/turtle +RewriteRule ^$ https://raw.githubusercontent.com/emso-eric/oso-ontology/main/OSO.ttl [R=302,L] + +# HTML fallback +RewriteCond %{HTTP_ACCEPT} !text/turtle +RewriteRule ^$ https://earthportal.eu/ontologies/OSO [R=302,L] + +# Explicit Turtle serialization +RewriteRule ^ttl/?$ https://raw.githubusercontent.com/emso-eric/oso-ontology/main/OSO.ttl [R=302,L] + +# Metadata artifacts +RewriteRule ^void/?$ https://raw.githubusercontent.com/emso-eric/oso-ontology/main/void.ttl [R=302,L] +RewriteRule ^dcat/?$ https://raw.githubusercontent.com/emso-eric/oso-ontology/main/dcat.ttl [R=302,L] diff --git a/earthsemantics/OSO/README.md b/earthsemantics/OSO/README.md new file mode 100644 index 0000000000..818ff17c0a --- /dev/null +++ b/earthsemantics/OSO/README.md @@ -0,0 +1,18 @@ +# OSO namespace at w3id.org + +This subpath provides persistent identifiers for the OSO ontology and its related metadata descriptions. + +## Maintainer +Steven / @spiel-ifremer +https://github.com/spiel-ifremer + +## Scope +- /earthsemantics/OSO +- /earthsemantics/OSO/void +- /earthsemantics/OSO/dcat + +## Target project +https://github.com/emso-eric/oso-ontology + +## Notes +This subpath is maintained independently and does not modify other earthsemantics namespaces. diff --git a/eautonome/.htaccess b/eautonome/.htaccess new file mode 100644 index 0000000000..2d406cc3e2 --- /dev/null +++ b/eautonome/.htaccess @@ -0,0 +1,12 @@ +Options +FollowSymLinks +RewriteEngine on + +RewriteRule ^ontology\.ttl$ https://erdemonal.github.io/eautonome/eautonome.ttl [R=303,L] +RewriteRule ^dataset/?$ https://erdemonal.github.io/eautonome/dataset.ttl [R=303,L] +RewriteRule ^readme/?$ https://github.com/erdemonal/eautonome/blob/main/README.md [R=303,L] + +RewriteRule ^/?$ https://erdemonal.github.io/eautonome/index.html [R=303,L] + +RewriteCond %{REQUEST_FILENAME} !-f +RewriteCond %{REQUEST_FILENAME} !-d +RewriteRule ^([a-zA-Z0-9_-]+)$ https://erdemonal.github.io/eautonome/index.html [R=303,L] diff --git a/eautonome/README.md b/eautonome/README.md new file mode 100644 index 0000000000..5b78e11f21 --- /dev/null +++ b/eautonome/README.md @@ -0,0 +1,6 @@ +# Eautonome Ontology +This W3 identifier is meant to provide a generic identifier for Projet Maison Eautonome (https://www.leesu.fr/projet-eautonome). + +### Contact +- email: erdemonal at outlook dot fr +- github: [erdemonal](https://github.com/erdemonal) diff --git a/explainability/.htaccess b/explainability/.htaccess index e2c4bae7cb..8e1420b290 100644 --- a/explainability/.htaccess +++ b/explainability/.htaccess @@ -11,6 +11,9 @@ RewriteEngine on +# Specific redirect for 'SoCK' +RewriteRule ^SoCK$ https://semsys.ai.wu.ac.at/sock/ [R=302,L,NC] + # Specific redirect for 'result' RewriteRule ^sense/result$ https://sense-project.net/results/ [R=302,L] diff --git a/fair-metrics/.htaccess b/fair-metrics/.htaccess index 6c8d028e4d..3a87db51c8 100644 --- a/fair-metrics/.htaccess +++ b/fair-metrics/.htaccess @@ -22,7 +22,12 @@ RewriteRule ^(.+)$ https://fairmetrics.github.io/Metrics/landingpages/$1.html [R # Turtle if text/turtle is acceptable (only if HTML conditions didn't match) RewriteCond %{HTTP:Accept} text/turtle -RewriteRule ^(.+)$ https://fairmetrics.github.io/Metrics/landingpages/$1.ttl [R=303,L,NE] +RewriteRule ^(.+)$ https://fairmetrics.github.io/Metrics/metric/$1.ttl [R=303,L,NE] + +# JSON if application/json or application/ld+json is acceptable +RewriteCond %{HTTP:Accept} application/json [OR] +RewriteCond %{HTTP:Accept} application/ld+json +RewriteRule ^(.+)$ https://fairmetrics.github.io/Metrics/metric/$1.jsonld [R=303,L,NE] # Default fallback: HTML (for browsers, no Accept header, or unknown types) -RewriteRule ^(.+)$ https://fairmetrics.github.io/Metrics/landingpages/$1.html [R=303,L,NE] \ No newline at end of file +RewriteRule ^(.+)$ https://fairmetrics.github.io/Metrics/landingpages/$1.html [R=303,L,NE] diff --git a/gno/.htaccess b/gno/.htaccess new file mode 100644 index 0000000000..d83a3ce287 --- /dev/null +++ b/gno/.htaccess @@ -0,0 +1,83 @@ +# /gno/ +# +# Gno vocabulary and sub-vocabularies +# https://w3id.org/gno redirects to https://rdf-elixir.dev/gno/ +# +# ## Contact +# This space is administered by: +# +# Marcel Otto +# marcelotto@gmx.de +# GitHub username: marcelotto + +Options +FollowSymLinks +RewriteEngine on + +# --- Content negotiation for https://w3id.org/gno --- + +# Turtle +RewriteCond %{HTTP_ACCEPT} text/turtle [OR] +RewriteCond %{HTTP_ACCEPT} application/x-turtle +RewriteRule ^$ https://rdf-elixir.dev/gno/gno.ttl [R=303,NE,L] + +# JSON-LD +RewriteCond %{HTTP_ACCEPT} application/ld\+json +RewriteRule ^$ https://rdf-elixir.dev/gno/gno.jsonld [R=303,NE,L] + +# RDF/XML +RewriteCond %{HTTP_ACCEPT} application/rdf\+xml +RewriteRule ^$ https://rdf-elixir.dev/gno/gno.rdf [R=303,NE,L] + +# N-Triples +RewriteCond %{HTTP_ACCEPT} application/n-triples +RewriteRule ^$ https://rdf-elixir.dev/gno/gno.nt [R=303,NE,L] + +# HTML (explicit) +RewriteCond %{HTTP_ACCEPT} text/html [OR] +RewriteCond %{HTTP_ACCEPT} application/xhtml\+xml +RewriteRule ^$ https://rdf-elixir.dev/gno/ [R=303,NE,L] + +# Default: HTML +RewriteRule ^$ https://rdf-elixir.dev/gno/ [R=303,NE,L] + +# Direct file access +RewriteRule ^gno\.ttl$ https://rdf-elixir.dev/gno/gno.ttl [R=303,NE,L] +RewriteRule ^gno\.nt$ https://rdf-elixir.dev/gno/gno.nt [R=303,NE,L] +RewriteRule ^gno\.rdf$ https://rdf-elixir.dev/gno/gno.rdf [R=303,NE,L] +RewriteRule ^gno\.jsonld$ https://rdf-elixir.dev/gno/gno.jsonld [R=303,NE,L] + +# --- Content negotiation for https://w3id.org/gno/store/adapter/ --- + +# Turtle +RewriteCond %{HTTP_ACCEPT} text/turtle [OR] +RewriteCond %{HTTP_ACCEPT} application/x-turtle +RewriteRule ^store/adapter/?$ https://rdf-elixir.dev/gno/store/adapter/gnoa.ttl [R=303,NE,L] + +# JSON-LD +RewriteCond %{HTTP_ACCEPT} application/ld\+json +RewriteRule ^store/adapter/?$ https://rdf-elixir.dev/gno/store/adapter/gnoa.jsonld [R=303,NE,L] + +# RDF/XML +RewriteCond %{HTTP_ACCEPT} application/rdf\+xml +RewriteRule ^store/adapter/?$ https://rdf-elixir.dev/gno/store/adapter/gnoa.rdf [R=303,NE,L] + +# N-Triples +RewriteCond %{HTTP_ACCEPT} application/n-triples +RewriteRule ^store/adapter/?$ https://rdf-elixir.dev/gno/store/adapter/gnoa.nt [R=303,NE,L] + +# HTML (explicit) +RewriteCond %{HTTP_ACCEPT} text/html [OR] +RewriteCond %{HTTP_ACCEPT} application/xhtml\+xml +RewriteRule ^store/adapter/?$ https://rdf-elixir.dev/gno/store/adapter/ [R=303,NE,L] + +# Default: HTML +RewriteRule ^store/adapter/?$ https://rdf-elixir.dev/gno/store/adapter/ [R=303,NE,L] + +# Direct file access for gnoa +RewriteRule ^store/adapter/gnoa\.ttl$ https://rdf-elixir.dev/gno/store/adapter/gnoa.ttl [R=303,NE,L] +RewriteRule ^store/adapter/gnoa\.nt$ https://rdf-elixir.dev/gno/store/adapter/gnoa.nt [R=303,NE,L] +RewriteRule ^store/adapter/gnoa\.rdf$ https://rdf-elixir.dev/gno/store/adapter/gnoa.rdf [R=303,NE,L] +RewriteRule ^store/adapter/gnoa\.jsonld$ https://rdf-elixir.dev/gno/store/adapter/gnoa.jsonld [R=303,NE,L] + +# Individual gnoa term redirects (slash namespace) +RewriteRule ^store/adapter/(.+)$ https://rdf-elixir.dev/gno/store/adapter/#$1 [R=303,NE,L] \ No newline at end of file diff --git a/gno/README.md b/gno/README.md new file mode 100644 index 0000000000..e1a8bc67d0 --- /dev/null +++ b/gno/README.md @@ -0,0 +1,12 @@ +# Gno + +Gno is an RDF vocabulary for managing RDF data in SPARQL triple stores. It extends [DCAT-R](https://w3id.org/dcatr) with classes and properties for services, stores, changesets, and commits. + + +GitHub: + +Vocabulary: + +Contacts: + +- Marcel Otto (GitHub: [@marcelotto](https://github.com/marcelotto)) diff --git a/hse/.htaccess b/hse/.htaccess index 9a0289ae38..1df9ac3c9a 100644 --- a/hse/.htaccess +++ b/hse/.htaccess @@ -6,6 +6,7 @@ RewriteEngine on RewriteRule .* - [E=BASE:https://hse-ucd.github.io/hse-ontology] RewriteRule .* - [E=LATEST:latest] RewriteRule .* - [E=TERMINOLOGY:https://hse-ucd.github.io/hse-terminology] +RewriteRule .* - [E=DATAPORTAL:https://hse-ucd.github.io/hse-data-portal] RewriteRule ^$ https://hse-ucd.github.io/ [R=302,L] @@ -36,3 +37,15 @@ RewriteRule ^terminology/(\d+\.\d+\.\d+)/$ %{ENV:TERMINOLOGY}/$1/ [NE,R=302,L] # terminology latest RewriteRule ^terminology$ %{ENV:TERMINOLOGY}/ [NE,R=302,L] RewriteRule ^terminology/$ %{ENV:TERMINOLOGY}/ [NE,R=302,L] + +# @prefix indicator: +# indicator: https://w3id.org/hse/indicator/hse0000042 +RewriteRule ^indicator/(.+)$ %{ENV:DATAPORTAL}/indicator/$1/ [NE,R=302,L] + +# @prefix indicator-group: +# indicator-group: https://w3id.org/hse/indicator-group/hse0001001 +RewriteRule ^indicator-group/(.+)$ %{ENV:DATAPORTAL}/indicator-group/$1/ [NE,R=302,L] + +# @prefix dataset: +# dataset: https://w3id.org/hse/dataset/AGS01/ +RewriteRule ^dataset/(.+)$ %{ENV:DATAPORTAL}/dataset/$1/ [NE,R=302,L] diff --git a/hsu-aut/IEC62443/.htaccess b/hsu-aut/IEC62443/.htaccess new file mode 100644 index 0000000000..fe7b9eb0cd --- /dev/null +++ b/hsu-aut/IEC62443/.htaccess @@ -0,0 +1,20 @@ +RewriteEngine on + +# Redirect ontology version IRI to the given version +RewriteCond %{HTTP_ACCEPT} application/rdf\+xml [OR] +RewriteCond %{HTTP_ACCEPT} text/turtle [OR] +RewriteCond %{HTTP_ACCEPT} application/x-turtle +RewriteRule ^(\d\.\d\.\d)/?$ https://raw.githubusercontent.com/hsu-aut/IndustrialStandard-ODP-IEC62443/v$1/iec62443.ttl [R=303,NC,L] + +# Redirect ontology IRI (without version) to the current main branch version +RewriteCond %{HTTP_ACCEPT} application/rdf\+xml [OR] +RewriteCond %{HTTP_ACCEPT} text/turtle [OR] +RewriteCond %{HTTP_ACCEPT} application/x-turtle +RewriteRule ^/?$ https://raw.githubusercontent.com/hsu-aut/IndustrialStandard-ODP-IEC62443/master/iec62443.ttl [R=303,NC,L] + +# Redirect HTML requests to the main repository page +RewriteCond %{HTTP_ACCEPT} !application/rdf\+xml.*(text/html|application/xhtml\+xml) +RewriteCond %{HTTP_ACCEPT} text/html [OR] +RewriteCond %{HTTP_ACCEPT} application/xhtml\+xml +RewriteRule ^(\d\.\d\.\d)?/?$ https://github.com/hsu-aut/IndustrialStandard-ODP-IEC62443 [R=302,NC,L] + diff --git a/hsu-aut/ISO7498-1/.htaccess b/hsu-aut/ISO7498-1/.htaccess new file mode 100644 index 0000000000..040f87872f --- /dev/null +++ b/hsu-aut/ISO7498-1/.htaccess @@ -0,0 +1,20 @@ +RewriteEngine on + +# Redirect ontology version IRI to the given version +RewriteCond %{HTTP_ACCEPT} application/rdf\+xml [OR] +RewriteCond %{HTTP_ACCEPT} text/turtle [OR] +RewriteCond %{HTTP_ACCEPT} application/x-turtle +RewriteRule ^(\d\.\d\.\d)/?$ https://raw.githubusercontent.com/hsu-aut/IndustrialStandard-ODP-ISO7498-1/v$1/ISO7498.ttl [R=303,NC,L] + +# Redirect ontology IRI (without version) to the current main branch version +RewriteCond %{HTTP_ACCEPT} application/rdf\+xml [OR] +RewriteCond %{HTTP_ACCEPT} text/turtle [OR] +RewriteCond %{HTTP_ACCEPT} application/x-turtle +RewriteRule ^/?$ https://raw.githubusercontent.com/hsu-aut/IndustrialStandard-ODP-ISO7498-1/master/ISO7498.ttl [R=303,NC,L] + +# Redirect HTML requests to the main repository page +RewriteCond %{HTTP_ACCEPT} !application/rdf\+xml.*(text/html|application/xhtml\+xml) +RewriteCond %{HTTP_ACCEPT} text/html [OR] +RewriteCond %{HTTP_ACCEPT} application/xhtml\+xml +RewriteRule ^(\d\.\d\.\d)?/?$ https://github.com/hsu-aut/IndustrialStandard-ODP-ISO7498-1 [R=302,NC,L] + diff --git a/hyperloop-dpp/.htaccess b/hyperloop-dpp/.htaccess index 77a6ce0b7b..20c6237608 100644 --- a/hyperloop-dpp/.htaccess +++ b/hyperloop-dpp/.htaccess @@ -1,12 +1,21 @@ Options -MultiViews RewriteEngine on -# JSON-LD content negotiation: SN-xxx -> passports/SN-xxx.jsonld +# ── Segment SGTIN: /01/[GTIN]/21/[SN] ──────────────────────────────────────── +# Content negotiation: JSON-LD for machines RewriteCond %{HTTP_ACCEPT} application/ld\+json -RewriteRule ^(SN-[0-9]+)$ https://DPPIP.github.io/DPP-EUROTUBE/passports/$1.jsonld [R=303,L] +RewriteRule ^01/([0-9]{14})/21/([0-9]+)$ https://DPPIP.github.io/DPP-EUROTUBE/passports/$2.jsonld [R=303,L] -# HTML: SN-xxx -> passports/SN-xxx.html -RewriteRule ^(SN-[0-9]+)$ https://DPPIP.github.io/DPP-EUROTUBE/passports/$1.html [R=303,L] +# HTML viewer for humans +RewriteRule ^01/([0-9]{14})/21/([0-9]+)$ https://DPPIP.github.io/DPP-EUROTUBE/passports/viewer.html?sn=$2 [R=303,L,QSA] -# Fallback: redirect to main page +# ── Batch LGTIN: /01/[GTIN]/10/[LOT] ───────────────────────────────────────── +# Content negotiation: JSON-LD for machines +RewriteCond %{HTTP_ACCEPT} application/ld\+json +RewriteRule ^01/([0-9]{14})/10/([0-9]+)$ https://DPPIP.github.io/DPP-EUROTUBE/batch/$2.jsonld [R=303,L] + +# HTML batch viewer for humans +RewriteRule ^01/([0-9]{14})/10/([0-9]+)$ https://DPPIP.github.io/DPP-EUROTUBE/batch/index.html?batch=$2 [R=303,L,QSA] + +# ── Fallback ────────────────────────────────────────────────────────────────── RewriteRule ^$ https://DPPIP.github.io/DPP-EUROTUBE/ [R=303,L] diff --git a/imx/.htaccess b/imx/.htaccess new file mode 100644 index 0000000000..438599d2ae --- /dev/null +++ b/imx/.htaccess @@ -0,0 +1,22 @@ +Header set Access-Control-Allow-Origin * + +AddType text/turtle .ttl +AddType application/rdf+xml .ttl + +Options +FollowSymLinks +RewriteEngine on + +# SHAPES +RewriteCond %{HTTP_ACCEPT} text/turtle +RewriteRule ^ https://imx-extension.lab.gaia-x.eu/development/rdf/shapes [R=303,L] + +# ONTOLOGY +RewriteCond %{HTTP_ACCEPT} application/rdf\+xml +RewriteRule ^ https://imx-extension.lab.gaia-x.eu/development/rdf/ontology [R=303,L] + +# docs +RewriteCond %{HTTP_ACCEPT} text/html +RewriteRule ^ https://imx-extension.lab.gaia-x.eu/development/docs [R=303,L] + +# default +RewriteRule ^ https://imx-extension.lab.gaia-x.eu/development/docs [R=303,L] \ No newline at end of file diff --git a/imx/README.md b/imx/README.md new file mode 100644 index 0000000000..0e407bacbb --- /dev/null +++ b/imx/README.md @@ -0,0 +1,20 @@ +IMX Specifications +========================= + +Homepage: +* https://imx-extension.lab.gaia-x.eu/development/docs#/ +* [IMX Documents](https://imx-extension.lab.gaia-x.eu/development/docs#/) + +Endpoints: + * with `Accept: text/turtle` returns the IMX Shacl shapes + * with `Accept: application/rdf+xml` returns the IMX OWL ontology + +Support: +* IMX showcase Specifications and components and their [GitLab Repository](https://gitlab.com/gaia-x/lab/gaia-x-danube-components/gaia-x-local-extensions/imx-extension) + +Contacts: +* [Delphine Claerhout](https://github.com/Phinodel) +* [Christoph F. Strnadl](https://github.com/cfs314) +* [Yassir SELLAMI](https://github.com/YassirSellami) +* [Pierre Gronlier](https://github.com/ticapix) +* [Ryan Reychico](https://gitlab.com/ryan.reychico2) diff --git a/italia/public-policies-analysis/data/.htaccess b/italia/public-policies-analysis/data/.htaccess index f27cf466a9..2a75678590 100644 --- a/italia/public-policies-analysis/data/.htaccess +++ b/italia/public-policies-analysis/data/.htaccess @@ -1,6 +1,16 @@ Header set Access-Control-Allow-Origin * Options +FollowSymLinks RewriteEngine on -SetEnvIf Request_URI ^.*$ ROOT_URL=https://schema.gov.it/lodview/public-policies-analysis/data/ -RewriteRule ^(.*)/?$ %{ENV:ROOT_URL}$1 [R=303,L] +SetEnvIf Accept ^.*text/turtle.* SYNTAX=ttl +SetEnvIf Accept ^.*application/json.* SYNTAX=json +SetEnvIf Accept ^.*application/csv.* SYNTAX=csv +SetEnvIf Accept ^.*text/csv.* SYNTAX=csv +SetEnvIf Accept ^.*text/html.* SYNTAX=html + +RewriteCond %{ENV:SYNTAX} ^html$ +RewriteRule ^(.+)$ https://dati.inapp.gov.it/data/$1 [R=303,L] + +RewriteRule ^(.+)/(.+)$ https://dati.inapp.gov.it/data/$1/$2 [R=303,L] + +RewriteRule ^(.+)/(.+)/(.+)$ https://dati.inapp.gov.it/data/$1/$2/$3 [R=303,L] diff --git a/iucn-get/.htaccess b/iucn-get/.htaccess new file mode 100644 index 0000000000..e3965c0b2e --- /dev/null +++ b/iucn-get/.htaccess @@ -0,0 +1,7 @@ + +Options +FollowSymLinks + +RewriteEngine On + +# Add redirect for testing via demo RVA server and using new W3ID domain: https://w3id.org/iucn-get/ +RewriteRule ^(.*)$ https://demo.vocabs.ardc.edu.au/repository/api/lda/ands-nc/iucn-get-example/2-1/resource?uri=https://w3id.org/iucn-get/$1 [B,L,NE,QSA,R=307] \ No newline at end of file diff --git a/iucn-get/README.md b/iucn-get/README.md new file mode 100644 index 0000000000..6062f149fb --- /dev/null +++ b/iucn-get/README.md @@ -0,0 +1,24 @@ +# /iucn-get/ +This [W3ID](https://w3id.org) provides a persistent URI namespace for iucn-get resources. + + +## Uses +This namespace is used to provide URIs for the Metadata standards for the IUCN Global Ecosystem Typology (iucn-get) hosted in [Research Vocabularies Australia (RVA)](https://vocabs.ardc.edu.au). + +The IUCN Global Ecosystem Typology is available at [global-ecosystems.org](https://global-ecosystems.org/) and the vocabulary will be documented in a GitHub repository and other sites (in preparation). + +## Redirects +- https://w3id.org/iucn-get -> Research Vocabularies Australia (RVA) + +## Contact +This space is administered by: + +**Global Ecosystem Partnership** +UNSW Centre for Ecosystem Science (https://www.unsw.edu.au/research/ecosystem) +University of New South Wales, Sydney, Australia +GitHub: [@ces-unsw-edu-au](https://github.com/ces-unsw-edu-au) + +# Maintainer +j.ferrer@unsw.edu.de (@jrfep) + + diff --git a/jochumsson/h2hoa/.htaccess b/jochumsson/h2hoa/.htaccess new file mode 100644 index 0000000000..19483f8aec --- /dev/null +++ b/jochumsson/h2hoa/.htaccess @@ -0,0 +1,3 @@ +RewriteEngine On +RewriteRule ^$ https://jochumsson.github.io/h2hoa/h2hoa.ttl [R=302,L] +RewriteRule ^(.*)$ https://jochumsson.github.io/h2hoa/$1 [R=302,L] diff --git a/jochumsson/h2hoa/README.md b/jochumsson/h2hoa/README.md new file mode 100644 index 0000000000..3716fa6ca8 --- /dev/null +++ b/jochumsson/h2hoa/README.md @@ -0,0 +1,11 @@ +# w3id for H2HOA Ontology + +Persistent identifier for the H2HOA ontology by Thorvaldur Jochumsson, github id jochumsson + +Namespace: https://w3id.org/jochumsson/h2hoa + +Maintainer: Thorvaldur Jochumsson
+GitHub ID: jochumsson
+GitHub profile: https://github.com/jochumsson + +Repository: https://github.com/jochumsson/h2hoa diff --git a/jochumsson/nyhkb/.htaccess b/jochumsson/nyhkb/.htaccess new file mode 100644 index 0000000000..b4b1c3febe --- /dev/null +++ b/jochumsson/nyhkb/.htaccess @@ -0,0 +1,3 @@ +RewriteEngine On +RewriteRule ^$ https://jochumsson.github.io/h2hoa/nyhkb.ttl [R=302,L] +RewriteRule ^(.*)$ https://jochumsson.github.io/h2hoa/$1 [R=302,L] diff --git a/jochumsson/nyhkb/README.md b/jochumsson/nyhkb/README.md new file mode 100644 index 0000000000..dfd6270cda --- /dev/null +++ b/jochumsson/nyhkb/README.md @@ -0,0 +1,11 @@ +# w3id for NYHKB Knowledge Base + +Persistent identifier for the NYHKB knowledge base by Thorvaldur Jochumsson, github id jochumsson + +Namespace: https://w3id.org/jochumsson/nyhkb + +Maintainer: Thorvaldur Jochumsson
+GitHub ID: jochumsson
+GitHub profile: https://github.com/jochumsson + +Repository: https://github.com/jochumsson/h2hoa diff --git a/jp-textbook/.htaccess b/jp-textbook/.htaccess index 108021479a..589d61eb94 100644 --- a/jp-textbook/.htaccess +++ b/jp-textbook/.htaccess @@ -4,10 +4,16 @@ RewriteEngine on RewriteCond "%{HTTP_ACCEPT}" "text/turtle" RewriteRule ^(A[ABC])(\d{9})(\d{3})$ https://jp-textbook.github.io/$1/$2/$3.ttl [R=302,L] +RewriteCond "%{HTTP_ACCEPT}" "text/turtle" +RewriteRule ^(A[ABC])(\d{9})(\d{3})\/(Time\d{3})$ https://jp-textbook.github.io/$1/$2/$3/$4.ttl [R=302,L] + RewriteCond "%{HTTP_ACCEPT}" "text/turtle" RewriteRule ^(.+) https://jp-textbook.github.io/$1.ttl [R=302,L] RewriteRule ^(A[ABC])(\d{9})(\d{3})\.ttl$ https://jp-textbook.github.io/$1/$2/$3.ttl [R=302,L] +RewriteRule ^(A[ABC])(\d{9})(\d{3})\/(Time\d{3})\.ttl$ https://jp-textbook.github.io/$1/$2/$3/$4.ttl [R=302,L] + RewriteRule ^(A[ABC])(\d{9})(\d{3})$ https://jp-textbook.github.io/$1/$2/$3 [R=302,L] +RewriteRule ^(A[ABC])(\d{9})(\d{3})\/(Time\d{3})$ https://jp-textbook.github.io/$1/$2/$3/$4 [R=302,L] RewriteRule ^(.*) https://jp-textbook.github.io/$1 [R=302,L] diff --git a/jp-textbook/README.md b/jp-textbook/README.md index 8f97b0c927..78a0bacbd8 100644 --- a/jp-textbook/README.md +++ b/jp-textbook/README.md @@ -7,5 +7,5 @@ Homepage: * https://w3id.org/jp-textbook/ Contact: -* Yuka Egusa -* Masao Takaku +* Yuka Egusa (@yegusa) +* Masao Takaku (@masao) diff --git a/kanseki/.htaccess b/kanseki/.htaccess new file mode 100644 index 0000000000..f15734a7b1 --- /dev/null +++ b/kanseki/.htaccess @@ -0,0 +1,7 @@ +RewriteEngine On + +# γƒˆγƒƒγƒ—γƒšγƒΌγ‚Έ +RewriteRule ^$ https://db2.sido.keio.ac.jp/kanseki/ [R=302,L] + +# ζ›ΈθͺŒθ©³η΄°γƒšγƒΌγ‚Έ +RewriteRule ^bib/([A-Za-z0-9]+)$ https://db2.sido.keio.ac.jp/kanseki/bib_detail?bibid=$1 [R=302,L] diff --git a/kanseki/README.md b/kanseki/README.md new file mode 100644 index 0000000000..2e1c6cbf5c --- /dev/null +++ b/kanseki/README.md @@ -0,0 +1 @@ +This project aims to generate permalinks for the Kunaicho Shoryobu Kanseki Shuran (https://db2.sido.keio.ac.jp/kanseki/). Contact: Maiko Kimura (@harumukanon) diff --git a/kc/.htaccess b/kc/.htaccess new file mode 100644 index 0000000000..9d6001cbc9 --- /dev/null +++ b/kc/.htaccess @@ -0,0 +1,41 @@ +# /kc/ +# +# Knowledge Complex β€” typed simplicial complexes backed by OWL, SHACL, and SPARQL. +# https://w3id.org/kc/ provides persistent URIs for the Knowledge Complex ontology. +# +# Core ontology: https://w3id.org/kc# (kc_core.ttl) +# Core shapes: https://w3id.org/kc/shape# (kc_core_shapes.ttl) +# +# Repository: https://github.com/BlockScience/knowledgecomplex +# +# ## Contact +# This space is administered by: +# Zargham +# GitHub username: mzargham + +Options +FollowSymLinks +Options -MultiViews + +AddType text/turtle .ttl + +RewriteEngine on + +# /kc/shape β€” SHACL shapes +RewriteCond %{HTTP_ACCEPT} text/turtle +RewriteRule ^shape$ https://raw.githubusercontent.com/BlockScience/knowledgecomplex/main/knowledgecomplex/resources/kc_core_shapes.ttl [R=303,L] + +RewriteRule ^shape$ https://blockscience.github.io/knowledgecomplex/ [R=303,L] + +# /kc/queries/ β€” SPARQL query templates for topological operations +# boundary, coboundary, star, closure, skeleton, degree, vertices +RewriteRule ^queries/([a-z]+)$ https://raw.githubusercontent.com/BlockScience/knowledgecomplex/main/knowledgecomplex/queries/$1.sparql [R=303,L] + +# /kc/queries/ β€” list (redirect to docs) +RewriteRule ^queries/?$ https://blockscience.github.io/knowledgecomplex/api/graph/ [R=303,L] + +# /kc/ β€” Core ontology +RewriteCond %{HTTP_ACCEPT} text/turtle +RewriteRule ^$ https://raw.githubusercontent.com/BlockScience/knowledgecomplex/main/knowledgecomplex/resources/kc_core.ttl [R=303,L] + +# Default: HTML documentation +RewriteRule ^$ https://blockscience.github.io/knowledgecomplex/ [R=303,L] diff --git a/kc/README.md b/kc/README.md new file mode 100644 index 0000000000..c258728d75 --- /dev/null +++ b/kc/README.md @@ -0,0 +1,25 @@ +# /kc/ β€” Knowledge Complex + +Persistent URIs for the [Knowledge Complex](https://github.com/BlockScience/knowledgecomplex) ontology β€” typed simplicial complexes backed by OWL, SHACL, and SPARQL. + +## URIs + +| URI | Resolves to | +|-----|-------------| +| `https://w3id.org/kc` | Core OWL ontology (`kc_core.ttl`) | +| `https://w3id.org/kc/shape` | Core SHACL shapes (`kc_core_shapes.ttl`) | +| `https://w3id.org/kc/queries/boundary` | SPARQL template: boundary operator βˆ‚(Οƒ) | +| `https://w3id.org/kc/queries/coboundary` | SPARQL template: cofaces Ξ΄(Οƒ) | +| `https://w3id.org/kc/queries/star` | SPARQL template: star St(Οƒ) | +| `https://w3id.org/kc/queries/closure` | SPARQL template: closure Cl(S) | +| `https://w3id.org/kc/queries/skeleton` | SPARQL template: k-skeleton sk_k(K) | +| `https://w3id.org/kc/queries/degree` | SPARQL template: degree deg(v) | +| `https://w3id.org/kc/queries/vertices` | SPARQL template: all vertices and types | + +Content negotiation: requests for `/kc` and `/kc/shape` with `Accept: text/turtle` receive the Turtle file directly; all other requests redirect to HTML documentation. Query templates are served directly as `.sparql` files. + +## Contact + +This namespace is maintained by: + +- **Zargham** β€” GitHub: [@mzargham](https://github.com/mzargham) diff --git a/lang-dcat-ap/.htaccess b/lang-dcat-ap/.htaccess index 7035b8b3d1..487e86c8f6 100644 --- a/lang-dcat-ap/.htaccess +++ b/lang-dcat-ap/.htaccess @@ -16,14 +16,14 @@ RewriteEngine On RewriteCond %{HTTP_ACCEPT} !application/rdf\+xml.*(text/html|application/xhtml\+xml) RewriteCond %{HTTP_ACCEPT} text/html [OR] RewriteCond %{HTTP_ACCEPT} application/xhtml\+xml [OR] -RewriteRule ^$ https://languagedcat-ap.github.io/LanguageDCAT-AP/releases/0.9.1/ [R=303,NE,L] +RewriteRule ^$ https://languagedcat-ap.github.io/LanguageDCAT-AP/releases/0.9.2/ [R=303,NE,L] # # Rewrite rule to serve HTML content if requested a term URI is requested RewriteCond %{HTTP_ACCEPT} !application/rdf\+xml.*(text/html|application/xhtml\+xml) RewriteCond %{HTTP_ACCEPT} text/html [OR] RewriteCond %{HTTP_ACCEPT} application/xhtml\+xml [OR] -RewriteRule "^(.+)" "https://languagedcat-ap.github.io/LanguageDCAT-AP/releases/0.9.1/#$1" [R=303,NE,L] +RewriteRule "^(.+)" "https://languagedcat-ap.github.io/LanguageDCAT-AP/releases/0.9.2/#$1" [R=303,NE,L] # Default response diff --git a/lang-dcat-ap/README.md b/lang-dcat-ap/README.md index 33fdab4499..ef71656051 100644 --- a/lang-dcat-ap/README.md +++ b/lang-dcat-ap/README.md @@ -1,4 +1,4 @@ -# meta-share Ontology +# Language DCAT-AP Ontology URI: https://w3id.org/lang-dcat-ap/ (@prefix `ldsdcat`) diff --git a/liccium/.htaccess b/liccium/.htaccess index c36f52401a..3a394c4500 100644 --- a/liccium/.htaccess +++ b/liccium/.htaccess @@ -32,11 +32,21 @@ RewriteRule ^context/(.+)\.json$ https://raw.githubusercontent.com/liccium/w3id. # ------------------------------ # Ontology files # ------------------------------ -# Default: ont/ or ont β†’ 0.1.0.ttl -RewriteRule ^ont/?$ https://raw.githubusercontent.com/liccium/w3id.docs/main/ont/0.1.0.ttl [R=303,L] +# Default: ont/ or ont β†’ 0.2.0.ttl +RewriteRule ^ont/?$ https://raw.githubusercontent.com/liccium/w3id.docs/main/ont/0.2.0.ttl [R=303,L] # Specific file: ont/.ttl RewriteRule ^ont/(.+)\.ttl$ https://raw.githubusercontent.com/liccium/w3id.docs/main/ont/$1.ttl [R=303,L] +# ------------------------------ +# FAIA Ontology files +# ------------------------------ +RewriteRule ^faia/ont/(.+)\.ttl$ https://raw.githubusercontent.com/liccium/w3id.docs/main/faia/ont/$1.ttl [R=303,L] + +# ------------------------------ +# FAIA Vocabulary files +# ------------------------------ +RewriteRule ^faia/vocab/(.+)\.ttl$ https://raw.githubusercontent.com/liccium/w3id.docs/main/faia/vocab/$1.ttl [R=303,L] + # ------------------------------ # Default response (redirect to GitHub repo) # ------------------------------ diff --git a/liccium/README.md b/liccium/README.md index 46d98f72e5..d7b4611b89 100644 --- a/liccium/README.md +++ b/liccium/README.md @@ -1,28 +1,30 @@ # Liccium Schema, Context & Ontology -Versioned JSON Schema, JSON-LD context, and OWL ontology definitions for Liccium metadata declarations. +Versioned JSON Schema, JSON-LD context, OWL ontology, and FAIA definitions for Liccium metadata declarations. ## Contents - **`schema/`** β€” JSON Schema files for validating declaration metadata - **`context/`** β€” JSON-LD context files for semantic interoperability - **`ont/`** β€” OWL ontology files for semantic definitions +- **`faia/ont/`** β€” FAIA ontology files +- **`faia/vocab/`** β€” FAIA vocabulary files ## Usage Reference these files via w3id.org persistent URLs: -| Format | URL | -| ---------------- | -------------------------------------------- | -| **JSON Schema** | https://w3id.org/liccium/schema/0.1.0.json | -| **JSON-LD** | https://w3id.org/liccium/context/0.1.0.json | -| **OWL Ontology** | https://w3id.org/liccium/ont/0.1.0.ttl | +| Format | URL | +| ------------------- | ------------------------------------------------- | +| **JSON Schema** | https://w3id.org/liccium/schema/0.3.0.json | +| **JSON-LD** | https://w3id.org/liccium/context/0.3.0.json | +| **OWL Ontology** | https://w3id.org/liccium/ont/0.3.0.ttl | +| **FAIA Ontology** | https://w3id.org/liccium/faia/ont/0.4.0.ttl | +| **FAIA Vocabulary** | https://w3id.org/liccium/faia/vocab/0.4.0.ttl | -**Repository:** https://github.com/Liccium/w3id.docs +**Repository:** https://github.com/liccium/w3id.docs ## Contact - **Yury Kharytanovich** β€” Β· https://github.com/yurykharytanovich - **Sebastian Posth** β€” Β· https://github.com/sposth - - \ No newline at end of file diff --git a/lmodel/.htaccess b/lmodel/.htaccess index a793cf2a73..165b34c2a0 100644 --- a/lmodel/.htaccess +++ b/lmodel/.htaccess @@ -26,16 +26,12 @@ RewriteRule ^(.*)/data/(.*)\.sql$ https://raw.githubusercontent.com/lmodel/$1/ma # Continue ... -# Rewrite nist SP.800.53 URLs -RewriteRule ^nist-sp-800-53[-/]catalog(?:/|$)(.*)$ https://lmodel.github.io/nist-sp-800-53-catalog/$1 [R=302,L] -RewriteRule ^nist-sp-800-53[-/]HIGH-baseline_profile(?:/|$)(.*)$ https://lmodel.github.io/nist-sp-800-53-HIGH-baseline_profile/$1 [R=302,L] -RewriteRule ^nist-sp-800-53[-/]HIGH-baseline-resolved-profile_catalog(?:/|$)(.*)$ https://lmodel.github.io/nist-sp-800-53-HIGH-baseline-resolved-profile_catalog/$1 [R=302,L] -RewriteRule ^nist-sp-800-53[-/]LOW-baseline_profile(?:/|$)(.*)$ https://lmodel.github.io/nist-sp-800-53-LOW-baseline_profile/$1 [R=302,L] -RewriteRule ^nist-sp-800-53[-/]LOW-baseline-resolved-profile_catalog(?:/|$)(.*)$ https://lmodel.github.io/nist-sp-800-53-LOW-baseline-resolved-profile_catalog/$1 [R=302,L] -RewriteRule ^nist-sp-800-53[-/]MODERATE-baseline_profile(?:/|$)(.*)$ https://lmodel.github.io/nist-sp-800-53-MODERATE-baseline_profile/$1 [R=302,L] -RewriteRule ^nist-sp-800-53[-/]MODERATE-baseline-resolved-profile_catalog(?:/|$)(.*)$ https://lmodel.github.io/nist-sp-800-53-MODERATE-baseline-resolved-profile_catalog/$1 [R=302,L] -RewriteRule ^nist-sp-800-53[-/]PRIVACY-baseline_profile(?:/|$)(.*)$ https://lmodel.github.io/nist-sp-800-53-PRIVACY-baseline_profile/$1 [R=302,L] -RewriteRule ^nist-sp-800-53[-/]PRIVACY-baseline-resolved-profile_catalog(?:/|$)(.*)$ https://lmodel.github.io/nist-sp-800-53-PRIVACY-baseline-resolved-profile_catalog/$1 [R=302,L] +# Rewrite nist cybersecurity URLs +RewriteRule ^nist-catalog(?:/|$)(.*)$ https://lmodel.github.io/nist-catalog/$1 [R=302,L] +RewriteRule ^nist-csf-v2(?:/|$)(.*)$ https://lmodel.github.io/nist-csf-v2/$1 [R=302,L] +RewriteRule ^nist-sp-800-53(?:/|$)(.*)$ https://lmodel.github.io/nist-sp-800-53/$1 [R=302,L] +RewriteRule ^nist-sp-800-218(?:/|$)(.*)$ https://lmodel.github.io/nist-sp-800-218/$1 [R=302,L] +RewriteRule ^nist-sp-800-171(?:/|$)(.*)$ https://lmodel.github.io/nist-sp-800-171/$1 [R=302,L] # Rewrite base URLs RewriteRule ^collections(?:/|$)(.*)$ https://lmodel.github.io/collections/$1 [R=302,L] diff --git a/mars/.htaccess b/mars/.htaccess new file mode 100644 index 0000000000..0ea5137b57 --- /dev/null +++ b/mars/.htaccess @@ -0,0 +1,87 @@ +# Turn off MultiViews +Options -MultiViews + +# Directive to ensure *.rdf files served as appropriate content type, +# if not present in main apache config +AddType application/rdf+xml .rdf +AddType application/rdf+xml .owl +AddType text/turtle .ttl +AddType application/n-triples .n3 +AddType application/ld+json .jsonld +# Rewrite engine setup +RewriteEngine On + +#Change the path to the folder here +#RewriteBase https://www.irit.fr/recherches/MELODI/ontologies/mars/ + +# Rewrite rule to serve HTML content from the vocabulary URI if requested +RewriteCond %{HTTP_ACCEPT} !application/rdf\+xml.*(text/html|application/xhtml\+xml) +RewriteCond %{HTTP_ACCEPT} text/html [OR] +RewriteCond %{HTTP_ACCEPT} application/xhtml\+xml [OR] +RewriteCond %{HTTP_USER_AGENT} ^Mozilla/.* +RewriteRule ^$ https://www.irit.fr/recherches/MELODI/ontologies/mars/index.html [R=303,L] + +# Rewrite rule to serve JSON-LD content from the vocabulary URI if requested +RewriteCond %{HTTP_ACCEPT} application/ld\+json +RewriteRule ^$ https://www.irit.fr/recherches/MELODI/ontologies/mars/ontology.jsonld [R=303,L] + +# Rewrite rule to serve RDF/XML content from the vocabulary URI if requested +RewriteCond %{HTTP_ACCEPT} application/rdf\+xml +RewriteRule ^$ https://www.irit.fr/recherches/MELODI/ontologies/mars/ontology.rdf [R=303,L] + +# Rewrite rule to serve N-Triples content from the vocabulary URI if requested +RewriteCond %{HTTP_ACCEPT} application/n-triples +RewriteRule ^$ https://www.irit.fr/recherches/MELODI/ontologies/mars/ontology.nt [R=303,L] + +# Rewrite rule to serve TTL content from the vocabulary URI if requested +RewriteCond %{HTTP_ACCEPT} \*/\* [OR] +RewriteCond %{HTTP_ACCEPT} text/turtle [OR] +RewriteCond %{HTTP_ACCEPT} text/\* [OR] +RewriteCond %{HTTP_ACCEPT} \*/turtle +RewriteRule ^$ https://www.irit.fr/recherches/MELODI/ontologies/mars/ontology.ttl [R=303,L] + +RewriteCond %{HTTP_ACCEPT} .+ +RewriteRule ^$ https://www.irit.fr/recherches/MELODI/ontologies/mars/406.html [R=406,L] + +# Rewrite rule for data +RewriteRule ^Data/(.+) https://www.irit.fr/recherches/MELODI/ontologies/mars/Data/$1.ttl [R=303,L] + +# Rewrite rule to serve HTML content from the vocabulary URI if requested +RewriteCond %{HTTP_ACCEPT} !application/rdf\+xml.*(text/html|application/xhtml\+xml) +RewriteCond %{HTTP_ACCEPT} text/html [OR] +RewriteCond %{HTTP_ACCEPT} application/xhtml\+xml [OR] +RewriteCond %{HTTP_USER_AGENT} ^Mozilla/.* +RewriteRule ^(.+) https://www.irit.fr/recherches/MELODI/ontologies/mars/$1/index-en.html [R=303,L] + +# Rewrite rule to serve JSON-LD content from the vocabulary URI if requested +RewriteCond %{HTTP_ACCEPT} application/ld\+json +RewriteRule ^(.+) https://www.irit.fr/recherches/MELODI/ontologies/mars/$1/ontology.jsonld [R=303,L] + +# Rewrite rule to serve RDF/XML content from the vocabulary URI if requested +RewriteCond %{HTTP_ACCEPT} application/rdf\+xml +RewriteRule ^(.+) https://www.irit.fr/recherches/MELODI/ontologies/mars/$1/ontology.rdf [R=303,L] + +# Rewrite rule to serve N-Triples content from the vocabulary URI if requested +RewriteCond %{HTTP_ACCEPT} application/n-triples +RewriteRule ^(.+) https://www.irit.fr/recherches/MELODI/ontologies/mars/$1/ontology.nt [R=303,L] + +# Rewrite rule to serve TTL content from the vocabulary URI if requested +RewriteCond %{HTTP_ACCEPT} \*/\* [OR] +RewriteCond %{HTTP_ACCEPT} text/turtle [OR] +RewriteCond %{HTTP_ACCEPT} text/\* [OR] +RewriteCond %{HTTP_ACCEPT} \*/turtle +RewriteRule ^(.+) https://www.irit.fr/recherches/MELODI/ontologies/mars/$1/ontology.ttl [R=303,L] + +RewriteCond %{HTTP_ACCEPT} .+ +RewriteRule ^(.+) https://www.irit.fr/recherches/MELODI/ontologies/mars/$1/406.html [R=406,L] + + + + +# Default response +# --------------------------- +# Rewrite rule to serve the turtle content from the vocabulary URI by default +RewriteRule ^$ https://www.irit.fr/recherches/MELODI/ontologies/mars/ontology.ttl [R=303,L] + +# Default response as turtle for subdirectories. +RewriteRule ^(.+) https://www.irit.fr/recherches/MELODI/ontologies/mars/$1/ontology.ttl [R=303,L] \ No newline at end of file diff --git a/mars/readme.md b/mars/readme.md new file mode 100644 index 0000000000..687368f0bc --- /dev/null +++ b/mars/readme.md @@ -0,0 +1,13 @@ +# Maintainability and Architecture Requirements of Systems + +## What is the MARS Ontology ? + +In systems engineering, functional requirements are often subject to analysis and optimisation. Less formalized aspects, such as maintainability, play a major role in system quality but are, nevertheless, often addressed late in system development, resulting in cost overruns. To establish semantic links between maintainability requirements and optimization tools such as Multidisciplinary Design Analysis and Optimization (MDAO) matrices, we propose a dedicated ontology: MARS (Maintainability and Architecture Requirements of Systems). + +Ontology documentation redirection: https://w3id.org/mars -> https://www.irit.fr/recherches/MELODI/ontologies/mars/ + +## Maintainers +* Kim Loubat (kim.loubat@irit.fr) (GitHub ID: [KimLoubat](https://github.com/KimLoubat)) +* Nathalie HERNANDEZ (nathalie.hernandez@irit.fr) +* Sophie Ebersold-Marcaillou (sophie.ebersold@irit.fr) +* Jean-Michel Bruel (jean-michel.bruel@irit.fr) diff --git a/mlca/.htaccess b/mlca/.htaccess new file mode 100644 index 0000000000..25b1b896a9 --- /dev/null +++ b/mlca/.htaccess @@ -0,0 +1,60 @@ +# w3id.org content negotiation for Medieval London Customs Accounts +# +# Submitted to https://github.com/perma-id/w3id.org via pull request. +# See README.md for URI pattern documentation. +# +# HTTP flow: +# https://w3id.org/mlca/4-11-B-0001 +# Accept: application/ld+json β†’ 303 β†’ .../api/4-11-B-0001.json +# Accept: text/html (default) β†’ 303 β†’ .../entity.html#4-11-B-0001 +# +# https://w3id.org/mlca/4-11-B-0001-0001 (cargo) +# Accept: application/ld+json β†’ 303 β†’ .../api/4-11-B-0001.json +# (cargo is a node in the graph) +# Accept: text/html (default) β†’ 303 β†’ .../entity.html#4-11-B-0001-0001 +# +# https://w3id.org/mlca/glossary/cloth +# Accept: application/ld+json β†’ 303 β†’ .../api/glossary/cloth.json +# Accept: text/html (default) β†’ 303 β†’ .../entity.html#glossary/cloth + +Options +FollowSymLinks +RewriteEngine on + +Header set Access-Control-Allow-Origin * +Header set Access-Control-Allow-Headers "Accept" + +# Base URL for GitHub Pages site +# (no trailing slash β€” added in rules below) + +# --- Context document (no content negotiation needed) --- +RewriteRule ^context$ https://docuracy.github.io/London_Customs_Accounts/api/context.json [R=303,L] + +# --- JSON-LD: Cargo URI β†’ parent lading file --- +# Cargo IDs have 5 hyphen-separated segments: e.g. 4-11-B-0001-0001 +# Strip the cargo suffix and serve the parent lading JSON. +RewriteCond %{HTTP_ACCEPT} application/ld\+json [OR] +RewriteCond %{HTTP_ACCEPT} application/json +RewriteRule ^(\d+-\d+-[A-Z]-\d{4})-\d{4}$ https://docuracy.github.io/London_Customs_Accounts/api/$1.json [R=303,L] + +# --- JSON-LD: Lading URI --- +RewriteCond %{HTTP_ACCEPT} application/ld\+json [OR] +RewriteCond %{HTTP_ACCEPT} application/json +RewriteRule ^(\d+-\d+-[A-Z]-\d{4})$ https://docuracy.github.io/London_Customs_Accounts/api/$1.json [R=303,L] + +# --- JSON-LD: Glossary term --- +RewriteCond %{HTTP_ACCEPT} application/ld\+json [OR] +RewriteCond %{HTTP_ACCEPT} application/json +RewriteRule ^glossary/(.+)$ https://docuracy.github.io/London_Customs_Accounts/api/glossary/$1.json [R=303,L] + +# --- HTML: Cargo --- +RewriteRule ^(\d+-\d+-[A-Z]-\d{4}-\d{4})$ https://docuracy.github.io/London_Customs_Accounts/entity.html#$1 [R=303,L,NE] + +# --- HTML: Lading --- +RewriteRule ^(\d+-\d+-[A-Z]-\d{4})$ https://docuracy.github.io/London_Customs_Accounts/entity.html#$1 [R=303,L,NE] + +# --- HTML: Glossary term --- +RewriteRule ^glossary/(.+)$ https://docuracy.github.io/London_Customs_Accounts/entity.html#glossary/$1 [R=303,L,NE] + +# --- Homepage --- +RewriteRule ^$ https://docuracy.github.io/London_Customs_Accounts/ [R=303,L] + diff --git a/mlca/README.md b/mlca/README.md new file mode 100644 index 0000000000..117f0981c0 --- /dev/null +++ b/mlca/README.md @@ -0,0 +1,28 @@ +# /mlca/ β€” Medieval London Customs Accounts + +Permanent identifiers for entities in the Medieval London Customs Accounts +digital humanities project. + +## Maintainer + +- **Stephen Gadd** β€” + +## Homepage + + + +## URI patterns + +| Pattern | Entity type | Example | +|---------|-------------|---------| +| `/mlca/{lading-id}` | Lading record | `/mlca/4-11-B-0001` | +| `/mlca/{lading-id}-{seq}` | Cargo within a lading | `/mlca/4-11-B-0001-0001` | +| `/mlca/glossary/{term}` | Commodity glossary term | `/mlca/glossary/cloth` | +| `/mlca/context` | JSON-LD context document | `/mlca/context` | + +## Content negotiation + +- `Accept: application/ld+json` or `application/json` β†’ 303 redirect to + static JSON(-LD) files on GitHub Pages (`application/json` Content-Type). +- Default β†’ 303 redirect to an HTML entity resolver page. + diff --git a/momijiyama/.htaccess b/momijiyama/.htaccess new file mode 100644 index 0000000000..13ff21699b --- /dev/null +++ b/momijiyama/.htaccess @@ -0,0 +1,7 @@ +RewriteEngine On + +# γƒˆγƒƒγƒ—γƒšγƒΌγ‚Έ +RewriteRule ^$ https://db2.sido.keio.ac.jp/momijiyama/ [R=302,L] + +# ζ›ΈθͺŒθ©³η΄°γƒšγƒΌγ‚Έ +RewriteRule ^bib/([A-Za-z0-9]+)$ https://db2.sido.keio.ac.jp/momijiyama/bib_detail?bibid=$1 [R=302,L] diff --git a/momijiyama/README.md b/momijiyama/README.md new file mode 100644 index 0000000000..a2c4a81f4b --- /dev/null +++ b/momijiyama/README.md @@ -0,0 +1,2 @@ +This project aims to generate permalinks for the Digital Momijiyama Bunko (https://db2.sido.keio.ac.jp/momijiyama/). +Contact: Maiko Kimura (@harumukanon) diff --git a/mqto/.htaccess b/mqto/.htaccess new file mode 100644 index 0000000000..d5d87f9a61 --- /dev/null +++ b/mqto/.htaccess @@ -0,0 +1,62 @@ +# https://w3id.org/mqto redirects to https://dg-assist.github.io/mqto +# +# ## Contact +# This space is administered by: +# +# Stefan Bischof +# bischof.stefan@siemens.com +# GitHub username: stefanbischof +# ORCID: 0000-0001-9521-8907 + +# Turn off MultiViews +Options -MultiViews + +# Directive to ensure *.rdf files served as appropriate content type, +# if not present in main apache config +AddType application/rdf+xml .rdf +AddType application/rdf+xml .owl +AddType text/turtle .ttl +AddType application/n-triples .n3 +AddType application/ld+json .jsonld +# Rewrite engine setup +RewriteEngine On + +# Forward to most recent version +RewriteRule ^$ 1.0 [L] +RewriteRule ^doc(\/.*)?$ https://dg-assist.github.io/mqto$1 [R=303,L] +RewriteRule ^git(\/.*)?$ https://github.com/dg-assist/mqto$1 [R=303,L] + +# Rewrite rule to serve HTML content from the vocabulary URI if requested +RewriteCond %{HTTP_ACCEPT} !application/rdf\+xml.*(text/html|application/xhtml\+xml) +RewriteCond %{HTTP_ACCEPT} text/html [OR] +RewriteCond %{HTTP_ACCEPT} application/xhtml\+xml [OR] +RewriteCond %{HTTP_USER_AGENT} ^Mozilla/.* +RewriteRule ^([^/]+)$ https://dg-assist.github.io/mqto/OnToology/mqto-$1.ttl/documentation/index-en.html [R=303,L] + +# Rewrite rule to serve JSON-LD content from the vocabulary URI if requested +RewriteCond %{HTTP_ACCEPT} application/ld\+json +RewriteRule ^([^/]+)$ https://dg-assist.github.io/mqto/OnToology/mqto-$1.ttl/documentation/ontology.jsonld [R=303,L] + +# Rewrite rule to serve RDF/XML content from the vocabulary URI if requested +RewriteCond %{HTTP_ACCEPT} \*/\* [OR] +RewriteCond %{HTTP_ACCEPT} application/rdf\+xml +RewriteRule ^([^/]+)$ https://dg-assist.github.io/mqto/OnToology/mqto-$1.ttl/documentation/ontology.owl [R=303,L] + +# Rewrite rule to serve N-Triples content from the vocabulary URI if requested +RewriteCond %{HTTP_ACCEPT} application/n-triples +RewriteRule ^([^/]+)$ https://dg-assist.github.io/mqto/OnToology/mqto-$1.ttl/documentation/ontology.nt [R=303,L] + +# Rewrite rule to serve TTL content from the vocabulary URI if requested +RewriteCond %{HTTP_ACCEPT} text/turtle [OR] +RewriteCond %{HTTP_ACCEPT} text/\* [OR] +RewriteCond %{HTTP_ACCEPT} \*/turtle +RewriteRule ^([^/]+)$ https://dg-assist.github.io/mqto/OnToology/mqto-$1.ttl/documentation/ontology.ttl [R=303,L] + +# 406 Not Acceptable +RewriteCond %{HTTP_ACCEPT} .+ +RewriteRule ^([^/]+)$ https://dg-assist.github.io/mqto/OnToology/mqto-$1.ttl/documentation/406.html [R=406,L] + +# Default response +# --------------------------- +# Rewrite rule to serve the RDF/XML content from the vocabulary URI by default +RewriteRule ^([^/]+)$ https://dg-assist.github.io/mqto/OnToology/mqto-$1.ttl/documentation/ontology.owl [R=303,L] diff --git a/mqto/README.md b/mqto/README.md new file mode 100644 index 0000000000..0e1e812e2f --- /dev/null +++ b/mqto/README.md @@ -0,0 +1,10 @@ +# /mqto/ +This [W3ID](https://w3id.org) provides a persistent URI namespace for the Manufacturing Quality Troubleshooting Ontology (MQTO). + +## Contact +This space is administered by: + +**Project:** DG-Assist +**Organization:** [dg-assist](https://github.com/dg-assist) +**Repository:** https://github.com/dg-assist/mqto +**Email:** Stefan Bischof [stefanbischof](https://github.com/stefanbischof/) ORCID: [0000-0001-9521-8907](https://orcid.org/0000-0001-9521-8907) diff --git a/occo/.htaccess b/occo/.htaccess index fb51c5aa1c..3863e46c24 100644 --- a/occo/.htaccess +++ b/occo/.htaccess @@ -1,10 +1,56 @@ # OCCO - Occupant-Centric Control Ontology +# Namespace: https://w3id.org/occo# # Contact: Saif Alramahi (@saiframahii) -# Repository: https://github.com/saiframahii/occo +# Repository: https://github.com/saiframahii/saiframahii.github.io Options +FollowSymLinks RewriteEngine on -# Redirect to ontology landing page -RewriteRule ^$ https://saiframahii.github.io/occo/ [R=302,L] -RewriteRule ^(.*)$ https://saiframahii.github.io/occo/$1 [R=302,L] +# --------------------------------------------------------------------------- +# https://w3id.org/occo/0.0.2 β€” version IRI (frozen release) +# --------------------------------------------------------------------------- + +# Turtle +RewriteCond %{HTTP_ACCEPT} text/turtle [OR] +RewriteCond %{HTTP_ACCEPT} application/x-turtle +RewriteRule ^0\.0\.2/?$ https://saiframahii.github.io/occo/releases/0.0.2/occo.ttl [R=303,L] + +# RDF/XML +RewriteCond %{HTTP_ACCEPT} application/rdf\+xml +RewriteRule ^0\.0\.2/?$ https://saiframahii.github.io/occo/releases/0.0.2/occo.rdf [R=303,L] + +# HTML / default +RewriteRule ^0\.0\.2/?$ https://saiframahii.github.io/occo/index-en.html [R=303,L] + +# --------------------------------------------------------------------------- +# https://w3id.org/occo β€” base URI (latest version) +# --------------------------------------------------------------------------- + +# JSON-LD +RewriteCond %{HTTP_ACCEPT} application/ld\+json +RewriteRule ^$ https://saiframahii.github.io/occo/ontology.jsonld [R=303,L] + +# Turtle +RewriteCond %{HTTP_ACCEPT} text/turtle [OR] +RewriteCond %{HTTP_ACCEPT} application/x-turtle +RewriteRule ^$ https://saiframahii.github.io/occo/occo.ttl [R=303,L] + +# RDF/XML +RewriteCond %{HTTP_ACCEPT} application/rdf\+xml +RewriteRule ^$ https://saiframahii.github.io/occo/occo.rdf [R=303,L] + +# N-Triples +RewriteCond %{HTTP_ACCEPT} application/n-triples +RewriteRule ^$ https://saiframahii.github.io/occo/ontology.nt [R=303,L] + +# OWL/XML +RewriteCond %{HTTP_ACCEPT} application/owl\+xml +RewriteRule ^$ https://saiframahii.github.io/occo/ontology.owl [R=303,L] + +# HTML / browser default +RewriteRule ^$ https://saiframahii.github.io/occo/index-en.html [R=303,L] + +# --------------------------------------------------------------------------- +# Pass-through for all sub-paths (evaluation, provenance, releases, etc.) +# --------------------------------------------------------------------------- +RewriteRule ^(.+)$ https://saiframahii.github.io/occo/$1 [R=303,L] diff --git a/occo/README.md b/occo/README.md index 78d4835570..d3ac949845 100644 --- a/occo/README.md +++ b/occo/README.md @@ -1,14 +1,17 @@ -# OCCO - Occupant-Centric Control Ontology +# OCCO β€” Occupant-Centric Control Ontology -A semantic ontology for occupant-centric building control, integrating visual comfort metrics, control strategies, and performance evaluation. +**Namespace:** `https://w3id.org/occo#` -## Maintainer -**Saif Alramahi** (@saiframahii)
-Birmingham City University
-saif.alramahi@mail.bcu.ac.uk +**Persistent URI:** `https://w3id.org/occo` -## Status -🚧 *The ontology will be accessible online upon publication.* +**Maintainer:** Saif Alramahi (Birmingham City University) β€” saif.alramahi@mail.bcu.ac.uk β€” [@saiframahii](https://github.com/saiframahii) -## References -- [EC3 2026 Paper] (forthcoming) +This namespace provides persistent URIs for the Occupant-Centric Control Ontology (OCCO), +an OWL ontology for semantic modelling of occupant-centric building control developed as part +of PhD research at Birmingham City University. + +Content negotiation is supported β€” dereference `https://w3id.org/occo` with the appropriate +`Accept` header to receive Turtle, RDF/XML, JSON-LD, N-Triples, or OWL/XML. + +Full documentation and all serialisations are served from: +`https://saiframahii.github.io/occo/` diff --git a/philokg/.htaccess b/philokg/.htaccess new file mode 100644 index 0000000000..1a2dc729e7 --- /dev/null +++ b/philokg/.htaccess @@ -0,0 +1,39 @@ +# w3id.org redirect rules for PhiloKG +# Namespace: http://w3id.org/philokg/ +# +# PhiloKG is a knowledge graph of classical philosophical discourse, +# comprising 2M+ triples extracted from 1,000+ philosophical texts. + +Header set Access-Control-Allow-Origin * +Header set Access-Control-Allow-Headers DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Accept +Options +FollowSymLinks +RewriteEngine on + +# --- Ontology (content negotiation) --- + +# Turtle request for ontology namespace +RewriteCond %{HTTP_ACCEPT} text/turtle [OR] +RewriteCond %{HTTP_ACCEPT} application/x-turtle +RewriteRule ^$ https://zenodo.org/records/19417427/files/philokg.ttl [R=303,L] + +# RDF/XML request for ontology namespace +RewriteCond %{HTTP_ACCEPT} application/rdf\+xml +RewriteRule ^$ https://zenodo.org/records/19417427/files/philokg.ttl [R=303,L] + +# N-Triples request for ontology namespace +RewriteCond %{HTTP_ACCEPT} application/n-triples +RewriteRule ^$ https://zenodo.org/records/19417427/files/philokg.nt [R=303,L] + +# Default: HTML landing page (Zenodo deposit) +RewriteRule ^$ https://doi.org/10.5281/zenodo.19417427 [R=303,L] + +# --- Entity URIs --- +# http://w3id.org/philokg/entity/X β†’ Zenodo (no per-entity resolution yet) +RewriteRule ^entity/(.+)$ https://doi.org/10.5281/zenodo.19417427 [R=303,L] + +# --- Statement URIs --- +# http://w3id.org/philokg/stmt/X β†’ Zenodo +RewriteRule ^stmt/(.+)$ https://doi.org/10.5281/zenodo.19417427 [R=303,L] + +# --- Catch-all --- +RewriteRule ^(.+)$ https://doi.org/10.5281/zenodo.19417427 [R=303,L] diff --git a/philokg/README.md b/philokg/README.md new file mode 100644 index 0000000000..479f528292 --- /dev/null +++ b/philokg/README.md @@ -0,0 +1,29 @@ +# PhiloKG β€” /philokg/ + +## Purpose + +Persistent URI namespace for the **PhiloKG** knowledge graph and ontology. + +PhiloKG is a knowledge graph of classical philosophical discourse, comprising +2M+ triples extracted from over 1,000 philosophical texts by 142+ authors +spanning from ancient Greece to the early twentieth century. + +## URIs + +| Pattern | Description | +|---------|-------------| +| `/philokg/` | PhiloKG ontology namespace | +| `/philokg/entity/{name}` | Entity URIs (philosophers, concepts, works) | +| `/philokg/stmt/{hash}` | Statement reifier URIs (consensus annotations) | + +## Redirects + +- **Ontology** (Turtle/RDF): Zenodo deposit file +- **HTML**: Zenodo landing page () +- **Entities/Statements**: Zenodo landing page (per-entity resolution planned) + +## Contact + +**Maintainer**: Kay (@kayess00) + +**Repository**: diff --git a/prism/.htaccess b/prism/.htaccess new file mode 100644 index 0000000000..19376a4d8b --- /dev/null +++ b/prism/.htaccess @@ -0,0 +1,28 @@ +# w3id.org/prism β€” Permanent redirect configuration +# Submit as /prism/.htaccess in a PR to https://github.com/perma-id/w3id.org +# +# Maintainers: Paola Arce + +Options -Indexes +Header set Access-Control-Allow-Origin * +RewriteEngine on + +# Versioned ontology +RewriteCond %{HTTP_ACCEPT} text/turtle [OR] +RewriteCond %{HTTP_ACCEPT} application/rdf\+xml [OR] +RewriteCond %{HTTP_ACCEPT} application/ld\+json +RewriteRule ^0\.1\.0$ https://itsbigspark.github.io/prism-ontology/ontology/prism-0.1.0.ttl [R=303,L] +RewriteRule ^0\.1\.0$ https://itsbigspark.github.io/prism-ontology/0.1.0/ [R=303,L] + +# SHACL shapes +RewriteRule ^shacl/(.*)$ https://itsbigspark.github.io/prism-ontology/shacl/$1 [R=303,L] + +# Default β€” Turtle for semantic web clients +RewriteCond %{HTTP_ACCEPT} text/turtle [OR] +RewriteCond %{HTTP_ACCEPT} application/rdf\+xml [OR] +RewriteCond %{HTTP_ACCEPT} application/ld\+json +RewriteRule ^$ https://itsbigspark.github.io/prism-ontology/ontology/prism.ttl [R=303,L] + +# Default β€” HTML for browsers +RewriteRule ^$ https://itsbigspark.github.io/prism-ontology/ [R=303,L] +RewriteRule ^(.*)$ https://itsbigspark.github.io/prism-ontology/$1 [R=303,L] diff --git a/prism/README.md b/prism/README.md new file mode 100644 index 0000000000..5afc7a3cde --- /dev/null +++ b/prism/README.md @@ -0,0 +1,7 @@ +# PRISM +PRISM is an EU AI Act compliance record-keeping ontology that extends the W3C Data Privacy Vocabulary (DPV) and its EU AI Act extension with structured mappings from legal obligations to compliance record types, attestation workflows, and SHACL validation shapes. + +https://github.com/itsbigspark/prism-ontology + +## Contacts +* Paola Arce (GitHub: mapsa) diff --git a/reachhaven/.htaccess b/reachhaven/.htaccess new file mode 100644 index 0000000000..3b590097a5 --- /dev/null +++ b/reachhaven/.htaccess @@ -0,0 +1,15 @@ +Header set Access-Control-Allow-Origin * + +# MIME types for RDF serializations +AddType application/rdf+xml .rdf +AddType application/rdf+xml .owl +AddType text/turtle .ttl +AddType application/n-triples .nt +AddType application/ld+json .json +AddType application/ld+json .jsonld + +Options +FollowSymLinks +RewriteEngine on + +# Default redirect to Reachhaven website +RewriteRule ^$ https://reachhaven.com/ [R=303,L] diff --git a/reachhaven/README.md b/reachhaven/README.md new file mode 100644 index 0000000000..c691cd22a2 --- /dev/null +++ b/reachhaven/README.md @@ -0,0 +1,17 @@ +# Haven + +Homepage: + +- + +## Subfolders + +- `harbour/` - Harbour Credentials Ontology + +## GitHub Repository + +- + +## Contacts + +- Carlo van Driesten (GitHub: [@jdsika](https://github.com/jdsika)) diff --git a/reachhaven/harbour/.htaccess b/reachhaven/harbour/.htaccess new file mode 100644 index 0000000000..62c04edb37 --- /dev/null +++ b/reachhaven/harbour/.htaccess @@ -0,0 +1,68 @@ +Header set Access-Control-Allow-Origin * + +# MIME types for RDF serializations +AddType application/rdf+xml .rdf +AddType application/rdf+xml .owl +AddType text/turtle .ttl +AddType application/n-triples .nt +AddType application/ld+json .json +AddType application/ld+json .jsonld + +Options +FollowSymLinks +RewriteEngine on + +# ============================================================================= +# Harbour Credentials Ontology - Static GitHub Pages resolution +# Pattern: /reachhaven/harbour/{domain}/v{version}[/][shapes|context] +# Target: reachhaven.github.io/harbour-credentials/w3id/reachhaven/harbour/... +# ============================================================================= + +# --- Turtle / RDF-XML --- + +# Ontology (versioned, domain-scoped) +RewriteCond %{HTTP_ACCEPT} text/turtle [OR] +RewriteCond %{HTTP_ACCEPT} application/rdf\+xml +RewriteRule ^(core|gx|delegate)/(v[0-9]+)/?$ https://reachhaven.github.io/harbour-credentials/w3id/reachhaven/harbour/$1/$2/ontology.ttl [R=303,L] + +# SHACL shapes (versioned) +RewriteCond %{HTTP_ACCEPT} text/turtle [OR] +RewriteCond %{HTTP_ACCEPT} application/rdf\+xml +RewriteRule ^(core|gx|delegate)/(v[0-9]+)/shapes/?$ https://reachhaven.github.io/harbour-credentials/w3id/reachhaven/harbour/$1/$2/shapes.ttl [R=303,L] + +# --- JSON-LD --- + +# JSON-LD context (versioned) +RewriteCond %{HTTP_ACCEPT} application/ld\+json [OR] +RewriteCond %{HTTP_ACCEPT} application/json +RewriteRule ^(core|gx|delegate)/(v[0-9]+)/?$ https://reachhaven.github.io/harbour-credentials/w3id/reachhaven/harbour/$1/$2/context.jsonld [R=303,L] + +# JSON-LD shapes (versioned) β€” no JSON-LD shapes published, serve Turtle +RewriteCond %{HTTP_ACCEPT} application/ld\+json [OR] +RewriteCond %{HTTP_ACCEPT} application/json +RewriteRule ^(core|gx|delegate)/(v[0-9]+)/shapes/?$ https://reachhaven.github.io/harbour-credentials/w3id/reachhaven/harbour/$1/$2/shapes.ttl [R=303,L] + +# --- Context sub-path (direct URL for JSON-LD @context references) --- +# JSON-LD processors fetch @context URLs with a plain GET (no Accept header), +# so these rules have no content-negotiation guard. + +# Versioned context +RewriteRule ^(core|gx|delegate)/(v[0-9]+)/context/?$ https://reachhaven.github.io/harbour-credentials/w3id/reachhaven/harbour/$1/$2/context.jsonld [R=303,L] + +# --- Bare class IRIs: /harbour/{domain}/v1/ClassName --- +# Individual class IRIs resolve to the ontology (OWL/SHACL validators +# dereference the namespace, not individual classes) +RewriteCond %{HTTP_ACCEPT} text/turtle [OR] +RewriteCond %{HTTP_ACCEPT} application/rdf\+xml +RewriteRule ^(core|gx|delegate)/(v[0-9]+)/.+$ https://reachhaven.github.io/harbour-credentials/w3id/reachhaven/harbour/$1/$2/ontology.ttl [R=303,L] + +RewriteCond %{HTTP_ACCEPT} application/ld\+json [OR] +RewriteCond %{HTTP_ACCEPT} application/json +RewriteRule ^(core|gx|delegate)/(v[0-9]+)/.+$ https://reachhaven.github.io/harbour-credentials/w3id/reachhaven/harbour/$1/$2/context.jsonld [R=303,L] + +# --- HTML fallback β€” redirect browsers to documentation --- +RewriteRule ^(core|gx|delegate)/(v[0-9]+)/?$ https://reachhaven.github.io/harbour-credentials/reference/schemas/ [R=303,L] +RewriteRule ^(core|gx|delegate)/(v[0-9]+)/shapes/?$ https://reachhaven.github.io/harbour-credentials/reference/schemas/ [R=303,L] +RewriteRule ^(core|gx|delegate)/(v[0-9]+)/.+$ https://reachhaven.github.io/harbour-credentials/reference/schemas/ [R=303,L] + +# --- Root redirect to documentation --- +RewriteRule ^$ https://reachhaven.github.io/harbour-credentials/ [R=303,L] diff --git a/reachhaven/harbour/README.md b/reachhaven/harbour/README.md new file mode 100644 index 0000000000..d0af101052 --- /dev/null +++ b/reachhaven/harbour/README.md @@ -0,0 +1,34 @@ +# Harbour Credentials Ontology + +Harbour is a library and ontology for issuing and verifying W3C Verifiable Credentials with selective disclosure (SD-JWT-VC), designed for the Gaia-X ecosystem. + +## Homepage + +- + +## Documentation + +Refer to the documentation site for the schema reference and API docs: + +- + +## URL Patterns + +- `https://w3id.org/reachhaven/harbour/{domain}/v{version}/` β€” Ontology namespace (for prefix) +- `https://w3id.org/reachhaven/harbour/{domain}/v{version}` β€” Ontology IRI (for owl:Ontology) +- `https://w3id.org/reachhaven/harbour/{domain}/v{version}/shapes` β€” SHACL shapes +- `https://w3id.org/reachhaven/harbour/{domain}/v{version}/context` β€” JSON-LD context + +Domains: `core`, `gx`, `delegate` + +## Resolution + +W3ID IRIs resolve to static files published on GitHub Pages via the release workflow. + +## GitHub Repository + +- + +## Contacts + +- Carlo van Driesten (GitHub: [@jdsika](https://github.com/jdsika)) diff --git a/reactome-ontology/.htaccess b/reactome-ontology/.htaccess new file mode 100644 index 0000000000..340b00434e --- /dev/null +++ b/reactome-ontology/.htaccess @@ -0,0 +1,12 @@ +Options +FollowSymLinks +RewriteEngine on + +# Base namespace +RewriteRule ^$ https://cair2015.github.io/reactome-ontology/ [R=302,L] + +# Optional convenience redirects +RewriteRule ^index\.html$ https://cair2015.github.io/reactome-ontology/ [R=302,L] +RewriteRule ^README\.md$ https://github.com/cair2015/reactome-ontology [R=302,L] + +# Term URIs +RewriteRule ^([^/]+)$ https://cair2015.github.io/reactome-ontology/elements/$1 [R=303,L] diff --git a/reactome-ontology/README.md b/reactome-ontology/README.md new file mode 100644 index 0000000000..7ab5c64a02 --- /dev/null +++ b/reactome-ontology/README.md @@ -0,0 +1,17 @@ +# Reactome Ontology + +## Namespace + +- Base namespace: `https://w3id.org/reactome-ontology` +- Maintainer: Robin Cai +- Project repository: https://github.com/cair2015/reactome-ontology +- Documentation site: https://cair2015.github.io/reactome-ontology/ + +## Project Description + +`reactome-ontology` is an ontology-first LinkML project for representing key parts of the Reactome data model as a cleaner ontology-oriented schema. + +## Contact + +- Robin Cai +- GitHub: https://github.com/cair2015 diff --git a/ro-id-dev/.htaccess b/ro-id-dev/.htaccess index 80c1f5a421..40a8238817 100644 --- a/ro-id-dev/.htaccess +++ b/ro-id-dev/.htaccess @@ -23,39 +23,55 @@ RewriteRule ^$ https://rohub2020-rohub.apps.paas-dev.psnc.pl/ [R=302,L] # ROHub user (imported) RewriteRule ^users/(.*)$ https://rohub2020-rohub.apps.paas-dev.psnc.pl/userprofile?username=$1 [R=302,L] +# ---------------------------------------- # Research Object resource +# ---------------------------------------- +# landing-page view of a resource RewriteCond %{HTTP_ACCEPT} text/html RewriteRule ^(.*)/resources/(.*)$ https://rohub2020-rohub.apps.paas-dev.psnc.pl/$1?activetab=content&resource=$2 [R=302,L] -# download resource +# resource download via RO-scoped path RewriteRule ^(.*)/resources/(.*)$ https://rohub2020-rohub.apps.paas-dev.psnc.pl/api/resources/$2/download/ [R=302,L] +# resource download via direct resource path RewriteRule ^resources/(.*)$ https://rohub2020-rohub.apps.paas-dev.psnc.pl/api/resources/$1/download/ [R=302,L] +# ---------------------------------------- # Research Object manifest body -# download manifest +# ---------------------------------------- +# download RO manifest body RewriteRule ^(.*)/.ro/manifest.ttl$ https://rohub2020-rohub.apps.paas-dev.psnc.pl/api/ros/$1/download/ [R=302,L] -# Research Object evo info +# ---------------------------------------- +# Research Object evo info +# ---------------------------------------- # download evo info annotation RewriteRule ^(.*)/annotations/evo_info$ https://rohub2020-rohub.apps.paas-dev.psnc.pl/api/ros/$1/annotations/evo_info/download/ [R=302,L] # download evo info body RewriteRule ^(.*)/.ro/evo_info.ttl$ https://rohub2020-rohub.apps.paas-dev.psnc.pl/api/ros/$1/annotations/evo_info/download/ [R=302,L] -# Research Object enrichment info +# ---------------------------------------- +# Research Object enrichment info +# ---------------------------------------- # download enrichment annotation RewriteRule ^(.*)/annotations/enrichment$ https://rohub2020-rohub.apps.paas-dev.psnc.pl/api/ros/$1/annotations/enrichment/download/ [R=302,L] # download enrichment body RewriteRule ^(.*)/.ro/annotations/enrichment.ttl$ https://rohub2020-rohub.apps.paas-dev.psnc.pl/api/ros/$1/annotations/enrichment/download/ [R=302,L] +# ---------------------------------------- # Research Object annotation bodies +# ---------------------------------------- # download annotation body RewriteRule ^(.*)/.ro/annotations/(.*).ttl$ https://rohub2020-rohub.apps.paas-dev.psnc.pl/api/annotations/$2/download/ [R=302,L] +# ---------------------------------------- # Research Object annotation +# ---------------------------------------- # download annotation RewriteRule ^(.*)/annotations/(.*)$ https://rohub2020-rohub.apps.paas-dev.psnc.pl/api/annotations/$2/download/ [R=302,L] RewriteRule ^annotations/(.*)$ https://rohub2020-rohub.apps.paas-dev.psnc.pl/api/annotations/$1/download/ [R=302,L] +# ---------------------------------------- # Research Object folder +# ---------------------------------------- # folder manifest RewriteRule ^(.*)/folders/(.*).ttl$ https://rohub2020-rohub.apps.paas-dev.psnc.pl/api/ros/$1/folders/$2.ttl [R=302,L] # download folder using path @@ -64,23 +80,27 @@ RewriteRule ^(.*)/folders/(.*)/$ https://rohub2020-rohub.apps.paas-dev.psnc.pl/a RewriteRule ^(.*)/folders/(.*)$ https://rohub2020-rohub.apps.paas-dev.psnc.pl/api/folders/$2/download/ [R=302,L] RewriteRule ^folders/(.*)$ https://rohub2020-rohub.apps.paas-dev.psnc.pl/api/folders/$1/download/ [R=302,L] -# Research Object activities +# ---------------------------------------- +# Research Object activities / geolocation / research areas +# ---------------------------------------- # download activities RewriteRule ^(.*)/activities$ https://rohub2020-rohub.apps.paas-dev.psnc.pl/api/ros/$1/activities/ [R=302,L] -# Research Object geolocation # download geolocation RewriteRule ^(.*)/geolocation$ https://rohub2020-rohub.apps.paas-dev.psnc.pl/api/ros/$1/geolocation/ [R=302,L] -# Research Object research areas # download research areas RewriteRule ^(.*)/research-areas$ https://rohub2020-rohub.apps.paas-dev.psnc.pl/api/ros/$1/research-areas/ [R=302,L] +# ---------------------------------------- # Research Object crate +# ---------------------------------------- # download ro-crate RewriteRule ^(.*)/crate$ https://rohub2020-rohub.apps.paas-dev.psnc.pl/api/ros/$1/crate/download/ [R=302,L] -# Research Object +# ---------------------------------------- +# Base RO PID with content negotiation +# ---------------------------------------- # download RO-Crate RewriteCond %{HTTP_ACCEPT} ^.*application/ld\+json.* RewriteRule ^([^/]*)/?$ https://rohub2020-rohub.apps.paas-dev.psnc.pl/api/ros/$1/crate/download/ [R=302,L] @@ -103,4 +123,4 @@ RewriteRule ^([^/]*)/?$ https://rohub2020-rohub.apps.paas-dev.psnc.pl/api/ros/$1 # RewriteCond %{HTTP_ACCEPT} text/html # original # RewriteRule ^(.*)$ https://rohub2020-rohub.apps.paas-dev.psnc.pl/$1?activetab=overview [R=302,L] -RewriteRule ^([^/]*)/?$ https://rohub2020-rohub.apps.paas-dev.psnc.pl/$1?activetab=overview [R=302,L] +RewriteRule ^([^/]*)/?$ https://rohub2020-rohub.apps.paas-dev.psnc.pl/$1?activetab=overview [R=302,L] \ No newline at end of file diff --git a/ro-id-dev/README.md b/ro-id-dev/README.md index 91c66a36cf..76465ac1d5 100644 --- a/ro-id-dev/README.md +++ b/ro-id-dev/README.md @@ -6,4 +6,6 @@ References: * https://www.researchobject.org/ Contacts: -* Raul Palma +* Raul Palma + * email: + * github username: rapw3k \ No newline at end of file diff --git a/ro-id/.htaccess b/ro-id/.htaccess index 9913bf6a15..10f96d216b 100644 --- a/ro-id/.htaccess +++ b/ro-id/.htaccess @@ -34,39 +34,55 @@ RewriteRule ^about$ https://www.rohub.org/about [R=302,L] # this will point to rohub main page RewriteRule ^explore$ https://www.rohub.org/explore [R=302,L] +# ---------------------------------------- # Research Object resource +# ---------------------------------------- +# landing-page view of a resource RewriteCond %{HTTP_ACCEPT} text/html RewriteRule ^(.*)/resources/(.*)$ https://www.rohub.org/$1?activetab=content&resource=$2 [R=302,L] -# download resource +# resource download via RO-scoped path RewriteRule ^(.*)/resources/(.*)$ https://api.rohub.org/api/resources/$2/download/ [R=302,L] +# resource download via direct resource path RewriteRule ^resources/(.*)$ https://api.rohub.org/api/resources/$1/download/ [R=302,L] +# ---------------------------------------- # Research Object manifest body -# download manifest +# ---------------------------------------- +# download RO manifest body RewriteRule ^(.*)/.ro/manifest.ttl$ https://api.rohub.org/api/ros/$1/download/ [R=302,L] -# Research Object evo info +# ---------------------------------------- +# Research Object evo info +# ---------------------------------------- # download evo info annotation RewriteRule ^(.*)/annotations/evo_info$ https://api.rohub.org/api/ros/$1/annotations/evo_info/download/ [R=302,L] # download evo info body RewriteRule ^(.*)/.ro/evo_info.ttl$ https://api.rohub.org/api/ros/$1/annotations/evo_info/download/ [R=302,L] -# Research Object enrichment info +# ---------------------------------------- +# Research Object enrichment info +# ---------------------------------------- # download enrichment annotation RewriteRule ^(.*)/annotations/enrichment$ https://api.rohub.org/api/ros/$1/annotations/enrichment/download/ [R=302,L] # download enrichment body RewriteRule ^(.*)/.ro/annotations/enrichment.ttl$ https://api.rohub.org/api/ros/$1/annotations/enrichment/download/ [R=302,L] +# ---------------------------------------- # Research Object annotation bodies +# ---------------------------------------- # download annotation body RewriteRule ^(.*)/.ro/annotations/(.*).ttl$ https://api.rohub.org/api/annotations/$2/download/ [R=302,L] +# ---------------------------------------- # Research Object annotation +# ---------------------------------------- # download annotation RewriteRule ^(.*)/annotations/(.*)$ https://api.rohub.org/api/annotations/$2/download/ [R=302,L] RewriteRule ^annotations/(.*)$ https://api.rohub.org/api/annotations/$1/download/ [R=302,L] +# ---------------------------------------- # Research Object folder +# ---------------------------------------- # folder manifest RewriteRule ^(.*)/folders/(.*).ttl$ https://api.rohub.org/api/ros/$1/folders/$2.ttl [R=302,L] # download folder using path @@ -75,23 +91,27 @@ RewriteRule ^(.*)/folders/(.*)/$ https://api.rohub.org/api/ros/$1/folders/$2/dow RewriteRule ^(.*)/folders/(.*)$ https://api.rohub.org/api/folders/$2/download/ [R=302,L] RewriteRule ^folders/(.*)$ https://api.rohub.org/api/folders/$1/download/ [R=302,L] -# Research Object activities +# ---------------------------------------- +# Research Object activities / geolocation / research areas +# ---------------------------------------- # download activities RewriteRule ^(.*)/activities$ https://api.rohub.org/api/ros/$1/activities/ [R=302,L] -# Research Object geolocation # download geolocation RewriteRule ^(.*)/geolocation$ https://api.rohub.org/api/ros/$1/geolocation/ [R=302,L] -# Research Object research areas # download research areas RewriteRule ^(.*)/research-areas$ https://api.rohub.org/api/ros/$1/research-areas/ [R=302,L] +# ---------------------------------------- # Research Object crate +# ---------------------------------------- # download ro-crate RewriteRule ^(.*)/crate$ https://api.rohub.org/api/ros/$1/crate/download/ [R=302,L] -# Research Object +# ---------------------------------------- +# Base RO PID with content negotiation +# ---------------------------------------- # download RO-Crate RewriteCond %{HTTP_ACCEPT} ^.*application/ld\+json.* RewriteRule ^([^/]*)/?$ https://api.rohub.org/api/ros/$1/crate/download/ [R=302,L] diff --git a/ro-id/README.md b/ro-id/README.md index aa0f00794e..0ea928b2ee 100644 --- a/ro-id/README.md +++ b/ro-id/README.md @@ -6,4 +6,6 @@ References: * https://www.researchobject.org/ Contacts: -* Raul Palma +* Raul Palma + * email: + * github username: rapw3k diff --git a/sanctions/.htaccess b/sanctions/.htaccess new file mode 100644 index 0000000000..971b6c5585 --- /dev/null +++ b/sanctions/.htaccess @@ -0,0 +1,10 @@ +# Maintainer: Mariam-the-Solivagus (https://github.com/Mariam-the-Solivagus) + +Options -MultiViews +Header set Access-Control-Allow-Origin * + +RewriteEngine on + +RewriteRule ^ontology/?$ https://github.com/Mariam-the-Solivagus/sanctions-ontology [R=303,L] +RewriteRule ^ontology\.ttl$ https://raw.githubusercontent.com/Mariam-the-Solivagus/sanctions-ontology/main/sanctions.ttl [R=303,L] + diff --git a/sanctions/README.md b/sanctions/README.md new file mode 100644 index 0000000000..d5ae3760ac --- /dev/null +++ b/sanctions/README.md @@ -0,0 +1,20 @@ +# w3id.org/sanctions + +Persistent URI namespace for the Sanctions Legislative Implementation Vocabulary (SLIV). + +## Maintainer + +- **Name:** Mariam Hadjilouka +- **GitHub:** https://github.com/Mariam-the-Solivagus +- **Email:** mariamhadjilouka@icloud.com + +## Description + +SLIV is an OWL vocabulary extending the UN System Document Ontology (UNDO) +for linking UN Security Council sanctions resolutions to their EU implementing +regulations and designated entities. + +## Ontology + +- **URI:** https://w3id.org/sanctions/ontology +- **Repository:** https://github.com/Mariam-the-Solivagus/sanctions-ontology diff --git a/sawgraph/.htaccess b/sawgraph/.htaccess new file mode 100644 index 0000000000..835c9a9e5a --- /dev/null +++ b/sawgraph/.htaccess @@ -0,0 +1,39 @@ +# # /sawgraph/ +# +# https://w3id.org/sawgraph/ html request redirects to project website datasources +# specific ontologies redirect to github ttl files +# +# +# ## Contact +# This space is administered by: +# +# Katrina Schweikert +# Github username: kschweikert +# +# Torsten Hahmann +# Github username: thahmann + +# Turn off MultiViews +Options -MultiViews + +# Rewrite engine setup +RewriteEngine On + +# Rewrite rule for me-egad +RewriteCond %{HTTP_ACCEPT} !application/rdf\+xml.*(text/html|application/xhtml\+xml) +RewriteCond %{HTTP_ACCEPT} text/html [OR] +RewriteCond %{HTTP_ACCEPT} application/xhtml\+xml +RewriteRule ^v1/me-egad$ https://raw.githubusercontent.com/SAWGraph/pfas-kg/refs/heads/main/datasets/maine/egad/ontology/egad-sites-samples-schema.ttl [R=303,L,NE] + +# Rewrite rule for us-wqp +RewriteCond %{HTTP_ACCEPT} !application/rdf\+xml.*(text/html|application/xhtml\+xml) +RewriteCond %{HTTP_ACCEPT} text/html [OR] +RewriteCond %{HTTP_ACCEPT} application/xhtml\+xml +RewriteRule ^v1/us-wqp$ https://raw.githubusercontent.com/SAWGraph/pfas-kg/refs/heads/main/datasets/federal/us-wqp/ontology/wqp_schema.ttl [R=303,L,NE] + + +# Default response +# ----------------------------- + +# Rewrite rule for all other request to point back to the main github repo +RewriteRule ^(.*) https://sawgraph.github.io/kg.html#data-sources [R=303,L,NE] diff --git a/sawgraph/README.md b/sawgraph/README.md new file mode 100644 index 0000000000..97eaf90e91 --- /dev/null +++ b/sawgraph/README.md @@ -0,0 +1,12 @@ +# /fio/ + +## Uses +This namespace supports SAWGraph - safe agriculture and water graph + +## Project home +[https://github.com/SAWGraph/](https://github.com/SAWGraph/) + +## Contact +This space is administered by: +* [Katrina Schweikert](https://github.com/kschweikert) +* [Torsten Hahmann](https://github.com/thahmann) diff --git a/smn/.htaccess b/smn/.htaccess index e91c946de7..5f8aeae0d1 100644 --- a/smn/.htaccess +++ b/smn/.htaccess @@ -2,14 +2,26 @@ # # Salmon Domain Ontology shared namespace (`smn:`) # -# Canonical ontology IRI (unversioned): +# Latest ontology IRI (unversioned): # https://w3id.org/smn # -# Draft status: -# - Active rules below are the safe fallback for the assets that exist today. -# - The repo currently exposes Turtle sources only. -# - GitHub Pages / HTML docs / RDF/XML / JSON-LD / SemVer release snapshots do not exist yet. -# - When those targets exist, replace the fallback with the commented DFO-style latest/version rules. +# Version IRIs: +# https://w3id.org/smn/X.Y.Z +# +# Redirect targets (GitHub Pages): +# - HTML docs (latest): https://salmon-data-mobilization.github.io/salmon-domain-ontology/ +# - Turtle (latest): https://salmon-data-mobilization.github.io/salmon-domain-ontology/smn.ttl +# - RDF/XML (latest): https://salmon-data-mobilization.github.io/salmon-domain-ontology/smn.owl +# - JSON-LD (latest): https://salmon-data-mobilization.github.io/salmon-domain-ontology/smn.jsonld +# - Version snapshot: https://salmon-data-mobilization.github.io/salmon-domain-ontology/releases/X.Y.Z/ +# +# Pattern note: +# - Root + version content negotiation below intentionally mirrors the live +# DFO Salmon Ontology (`/gcdfo/salmon/`) routing pattern. +# - Canonical term IRIs now default to the WIDOCO HTML anchor for humans while +# still serving Turtle / RDF/XML / JSON-LD via `Accept`-based redirects. +# - Research / case-study / module / profile paths remain Turtle-first. +# - `/latest` is intentionally not part of this public contract. # # Maintainer repository: # https://github.com/salmon-data-mobilization/salmon-domain-ontology @@ -23,37 +35,50 @@ RewriteEngine On # Tell caches that responses vary by content negotiation. Header merge Vary "Accept" -# Current safe fallback (latest Turtle artifacts only) -# -------------------------------------------------- -RewriteRule ^$ https://raw.githubusercontent.com/salmon-data-mobilization/salmon-domain-ontology/main/ontology/salmon-domain-ontology.ttl [R=303,L] +# Latest (no version path) +# --------------------------- +RewriteCond %{HTTP_ACCEPT} text/turtle [NC] +RewriteRule ^$ https://salmon-data-mobilization.github.io/salmon-domain-ontology/smn.ttl [R=303,L] + +RewriteCond %{HTTP_ACCEPT} application/rdf\+xml [NC] +RewriteRule ^$ https://salmon-data-mobilization.github.io/salmon-domain-ontology/smn.owl [R=303,L] + +RewriteCond %{HTTP_ACCEPT} application/ld\+json [NC] +RewriteRule ^$ https://salmon-data-mobilization.github.io/salmon-domain-ontology/smn.jsonld [R=303,L] + +RewriteRule ^$ https://salmon-data-mobilization.github.io/salmon-domain-ontology/ [R=303,L] + +# Version paths (SemVer: X.Y.Z) +# --------------------------- +RewriteCond %{HTTP_ACCEPT} text/turtle [NC] +RewriteRule ^([0-9]+\.[0-9]+\.[0-9]+)/?$ https://salmon-data-mobilization.github.io/salmon-domain-ontology/releases/$1/smn.ttl [R=303,L] + +RewriteCond %{HTTP_ACCEPT} application/rdf\+xml [NC] +RewriteRule ^([0-9]+\.[0-9]+\.[0-9]+)/?$ https://salmon-data-mobilization.github.io/salmon-domain-ontology/releases/$1/smn.owl [R=303,L] + +RewriteCond %{HTTP_ACCEPT} application/ld\+json [NC] +RewriteRule ^([0-9]+\.[0-9]+\.[0-9]+)/?$ https://salmon-data-mobilization.github.io/salmon-domain-ontology/releases/$1/smn.jsonld [R=303,L] + +RewriteRule ^([0-9]+\.[0-9]+\.[0-9]+)/?$ https://salmon-data-mobilization.github.io/salmon-domain-ontology/releases/$1/ [R=303,L] + +# Current secondary surfaces remain Turtle-first +# --------------------------------------------- RewriteRule ^research/?$ https://raw.githubusercontent.com/salmon-data-mobilization/salmon-domain-ontology/main/ontology/salmon-domain-ontology-research.ttl [R=303,L] RewriteRule ^rda-case-study/?$ https://raw.githubusercontent.com/salmon-data-mobilization/salmon-domain-ontology/main/ontology/salmon-domain-ontology-rda-case-study.ttl [R=303,L] RewriteRule ^modules/([A-Za-z0-9._-]+)/?$ https://raw.githubusercontent.com/salmon-data-mobilization/salmon-domain-ontology/main/ontology/modules/$1.ttl [R=303,L] RewriteRule ^profile/hakai/?$ https://raw.githubusercontent.com/salmon-data-mobilization/salmon-domain-ontology/main/ontology/modules/08-rda-case-study-profile-bridges.ttl [R=303,L] RewriteRule ^profile/neville/?$ https://raw.githubusercontent.com/salmon-data-mobilization/salmon-domain-ontology/main/ontology/modules/09-rda-neville-decomposition-profile-bridges.ttl [R=303,L] RewriteRule ^profile/rda-case-study/?$ https://raw.githubusercontent.com/salmon-data-mobilization/salmon-domain-ontology/main/ontology/salmon-domain-ontology-rda-case-study.ttl [R=303,L] -RewriteRule ^[A-Za-z0-9._-]+/?$ https://raw.githubusercontent.com/salmon-data-mobilization/salmon-domain-ontology/main/ontology/salmon-domain-ontology.ttl [R=303,L] -# Future DFO-style content negotiation (activate after publication targets exist) -# ----------------------------------------------------------------------------- -# RewriteCond %{HTTP_ACCEPT} text/turtle [NC] -# RewriteRule ^$ https:///smn.ttl [R=303,L] -# -# RewriteCond %{HTTP_ACCEPT} application/rdf\+xml [NC] -# RewriteRule ^$ https:///smn.owl [R=303,L] -# -# RewriteCond %{HTTP_ACCEPT} application/ld\+json [NC] -# RewriteRule ^$ https:///smn.jsonld [R=303,L] -# -# RewriteRule ^$ https:/// [R=303,L] -# -# RewriteCond %{HTTP_ACCEPT} text/turtle [NC] -# RewriteRule ^([0-9]+\.[0-9]+\.[0-9]+)/?$ https:///releases/$1/smn.ttl [R=303,L] -# -# RewriteCond %{HTTP_ACCEPT} application/rdf\+xml [NC] -# RewriteRule ^([0-9]+\.[0-9]+\.[0-9]+)/?$ https:///releases/$1/smn.owl [R=303,L] -# -# RewriteCond %{HTTP_ACCEPT} application/ld\+json [NC] -# RewriteRule ^([0-9]+\.[0-9]+\.[0-9]+)/?$ https:///releases/$1/smn.jsonld [R=303,L] -# -# RewriteRule ^([0-9]+\.[0-9]+\.[0-9]+)/?$ https:///releases/$1/ [R=303,L] +# Canonical shared-term IRIs: human-friendly by default, negotiable for machines +# ------------------------------------------------------------------------------- +RewriteCond %{HTTP_ACCEPT} text/turtle [NC] +RewriteRule ^([A-Za-z0-9._-]+)/?$ https://salmon-data-mobilization.github.io/salmon-domain-ontology/smn.ttl [R=303,L] + +RewriteCond %{HTTP_ACCEPT} application/rdf\+xml [NC] +RewriteRule ^([A-Za-z0-9._-]+)/?$ https://salmon-data-mobilization.github.io/salmon-domain-ontology/smn.owl [R=303,L] + +RewriteCond %{HTTP_ACCEPT} application/ld\+json [NC] +RewriteRule ^([A-Za-z0-9._-]+)/?$ https://salmon-data-mobilization.github.io/salmon-domain-ontology/smn.jsonld [R=303,L] + +RewriteRule ^([A-Za-z0-9._-]+)/?$ https://salmon-data-mobilization.github.io/salmon-domain-ontology/#/$1 [NE,R=303,L] diff --git a/smn/README.md b/smn/README.md index 45b5481e46..6677ef699e 100644 --- a/smn/README.md +++ b/smn/README.md @@ -2,11 +2,12 @@ Salmon Domain Ontology shared namespace (`smn:`). -[`https://w3id.org/smn`](https://w3id.org/smn) is intended to be the persistent base for the shared Salmon Domain Ontology layer. +[`https://w3id.org/smn`](https://w3id.org/smn) is the persistent base for the shared Salmon Domain Ontology layer. ## Canonical IRIs - Latest ontology IRI: `https://w3id.org/smn` +- Version IRIs: `https://w3id.org/smn/X.Y.Z` - Term namespace: `https://w3id.org/smn/` - Module namespace: `https://w3id.org/smn/modules/` - Research build: `https://w3id.org/smn/research` @@ -16,18 +17,58 @@ Salmon Domain Ontology shared namespace (`smn:`). - `https://w3id.org/smn/profile/neville/` - `https://w3id.org/smn/profile/rda-case-study/` -## Current redirect behavior +## Redirect behavior -This first registration uses conservative `303` redirects to the current published Turtle artifacts in the maintainer repository. +Root and SemVer version IRIs keep the current DFO-style content negotiation contract: -It currently supports: -- the main shared ontology -- module paths -- research and case-study builds -- profile bridge paths -- term-path redirects into the main shared graph +- root IRI serves HTML by default +- root IRI serves Turtle / RDF/XML / JSON-LD via the HTTP `Accept` header +- version IRIs (`/X.Y.Z`) serve release HTML by default +- version IRIs serve versioned Turtle / RDF/XML / JSON-LD via the HTTP `Accept` header +- `/latest` is intentionally not part of this public contract -A future follow-up may replace these raw-GitHub Turtle redirects with the fuller DFO-style publication pattern (HTML/Turtle/RDFXML/JSON-LD plus versioned release redirects) once those public targets exist. +Canonical shared-term IRIs are now human-friendly by default while still negotiable for machines: + +- browser/default request for `/Term` redirects to the matching WIDOCO anchor, e.g. `https://salmon-data-mobilization.github.io/salmon-domain-ontology/#/Escapement` +- `Accept: text/turtle` on `/Term` redirects to the latest Turtle serialization +- `Accept: application/rdf+xml` on `/Term` redirects to the latest RDF/XML serialization +- `Accept: application/ld+json` on `/Term` redirects to the latest JSON-LD serialization + +Secondary surfaces remain supported and Turtle-first for now: + +- `/research` +- `/rda-case-study` +- `/modules/*` +- `/profile/*` + +## Redirect targets + +GitHub Pages publication surface: + +- HTML docs (latest): `https://salmon-data-mobilization.github.io/salmon-domain-ontology/` +- Turtle (latest): `https://salmon-data-mobilization.github.io/salmon-domain-ontology/smn.ttl` +- RDF/XML (latest): `https://salmon-data-mobilization.github.io/salmon-domain-ontology/smn.owl` +- JSON-LD (latest): `https://salmon-data-mobilization.github.io/salmon-domain-ontology/smn.jsonld` +- Version snapshot HTML: `https://salmon-data-mobilization.github.io/salmon-domain-ontology/releases/X.Y.Z/` +- Version snapshot Turtle: `.../releases/X.Y.Z/smn.ttl` +- Version snapshot RDF/XML: `.../releases/X.Y.Z/smn.owl` +- Version snapshot JSON-LD: `.../releases/X.Y.Z/smn.jsonld` + +## Verification examples + +```bash +curl -I https://w3id.org/smn/Escapement +curl -I -H 'Accept: text/turtle' https://w3id.org/smn/Escapement +curl -I -H 'Accept: application/rdf+xml' https://w3id.org/smn/Escapement +curl -I -H 'Accept: application/ld+json' https://w3id.org/smn/Escapement +``` + +Expected after merge: + +- default term request β†’ `303` to `https://salmon-data-mobilization.github.io/salmon-domain-ontology/#/Escapement` +- Turtle β†’ `303` to `https://salmon-data-mobilization.github.io/salmon-domain-ontology/smn.ttl` +- RDF/XML β†’ `303` to `https://salmon-data-mobilization.github.io/salmon-domain-ontology/smn.owl` +- JSON-LD β†’ `303` to `https://salmon-data-mobilization.github.io/salmon-domain-ontology/smn.jsonld` ## Maintainer repository diff --git a/smt-library/.htaccess b/smt-library/.htaccess new file mode 100644 index 0000000000..c01aa5415b --- /dev/null +++ b/smt-library/.htaccess @@ -0,0 +1,18 @@ +### 1. Enable Rewriting +RewriteEngine On + +### 2. Redirect for the Ontology +# Request: https://w3id.org/smt-library/ontology +RewriteRule ^ontology$ https://hexwitches.github.io/semantic-tarot-library/ontology/smtOntology.ttl [R=303,L] + +### 3. Redirect for the Knowledge Graph +# Request: https://w3id.org/smt-library/graph +RewriteRule ^graph(.*)$ https://hexwitches.github.io/semantic-tarot-library/ontology/smtGraph.ttl [R=303,L] + +### 4. Redirect for the Website Pages +# Request: https://w3id.org/smt-library/page +RewriteRule ^([^/.]+)$ https://hexwitches.github.io/semantic-tarot-library/website/$1.html [R=303,L] + +### 5. Redirect for the Website +# Request: https://w3id.org/smt-library/ +RewriteRule ^$ https://hexwitches.github.io/semantic-tarot-library/ [R=303,L] \ No newline at end of file diff --git a/smt-library/README.md b/smt-library/README.md new file mode 100644 index 0000000000..c2212ba197 --- /dev/null +++ b/smt-library/README.md @@ -0,0 +1,16 @@ +# Semantic Tarot Library (smt-library) + +- **Description**: Persistent identifiers for the SMT Library, its ontology and knowledge graph. +- **Project URL**: https://hexwitches.github.io/semantic-tarot-library/ +- **Maintainers**: + - [hexWitches](https://github.com/hexWitches) +- **Status**: Active + +This directory provides redirection for: +- The main website: https://w3id.org/smt-library/ +- The Ontology: https://w3id.org/smt-library/ontology +- The Knowledge Graph: https://w3id.org/smt-library/graph + +## Contact +For issues or updates regarding these identifiers, please contact +[mir-pin](https://github.com/mir-pin) or [sararoggi](https://github.com/sararoggi) via GitHub. \ No newline at end of file diff --git a/ssbd/.htaccess b/ssbd/.htaccess new file mode 100644 index 0000000000..6e74b20fde --- /dev/null +++ b/ssbd/.htaccess @@ -0,0 +1,173 @@ +########################################################################## +# .htaccess file https://w3id.org/ssbd +# +# If testing interactively with https://htaccess.madewithlove.com/ +# remember to remove the initial "/ssbd" in the URL to test. +# +########################################################################## + +Options +FollowSymLinks + +# Rewrite engine setup +RewriteEngine On + + +########################################################################## +## IRIs to namespaces +########################################################################## + +# Source: https://w3id.org/ssbd +# Target from browser: https://ssbd-ontology.github.io/core/core.html +# Target, otherwise: https://ssbd-ontology.github.io/core/core.ttl +RewriteCond %{HTTP_ACCEPT} text/html +RewriteRule ^/?$ https://ssbd-ontology.github.io/core/core.html [R=303,NE,L] +RewriteRule ^/?$ https://ssbd-ontology.github.io/core/core.ttl [R=303,NE,L] + +# Source: https://w3id.org/ssbd/{VERSION} +# Target from browser: https://ssbd-ontology.github.io/core/versions/{VERSION}/core.html +# Target, otherwise: https://ssbd-ontology.github.io/core/versions/{VERSION}/core.ttl +RewriteCond %{HTTP_ACCEPT} text/html +RewriteRule ^([0-9][^/]*)/?$ https://ssbd-ontology.github.io/core/versions/$1/core.html [R=303,NE,L] +RewriteRule ^([0-9][^/]*)/?$ https://ssbd-ontology.github.io/core/versions/$1/core.ttl [R=303,NE,L] + +# Source: https://w3id.org/ssbd/domain/{DOMAIN} +# Target from browser: https://ssbd-ontology.github.io/domain-{DOMAIN}/{DOMAIN}.html +# Target, otherwise: https://ssbd-ontology.github.io/domain-{DOMAIN}/{DOMAIN}.ttl +RewriteCond %{HTTP_ACCEPT} text/html +RewriteRule ^domain/(domain-)?([^/]+)/?$ https://ssbd-ontology.github.io/domain-$2/$2.html [R=303,NE,L] +RewriteRule ^domain/(domain-)?([^/]+)/?$ https://ssbd-ontology.github.io/domain-$2/$2.ttl [R=303,NE,L] +RewriteCond %{HTTP_ACCEPT} text/html +RewriteRule ^application/(application-)?([^/]+)/?$ https://ssbd-ontology.github.io/application-$2/$2.html [R=303,NE,L] +RewriteRule ^application/(application-)?([^/]+)/?$ https://ssbd-ontology.github.io/application-$2/$2.ttl [R=303,NE,L] + +# Source: https://w3id.org/ssbd/domain/{DOMAIN}/{VERSION} +# Target from browser: https://ssbd-ontology.github.io/domain-{DOMAIN}/versions/{VERSION}/{DOMAIN}.html +# Target, otherwise: https://ssbd-ontology.github.io/domain-{DOMAIN}/versions/{VERSION}/{DOMAIN}.ttl +RewriteCond %{HTTP_ACCEPT} text/html +RewriteRule ^domain/(domain-)?([^/]+)/([0-9][^/]*)/?$ https://ssbd-ontology.github.io/domain-$2/versions/$3/$2.html [R=303,NE,L] +RewriteRule ^domain/(domain-)?([^/]+)/([0-9][^/]*)/?$ https://ssbd-ontology.github.io/domain-$2/versions/$3/$2.ttl [R=303,NE,L] +RewriteCond %{HTTP_ACCEPT} text/html +RewriteRule ^application/(application-)?([^/]+)/([0-9][^/]*)/?$ https://ssbd-ontology.github.io/application-$2/versions/$3/$2.html [R=303,NE,L] +RewriteRule ^application/(application-)?([^/]+)/([0-9][^/]*)/?$ https://ssbd-ontology.github.io/application-$2/versions/$3/$2.ttl [R=303,NE,L] + + +########################################################################## +## IRIs to ontological terms +########################################################################## + +# Source: https://w3id.org/ssbd/{TERM} +# Target from browser: https://ssbd-ontology.github.io/core/core.html?section={TERM} +# Target, otherwise: https://ssbd-ontology.github.io/core/core.ttl +RewriteCond %{HTTP_ACCEPT} text/html +RewriteRule ^([^/]+)$ https://ssbd-ontology.github.io/core/core.html?section=$1 [R=303,NE,L] +RewriteRule ^([^/]+)$ https://ssbd-ontology.github.io/core/core.ttl [R=303,NE,L] + +# Source: https://w3id.org/ssbd/{VERSION}/{TERM} +# Target from browser: https://ssbd-ontology.github.io/core/versions/{VERSION}/core.html?section={TERM} +# Target, otherwise: https://ssbd-ontology.github.io/core/versions/{VERSION}/core.ttl +RewriteCond %{HTTP_ACCEPT} text/html +RewriteRule ^([0-9][^/]*)/([^/]+)$ https://ssbd-ontology.github.io/core/versions/$1/core.html?section=$2 [R=303,NE,L] +RewriteRule ^([0-9][^/]*)/([^/]+)$ https://ssbd-ontology.github.io/core/versions/$1/core.ttl [R=303,NE,L] + +# Source: https://w3id.org/ssbd/domain/{DOMAIN}/{TERM} +# Target from browser: https://ssbd-ontology.github.io/domain-{DOMAIN}/{DOMAIN}.html?section={TERM} +# Target, otherwise: https://ssbd-ontology.github.io/domain-{DOMAIN}/{DOMAIN}.ttl +RewriteCond %{HTTP_ACCEPT} text/html +RewriteRule ^domain/(domain-)?([^/]+)/([^/]+)$ https://ssbd-ontology.github.io/domain-$2/$2.html?section=$3 [R=303,NE,L] +RewriteRule ^domain/(domain-)?([^/]+)/([^/]+)$ https://ssbd-ontology.github.io/domain-$2/$2.ttl [R=303,NE,L] +RewriteCond %{HTTP_ACCEPT} text/html +RewriteRule ^application/(application-)?([^/]+)/([^/]+)$ https://ssbd-ontology.github.io/application-$2/$2.html?section=$3 [R=303,NE,L] +RewriteRule ^application/(application-)?([^/]+)/([^/]+)$ https://ssbd-ontology.github.io/application-$2/$2.ttl [R=303,NE,L] + +# Source: https://w3id.org/ssbd/domain/{DOMAIN}/{VERSION}/{TERM} +# Target from browser: https://ssbd-ontology.github.io/domain-{DOMAIN}/versions/{VERSION}/{DOMAIN}.html?section={TERM} +# Target, otherwise: https://ssbd-ontology.github.io/domain-{DOMAIN}/versions/{VERSION}/{DOMAIN}.ttl +RewriteCond %{HTTP_ACCEPT} text/html +RewriteRule ^domain/(domain-)?([^/]+)/([0-9][^/]*)/([^/]+)$ https://ssbd-ontology.github.io/domain-$2/versions/$3/$2.html?section=$4 [R=303,NE,L] +RewriteRule ^domain/(domain-)?([^/]+)/([0-9][^/]*)/([^/]+)$ https://ssbd-ontology.github.io/domain-$2/versions/$3/$2.ttl [R=303,NE,L] +RewriteCond %{HTTP_ACCEPT} text/html +RewriteRule ^application/(application-)?([^/]+)/([0-9][^/]*)/([^/]+)$ https://ssbd-ontology.github.io/application-$2/versions/$3/$2.html?section=$4 [R=303,NE,L] +RewriteRule ^application/(application-)?([^/]+)/([0-9][^/]*)/([^/]+)$ https://ssbd-ontology.github.io/application-$2/versions/$3/$2.ttl [R=303,NE,L] + + +########################################################################## +## IRIs to asserted ontologies (modules) +########################################################################## +# Note the swap of order - we match for versionIRI before the unversioned IRI. + +# Source: https://w3id.org/ssbd/core/{VERSION}/{PATH}/{MODULE} +# Target: https://github.com/ssbd-ontology/core/{VERSION}/{PATH}/{MODULE} +RewriteRule ^core/([0-9][^/]*)(/.*)?/([^/]+)$ https://raw.githubusercontent.com/ssbd-ontology/core/refs/heads/$1$2/$3.ttl [R=303,NE,L] + +# Source: https://w3id.org/ssbd/core/{PATH}/{MODULE} +# Target: https://github.com/ssbd-ontology/core/main/{PATH}/{MODULE} +RewriteRule ^core(/.*)?/([^/]+)$ https://raw.githubusercontent.com/ssbd-ontology/core/refs/heads/main$1/$2.ttl [R=303,NE,L] + +# Source: https://w3id.org/ssbd/domain/{DOMAIN}/{VERSION}/{PATH}/{MODULE} +# Target: https://github.com/ssbd-ontology/domain-{DOMAIN}/{VERSION}/{PATH}/{MODULE} +RewriteRule ^domain/(domain-)?([^/]+)/([0-9][^/]*)(/.*)?/([^/]+)$ https://raw.githubusercontent.com/ssbd-ontology/domain-$2/refs/heads/$3$4/$5.ttl [R=303,NE,L] +RewriteRule ^application/(application-)?([^/]+)/([0-9][^/]*)(/.*)?/([^/]+)$ https://raw.githubusercontent.com/ssbd-ontology/application-$2/refs/heads/$3$4/$5.ttl [R=303,NE,L] + +# Source: https://w3id.org/ssbd/domain/{DOMAIN}/{PATH}/{MODULE} +# Target: https://github.com/ssbd-ontology/domain-{DOMAIN}/main/{PATH}/{MODULE} +RewriteRule ^domain/(domain-)?([^/]+)(/.*)?/([^/]+)$ https://raw.githubusercontent.com/ssbd-ontology/domain-$2/refs/heads/main$3/$4.ttl [R=303,NE,L] +RewriteRule ^application/(application-)?([^/]+)(/.*)?/([^/]+)$ https://raw.githubusercontent.com/ssbd-ontology/application-$2/refs/heads/main$3/$4.ttl [R=303,NE,L] + + +########################################################################## +## Special redirections +########################################################################## + +# Source: {NAMESPACE}/html/ +# Target: HTML documentation on GitHub Pages +RewriteRule ^html/$ https://ssbd-ontology.github.io/core/core.html [R=303,NE,L] +RewriteRule ^([0-9][^/]*)/html/$ https://ssbd-ontology.github.io/core/versions/$1/core.html [R=303,NE,L] +RewriteRule ^domain/(domain-)?([^/]+)/html/$ https://ssbd-ontology.github.io/domain-$2/$2.html [R=303,NE,L] +RewriteRule ^application/(application-)?([^/]+)/html/$ https://ssbd-ontology.github.io/application-$2/$2.html [R=303,NE,L] +RewriteRule ^domain/(domain-)?([^/]+)/([0-9][^/]*)/html/$ https://ssbd-ontology.github.io/domain-$2/versions/$3/$2.html [R=303,NE,L] +RewriteRule ^application/(application-)?([^/]+)/([0-9][^/]*)/html/$ https://ssbd-ontology.github.io/application-$2/versions/$3/$2.html [R=303,NE,L] + +# Source: {NAMESPACE}/turtle/ +# Target: Squashed turtle file on GitHub Pages +RewriteRule ^turtle/$ https://ssbd-ontology.github.io/core/core.ttl [R=303,NE,L] +RewriteRule ^([0-9][^/]*)/turtle/$ https://ssbd-ontology.github.io/core/versions/$1/core.ttl [R=303,NE,L] +RewriteRule ^domain/(domain-)?([^/]+)/turtle/$ https://ssbd-ontology.github.io/domain-$2/$2.ttl [R=303,NE,L] +RewriteRule ^application/(application-)?([^/]+)/turtle/$ https://ssbd-ontology.github.io/application-$2/$2.ttl [R=303,NE,L] +RewriteRule ^domain/(domain-)?([^/]+)/([0-9][^/]*)/turtle/$ https://ssbd-ontology.github.io/domain-$2/versions/$3/$2.ttl [R=303,NE,L] +RewriteRule ^application/(application-)?([^/]+)/([0-9][^/]*)/turtle/$ https://ssbd-ontology.github.io/application-$2/versions/$3/$2.ttl [R=303,NE,L] + +# Source: {NAMESPACE}/inferred/ +# Target: Inferred ontology on GitHub Pages +RewriteRule ^inferred/$ https://ssbd-ontology.github.io/core/core-inferred.ttl [R=303,NE,L] +RewriteRule ^([0-9][^/]*)/inferred/$ https://ssbd-ontology.github.io/core/versions/$1/core-inferred.ttl [R=303,NE,L] +RewriteRule ^domain/(domain-)?([^/]+)/inferred/$ https://ssbd-ontology.github.io/domain-$2/$2-inferred.ttl [R=303,NE,L] +RewriteRule ^application/(application-)?([^/]+)/inferred/$ https://ssbd-ontology.github.io/application-$2/$2-inferred.ttl [R=303,NE,L] +RewriteRule ^domain/(domain-)?([^/]+)/([0-9][^/]*)/inferred/$ https://ssbd-ontology.github.io/domain-$2/versions/$3/$2-inferred.ttl [R=303,NE,L] +RewriteRule ^application/(application-)?([^/]+)/([0-9][^/]*)/inferred/$ https://ssbd-ontology.github.io/application-$2/versions/$3/$2-inferred.ttl [R=303,NE,L] + +# Source: {NAMESPACE}/dependencies/ +# Target: Inferred ontology on GitHub Pages +RewriteRule ^dependencies/$ https://ssbd-ontology.github.io/core/core-dependencies.ttl [R=303,NE,L] +RewriteRule ^([0-9][^/]*)/dependencies/$ https://ssbd-ontology.github.io/core/versions/$1/core-dependencies.ttl [R=303,NE,L] +RewriteRule ^domain/(domain-)?([^/]+)/dependencies/$ https://ssbd-ontology.github.io/domain-$2/$2-dependencies.ttl [R=303,NE,L] +RewriteRule ^application/(application-)?([^/]+)/dependencies/$ https://ssbd-ontology.github.io/application-$2/$2-dependencies.ttl [R=303,NE,L] +RewriteRule ^domain/(domain-)?([^/]+)/([0-9][^/]*)/dependencies/$ https://ssbd-ontology.github.io/domain-$2/versions/$3/$2-dependencies.ttl [R=303,NE,L] +RewriteRule ^application/(application-)?([^/]+)/([0-9][^/]*)/dependencies/$ https://ssbd-ontology.github.io/application-$2/versions/$3/$2-dependencies.ttl [R=303,NE,L] + +# Source: {NAMESPACE}/context/ +# Target: JSON-LD context on GitHub Pages +RewriteRule ^context/$ https://ssbd-ontology.github.io/core/context/context.json [R=303,NE,L] +RewriteRule ^([0-9][^/]*)/context/$ https://ssbd-ontology.github.io/core/versions/$1/context/context.json [R=303,NE,L] +RewriteRule ^domain/(domain-)?([^/]+)/context/$ https://ssbd-ontology.github.io/domain-$2/context/context.json [R=303,NE,L] +RewriteRule ^application/(application-)?([^/]+)/context/$ https://ssbd-ontology.github.io/application-$2/context/context.json [R=303,NE,L] +RewriteRule ^domain/(domain-)?([^/]+)/([0-9][^/]*)/context/$ https://ssbd-ontology.github.io/domain-$2/versions/$3/context/context.json [R=303,NE,L] +RewriteRule ^application/(application-)?([^/]+)/([0-9][^/]*)/context/$ https://ssbd-ontology.github.io/application-$2/versions/$3/context/context.json [R=303,NE,L] + +# Source: {NAMESPACE}/context/{CONTEXTNAME}/ +# Target: JSON-LD context on GitHub Pages +RewriteRule ^context/([^/]+)/$ https://ssbd-ontology.github.io/core/context/$1.json [R=303,NE,L] +RewriteRule ^([0-9][^/]*)/context/([^/]+)/$ https://ssbd-ontology.github.io/core/versions/$1/context/$2.json [R=303,NE,L] +RewriteRule ^domain/(domain-)?([^/]+)/context/([^/]+)/$ https://ssbd-ontology.github.io/domain-$2/context/$3.json [R=303,NE,L] +RewriteRule ^application/(application-)?([^/]+)/context/([^/]+)/$ https://ssbd-ontology.github.io/application-$2/context/$3.json [R=303,NE,L] +RewriteRule ^domain/(domain-)?([^/]+)/([0-9][^/]*)/context/([^/]+)/$ https://ssbd-ontology.github.io/domain-$2/versions/$3/context/$4.json [R=303,NE,L] +RewriteRule ^application/(application-)?([^/]+)/([0-9][^/]*)/context/([^/]+)/$ https://ssbd-ontology.github.io/application-$2/versions/$3/context/$4.json [R=303,NE,L] diff --git a/ssbd/README.md b/ssbd/README.md new file mode 100644 index 0000000000..e3c19eb389 --- /dev/null +++ b/ssbd/README.md @@ -0,0 +1,78 @@ +# SSbD +This [W3ID](https://w3id.org) repository provides a persistent namespace for IRIs for the Safety and Sustainability by Design (SSbD) community. + +## Redirection rules + + +### Substitutions +Variable names used in the IRIs below. + +* **{VERSION}**: Version number. Must start with a digit, e.g. "0.5.3". +* **{NAME}**: Name of SSbD domain or application ontology. +* **{TERM}**: Final component of the IRI of an ontological concept. +* **{PATH}**: Directory path. May be empty. +* **{MODULE}**: Name of a (sub-)ontology module. Should be the file name with the .ttl extension stripped off. +* **{CONTEXTNAME}**: Name of an additional JSON-LD context. +* **{NAMESPACE}**: IRI to a namespace, see below. + + +### IRIs to namespaces +These must follow any of the following patterns: + +* https://w3id.org/ssbd -> SSbD Core Ontology, latest +* https://w3id.org/ssbd/{VERSION} -> SSbD Core Ontology, given version +* https://w3id.org/ssbd/domain/{NAME} -> SSbD domain ontology, latest +* https://w3id.org/ssbd/domain/{NAME}/{VERSION} -> SSbD domain ontology, given version +* https://w3id.org/ssbd/application/{NAME} -> SSbD application ontology, latest +* https://w3id.org/ssbd/application/{NAME}/{VERSION} -> SSbD application ontology, given version + +The IRI can have an optional trailing slash. +If the request comes from a browser, the redirection will be to a html file, otherwise to a turtle file. + + +### IRIs to ontological terms +These must follow any of the following patterns: + +* https://w3id.org/ssbd/{TERM} -> Term in the SSbD Core Ontology, latest +* https://w3id.org/ssbd/{VERSION}/{TERM} -> Term in the SSbD Core Ontology, given version +* https://w3id.org/ssbd/domain/{NAME}/{TERM} -> Term in a SSbD domain ontology, latest +* https://w3id.org/ssbd/domain/{NAME}/{VERSION}/{TERM} -> Term in a SSbD domain ontology, given version +* https://w3id.org/ssbd/application/{NAME}/{TERM} -> Term in a SSbD application ontology, latest +* https://w3id.org/ssbd/application/{NAME}/{VERSION}/{TERM} -> Term in a SSbD application ontology, given version + +Note that there is no trailing slash. +If the request comes from a browser, the redirection will be to a html file, otherwise to a turtle file. + + +### IRIs to asserted ontologies (modules) + +* https://w3id.org/ssbd/core/{PATH}/{MODULE} -> Module in the SSbD Core Ontology, latest +* https://w3id.org/ssbd/core/{VERSION}/{PATH}/{MODULE} -> Module in the SSbD Core Ontology, latest +* https://w3id.org/ssbd/domain/{NAME}/{PATH}/{MODULE} -> Module in domain ontology, latest +* https://w3id.org/ssbd/domain/{NAME}/{VERSION}/{PATH}/{MODULE} -> Module in domain ontology, given version +* https://w3id.org/ssbd/application/{NAME}/{PATH}/{MODULE} -> Module in application ontology, latest +* https://w3id.org/ssbd/application/{NAME}/{VERSION}/{PATH}/{MODULE} -> Module in application ontology, given version + +Note that there is no trailing slash. +Will always be redirected to turtle files in the GitHub repo. + + +### Special redirections + +* {NAMESPACE}/html/ -> Always redirect to HTML documentation +* {NAMESPACE}/turtle/ -> Always redirect to turtle file +* {NAMESPACE}/inferred/ -> Inferred ontology +* {NAMESPACE}/dependencies/ -> Dependencies. Turtle file that imports all imported ontologies +* {NAMESPACE}/context/ -> JSON-LD context +* {NAMESPACE}/context/{CONTEXTNAME} -> Additional named JSON-LD context + + + +## Contacts +This space is maintained by the [PINK Project](https://pink-project.eu/). +Contact email: [contact@pink-project.eu](mailto:contact@pink-project.eu) + +Current maintainers: +* [Jesper Friis](https://github.com/jesper-friis) +* [Francesca L. Bleken](https://github.com/francescalb) +* [Joh Dokler](https://github.com/joahim) diff --git a/sssom/.htaccess b/sssom/.htaccess index f4f362af08..fc34982d5f 100644 --- a/sssom/.htaccess +++ b/sssom/.htaccess @@ -21,7 +21,7 @@ RewriteRule ^commons/disease/?$ https://github.com/mapping-commons/disease-mappi RewriteRule ^commons/disease/mappings/(.+) https://raw.githubusercontent.com/mapping-commons/disease-mappings/master/mappings/$1 [R=302,L] RewriteRule ^commons/monarch/?$ https://github.com/monarch-initiative/monarch-mapping-commons [R=302,L] -RewriteRule ^commons/monarch/mappings/(.+) https://raw.githubusercontent.com/monarch-initiative/monarch-mapping-commons/main/mappings/$1 [R=302] +RewriteRule ^commons/monarch/mappings/(.+) https://data.monarchinitiative.org/mappings/latest/$1 [R=302,L] # Fall through (if none of the above matches, redirect to the docs) RewriteRule ^(.+) https://mapping-commons.github.io/sssom/$1 [R=302,L] diff --git a/standards/README.md b/standards/README.md index 0c209e5083..d799c40a46 100644 --- a/standards/README.md +++ b/standards/README.md @@ -2,18 +2,29 @@ Permanent URLs jointly defined and managed by 4 International Standards Organizations: -- [CEN/CENELEC](https://www.cencenelec.eu/) - European Committee for Standardization & European Electrotechnical Committee for Standardization. -- [IEC](https://www.iec.ch/) - International Electrotechnical Commission -- [ISO](https://www.iso.org/home.html) - International Organization for Standardization +- [CEN/CENELEC](https://www.cencenelec.eu/) - The European Committee for Standardization & European Committee for Electrotechnical Standardization. +- [IEC](https://www.iec.ch/) - The International Electrotechnical Commission +- [ISO](https://www.iso.org/home.html) - The International Organization for Standardization URL redirections defined in this directory and subdirectories are used by IT solutions specified and implemented by joint projects of the above organizations. -The first project to rely on ```w3id``` instead of ```purl``` URLs is -[IEC/ISO SMART](https://www.iso.org/smart). +> [!NOTE] +> Administrators of other globally-scoped Standards Development Organizations: +> if you wish to register redirections for your projects, +> please contact the IEC and ISO maintainers mentioned below. -Allowed maintainers of these redirects are: -- Laurent Tettoni, tettoni@iso.org, github: [ltettoni](https://github.com/ltettoni) -- StΓ©phane da Costa Silva, sco@iec.ch, github: [stephanecosta](https://github.com/stephanecosta) -- Mikalai Zubok, Mikalai_Zubok@epam.com, github: [mzubok](https://github.com/mzubok) +The first project to rely on ```w3id``` instead of ```purl``` URLs is [IEC/ISO SMART](https://www.iso.org/smart). + +Allowed maintainers of the "/standards" identifier are: + +- For IEC/ISO's Single Delivery Unit: + - Mohameth FranΓ§ois Sy, sy@smartsdu.org, github: [MFSY](https://github.com/MFSY) + - Panagiotis Mitzias, ext-mitzias@smartsdu.org, github: [panmitz](https://github.com/panmitz) +- For ISO: + - Laurent Tettoni, tettoni@iso.org, github: [ltettoni](https://github.com/ltettoni) +- For IEC: + - StΓ©phane da Costa Silva, sco@iec.ch, github: [stephanecosta](https://github.com/stephanecosta) +- For CCMC (the [CEN-CENELEC Management Centre](https://www.cencenelec.eu/management-centre/)): + - Eric Cornez, ecornez@cencenelec.eu diff --git a/ts4nfdi/.htaccess b/ts4nfdi/.htaccess new file mode 100644 index 0000000000..2d743b6c77 --- /dev/null +++ b/ts4nfdi/.htaccess @@ -0,0 +1,6 @@ +RewriteEngine On + +RewriteRule ^collection/?$ https://terminology.services.base4nfdi.de/collection [R=302,L] +RewriteRule ^collection/([0-9a-fA-F-]+)$ https://terminology.services.base4nfdi.de/collection/$1 [R=302,L] +RewriteRule ^entityset/?$ https://terminology.services.base4nfdi.de/entityset [R=302,L] +RewriteRule ^entityset/([0-9a-fA-F-]+)$ https://terminology.services.base4nfdi.de/entityset/$1 [R=302,L] diff --git a/ts4nfdi/README.md b/ts4nfdi/README.md new file mode 100644 index 0000000000..c265a9b2bd --- /dev/null +++ b/ts4nfdi/README.md @@ -0,0 +1,25 @@ +## Terminology Services 4 NFDI (TS4NFDI) + + +This W3ID provides a persistent IRI namespace for terminology collections hosted by the [Terminology Services 4 NFDI (TS4NFDI)](https://terminology.services.base4nfdi.de/) project. TS4NFDI is a cross-domain service for the provision, curation, development, harmonization, and mapping of terminologies. It aims to facilitate consensus-building and interoperability of services across disciplines to achieve a shared knowledge representation and knowledge engineering framework. The service seeks to integrate and converge individual solutions into a standardized, interoperable, and sustainable architecture. + +The redirection for the terminology collection of the NFDI4Chem project looks like this: + +https://w3id.org/ts4nfdi/collection/729ad568-78a1-4a5c-ba41-904571c84646 redirects to https://terminology.services.base4nfdi.de/collection/729ad568-78a1-4a5c-ba41-904571c84646 + + + +Contact: + +It is possible to contact the complete project team via the contact form of the TS4NFDI Service Portal: + +[https://terminology.services.base4nfdi.de/contact](https://terminology.services.base4nfdi.de/contact) + +or via GitHub: + +[https://github.com/ts4nfdi/](https://github.com/ts4nfdi/) + +Maintainers: +- Pooya Oladazimi (GitHub: [@Pooya-Oladazimi](https://github.com/Pooya-Oladazimi/); ORCID: [0000-0002-5117-070X](https://orcid.org/0000-0002-5117-070X) +- Roman Baum (GitHub: [@rombaum](https://github.com/rombaum); ORCID: [0000-0001-5246-9351](https://orcid.org/0000-0001-5246-9351) +- Ralph SchΓ€fermeier (GitHub: [@RalphBln](https://github.com/RalphBln); ORCID: [0000-0002-4349-6726](https://orcid.org/0000-0002-4349-6726) diff --git a/ucomm/.htaccess b/ucomm/.htaccess new file mode 100644 index 0000000000..9e6ccf3371 --- /dev/null +++ b/ucomm/.htaccess @@ -0,0 +1,22 @@ +# Declare MIME type for RDF/XML +AddType application/rdf+xml .rdf + +# Enable rewrite engine +RewriteEngine On + +# ---- HTML version via LODE with reasoner (for human users / browsers) ---- +# Detect browsers via Accept headers and User-Agent +RewriteCond %{HTTP_ACCEPT} !application/rdf\+xml.*(text/html|application/xhtml\+xml) +RewriteCond %{HTTP_ACCEPT} text/html [OR] +RewriteCond %{HTTP_ACCEPT} application/xhtml\+xml [OR] +RewriteCond %{HTTP_USER_AGENT} (Mozilla|Chrome|Safari|Edge|Opera) [NC] + +# Redirect to LODE with OWLAPI preprocessing and reasoning +RewriteRule ^$ https://w3id.org/lode/owlapi/reasoner/https://raw.githubusercontent.com/fazia97/ucomm-ontology/main/ucommXML.rdf [R=303,L] + +# ---- RDF/XML version for semantic web clients (ProtΓ©gΓ©, scripts, etc.) ---- +RewriteCond %{HTTP_ACCEPT} application/rdf\+xml +RewriteRule ^$ https://raw.githubusercontent.com/fazia97/ucomm-ontology/main/ucommXML.rdf [R=303,L] + +# ---- Default fallback: serve RDF/XML ---- +RewriteRule ^$ https://raw.githubusercontent.com/fazia97/ucomm-ontology/main/ucommXML.rdf [R=303,L] \ No newline at end of file diff --git a/ucomm/README.md b/ucomm/README.md new file mode 100644 index 0000000000..08592ee5d3 --- /dev/null +++ b/ucomm/README.md @@ -0,0 +1,18 @@ +# UCOMM Ontology + +This w3id identifier provides a persistent URI for the UCOMM (Unified Cataloguing Ontology Model for Manuscripts) ontology. + +## URI +https://w3id.org/ucomm + +## Description +This identifier redirects to the RDF/XML version of the ontology and to its HTML documentation via LODE. + +The ontology is hosted on GitHub : https://github.com/fazia97/ucomm-ontology + +## Maintainer +- Name: Fazia BRINIS +- GitHub: fazia97 +- Email: brinisfazia97@gmail.com + + diff --git a/uk/curriculum/.htaccess b/uk/curriculum/.htaccess index 9dcfb8d6b6..45ab3e0473 100644 --- a/uk/curriculum/.htaccess +++ b/uk/curriculum/.htaccess @@ -2,430 +2,250 @@ # the UK Curriculum Ontology (UKCO) and related resources # published by Oak National Academy. # -# The namespace https://w3id.org/uk/curriculum/ redirects to: -# https://github.com/oaknational/dfe-curriculum-ontology/ -# # This W3ID is used to provide persistent, resolvable URIs # for curriculum concepts, relationships, and metadata # used in educational technology, data integration, # and linked open data applications. # -# ## Contact +# Contact # Maintainer: Mark Hodierne # Email: eng.mhodierne@thenational.academy # GitHub: https://github.com/oaknational RewriteEngine on -# ---------------------------------------------------------------------- -# CORE ONTOLOGY -# ---------------------------------------------------------------------- - -# Versioned ontology IRIs (used in owl:versionIRI) -RewriteRule ^core/curriculum-ontology/([0-9]+\.[0-9]+\.[0-9]+)$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/ontology/versions/dfe-curriculum-ontology-$1.ttl [R=303,L] - -# Main ontology file (latest version) -RewriteRule ^core/curriculum-ontology\.ttl$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/ontology/dfe-curriculum-ontology.ttl [R=303,L] - -RewriteRule ^core/curriculum-ontology$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/ontology/dfe-curriculum-ontology.ttl [R=303,L] +# ====================================================================== +# NATIONAL CURRICULUM FOR ENGLAND - ONTOLOGY +# ====================================================================== -# Core ontology namespace (for individual terms like curric:Phase) -RewriteRule ^core/$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/ontology/dfe-curriculum-ontology.ttl [R=303,L] - -# Ontology documentation - HTML requests go to GitHub Pages +# HTML requests β†’ GitHub Pages documentation RewriteCond %{HTTP_ACCEPT} text/html [NC,OR] RewriteCond %{HTTP_USER_AGENT} Mozilla [NC] -RewriteRule ^core/?$ https://oaknational.github.io/dfe-curriculum-ontology/ [R=303,L] +RewriteRule ^nat-ontology/?$ https://oaknational.github.io/national-curriculum-ontology-development/ [R=303,L] -# ---------------------------------------------------------------------- -# CORE ONTOLOGY CONSTRAINTS (SHACL) -# ---------------------------------------------------------------------- +# Versioned ontology IRIs (used in owl:versionIRI) +RewriteRule ^nat-ontology/national-curriculum-ontology/([0-9]+\.[0-9]+\.[0-9]+)$ https://raw.githubusercontent.com/oaknational/national-curriculum-ontology-development/main/ontology/versions/national-curriculum-ontology-$1.ttl [R=303,L] -# Versioned constraints -RewriteRule ^core/shapes/([0-9]+\.[0-9]+\.[0-9]+)$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/ontology/versions/dfe-curriculum-constraints-$1.ttl [R=303,L] +# Main ontology file (latest version) - with and without .ttl extension +RewriteRule ^nat-ontology/national-curriculum-ontology(?:/|\.ttl)?$ https://raw.githubusercontent.com/oaknational/national-curriculum-ontology-development/main/ontology/national-curriculum-ontology.ttl [R=303,L] -# Main constraints file (latest version) -RewriteRule ^core/shapes\.ttl$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/ontology/dfe-curriculum-constraints.ttl [R=303,L] +# Core ontology namespace (for individual terms like curric:Phase) +RewriteRule ^nat-ontology/$ https://raw.githubusercontent.com/oaknational/national-curriculum-ontology-development/main/ontology/national-curriculum-ontology.ttl [R=303,L] -RewriteRule ^core/shapes$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/ontology/dfe-curriculum-constraints.ttl [R=303,L] +# ====================================================================== +# NATIONAL CURRICULUM FOR ENGLAND - SHACL CONSTRAINTS +# ====================================================================== +# Versioned constraints +RewriteRule ^nat-ontology/shapes/([0-9]+\.[0-9]+\.[0-9]+)$ https://raw.githubusercontent.com/oaknational/national-curriculum-ontology-development/main/ontology/versions/national-curriculum-constraints-$1.ttl [R=303,L] -# ---------------------------------------------------------------------- -# NATIONAL CURRICULUM FOR ENGLAND - TEMPORAL STRUCTURE -# ---------------------------------------------------------------------- +# Main constraints file (latest version) - with and without .ttl extension +RewriteRule ^nat-ontology/shapes(?:/|\.ttl)?$ https://raw.githubusercontent.com/oaknational/national-curriculum-ontology-development/main/ontology/national-curriculum-constraints.ttl [R=303,L] -# Versioned programme structure -RewriteRule ^england/temporal-structure/([0-9]+\.[0-9]+\.[0-9]+)$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/versions/$1/temporal-structure-$1.ttl [R=303,L] +# ====================================================================== +# NATIONAL CURRICULUM FOR ENGLAND - TEMPORAL STRUCTURE (2014/2028) +# ====================================================================== -# Main programme structure file (latest version) -RewriteRule ^england/temporal-structure\.ttl$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/temporal-structure.ttl [R=303,L] +# Versioned temporal structure +RewriteRule ^nat-data-(2014|2028)/temporal-structure/([0-9]+\.[0-9]+\.[0-9]+)$ https://raw.githubusercontent.com/oaknational/national-curriculum-ontology-development/main/data/natcurric-$1/versions/$2/temporal-structure-$2.ttl [R=303,L] -RewriteRule ^england/temporal-structure$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/temporal-structure.ttl [R=303,L] +# Main temporal structure file - with and without .ttl extension +RewriteRule ^nat-data-(2014|2028)/temporal-structure(?:/|\.ttl)?$ https://raw.githubusercontent.com/oaknational/national-curriculum-ontology-development/main/data/natcurric-$1/temporal-structure.ttl [R=303,L] -# England namespace (for individual terms like eng:key-stage-3) -RewriteRule ^england/$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/temporal-structure.ttl [R=303,L] +# Data namespace root (for individual terms like eng:key-stage-3) +RewriteRule ^nat-data-(2014|2028)/?$ https://raw.githubusercontent.com/oaknational/national-curriculum-ontology-development/main/data/natcurric-$1/temporal-structure.ttl [R=303,L] -# ---------------------------------------------------------------------- -# NATIONAL CURRICULUM FOR ENGLAND - THEMES -# ---------------------------------------------------------------------- +# ====================================================================== +# NATIONAL CURRICULUM FOR ENGLAND - THEMES (2014/2028) +# ====================================================================== # Versioned themes -RewriteRule ^england/themes/([0-9]+\.[0-9]+\.[0-9]+)$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/versions/$1/themes-$1.ttl [R=303,L] - -# Main themes file (latest version) -RewriteRule ^england/themes\.ttl$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/themes.ttl [R=303,L] - -RewriteRule ^england/themes$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/themes.ttl [R=303,L] - -# ---------------------------------------------------------------------- -# NATIONAL CURRICULUM FOR ENGLAND - INDIVIDUAL RESOURCE CONTENT NEGOTIATION -# ---------------------------------------------------------------------- -# These handle content negotiation for individual curriculum resources - -# Subject resources - Turtle format -RewriteCond %{HTTP_ACCEPT} text/turtle [NC] -RewriteRule ^england/([a-z0-9-]+)$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/distributions/$1.ttl [R=303,L] - -# Subject resources - RDF/XML format -RewriteCond %{HTTP_ACCEPT} application/rdf\+xml [NC] -RewriteRule ^england/([a-z0-9-]+)$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/distributions/$1.rdf [R=303,L] - -# Subject resources - JSON-LD format -RewriteCond %{HTTP_ACCEPT} application/ld\+json [NC] -RewriteRule ^england/([a-z0-9-]+)$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/distributions/$1.jsonld [R=303,L] - -# Subject resources - N-Triples format -RewriteCond %{HTTP_ACCEPT} application/n-triples [NC] -RewriteRule ^england/([a-z0-9-]+)$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/distributions/$1.nt [R=303,L] - -# Subject resources - HTML (browsers) - redirect to web interface -RewriteCond %{HTTP_ACCEPT} text/html [NC,OR] -RewriteCond %{HTTP_USER_AGENT} Mozilla [NC] -RewriteRule ^england/([a-z0-9-]+)$ https://curriculum.education.gov.uk/id/subjects/$1 [R=303,L] - -# Subject with key stage - Turtle format -RewriteCond %{HTTP_ACCEPT} text/turtle [NC] -RewriteRule ^england/([a-z0-9-]+)/(key-stage-[0-9]+)$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/distributions/$1-$2.ttl [R=303,L] - -# Subject with key stage - RDF/XML format -RewriteCond %{HTTP_ACCEPT} application/rdf\+xml [NC] -RewriteRule ^england/([a-z0-9-]+)/(key-stage-[0-9]+)$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/distributions/$1-$2.rdf [R=303,L] - -# Subject with key stage - JSON-LD format -RewriteCond %{HTTP_ACCEPT} application/ld\+json [NC] -RewriteRule ^england/([a-z0-9-]+)/(key-stage-[0-9]+)$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/distributions/$1-$2.jsonld [R=303,L] - -# Subject with key stage - N-Triples format -RewriteCond %{HTTP_ACCEPT} application/n-triples [NC] -RewriteRule ^england/([a-z0-9-]+)/(key-stage-[0-9]+)$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/distributions/$1-$2.nt [R=303,L] - -# Subject with key stage - HTML (browsers) - redirect to web interface -RewriteCond %{HTTP_ACCEPT} text/html [NC,OR] -RewriteCond %{HTTP_USER_AGENT} Mozilla [NC] -RewriteRule ^england/([a-z0-9-]+)/(key-stage-[0-9]+)$ https://curriculum.education.gov.uk/id/subjects/$1?keystage=$2 [R=303,L] - -# Default: if no Accept header matched, return Turtle (default RDF format) -RewriteRule ^england/([a-z0-9-]+)$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/distributions/$1.ttl [R=303,L] - -# Default for key stage specific: return Turtle -RewriteRule ^england/([a-z0-9-]+)/(key-stage-[0-9]+)$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/distributions/$1-$2.ttl [R=303,L] - -# ---------------------------------------------------------------------- -# NOTES: -# -# 1. These rules redirect individual resource URIs to either: -# - Static RDF files in /distributions/ for machine clients -# - HTML web interface for human browsers -# -# 2. File naming convention in distributions/: -# - Full subject: {subject}.{ext} (e.g., mathematics.ttl) -# - Key stage specific: {subject}-{keystage}.{ext} (e.g., mathematics-key-stage-3.ttl) -# -# 3. Insert these rules BEFORE existing subject-specific rules -# so content negotiation happens before hardcoded redirects -# -# 4. The (key-stage-[0-9]+) pattern matches key-stage-1, key-stage-2, etc. -# -# 5. For HTML requests, we check both Accept header AND User-Agent -# to catch browsers that send */* in Accept header -# -# ---------------------------------------------------------------------- - -# ---------------------------------------------------------------------- -# NATIONAL CURRICULUM FOR ENGLAND - HISTORY SUBJECT -# ---------------------------------------------------------------------- - -# Versioned history programme structure -RewriteRule ^england/history-programme-structure/([0-9]+\.[0-9]+\.[0-9]+)$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/history/versions/$1/history-programme-structure-$1.ttl [R=303,L] - -# Main history programme structure file (latest version) -RewriteRule ^england/history-programme-structure\.ttl$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/history/history-programme-structure.ttl [R=303,L] - -RewriteRule ^england/history-programme-structure$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/history/history-programme-structure.ttl [R=303,L] - -# Versioned history knowledge taxonomy -RewriteRule ^england/history-knowledge-taxonomy/([0-9]+\.[0-9]+\.[0-9]+)$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/history/versions/$1/history-knowledge-taxonomy-$1.ttl [R=303,L] - -# Main history knowledge taxonomy file (latest version) -RewriteRule ^england/history-knowledge-taxonomy\.ttl$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/history/history-knowledge-taxonomy.ttl [R=303,L] - -RewriteRule ^england/history-knowledge-taxonomy$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/history/history-knowledge-taxonomy.ttl [R=303,L] - -# ---------------------------------------------------------------------- -# NATIONAL CURRICULUM FOR ENGLAND - GEOGRAPHY SUBJECT -# ---------------------------------------------------------------------- - -# Versioned geography programme structure -RewriteRule ^england/geography-programme-structure/([0-9]+\.[0-9]+\.[0-9]+)$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/geography/versions/$1/geography-programme-structure-$1.ttl [R=303,L] - -# Main geography programme structure file (latest version) -RewriteRule ^england/geography-programme-structure\.ttl$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/geography/geography-programme-structure.ttl [R=303,L] - -RewriteRule ^england/geography-programme-structure$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/geography/geography-programme-structure.ttl [R=303,L] - -# Versioned geography knowledge taxonomy -RewriteRule ^england/geography-knowledge-taxonomy/([0-9]+\.[0-9]+\.[0-9]+)$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/geography/versions/$1/geography-knowledge-taxonomy-$1.ttl [R=303,L] - -# Main geography knowledge taxonomy file (latest version) -RewriteRule ^england/geography-knowledge-taxonomy\.ttl$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/geography/geography-knowledge-taxonomy.ttl [R=303,L] +RewriteRule ^nat-data-(2014|2028)/themes/([0-9]+\.[0-9]+\.[0-9]+)$ https://raw.githubusercontent.com/oaknational/national-curriculum-ontology-development/main/data/natcurric-$1/versions/$2/themes-$2.ttl [R=303,L] -RewriteRule ^england/geography-knowledge-taxonomy$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/geography/geography-knowledge-taxonomy.ttl [R=303,L] +# Main themes file - with and without .ttl extension +RewriteRule ^nat-data-(2014|2028)/themes(?:/|\.ttl)?$ https://raw.githubusercontent.com/oaknational/national-curriculum-ontology-development/main/data/natcurric-$1/themes.ttl [R=303,L] -# ---------------------------------------------------------------------- -# NATIONAL CURRICULUM FOR ENGLAND - BIOLOGY SUBJECT -# ---------------------------------------------------------------------- - -# Versioned biology programme structure -RewriteRule ^england/biology-programme-structure/([0-9]+\.[0-9]+\.[0-9]+)$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/biology/versions/$1/biology-programme-structure-$1.ttl [R=303,L] - -# Main biology programme structure file (latest version) -RewriteRule ^england/biology-programme-structure\.ttl$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/biology/biology-programme-structure.ttl [R=303,L] - -RewriteRule ^england/biology-programme-structure$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/biology/biology-programme-structure.ttl [R=303,L] - -# Versioned biology knowledge taxonomy -RewriteRule ^england/biology-knowledge-taxonomy/([0-9]+\.[0-9]+\.[0-9]+)$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/biology/versions/$1/biology-knowledge-taxonomy-$1.ttl [R=303,L] - -# Main biology knowledge taxonomy file (latest version) -RewriteRule ^england/biology-knowledge-taxonomy\.ttl$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/biology/biology-knowledge-taxonomy.ttl [R=303,L] - -RewriteRule ^england/biology-knowledge-taxonomy$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/biology/biology-knowledge-taxonomy.ttl [R=303,L] +# ====================================================================== +# NATIONAL CURRICULUM FOR ENGLAND - SUBJECT FILES (2014/2028) +# ====================================================================== # ---------------------------------------------------------------------- -# NATIONAL CURRICULUM FOR ENGLAND - CHEMISTRY SUBJECT +# Programme Structure (all subjects) # ---------------------------------------------------------------------- -# Versioned chemistry programme structure -RewriteRule ^england/chemistry-programme-structure/([0-9]+\.[0-9]+\.[0-9]+)$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/chemistry/versions/$1/chemistry-programme-structure-$1.ttl [R=303,L] - -# Main chemistry programme structure file (latest version) -RewriteRule ^england/chemistry-programme-structure\.ttl$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/chemistry/chemistry-programme-structure.ttl [R=303,L] - -RewriteRule ^england/chemistry-programme-structure$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/chemistry/chemistry-programme-structure.ttl [R=303,L] - -# Versioned chemistry knowledge taxonomy -RewriteRule ^england/chemistry-knowledge-taxonomy/([0-9]+\.[0-9]+\.[0-9]+)$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/chemistry/versions/$1/chemistry-knowledge-taxonomy-$1.ttl [R=303,L] - -# Main chemistry knowledge taxonomy file (latest version) -RewriteRule ^england/chemistry-knowledge-taxonomy\.ttl$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/chemistry/chemistry-knowledge-taxonomy.ttl [R=303,L] - -RewriteRule ^england/chemistry-knowledge-taxonomy$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/chemistry/chemistry-knowledge-taxonomy.ttl [R=303,L] - -# ---------------------------------------------------------------------- -# NATIONAL CURRICULUM FOR ENGLAND - PHYSICS SUBJECT -# ---------------------------------------------------------------------- - -# Versioned physics programme structure -RewriteRule ^england/physics-programme-structure/([0-9]+\.[0-9]+\.[0-9]+)$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/physics/versions/$1/physics-programme-structure-$1.ttl [R=303,L] - -# Main physics programme structure file (latest version) -RewriteRule ^england/physics-programme-structure\.ttl$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/physics/physics-programme-structure.ttl [R=303,L] - -RewriteRule ^england/physics-programme-structure$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/physics/physics-programme-structure.ttl [R=303,L] - -# Versioned physics knowledge taxonomy -RewriteRule ^england/physics-knowledge-taxonomy/([0-9]+\.[0-9]+\.[0-9]+)$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/physics/versions/$1/physics-knowledge-taxonomy-$1.ttl [R=303,L] - -# Main physics knowledge taxonomy file (latest version) -RewriteRule ^england/physics-knowledge-taxonomy\.ttl$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/physics/physics-knowledge-taxonomy.ttl [R=303,L] +# Versioned programme structure +RewriteRule ^nat-data-(2014|2028)/(biology|chemistry|physics|combined-science|science|history|geography|mathematics|english|citizenship)-programme-structure/([0-9]+\.[0-9]+\.[0-9]+)$ https://raw.githubusercontent.com/oaknational/national-curriculum-ontology-development/main/data/natcurric-$1/subjects/$2/versions/$3/$2-programme-structure-$3.ttl [R=303,L] -RewriteRule ^england/physics-knowledge-taxonomy$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/physics/physics-knowledge-taxonomy.ttl [R=303,L] +# Main programme structure - with and without .ttl extension +RewriteRule ^nat-data-(2014|2028)/(biology|chemistry|physics|combined-science|science|history|geography|mathematics|english|citizenship)-programme-structure(?:/|\.ttl)?$ https://raw.githubusercontent.com/oaknational/national-curriculum-ontology-development/main/data/natcurric-$1/subjects/$2/$2-programme-structure.ttl [R=303,L] # ---------------------------------------------------------------------- -# NATIONAL CURRICULUM FOR ENGLAND - COMBINED SCIENCE SUBJECT +# Knowledge Taxonomy (all subjects) # ---------------------------------------------------------------------- -# Versioned combined science programme structure -RewriteRule ^england/combined-science-programme-structure/([0-9]+\.[0-9]+\.[0-9]+)$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/combined-science/versions/$1/combined-science-programme-structure-$1.ttl [R=303,L] - -# Main combined science programme structure file (latest version) -RewriteRule ^england/combined-science-programme-structure\.ttl$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/combined-science/combined-science-programme-structure.ttl [R=303,L] - -RewriteRule ^england/combined-science-programme-structure$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/combined-science/combined-science-programme-structure.ttl [R=303,L] +# Versioned knowledge taxonomy +RewriteRule ^nat-data-(2014|2028)/(biology|chemistry|physics|combined-science|science|history|geography|mathematics|english|citizenship)-knowledge-taxonomy/([0-9]+\.[0-9]+\.[0-9]+)$ https://raw.githubusercontent.com/oaknational/national-curriculum-ontology-development/main/data/natcurric-$1/subjects/$2/versions/$3/$2-knowledge-taxonomy-$3.ttl [R=303,L] -# Versioned combined science knowledge taxonomy -RewriteRule ^england/combined-science-knowledge-taxonomy/([0-9]+\.[0-9]+\.[0-9]+)$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/combined-science/versions/$1/combined-science-knowledge-taxonomy-$1.ttl [R=303,L] - -# Main combined science knowledge taxonomy file (latest version) -RewriteRule ^england/combined-science-knowledge-taxonomy\.ttl$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/combined-science/combined-science-knowledge-taxonomy.ttl [R=303,L] - -RewriteRule ^england/combined-science-knowledge-taxonomy$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/combined-science/combined-science-knowledge-taxonomy.ttl [R=303,L] - -# ---------------------------------------------------------------------- -# NATIONAL CURRICULUM FOR ENGLAND - SCIENCE SUBJECT -# ---------------------------------------------------------------------- +# Main knowledge taxonomy - with and without .ttl extension +RewriteRule ^nat-data-(2014|2028)/(biology|chemistry|physics|combined-science|science|history|geography|mathematics|english|citizenship)-knowledge-taxonomy(?:/|\.ttl)?$ https://raw.githubusercontent.com/oaknational/national-curriculum-ontology-development/main/data/natcurric-$1/subjects/$2/$2-knowledge-taxonomy.ttl [R=303,L] -# Versioned science programme structure -RewriteRule ^england/science-programme-structure/([0-9]+\.[0-9]+\.[0-9]+)$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/science/versions/$1/science-programme-structure-$1.ttl [R=303,L] +# ====================================================================== +# NATIONAL CURRICULUM - DISTRIBUTIONS (full dataset) +# ====================================================================== -# Main science programme structure file (latest version) -RewriteRule ^england/science-programme-structure\.ttl$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/science/science-programme-structure.ttl [R=303,L] +# Turtle +RewriteCond %{HTTP_ACCEPT} text/turtle [NC] +RewriteRule ^nat-data-(2014|2028)/distributions/?$ https://github.com/oaknational/national-curriculum-ontology-development/releases/latest/download/national-curriculum-$1-full.ttl [R=303,L] -RewriteRule ^england/science-programme-structure$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/science/science-programme-structure.ttl [R=303,L] +# JSON-LD +RewriteCond %{HTTP_ACCEPT} application/ld\+json [NC] +RewriteRule ^nat-data-(2014|2028)/distributions/?$ https://github.com/oaknational/national-curriculum-ontology-development/releases/latest/download/national-curriculum-$1-full.jsonld [R=303,L] -# Versioned science knowledge taxonomy -RewriteRule ^england/science-knowledge-taxonomy/([0-9]+\.[0-9]+\.[0-9]+)$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/science/versions/$1/science-knowledge-taxonomy-$1.ttl [R=303,L] +# RDF/XML +RewriteCond %{HTTP_ACCEPT} application/rdf\+xml [NC] +RewriteRule ^nat-data-(2014|2028)/distributions/?$ https://github.com/oaknational/national-curriculum-ontology-development/releases/latest/download/national-curriculum-$1-full.rdf [R=303,L] -# Main science knowledge taxonomy file (latest version) -RewriteRule ^england/science-knowledge-taxonomy\.ttl$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/science/science-knowledge-taxonomy.ttl [R=303,L] +# N-Triples +RewriteCond %{HTTP_ACCEPT} application/n-triples [NC] +RewriteRule ^nat-data-(2014|2028)/distributions/?$ https://github.com/oaknational/national-curriculum-ontology-development/releases/latest/download/national-curriculum-$1-full.nt [R=303,L] -RewriteRule ^england/science-knowledge-taxonomy$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/science/science-knowledge-taxonomy.ttl [R=303,L] +# Default β†’ Turtle +RewriteRule ^nat-data-(2014|2028)/distributions/?$ https://github.com/oaknational/national-curriculum-ontology-development/releases/latest/download/national-curriculum-$1-full.ttl [R=303,L] -# ---------------------------------------------------------------------- -# NATIONAL CURRICULUM FOR ENGLAND - MATHEMATICS SUBJECT -# ---------------------------------------------------------------------- +# ====================================================================== +# OAK CURRICULUM - DISTRIBUTIONS (full dataset) +# ====================================================================== -# Versioned mathematics programme structure -RewriteRule ^england/mathematics-programme-structure/([0-9]+\.[0-9]+\.[0-9]+)$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/mathematics/versions/$1/mathematics-programme-structure-$1.ttl [R=303,L] +# Turtle +RewriteCond %{HTTP_ACCEPT} text/turtle [NC] +RewriteRule ^oak-data/distributions/?$ https://github.com/oaknational/oak-curriculum-ontology-development/releases/latest/download/oak-curriculum-full.ttl [R=303,L] -# Main mathematics programme structure file (latest version) -RewriteRule ^england/mathematics-programme-structure\.ttl$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/mathematics/mathematics-programme-structure.ttl [R=303,L] +# JSON-LD +RewriteCond %{HTTP_ACCEPT} application/ld\+json [NC] +RewriteRule ^oak-data/distributions/?$ https://github.com/oaknational/oak-curriculum-ontology-development/releases/latest/download/oak-curriculum-full.jsonld [R=303,L] -RewriteRule ^england/mathematics-programme-structure$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/mathematics/mathematics-programme-structure.ttl [R=303,L] +# RDF/XML +RewriteCond %{HTTP_ACCEPT} application/rdf\+xml [NC] +RewriteRule ^oak-data/distributions/?$ https://github.com/oaknational/oak-curriculum-ontology-development/releases/latest/download/oak-curriculum-full.rdf [R=303,L] -# Versioned mathematics knowledge taxonomy -RewriteRule ^england/mathematics-knowledge-taxonomy/([0-9]+\.[0-9]+\.[0-9]+)$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/mathematics/versions/$1/mathematics-knowledge-taxonomy-$1.ttl [R=303,L] +# N-Triples +RewriteCond %{HTTP_ACCEPT} application/n-triples [NC] +RewriteRule ^oak-data/distributions/?$ https://github.com/oaknational/oak-curriculum-ontology-development/releases/latest/download/oak-curriculum-full.nt [R=303,L] -# Main mathematics knowledge taxonomy file (latest version) -RewriteRule ^england/mathematics-knowledge-taxonomy\.ttl$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/mathematics/mathematics-knowledge-taxonomy.ttl [R=303,L] +# Default β†’ Turtle +RewriteRule ^oak-data/distributions/?$ https://github.com/oaknational/oak-curriculum-ontology-development/releases/latest/download/oak-curriculum-full.ttl [R=303,L] -RewriteRule ^england/mathematics-knowledge-taxonomy$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/mathematics/mathematics-knowledge-taxonomy.ttl [R=303,L] +# ====================================================================== +# NATIONAL CURRICULUM - INDIVIDUAL RESOURCES (2014/2028) +# ====================================================================== # ---------------------------------------------------------------------- -# NATIONAL CURRICULUM FOR ENGLAND - ENGLISH SUBJECT +# Subject resources (e.g., /nat-data-2014/mathematics) # ---------------------------------------------------------------------- -# Versioned english programme structure -RewriteRule ^england/english-programme-structure/([0-9]+\.[0-9]+\.[0-9]+)$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/english/versions/$1/english-programme-structure-$1.ttl [R=303,L] - -# Main english programme structure file (latest version) -RewriteRule ^england/english-programme-structure\.ttl$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/english/english-programme-structure.ttl [R=303,L] - -RewriteRule ^england/english-programme-structure$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/english/english-programme-structure.ttl [R=303,L] - -# Versioned english knowledge taxonomy -RewriteRule ^england/english-knowledge-taxonomy/([0-9]+\.[0-9]+\.[0-9]+)$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/english/versions/$1/english-knowledge-taxonomy-$1.ttl [R=303,L] - -# Main english knowledge taxonomy file (latest version) -RewriteRule ^england/english-knowledge-taxonomy\.ttl$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/english/english-knowledge-taxonomy.ttl [R=303,L] +# HTML (browsers) β†’ redirect to web interface +RewriteCond %{HTTP_ACCEPT} text/html [NC,OR] +RewriteCond %{HTTP_USER_AGENT} Mozilla [NC] +RewriteRule ^nat-data-(2014|2028)/([a-z0-9-]+)$ https://curriculum.education.gov.uk/id/subjects/$2 [R=303,L] -RewriteRule ^england/english-knowledge-taxonomy$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/english/english-knowledge-taxonomy.ttl [R=303,L] +# Default β†’ return Turtle +RewriteRule ^nat-data-(2014|2028)/([a-z0-9-]+)$ https://raw.githubusercontent.com/oaknational/national-curriculum-ontology-development/main/distributions/$2.ttl [R=303,L] # ---------------------------------------------------------------------- -# NATIONAL CURRICULUM FOR ENGLAND - CITIZENSHIP SUBJECT +# Subject with key stage (e.g., /nat-data-2014/mathematics/key-stage-3) # ---------------------------------------------------------------------- -# Versioned citizenship programme structure -RewriteRule ^england/citizenship-programme-structure/([0-9]+\.[0-9]+\.[0-9]+)$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/citizenship/versions/$1/citizenship-programme-structure-$1.ttl [R=303,L] - -# Main citizenship programme structure file (latest version) -RewriteRule ^england/citizenship-programme-structure\.ttl$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/citizenship/citizenship-programme-structure.ttl [R=303,L] - -RewriteRule ^england/citizenship-programme-structure$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/citizenship/citizenship-programme-structure.ttl [R=303,L] - -# Versioned citizenship knowledge taxonomy -RewriteRule ^england/citizenship-knowledge-taxonomy/([0-9]+\.[0-9]+\.[0-9]+)$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/citizenship/versions/$1/citizenship-knowledge-taxonomy-$1.ttl [R=303,L] - -# Main citizenship knowledge taxonomy file (latest version) -RewriteRule ^england/citizenship-knowledge-taxonomy\.ttl$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/citizenship/citizenship-knowledge-taxonomy.ttl [R=303,L] +# HTML (browsers) β†’ redirect to web interface +RewriteCond %{HTTP_ACCEPT} text/html [NC,OR] +RewriteCond %{HTTP_USER_AGENT} Mozilla [NC] +RewriteRule ^nat-data-(2014|2028)/([a-z0-9-]+)/(key-stage-[0-9]+)$ https://curriculum.education.gov.uk/id/subjects/$2?keystage=$3 [R=303,L] -RewriteRule ^england/citizenship-knowledge-taxonomy$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/data/national-curriculum-for-england/subjects/citizenship/citizenship-knowledge-taxonomy.ttl [R=303,L] +# Default β†’ return Turtle +RewriteRule ^nat-data-(2014|2028)/([a-z0-9-]+)/(key-stage-[0-9]+)$ https://raw.githubusercontent.com/oaknational/national-curriculum-ontology-development/main/distributions/$2-$3.ttl [R=303,L] -# ---------------------------------------------------------------------- -# OAK CURRICULUM ONTOLOGY -# ---------------------------------------------------------------------- +# ====================================================================== +# OAK CURRICULUM - ONTOLOGY +# ====================================================================== # Versioned ontology IRIs (used in owl:versionIRI) -RewriteRule ^oak-ontology/([0-9]+\.[0-9]+\.[0-9]+)$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/ontology/versions/oak-curriculum-ontology-$1.ttl [R=303,L] +RewriteRule ^oak-ontology/([0-9]+\.[0-9]+\.[0-9]+)$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology-development/main/ontology/versions/oak-curriculum-ontology-$1.ttl [R=303,L] -# Main ontology file (latest version) -RewriteRule ^oak-ontology\.ttl$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/ontology/oak-curriculum-ontology.ttl [R=303,L] +# Main ontology file - with and without .ttl extension +RewriteRule ^oak-ontology(?:/|\.ttl)?$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology-development/main/ontology/oak-curriculum-ontology.ttl [R=303,L] -# Oak ontology namespace (for individual terms like oakcurric:Programme) -RewriteRule ^oak-ontology$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/ontology/oak-curriculum-ontology.ttl [R=303,L] - -# ---------------------------------------------------------------------- -# OAK CURRICULUM ONTOLOGY CONSTRAINTS (SHACL) -# ---------------------------------------------------------------------- +# ====================================================================== +# OAK CURRICULUM - SHACL CONSTRAINTS +# ====================================================================== # Versioned constraints -RewriteRule ^oak-ontology/shapes/([0-9]+\.[0-9]+\.[0-9]+)$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/ontology/versions/oak-curriculum-constraints-$1.ttl [R=303,L] +RewriteRule ^oak-ontology/shapes/([0-9]+\.[0-9]+\.[0-9]+)$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology-development/main/ontology/versions/oak-curriculum-constraints-$1.ttl [R=303,L] -# Main constraints file (latest version) -RewriteRule ^oak-ontology/shapes\.ttl$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/ontology/oak-curriculum-constraints.ttl [R=303,L] +# Main constraints file - with and without .ttl extension +RewriteRule ^oak-ontology/shapes(?:/|\.ttl)?$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology-development/main/ontology/oak-curriculum-constraints.ttl [R=303,L] -RewriteRule ^oak-ontology/shapes$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/ontology/oak-curriculum-constraints.ttl [R=303,L] - -# ---------------------------------------------------------------------- -# OAK CURRICULUM DATA - PROGRAMME STRUCTURE -# ---------------------------------------------------------------------- +# ====================================================================== +# OAK CURRICULUM - PROGRAMME STRUCTURE +# ====================================================================== # Versioned programme structure -RewriteRule ^oak-data/programme-structure/([0-9]+\.[0-9]+\.[0-9]+)$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/data/oak-curriculum/versions/programme-structure-$1.ttl [R=303,L] - -# Main programme structure file (latest version) -RewriteRule ^oak-data/programme-structure\.ttl$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/data/oak-curriculum/programme-structure.ttl [R=303,L] +RewriteRule ^oak-data/programme-structure/([0-9]+\.[0-9]+\.[0-9]+)$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology-development/main/data/versions/programme-structure-$1.ttl [R=303,L] -# Oak data namespace (for individual programme structure terms) -RewriteRule ^oak-data/programme-structure$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/data/oak-curriculum/programme-structure.ttl [R=303,L] +# Main programme structure file - with and without .ttl extension +RewriteRule ^oak-data/programme-structure(?:/|\.ttl)?$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology-development/main/data/programme-structure.ttl [R=303,L] -# ---------------------------------------------------------------------- -# OAK CURRICULUM DATA - THREADS -# ---------------------------------------------------------------------- +# ====================================================================== +# OAK CURRICULUM - THREADS +# ====================================================================== # Versioned threads -RewriteRule ^oak-data/threads/([0-9]+\.[0-9]+\.[0-9]+)$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/data/oak-curriculum/versions/threads-$1.ttl [R=303,L] +RewriteRule ^oak-data/threads/([0-9]+\.[0-9]+\.[0-9]+)$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology-development/main/data/versions/threads-$1.ttl [R=303,L] -# Main threads file (latest version) -RewriteRule ^oak-data/threads\.ttl$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/data/oak-curriculum/threads.ttl [R=303,L] - -# Oak data namespace (for individual thread terms) -RewriteRule ^oak-data/threads$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/data/oak-curriculum/threads.ttl [R=303,L] +# Main threads file - with and without .ttl extension +RewriteRule ^oak-data/threads(?:/|\.ttl)?$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology-development/main/data/threads.ttl [R=303,L] # Oak data namespace root -RewriteRule ^oak-data/$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/data/oak-curriculum/programme-structure.ttl [R=303,L] +RewriteRule ^oak-data/?$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology-development/main/data/programme-structure.ttl [R=303,L] -# ---------------------------------------------------------------------- -# OAK CURRICULUM DATA - RESOURCES -# ---------------------------------------------------------------------- +# ====================================================================== +# OAK CURRICULUM - RESOURCES +# ====================================================================== # Versioned resources -RewriteRule ^oak-data/resources/([0-9]+\.[0-9]+\.[0-9]+)$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/data/oak-curriculum/resources/versions/resources-$1.ttl [R=303,L] - -# Main resources file (latest version) -RewriteRule ^oak-data/resources\.ttl$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/data/oak-curriculum/resources/resources.ttl [R=303,L] +RewriteRule ^oak-data/resources/([0-9]+\.[0-9]+\.[0-9]+)$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology-development/main/data/resources/versions/resources-$1.ttl [R=303,L] -# Oak resources namespace (for individual resource terms) -RewriteRule ^oak-data/resources$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/data/oak-curriculum/resources/resources.ttl [R=303,L] +# Main resources file - with and without .ttl extension +RewriteRule ^oak-data/resources(?:/|\.ttl)?$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology-development/main/data/resources/resources.ttl [R=303,L] # Oak resources namespace root -RewriteRule ^oak-data/resources/$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/data/oak-curriculum/resources/resources.ttl [R=303,L] +RewriteRule ^oak-data/resources/$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology-development/main/data/resources/resources.ttl [R=303,L] -# ---------------------------------------------------------------------- +# ====================================================================== +# OAK CURRICULUM - SUBJECT FILES +# ====================================================================== + +# Versioned subject key stage files +RewriteRule ^oak-data/(biology|chemistry|physics|combined-science|science|history|geography|mathematics|english|citizenship)-key-stage-([0-9]+)/([0-9]+\.[0-9]+\.[0-9]+)$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology-development/main/data/subjects/$1/versions/$3/$1-key-stage-$2-$3.ttl [R=303,L] + +# Subject key stage files - with and without .ttl extension +RewriteRule ^oak-data/(biology|chemistry|physics|combined-science|science|history|geography|mathematics|english|citizenship)-key-stage-([0-9]+)(?:/|\.ttl)?$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology-development/main/data/subjects/$1/$1-key-stage-$2.ttl [R=303,L] + +# ====================================================================== # FALLBACK - Repository root and other files -# ---------------------------------------------------------------------- +# ====================================================================== + +# Oak ontology fallback - any unmatched oak-ontology/* paths +RewriteRule ^oak-ontology/(.+)$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology-development/main/ontology/$1 [R=303,L] + +# Oak data fallback - any unmatched oak-data/* paths +RewriteRule ^oak-data/(.+)$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology-development/main/data/$1 [R=303,L] + +# National curriculum ontology fallback - any unmatched nat-ontology/* paths +RewriteRule ^nat-ontology/(.+)$ https://raw.githubusercontent.com/oaknational/national-curriculum-ontology-development/main/ontology/$1 [R=303,L] + +# National curriculum data fallback - any unmatched nat-data-*/* paths +RewriteRule ^nat-data-(2014|2028)/(.+)$ https://raw.githubusercontent.com/oaknational/national-curriculum-ontology-development/main/data/natcurric-$1/$2 [R=303,L] # Root namespace - redirect to README -RewriteRule ^$ https://github.com/oaknational/dfe-curriculum-ontology [R=303,L] +RewriteRule ^$ https://github.com/oaknational/national-curriculum-ontology-development [R=303,L] -# Any other files (documentation, etc.) -RewriteRule ^(.*)$ https://raw.githubusercontent.com/oaknational/dfe-curriculum-ontology/main/$1 [R=303,L] +# Final catch-all for anything else +RewriteRule ^(.*)$ https://raw.githubusercontent.com/oaknational/national-curriculum-ontology-development/main/$1 [R=303,L] diff --git a/uk/oak/curriculum/.htaccess b/uk/oak/curriculum/.htaccess index f0a1495a14..06a0ed678f 100644 --- a/uk/oak/curriculum/.htaccess +++ b/uk/oak/curriculum/.htaccess @@ -9,72 +9,151 @@ RewriteEngine on # Repo: oaknational/oak-curriculum-ontology -# ---------------------------------------------------------------------- +# ====================================================================== # ONTOLOGY (https://w3id.org/uk/oak/curriculum/ontology/) -# ---------------------------------------------------------------------- +# ====================================================================== # HTML requests β†’ GitHub Pages documentation RewriteCond %{HTTP_ACCEPT} text/html [NC,OR] RewriteCond %{HTTP_USER_AGENT} Mozilla [NC] RewriteRule ^ontology/?$ https://oaknational.github.io/oak-curriculum-ontology/ [R=303,L] -# RDF requests β†’ raw TTL file -RewriteRule ^ontology/?$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/ontology/oak-curriculum-ontology.ttl [R=303,L] +# Versioned ontology IRIs (used in owl:versionIRI) +RewriteRule ^ontology/([0-9]+\.[0-9]+\.[0-9]+)$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/ontology/versions/oak-curriculum-ontology-$1.ttl [R=303,L] -# Explicit .ttl extension -RewriteRule ^ontology\.ttl$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/ontology/oak-curriculum-ontology.ttl [R=303,L] +# Main ontology file - with and without .ttl extension +RewriteRule ^ontology(?:/|\.ttl)?$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/ontology/oak-curriculum-ontology.ttl [R=303,L] -# ---------------------------------------------------------------------- +# ====================================================================== # SHACL CONSTRAINTS (https://w3id.org/uk/oak/curriculum/ontology/shapes/) -# ---------------------------------------------------------------------- +# ====================================================================== -RewriteRule ^ontology/shapes/?$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/ontology/oak-curriculum-constraints.ttl [R=303,L] -RewriteRule ^ontology/shapes\.ttl$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/ontology/oak-curriculum-constraints.ttl [R=303,L] +# Versioned constraints +RewriteRule ^ontology/shapes/([0-9]+\.[0-9]+\.[0-9]+)$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/ontology/versions/oak-curriculum-constraints-$1.ttl [R=303,L] -# ---------------------------------------------------------------------- +# Main constraints file - with and without .ttl extension +RewriteRule ^ontology/shapes(?:/|\.ttl)?$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/ontology/oak-curriculum-constraints.ttl [R=303,L] + +# ====================================================================== # NATIONAL CURRICULUM DATA (https://w3id.org/uk/oak/curriculum/nationalcurriculum/) # Used for: phases, key stages, subjects, strands etc +# ====================================================================== + # ---------------------------------------------------------------------- +# Temporal Structure +# ---------------------------------------------------------------------- + +# Versioned temporal structure +RewriteRule ^nationalcurriculum/temporal-structure/([0-9]+\.[0-9]+\.[0-9]+)$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/data/versions/temporal-structure-$1.ttl [R=303,L] -# Temporal structure (phases, key stages, year groups) -RewriteRule ^nationalcurriculum/temporal-structure/?$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/data/temporal-structure.ttl [R=303,L] +# Main temporal structure file - with and without .ttl extension +RewriteRule ^nationalcurriculum/temporal-structure(?:/|\.ttl)?$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/data/temporal-structure.ttl [R=303,L] -# Science-related programme structure (biology, chemistry, physics, combined-science, science) -RewriteRule ^nationalcurriculum/(biology|chemistry|physics|combined-science|science)-programme-structure/?$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/data/subjects/science/$1-programme-structure.ttl [R=303,L] +# Namespace root +RewriteRule ^nationalcurriculum/?$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/data/temporal-structure.ttl [R=303,L] -# Science-related knowledge taxonomy (biology, chemistry, physics) -RewriteRule ^nationalcurriculum/(biology|chemistry|physics)-knowledge-taxonomy/?$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/data/subjects/science/$1-knowledge-taxonomy.ttl [R=303,L] +# ---------------------------------------------------------------------- +# Science-related Programme Structure (biology, chemistry, physics, combined-science, science) +# ---------------------------------------------------------------------- -# Other subjects programme structure (citizenship, english, geography, history, mathematics) -RewriteRule ^nationalcurriculum/(citizenship|english|geography|history|mathematics)-programme-structure/?$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/data/subjects/$1/$1-programme-structure.ttl [R=303,L] +# Versioned +RewriteRule ^nationalcurriculum/(biology|chemistry|physics|combined-science|science)-programme-structure/([0-9]+\.[0-9]+\.[0-9]+)$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/data/subjects/science/versions/$2/$1-programme-structure-$2.ttl [R=303,L] -# Other subjects knowledge taxonomy (citizenship, english, geography, history, mathematics) -RewriteRule ^nationalcurriculum/(citizenship|english|geography|history|mathematics)-knowledge-taxonomy/?$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/data/subjects/$1/$1-knowledge-taxonomy.ttl [R=303,L] +# Main file - with and without .ttl extension +RewriteRule ^nationalcurriculum/(biology|chemistry|physics|combined-science|science)-programme-structure(?:/|\.ttl)?$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/data/subjects/science/$1-programme-structure.ttl [R=303,L] # ---------------------------------------------------------------------- +# Science-related Knowledge Taxonomy (biology, chemistry, physics) +# ---------------------------------------------------------------------- + +# Versioned +RewriteRule ^nationalcurriculum/(biology|chemistry|physics)-knowledge-taxonomy/([0-9]+\.[0-9]+\.[0-9]+)$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/data/subjects/science/versions/$2/$1-knowledge-taxonomy-$2.ttl [R=303,L] + +# Main file - with and without .ttl extension +RewriteRule ^nationalcurriculum/(biology|chemistry|physics)-knowledge-taxonomy(?:/|\.ttl)?$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/data/subjects/science/$1-knowledge-taxonomy.ttl [R=303,L] + +# ---------------------------------------------------------------------- +# Other Subjects Programme Structure (citizenship, english, geography, history, mathematics) +# ---------------------------------------------------------------------- + +# Versioned +RewriteRule ^nationalcurriculum/(citizenship|english|geography|history|mathematics)-programme-structure/([0-9]+\.[0-9]+\.[0-9]+)$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/data/subjects/$1/versions/$2/$1-programme-structure-$2.ttl [R=303,L] + +# Main file - with and without .ttl extension +RewriteRule ^nationalcurriculum/(citizenship|english|geography|history|mathematics)-programme-structure(?:/|\.ttl)?$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/data/subjects/$1/$1-programme-structure.ttl [R=303,L] + +# ---------------------------------------------------------------------- +# Other Subjects Knowledge Taxonomy (citizenship, english, geography, history, mathematics) +# ---------------------------------------------------------------------- + +# Versioned +RewriteRule ^nationalcurriculum/(citizenship|english|geography|history|mathematics)-knowledge-taxonomy/([0-9]+\.[0-9]+\.[0-9]+)$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/data/subjects/$1/versions/$2/$1-knowledge-taxonomy-$2.ttl [R=303,L] + +# Main file - with and without .ttl extension +RewriteRule ^nationalcurriculum/(citizenship|english|geography|history|mathematics)-knowledge-taxonomy(?:/|\.ttl)?$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/data/subjects/$1/$1-knowledge-taxonomy.ttl [R=303,L] + +# ====================================================================== # OAK CURRICULUM DATA (https://w3id.org/uk/oak/curriculum/oakcurriculum/) # Used for: programmes, units, lessons, key learning points etc +# ====================================================================== + +# ---------------------------------------------------------------------- +# Programme Structure (Oak-specific) # ---------------------------------------------------------------------- -# Programme structure (Oak-specific) -RewriteRule ^oakcurriculum/programme-structure/?$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/data/programme-structure.ttl [R=303,L] +# Versioned +RewriteRule ^oakcurriculum/programme-structure/([0-9]+\.[0-9]+\.[0-9]+)$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/data/versions/programme-structure-$1.ttl [R=303,L] +# Main file - with and without .ttl extension +RewriteRule ^oakcurriculum/programme-structure(?:/|\.ttl)?$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/data/programme-structure.ttl [R=303,L] + +# ---------------------------------------------------------------------- # Threads -RewriteRule ^oakcurriculum/threads/?$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/data/threads.ttl [R=303,L] +# ---------------------------------------------------------------------- + +# Versioned +RewriteRule ^oakcurriculum/threads/([0-9]+\.[0-9]+\.[0-9]+)$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/data/versions/threads-$1.ttl [R=303,L] -# Science KS4 files (biology, chemistry, physics, combined science) -RewriteRule ^oakcurriculum/(biology|chemistry|physics|combined-science)-key-stage-([0-9]+)/?$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/data/subjects/science/$1-key-stage-$2.ttl [R=303,L] +# Main file - with and without .ttl extension +RewriteRule ^oakcurriculum/threads(?:/|\.ttl)?$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/data/threads.ttl [R=303,L] +# Namespace root +RewriteRule ^oakcurriculum/?$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/data/programme-structure.ttl [R=303,L] + +# ---------------------------------------------------------------------- +# Science KS4 files (biology, chemistry, physics, combined-science) +# ---------------------------------------------------------------------- + +# Versioned +RewriteRule ^oakcurriculum/(biology|chemistry|physics|combined-science)-key-stage-([0-9]+)/([0-9]+\.[0-9]+\.[0-9]+)$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/data/subjects/science/versions/$3/$1-key-stage-$2-$3.ttl [R=303,L] + +# Main file - with and without .ttl extension +RewriteRule ^oakcurriculum/(biology|chemistry|physics|combined-science)-key-stage-([0-9]+)(?:/|\.ttl)?$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/data/subjects/science/$1-key-stage-$2.ttl [R=303,L] + +# ---------------------------------------------------------------------- # Science KS1-KS3 files (science) -RewriteRule ^oakcurriculum/science-key-stage-([0-9]+)/?$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/data/subjects/science/science-key-stage-$1.ttl [R=303,L] +# ---------------------------------------------------------------------- -# Other subjects key stage files (citizenship, english, geography, history, mathematics) -RewriteRule ^oakcurriculum/(citizenship|english|geography|history|mathematics)-key-stage-([0-9]+)/?$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/data/subjects/$1/$1-key-stage-$2.ttl [R=303,L] +# Versioned +RewriteRule ^oakcurriculum/science-key-stage-([0-9]+)/([0-9]+\.[0-9]+\.[0-9]+)$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/data/subjects/science/versions/$2/science-key-stage-$1-$2.ttl [R=303,L] + +# Main file - with and without .ttl extension +RewriteRule ^oakcurriculum/science-key-stage-([0-9]+)(?:/|\.ttl)?$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/data/subjects/science/science-key-stage-$1.ttl [R=303,L] # ---------------------------------------------------------------------- -# DISTRIBUTIONS (content negotiation for full dataset) +# Other subjects key stage files (citizenship, english, geography, history, mathematics) # ---------------------------------------------------------------------- +# Versioned +RewriteRule ^oakcurriculum/(citizenship|english|geography|history|mathematics)-key-stage-([0-9]+)/([0-9]+\.[0-9]+\.[0-9]+)$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/data/subjects/$1/versions/$3/$1-key-stage-$2-$3.ttl [R=303,L] + +# Main file - with and without .ttl extension +RewriteRule ^oakcurriculum/(citizenship|english|geography|history|mathematics)-key-stage-([0-9]+)(?:/|\.ttl)?$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/data/subjects/$1/$1-key-stage-$2.ttl [R=303,L] + +# ====================================================================== +# DISTRIBUTIONS (content negotiation for full dataset) +# ====================================================================== + # Turtle RewriteCond %{HTTP_ACCEPT} text/turtle [NC] RewriteRule ^distributions/?$ https://github.com/oaknational/oak-curriculum-ontology/releases/latest/download/oak-curriculum-full.ttl [R=303,L] @@ -94,14 +173,26 @@ RewriteRule ^distributions/?$ https://github.com/oaknational/oak-curriculum-onto # Default β†’ Turtle RewriteRule ^distributions/?$ https://github.com/oaknational/oak-curriculum-ontology/releases/latest/download/oak-curriculum-full.ttl [R=303,L] -# ---------------------------------------------------------------------- -# ROOT NAMESPACE -# ---------------------------------------------------------------------- +# ====================================================================== +# FALLBACK - Repository root and other files +# ====================================================================== + +# Ontology fallback - any unmatched ontology/* paths +RewriteRule ^ontology/(.+)$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/ontology/$1 [R=303,L] -# HTML β†’ GitHub repo +# National curriculum fallback - any unmatched nationalcurriculum/* paths +RewriteRule ^nationalcurriculum/(.+)$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/data/$1 [R=303,L] + +# Oak curriculum fallback - any unmatched oakcurriculum/* paths +RewriteRule ^oakcurriculum/(.+)$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/data/$1 [R=303,L] + +# Root namespace - HTML β†’ GitHub repo RewriteCond %{HTTP_ACCEPT} text/html [NC,OR] RewriteCond %{HTTP_USER_AGENT} Mozilla [NC] RewriteRule ^$ https://github.com/oaknational/oak-curriculum-ontology [R=303,L] -# Default β†’ repo +# Root namespace - Default β†’ repo RewriteRule ^$ https://github.com/oaknational/oak-curriculum-ontology [R=303,L] + +# Final catch-all for anything else +RewriteRule ^(.*)$ https://raw.githubusercontent.com/oaknational/oak-curriculum-ontology/main/$1 [R=303,L] diff --git a/vick/.htaccess b/vick/.htaccess new file mode 100644 index 0000000000..588524cecf --- /dev/null +++ b/vick/.htaccess @@ -0,0 +1,14 @@ +#Options -MultiViews + +#AddType application/rdf+xml .owl + +RewriteEngine on + +# OWL context +#RewriteCond %{HTTP_ACCEPT} \*/\* [OR] +#RewriteCond %{HTTP_ACCEPT} application/rdf\+xml +RewriteRule ^$ https://raw.githubusercontent.com/VICK-Blockchain/VICK-KnowledgeGraph/refs/heads/main/vick.owl [R=302,L] + +RewriteRule ^vick.owl$ https://raw.githubusercontent.com/VICK-Blockchain/VICK-KnowledgeGraph/refs/heads/main/vick.owl [R=302,L] + +RewriteRule ^vick-base.owl$ https://raw.githubusercontent.com/VICK-Blockchain/VICK-KnowledgeGraph/refs/heads/main/vick-base.owl [R=302,L] diff --git a/vick/readme.md b/vick/readme.md new file mode 100644 index 0000000000..85525d47ad --- /dev/null +++ b/vick/readme.md @@ -0,0 +1,11 @@ +# Repository for redirecting to Vaccine Information and Consent Knowledge base (VICK) + +# VICK artifact +- http://w3id.org/vick/ --> https://raw.githubusercontent.com/VICK-Blockchain/VICK-KnowledgeGraph/refs/heads/main/vick.owl + +- http://w3id.org/vick/vick.owl --> https://raw.githubusercontent.com/VICK-Blockchain/VICK-KnowledgeGraph/refs/heads/main/vick.owl + +- http://w3id.org/vick/vick-base.owl --> https://raw.githubusercontent.com/VICK-Blockchain/VICK-KnowledgeGraph/refs/heads/main/vick-base.owl + +# Maintainers/Contact +- [Tuan Amith](http://github.com/ProfTuan) muamith AT utmb DOT edu \ No newline at end of file diff --git a/wedowind/.htaccess b/wedowind/.htaccess new file mode 100644 index 0000000000..150119e4cb --- /dev/null +++ b/wedowind/.htaccess @@ -0,0 +1,67 @@ +RewriteEngine On + + + Header always set Vary "Accept" + + +# ========================= +# NEGOTIATION POLICY +# ========================= +# Simple Accept-header substring matching (NOT q-value aware) +# Priority: Turtle > JSON-LD > RDF/XML > N-Triples > HTML +# Default fallback: HTML documentation +# ========================= + +# ROOT +# ========================= +RewriteCond %{HTTP_ACCEPT} text/turtle [NC] +RewriteRule ^$ https://dkwakye.github.io/wedowind/ontology/latest/ontology.ttl [R=303,L] + +RewriteCond %{HTTP_ACCEPT} application/ld\+json [NC] +RewriteRule ^$ https://dkwakye.github.io/wedowind/ontology/latest/ontology.jsonld [R=303,L] + +RewriteCond %{HTTP_ACCEPT} application/rdf\+xml [NC] +RewriteRule ^$ https://dkwakye.github.io/wedowind/ontology/latest/ontology.rdf [R=303,L] + +RewriteCond %{HTTP_ACCEPT} application/n-triples [NC] +RewriteRule ^$ https://dkwakye.github.io/wedowind/ontology/latest/ontology.nt [R=303,L] + +# Default: HTML documentation (includes text/html and catch-all) +RewriteRule ^$ https://dkwakye.github.io/wedowind/docu/ [R=303,L] + +# ========================= +# ONTOLOGY BASE (latest) +# ========================= +RewriteCond %{HTTP_ACCEPT} text/turtle [NC] +RewriteRule ^ontology/?$ https://dkwakye.github.io/wedowind/ontology/latest/ontology.ttl [R=303,L] + +RewriteCond %{HTTP_ACCEPT} application/ld\+json [NC] +RewriteRule ^ontology/?$ https://dkwakye.github.io/wedowind/ontology/latest/ontology.jsonld [R=303,L] + +RewriteCond %{HTTP_ACCEPT} application/rdf\+xml [NC] +RewriteRule ^ontology/?$ https://dkwakye.github.io/wedowind/ontology/latest/ontology.rdf [R=303,L] + +RewriteCond %{HTTP_ACCEPT} application/n-triples [NC] +RewriteRule ^ontology/?$ https://dkwakye.github.io/wedowind/ontology/latest/ontology.nt [R=303,L] + +# Default: HTML documentation +RewriteRule ^ontology/?$ https://dkwakye.github.io/wedowind/docu/ [R=303,L] + +# ========================= +# VERSIONED ONTOLOGY +# Supports: 1.0, 1.2.3, etc. (unlimited segments) +# ========================= +RewriteCond %{HTTP_ACCEPT} text/turtle [NC] +RewriteRule ^ontology/([0-9]+(?:\.[0-9]+)*)/?$ https://dkwakye.github.io/wedowind/ontology/$1/ontology.ttl [R=303,L] + +RewriteCond %{HTTP_ACCEPT} application/ld\+json [NC] +RewriteRule ^ontology/([0-9]+(?:\.[0-9]+)*)/?$ https://dkwakye.github.io/wedowind/ontology/$1/ontology.jsonld [R=303,L] + +RewriteCond %{HTTP_ACCEPT} application/rdf\+xml [NC] +RewriteRule ^ontology/([0-9]+(?:\.[0-9]+)*)/?$ https://dkwakye.github.io/wedowind/ontology/$1/ontology.rdf [R=303,L] + +RewriteCond %{HTTP_ACCEPT} application/n-triples [NC] +RewriteRule ^ontology/([0-9]+(?:\.[0-9]+)*)/?$ https://dkwakye.github.io/wedowind/ontology/$1/ontology.nt [R=303,L] + +# Default: HTML documentation +RewriteRule ^ontology/([0-9]+(?:\.[0-9]+)*)/?$ https://dkwakye.github.io/wedowind/docu/ [R=303,L] diff --git a/wedowind/README.md b/wedowind/README.md new file mode 100644 index 0000000000..9df461e98d --- /dev/null +++ b/wedowind/README.md @@ -0,0 +1,22 @@ +# WeDoWind Ontology + +Ontology for modeling **wind energy benchmarking challenges, tasks, submissions, and evaluation metrics**. + +## Namespace + +- W3ID: https://w3id.org/wedowind/ +- GitHub Pages: https://dkwakye.github.io/wedowind/ +- TTL: https://dkwakye.github.io/wedowind/ontology.ttl + +## Available Formats + +- Turtle (`.ttl`) β€” available +- RDF/XML, JSON-LD β€” planned + +## Maintainer + +- GitHub: @DKwakye + +## License + +[CC-BY 4.0](https://creativecommons.org/licenses/by/4.0/) β€” Daniel Kwakye