- Updated `has_or_had_url` slot to allow a broader range of values by changing its range from `uriorcurie` to `Any`. - Removed obsolete slots: `house_number`, `html_file`, `html_snapshot_path`, and `http_status_code`. - Introduced new classes: `CeasingEvent`, `FileLocation`, `FilePath`, `HTMLFile`, `HTTPStatusCode`, `HouseNumber`, `MaximumHumidity`, `MinimumHumidity`, `TargetHumidity`, and `WKT` to better represent various concepts. - Migrated existing slots to new structures, ensuring alignment with RiC-O naming conventions. - Added new slots: `ceases_or_ceased_through`, `has_or_had_file_location`, `has_or_had_file_path`, `has_or_had_http_status`, and `is_or_was_observed_by` to capture additional metadata. - Enhanced descriptions and annotations for clarity and context.
68 lines
3.7 KiB
Markdown
68 lines
3.7 KiB
Markdown
# Rule 62: Verified Ontology Terms Reference
|
|
|
|
🚨 **CRITICAL**: All `class_uri`, `slot_uri`, and mapping properties (`exact_mappings`, `close_mappings`, etc.) MUST use verified classes and predicates that exist in the local ontology files at `data/ontology/`.
|
|
|
|
## 1. Verified Ontology Files
|
|
|
|
The following ontologies are locally available in `data/ontology/`. Always verify terms against these specific files. **NO HALLUCINATIONS ALLOWED.**
|
|
|
|
**Mandatory Verification Step**: Before using any `class_uri`, `slot_uri`, or mapping URI, you MUST `grep` the term in the local ontology file to confirm it exists.
|
|
|
|
| Prefix | Namespace | Local File | Key Classes/Predicates (Verified) |
|
|
|--------|-----------|------------|-----------------------------------|
|
|
| `cpov:` | `http://data.europa.eu/m8g/` | `core-public-organisation-ap.ttl` | `PublicOrganisation`, `contactPage`, `email` |
|
|
| `crm:` | `http://www.cidoc-crm.org/cidoc-crm/` | `CIDOC_CRM_v7.1.3.rdf` | `E1_CRM_Entity`, `E5_Event`, `P2_has_type` |
|
|
| `rico:` | `https://www.ica.org/standards/RiC/ontology#` | `RiC-O_1-1.rdf` | `Record`, `Agent`, `hasOrHadHolder` (Note: Use v1.1 file) |
|
|
| `pico:` | `https://personsincontext.org/model#` | `pico.ttl` | `PersonObservation`, `role` |
|
|
| `prov:` | `http://www.w3.org/ns/prov#` | `prov.ttl` | `Activity`, `Agent`, `wasGeneratedBy` |
|
|
| `skos:` | `http://www.w3.org/2004/02/skos/core#` | `skos.rdf` | `Concept`, `prefLabel`, `broader` |
|
|
| `schema:` | `https://schema.org/` | `frontend/public/ontology/schemaorg.owl` | `Organization`, `Place`, `name`, `url` |
|
|
| `dcterms:` | `http://purl.org/dc/terms/` | `dublin_core_elements.rdf` | `identifier`, `title`, `description` |
|
|
| `org:` | `http://www.w3.org/ns/org#` | `org.rdf` | `Organization`, `hasMember` |
|
|
| `tooi:` | `https://identifier.overheid.nl/tooi/def/ont/` | `tooiont.ttl` | `Overheidsorganisatie` |
|
|
| `dcat:` | `http://www.w3.org/ns/dcat#` | `dcat3.ttl` | `Dataset`, `Catalog`, `dataset` |
|
|
| `gn:` | `https://www.geonames.org/ontology#` | `geonames_ontology.rdf` | `Feature` |
|
|
| `dqv:` | `http://www.w3.org/ns/dqv#` | `dqv.ttl` | `QualityMeasurement`, `hasQualityAnnotation` |
|
|
| `premis:` | `http://www.loc.gov/premis/rdf/v3/` | `premis3.owl` | `fixity`, `storedAt`, `Event` |
|
|
|
|
## 2. Verification Procedure (MANDATORY)
|
|
|
|
**You MUST verify every term.** Do not assume a term exists just because it sounds standard.
|
|
|
|
```bash
|
|
# 1. Identify the source ontology file
|
|
ls data/ontology/
|
|
|
|
# 2. Grep for the specific term (e.g., 'hasFixity')
|
|
grep "hasFixity" data/ontology/premis3.owl
|
|
# Result: EMPTY -> Term does not exist! DO NOT USE.
|
|
|
|
# 3. Grep for the correct term (e.g., 'fixity')
|
|
grep "fixity" data/ontology/premis3.owl
|
|
# Result: <owl:ObjectProperty rdf:about=".../fixity"> -> Term exists. USE THIS.
|
|
```
|
|
|
|
## 3. LinkML Mapping Requirements
|
|
|
|
Mappings must be precise and verified.
|
|
|
|
* `exact_mappings` = `skos:exactMatch` (Semantic equivalence)
|
|
* `close_mappings` = `skos:closeMatch` (Near equivalence)
|
|
* `related_mappings` = `skos:relatedMatch` (Association)
|
|
* `broad_mappings` = `skos:broadMatch` (Broader concept)
|
|
* `narrow_mappings` = `skos:narrowMatch` (Narrower concept)
|
|
|
|
## 4. Prohibited/Invalid Terms (Hallucinations)
|
|
|
|
Do NOT use these commonly hallucinated or incorrect terms. They have been verified as **non-existent** in our local ontologies:
|
|
|
|
* ❌ `dqv:ConfidenceScore` (Use `dqv:QualityMeasurement`)
|
|
* ❌ `premis:hasFixity` (Use `premis:fixity`)
|
|
* ❌ `premis:hasFrameRate` (Verify specific PREMIS properties first)
|
|
* ❌ `schema:HeritageBuilding` (Use `schema:LandmarksOrHistoricalBuildings`)
|
|
* ❌ `rico:has_provenance` (Use `rico:history`)
|
|
* ❌ `rico:hasProvenance` (Use `rico:history`)
|
|
* ❌ `schema:archive` (Use `schema:archiveHeld` or `schema:archivedAt`)
|
|
|
|
**Always verify against the local file content.**
|
|
|