|
|
@@ -1,17 +1,49 @@
|
|
|
-@prefix atlas: <http://world.eu.org/atlas_ontology#> .
|
|
|
-@prefix owl: <http://www.w3.org/2002/07/owl#> .
|
|
|
-@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
|
|
|
-@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
|
|
|
-@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
|
|
|
-@prefix schema: <http://schema.org/> .
|
|
|
-@prefix wd: <http://www.wikidata.org/entity/> .
|
|
|
-
|
|
|
-atlas:Ontology a owl:Ontology ;
|
|
|
- rdfs:label "Atlas Ontology" ;
|
|
|
- rdfs:comment "Entity resolution ontology for Atlas." .
|
|
|
-
|
|
|
-
|
|
|
-### Classes
|
|
|
+@prefix atlas: <http://world.eu.org/atlas_ontology#> .
|
|
|
+@prefix owl: <http://www.w3.org/2002/07/owl#> .
|
|
|
+@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
|
|
|
+@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
|
|
|
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
|
|
|
+@prefix schema: <http://schema.org/> .
|
|
|
+@prefix wd: <http://www.wikidata.org/entity/> .
|
|
|
+@prefix dcterms: <http://purl.org/dc/terms/> .
|
|
|
+
|
|
|
+# =============================================================================
|
|
|
+# Atlas Ontology v1.1.0
|
|
|
+#
|
|
|
+# Changelog
|
|
|
+# 1.0.0 Initial release — core classes, flat identifiers, alias, provenance,
|
|
|
+# claim, curate flag, seven top-level entity types.
|
|
|
+# 1.1.0 Expanded type catalog (fully backward-compatible):
|
|
|
+# - Location hierarchy: Continent, Country, Region, PopulatedPlace,
|
|
|
+# Neighbourhood, NaturalFeature, AdministrativeArea
|
|
|
+# - Organization subtypes: PoliticalParty, MilitaryUnit,
|
|
|
+# MediaOrganization
|
|
|
+# - CreativeWork subtypes: Film, Book, MusicAlbum, TVSeries,
|
|
|
+# VideoGame
|
|
|
+# - Product subtypes: Drug, Food
|
|
|
+# - New top-level types: FinancialInstrument (with PublicCompany,
|
|
|
+# StockIndex, Commodity, Cryptocurrency, Currency), Animal,
|
|
|
+# Disease, Building, Award, Sport, FictionalCharacter,
|
|
|
+# EthnicGroup, Concept
|
|
|
+# Three new relationship properties:
|
|
|
+# - atlas:locatedIn (transitive)
|
|
|
+# - atlas:bordersWith (symmetric)
|
|
|
+# - atlas:memberOf
|
|
|
+# =============================================================================
|
|
|
+
|
|
|
+<http://world.eu.org/atlas_ontology>
|
|
|
+ a owl:Ontology ;
|
|
|
+ rdfs:label "Atlas Ontology" ;
|
|
|
+ rdfs:comment "Entity resolution ontology for Atlas." ;
|
|
|
+ owl:versionIRI <http://world.eu.org/atlas_ontology/1.1.0> ;
|
|
|
+ owl:versionInfo "1.1.0" ;
|
|
|
+ dcterms:created "2026-04-01"^^xsd:date ;
|
|
|
+ dcterms:modified "2026-04-06"^^xsd:date .
|
|
|
+
|
|
|
+
|
|
|
+# =============================================================================
|
|
|
+# INFRASTRUCTURE CLASSES (1.0.0 — unchanged)
|
|
|
+# =============================================================================
|
|
|
|
|
|
atlas:Entity a owl:Class ;
|
|
|
rdfs:label "Entity" ;
|
|
|
@@ -38,7 +70,9 @@ atlas:CurateFlag a owl:Class ;
|
|
|
rdfs:comment "Signals that an entity needs human review." .
|
|
|
|
|
|
|
|
|
-### Object properties
|
|
|
+# =============================================================================
|
|
|
+# OBJECT PROPERTIES (1.0.0 — unchanged, three new ones added in 1.1.0)
|
|
|
+# =============================================================================
|
|
|
|
|
|
atlas:hasCanonicalType a owl:ObjectProperty ;
|
|
|
rdfs:domain atlas:Entity ;
|
|
|
@@ -85,8 +119,30 @@ atlas:hasCurateFlag a owl:ObjectProperty ;
|
|
|
rdfs:range atlas:CurateFlag ;
|
|
|
rdfs:label "has curate flag" .
|
|
|
|
|
|
+# --- NEW in 1.1.0 ---
|
|
|
+
|
|
|
+atlas:locatedIn a owl:ObjectProperty, owl:TransitiveProperty ;
|
|
|
+ rdfs:domain atlas:Entity ;
|
|
|
+ rdfs:range atlas:Entity ;
|
|
|
+ rdfs:label "located in" ;
|
|
|
+ rdfs:comment "Spatial containment, transitive. Enables zoom-in/zoom-out traversal: PopulatedPlace locatedIn Region locatedIn Country locatedIn Continent." .
|
|
|
+
|
|
|
+atlas:bordersWith a owl:ObjectProperty, owl:SymmetricProperty ;
|
|
|
+ rdfs:domain atlas:Entity ;
|
|
|
+ rdfs:range atlas:Entity ;
|
|
|
+ rdfs:label "borders with" ;
|
|
|
+ rdfs:comment "Shared land or maritime border. Symmetric: if A bordersWith B then B bordersWith A." .
|
|
|
|
|
|
-### Datatype properties
|
|
|
+atlas:memberOf a owl:ObjectProperty ;
|
|
|
+ rdfs:domain atlas:Entity ;
|
|
|
+ rdfs:range atlas:Entity ;
|
|
|
+ rdfs:label "member of" ;
|
|
|
+ rdfs:comment "Membership or affiliation. Intended uses: Person to Organization, Person to EthnicGroup, Organization to Organization. Not for type classification — use atlas:hasCanonicalType for that." .
|
|
|
+
|
|
|
+
|
|
|
+# =============================================================================
|
|
|
+# DATATYPE PROPERTIES (1.0.0 — unchanged)
|
|
|
+# =============================================================================
|
|
|
|
|
|
atlas:atlasId a owl:DatatypeProperty ;
|
|
|
rdfs:domain atlas:Entity ;
|
|
|
@@ -171,41 +227,265 @@ atlas:rawJson a owl:DatatypeProperty ;
|
|
|
rdfs:domain atlas:Entity ;
|
|
|
rdfs:range xsd:string ;
|
|
|
rdfs:label "raw json" ;
|
|
|
- rdfs:comment "Opaque JSON cache blob from any source. Source is recorded in the associated Provenance node." .
|
|
|
-
|
|
|
-
|
|
|
-### Canonical type catalog
|
|
|
+ rdfs:comment "Opaque JSON cache blob. Source is recorded inside the blob." .
|
|
|
+
|
|
|
+
|
|
|
+# =============================================================================
|
|
|
+# TYPE CATALOG
|
|
|
+#
|
|
|
+# LLM extraction note:
|
|
|
+# For cheap / small models, pass only the seven top-level types (Person,
|
|
|
+# Organization, Location, CreativeWork, Event, Product, Other plus the new
|
|
|
+# top-level additions). Use a Wikidata QID lookup to promote to a subtype
|
|
|
+# in a second pass — do not ask a small model to choose among 35 types.
|
|
|
+#
|
|
|
+# Virtuoso inference note:
|
|
|
+# rdfs:subClassOf* traversal requires inference to be enabled:
|
|
|
+# OPTION(INFERENCE 'atlas')
|
|
|
+# A query for atlas:Location will then also match atlas:Country etc.
|
|
|
+# =============================================================================
|
|
|
+
|
|
|
+# -----------------------------------------------------------------------------
|
|
|
+# Person (1.0.0)
|
|
|
+# -----------------------------------------------------------------------------
|
|
|
|
|
|
atlas:Person a owl:Class ;
|
|
|
rdfs:subClassOf atlas:EntityType ;
|
|
|
rdfs:label "Person" ;
|
|
|
owl:sameAs schema:Person, wd:Q5 .
|
|
|
|
|
|
+
|
|
|
+# -----------------------------------------------------------------------------
|
|
|
+# Organization (1.0.0) + subtypes (1.1.0)
|
|
|
+# -----------------------------------------------------------------------------
|
|
|
+
|
|
|
atlas:Organization a owl:Class ;
|
|
|
rdfs:subClassOf atlas:EntityType ;
|
|
|
rdfs:label "Organization" ;
|
|
|
owl:sameAs schema:Organization, wd:Q43229 .
|
|
|
|
|
|
+atlas:PoliticalParty a owl:Class ;
|
|
|
+ rdfs:subClassOf atlas:Organization ;
|
|
|
+ rdfs:label "Political Party" ;
|
|
|
+ owl:sameAs wd:Q7278 . # 1.1.0
|
|
|
+
|
|
|
+atlas:MilitaryUnit a owl:Class ;
|
|
|
+ rdfs:subClassOf atlas:Organization ;
|
|
|
+ rdfs:label "Military Unit" ;
|
|
|
+ owl:sameAs wd:Q176799 . # 1.1.0
|
|
|
+
|
|
|
+atlas:MediaOrganization a owl:Class ;
|
|
|
+ rdfs:subClassOf atlas:Organization ;
|
|
|
+ rdfs:label "Media Organization" ;
|
|
|
+ owl:sameAs wd:Q4830453 . # 1.1.0
|
|
|
+
|
|
|
+
|
|
|
+# -----------------------------------------------------------------------------
|
|
|
+# Location (1.0.0) + hierarchy (1.1.0)
|
|
|
+# Relate instances with atlas:locatedIn and atlas:bordersWith.
|
|
|
+# -----------------------------------------------------------------------------
|
|
|
+
|
|
|
atlas:Location a owl:Class ;
|
|
|
rdfs:subClassOf atlas:EntityType ;
|
|
|
- rdfs:label "Location" ;
|
|
|
+ rdfs:label "Location" ;
|
|
|
+ rdfs:comment "Abstract parent. Use a subtype where possible." ;
|
|
|
owl:sameAs schema:Place, wd:Q17334923 .
|
|
|
|
|
|
+atlas:Continent a owl:Class ;
|
|
|
+ rdfs:subClassOf atlas:Location ;
|
|
|
+ rdfs:label "Continent" ;
|
|
|
+ owl:sameAs wd:Q5107 . # 1.1.0
|
|
|
+
|
|
|
+atlas:Country a owl:Class ;
|
|
|
+ rdfs:subClassOf atlas:Location ;
|
|
|
+ rdfs:label "Country" ;
|
|
|
+ owl:sameAs schema:Country, wd:Q6256 . # 1.1.0
|
|
|
+
|
|
|
+atlas:Region a owl:Class ;
|
|
|
+ rdfs:subClassOf atlas:Location ;
|
|
|
+ rdfs:label "Region" ;
|
|
|
+ rdfs:comment "State, province, county or similar administrative subdivision." ;
|
|
|
+ owl:sameAs wd:Q82794 . # 1.1.0
|
|
|
+
|
|
|
+atlas:PopulatedPlace a owl:Class ;
|
|
|
+ rdfs:subClassOf atlas:Location ;
|
|
|
+ rdfs:label "Populated Place" ;
|
|
|
+ rdfs:comment "City, town or village." ;
|
|
|
+ owl:sameAs wd:Q515 . # 1.1.0
|
|
|
+
|
|
|
+atlas:Neighbourhood a owl:Class ;
|
|
|
+ rdfs:subClassOf atlas:Location ;
|
|
|
+ rdfs:label "Neighbourhood" ;
|
|
|
+ rdfs:comment "Borough, district, arrondissement or similar urban subdivision." ;
|
|
|
+ owl:sameAs wd:Q123705 . # 1.1.0
|
|
|
+
|
|
|
+atlas:NaturalFeature a owl:Class ;
|
|
|
+ rdfs:subClassOf atlas:Location ;
|
|
|
+ rdfs:label "Natural Feature" ;
|
|
|
+ rdfs:comment "River, mountain, ocean, lake or other natural geographic feature." ;
|
|
|
+ owl:sameAs wd:Q35145263 . # 1.1.0
|
|
|
+
|
|
|
+atlas:AdministrativeArea a owl:Class ;
|
|
|
+ rdfs:subClassOf atlas:Location ;
|
|
|
+ rdfs:label "Administrative Area" ;
|
|
|
+ rdfs:comment "Fallback for political subdivisions that do not fit a more specific subtype." ;
|
|
|
+ owl:sameAs wd:Q56061 . # 1.1.0
|
|
|
+
|
|
|
+
|
|
|
+# -----------------------------------------------------------------------------
|
|
|
+# CreativeWork (1.0.0) + subtypes (1.1.0)
|
|
|
+# -----------------------------------------------------------------------------
|
|
|
+
|
|
|
atlas:CreativeWork a owl:Class ;
|
|
|
rdfs:subClassOf atlas:EntityType ;
|
|
|
rdfs:label "Creative Work" ;
|
|
|
owl:sameAs schema:CreativeWork, wd:Q17537576 .
|
|
|
|
|
|
+atlas:Film a owl:Class ;
|
|
|
+ rdfs:subClassOf atlas:CreativeWork ;
|
|
|
+ rdfs:label "Film" ;
|
|
|
+ owl:sameAs schema:Movie, wd:Q11424 . # 1.1.0
|
|
|
+
|
|
|
+atlas:Book a owl:Class ;
|
|
|
+ rdfs:subClassOf atlas:CreativeWork ;
|
|
|
+ rdfs:label "Book" ;
|
|
|
+ owl:sameAs schema:Book, wd:Q571 . # 1.1.0
|
|
|
+
|
|
|
+atlas:MusicAlbum a owl:Class ;
|
|
|
+ rdfs:subClassOf atlas:CreativeWork ;
|
|
|
+ rdfs:label "Music Album" ;
|
|
|
+ owl:sameAs schema:MusicAlbum, wd:Q482994 . # 1.1.0
|
|
|
+
|
|
|
+atlas:TVSeries a owl:Class ;
|
|
|
+ rdfs:subClassOf atlas:CreativeWork ;
|
|
|
+ rdfs:label "TV Series" ;
|
|
|
+ owl:sameAs schema:TVSeries, wd:Q5398426 . # 1.1.0
|
|
|
+
|
|
|
+atlas:VideoGame a owl:Class ;
|
|
|
+ rdfs:subClassOf atlas:CreativeWork ;
|
|
|
+ rdfs:label "Video Game" ;
|
|
|
+ owl:sameAs schema:VideoGame, wd:Q7889 . # 1.1.0
|
|
|
+
|
|
|
+
|
|
|
+# -----------------------------------------------------------------------------
|
|
|
+# Event (1.0.0)
|
|
|
+# -----------------------------------------------------------------------------
|
|
|
+
|
|
|
atlas:Event a owl:Class ;
|
|
|
rdfs:subClassOf atlas:EntityType ;
|
|
|
rdfs:label "Event" ;
|
|
|
owl:sameAs schema:Event, wd:Q1656682 .
|
|
|
|
|
|
+
|
|
|
+# -----------------------------------------------------------------------------
|
|
|
+# Product (1.0.0) + subtypes (1.1.0)
|
|
|
+# -----------------------------------------------------------------------------
|
|
|
+
|
|
|
atlas:Product a owl:Class ;
|
|
|
rdfs:subClassOf atlas:EntityType ;
|
|
|
rdfs:label "Product" ;
|
|
|
owl:sameAs schema:Product, wd:Q2424752 .
|
|
|
|
|
|
+atlas:Drug a owl:Class ;
|
|
|
+ rdfs:subClassOf atlas:Product ;
|
|
|
+ rdfs:label "Drug" ;
|
|
|
+ owl:sameAs wd:Q8386 . # 1.1.0
|
|
|
+
|
|
|
+atlas:Food a owl:Class ;
|
|
|
+ rdfs:subClassOf atlas:Product ;
|
|
|
+ rdfs:label "Food" ;
|
|
|
+ owl:sameAs wd:Q2095 . # 1.1.0
|
|
|
+
|
|
|
+
|
|
|
+# -----------------------------------------------------------------------------
|
|
|
+# FinancialInstrument (1.1.0) — new top-level type
|
|
|
+# -----------------------------------------------------------------------------
|
|
|
+
|
|
|
+atlas:FinancialInstrument a owl:Class ;
|
|
|
+ rdfs:subClassOf atlas:EntityType ;
|
|
|
+ rdfs:label "Financial Instrument" ;
|
|
|
+ owl:sameAs wd:Q182780 .
|
|
|
+
|
|
|
+atlas:PublicCompany a owl:Class ;
|
|
|
+ rdfs:subClassOf atlas:FinancialInstrument ;
|
|
|
+ rdfs:label "Public Company" ;
|
|
|
+ rdfs:comment "Company traded on a public exchange. Has a ticker and ISIN." ;
|
|
|
+ owl:sameAs wd:Q891723 .
|
|
|
+
|
|
|
+atlas:StockIndex a owl:Class ;
|
|
|
+ rdfs:subClassOf atlas:FinancialInstrument ;
|
|
|
+ rdfs:label "Stock Index" ;
|
|
|
+ rdfs:comment "Market index such as S&P 500, DAX or Nikkei." ;
|
|
|
+ owl:sameAs wd:Q181600 .
|
|
|
+
|
|
|
+atlas:Commodity a owl:Class ;
|
|
|
+ rdfs:subClassOf atlas:FinancialInstrument ;
|
|
|
+ rdfs:label "Commodity" ;
|
|
|
+ rdfs:comment "Physical good traded on an exchange: gold, oil, wheat, etc." ;
|
|
|
+ owl:sameAs wd:Q317088 .
|
|
|
+
|
|
|
+atlas:Cryptocurrency a owl:Class ;
|
|
|
+ rdfs:subClassOf atlas:FinancialInstrument ;
|
|
|
+ rdfs:label "Cryptocurrency" ;
|
|
|
+ owl:sameAs wd:Q13479982 .
|
|
|
+
|
|
|
+atlas:Currency a owl:Class ;
|
|
|
+ rdfs:subClassOf atlas:FinancialInstrument ;
|
|
|
+ rdfs:label "Currency" ;
|
|
|
+ rdfs:comment "Fiat currency. Distinct from Cryptocurrency." ;
|
|
|
+ owl:sameAs schema:Currency, wd:Q8142 .
|
|
|
+
|
|
|
+
|
|
|
+# -----------------------------------------------------------------------------
|
|
|
+# New top-level types (1.1.0)
|
|
|
+# -----------------------------------------------------------------------------
|
|
|
+
|
|
|
+atlas:Animal a owl:Class ;
|
|
|
+ rdfs:subClassOf atlas:EntityType ;
|
|
|
+ rdfs:label "Animal" ;
|
|
|
+ owl:sameAs wd:Q729 .
|
|
|
+
|
|
|
+atlas:Disease a owl:Class ;
|
|
|
+ rdfs:subClassOf atlas:EntityType ;
|
|
|
+ rdfs:label "Disease" ;
|
|
|
+ owl:sameAs schema:MedicalCondition, wd:Q12136 .
|
|
|
+
|
|
|
+atlas:Building a owl:Class ;
|
|
|
+ rdfs:subClassOf atlas:EntityType ;
|
|
|
+ rdfs:label "Building" ;
|
|
|
+ owl:sameAs wd:Q41176 .
|
|
|
+
|
|
|
+atlas:Award a owl:Class ;
|
|
|
+ rdfs:subClassOf atlas:EntityType ;
|
|
|
+ rdfs:label "Award" ;
|
|
|
+ owl:sameAs wd:Q618779 .
|
|
|
+
|
|
|
+atlas:Sport a owl:Class ;
|
|
|
+ rdfs:subClassOf atlas:EntityType ;
|
|
|
+ rdfs:label "Sport" ;
|
|
|
+ owl:sameAs wd:Q349 .
|
|
|
+
|
|
|
+atlas:FictionalCharacter a owl:Class ;
|
|
|
+ rdfs:subClassOf atlas:EntityType ;
|
|
|
+ rdfs:label "Fictional Character" ;
|
|
|
+ owl:sameAs wd:Q95074 .
|
|
|
+
|
|
|
+atlas:EthnicGroup a owl:Class ;
|
|
|
+ rdfs:subClassOf atlas:EntityType ;
|
|
|
+ rdfs:label "Ethnic Group" ;
|
|
|
+ owl:sameAs wd:Q41710 .
|
|
|
+
|
|
|
+atlas:Concept a owl:Class ;
|
|
|
+ rdfs:subClassOf atlas:EntityType ;
|
|
|
+ rdfs:label "Concept" ;
|
|
|
+ rdfs:comment "Abstract idea that does not fit a more specific type." ;
|
|
|
+ owl:sameAs wd:Q151885 .
|
|
|
+
|
|
|
+
|
|
|
+# -----------------------------------------------------------------------------
|
|
|
+# Other (1.0.0) — fallback, use when no type above fits
|
|
|
+# -----------------------------------------------------------------------------
|
|
|
+
|
|
|
atlas:Other a owl:Class ;
|
|
|
rdfs:subClassOf atlas:EntityType ;
|
|
|
rdfs:label "Other" .
|