Native CLI i18n: The TrustGraph CLI has built-in translation support that dynamically loads language strings. You can test and use different languages by simply passing the --lang flag (e.g., --lang es for Spanish, --lang ru for Russian) or by configuring your environment's LANG variable. Automated Docs Translations: This PR introduces autonomously translated Markdown documentation into several target languages, including Spanish, Swahili, Portuguese, Turkish, Hindi, Hebrew, Arabic, Simplified Chinese, and Russian.
11 KiB
| layout | title | parent |
|---|---|---|
| default | Ontoloji Yapısı Teknik Özellikleri | Turkish (Beta) |
Ontoloji Yapısı Teknik Özellikleri
Beta Translation: This document was translated via Machine Learning and as such may not be 100% accurate. All non-English languages are currently classified as Beta.
Genel Bakış
Bu özellik, TrustGraph sistemindeki ontolojilerin yapısını ve biçimini tanımlar. Ontolojiler, sınıfları, özellikleri ve ilişkileri tanımlayan resmi bilgi modelleri sağlar ve akıl yürütme ve çıkarım yeteneklerini destekler. Sistem, OWL'den ilham alan bir yapılandırma biçimi kullanır ve bu, OWL/RDFS kavramlarını geniş ölçüde temsil ederken aynı zamanda TrustGraph'ın gereksinimleri için optimize edilmiştir.
İsimlendirme Kuralları: Bu proje, yılan_biçimi yerine tüm tanımlayıcılar (yapılandırma anahtarları, API uç noktaları, modül adları vb.) için kebab-case kullanır.
Hedefler
Sınıf ve Özellik Yönetimi: OWL benzeri sınıfları, özellikleri, etki alanlarını, aralıkları ve tür kısıtlamalarını tanımlayın. Zengin Anlamsal Destek: Etiketler, çoklu dil desteği ve resmi kısıtlamalar dahil olmak üzere kapsamlı RDFS/OWL özellikleri sağlayın. Çoklu Ontoloji Desteği: Birden fazla ontolojinin birlikte var olmasına ve etkileşimde olmasına izin verin. Doğrulama ve Akıl Yürütme: Ontolojilerin, tutarlılık kontrolü ve çıkarım desteği ile OWL benzeri standartlara uygun olduğundan emin olun. Standart Uyumluluğu: İç optimizasyonu korurken standart formatlarda (Turtle, RDF/XML, OWL/XML) içe/dışa aktarma desteğini sağlayın.
Arka Plan
TrustGraph, ontolojileri esnek bir anahtar-değer sisteminde yapılandırma öğeleri olarak saklar. Biçim OWL (Web Ontology Language) tarafından ilham alınmış olsa da, TrustGraph'ın belirli kullanım durumları için optimize edilmiştir ve tüm OWL özelliklerine kesin olarak uymamaktadır.
TrustGraph'taki ontolojiler şunları sağlar: Resmi nesne türlerinin ve özelliklerinin tanımlanması Özellik etki alanlarının, aralıklarının ve tür kısıtlamalarının belirtilmesi Mantıksal akıl yürütme ve çıkarım Karmaşık ilişkiler ve kardinalite kısıtlamaları Uluslararasılaştırma için çoklu dil desteği
Ontoloji Yapısı
Yapılandırma Depolama
Ontolojiler, aşağıdaki kalıba sahip yapılandırma öğeleri olarak saklanır:
Tür: ontology
Anahtar: Benzersiz ontoloji tanımlayıcısı (örneğin, natural-world, domain-model)
Değer: JSON formatında eksiksiz ontoloji
JSON Yapısı
Ontoloji JSON biçimi, dört ana bölümden oluşur:
1. Meta Veriler
Ontoloji hakkında idari ve tanımlayıcı bilgiler içerir:
{
"metadata": {
"name": "The natural world",
"description": "Ontology covering the natural order",
"version": "1.0.0",
"created": "2025-09-20T12:07:37.068Z",
"modified": "2025-09-20T12:12:20.725Z",
"creator": "current-user",
"namespace": "http://trustgraph.ai/ontologies/natural-world",
"imports": ["http://www.w3.org/2002/07/owl#"]
}
}
Alanlar:
name: Ontolojinin insan tarafından okunabilir adı
description: Ontolojinin amacının kısa açıklaması
version: Semantik sürüm numarası
created: Oluşturulma zamanının ISO 8601 zaman damgası
modified: Son değişiklik zamanının ISO 8601 zaman damgası
creator: Ontolojiyi oluşturan kullanıcı/sistemin kimliği
namespace: Ontoloji öğeleri için temel URI
imports: İçe aktarılan ontoloji URI'lerinin dizisi
2. Sınıflar
Nesne türlerini ve hiyerarşik ilişkilerini tanımlar:
{
"classes": {
"animal": {
"uri": "http://trustgraph.ai/ontologies/natural-world#animal",
"type": "owl:Class",
"rdfs:label": [{"value": "Animal", "lang": "en"}],
"rdfs:comment": "An animal",
"rdfs:subClassOf": "lifeform",
"owl:equivalentClass": ["creature"],
"owl:disjointWith": ["plant"],
"dcterms:identifier": "ANI-001"
}
}
}
Desteklenen Özellikler:
uri: Sınıfın tam URI'si
type: Her zaman "owl:Class"
rdfs:label: Dil etiketli etiketlerin dizisi
rdfs:comment: Sınıfın açıklaması
rdfs:subClassOf: Üst sınıf tanımlayıcısı (tekli miras)
owl:equivalentClass: Eşdeğer sınıf tanımlayıcılarının dizisi
owl:disjointWith: Ayrık sınıf tanımlayıcılarının dizisi
dcterms:identifier: İsteğe bağlı harici referans tanımlayıcısı
3. Nesne Özellikleri
Örnekleri diğer örneklere bağlayan özellikler:
{
"objectProperties": {
"has-parent": {
"uri": "http://trustgraph.ai/ontologies/natural-world#has-parent",
"type": "owl:ObjectProperty",
"rdfs:label": [{"value": "has parent", "lang": "en"}],
"rdfs:comment": "Links an animal to its parent",
"rdfs:domain": "animal",
"rdfs:range": "animal",
"owl:inverseOf": "parent-of",
"owl:functionalProperty": false
}
}
}
Desteklenen Özellikler:
uri: Özelliğin tam URI'si
type: Her zaman "owl:ObjectProperty"
rdfs:label: Dil etiketli etiketlerin dizisi
rdfs:comment: Özelliğin açıklaması
rdfs:domain: Bu özelliğe sahip sınıf tanımlayıcısı
rdfs:range: Özellik değerleri için sınıf tanımlayıcısı
owl:inverseOf: Ters özelliğin tanımlayıcısı
owl:functionalProperty: En fazla bir değer olduğunu gösteren boolean değeri
owl:inverseFunctionalProperty: Benzersiz tanımlayıcı özellikleri için boolean değeri
4. Veri Tipi Özellikleri
Örnekleri, literal değerlere bağlayan özellikler:
{
"datatypeProperties": {
"number-of-legs": {
"uri": "http://trustgraph.ai/ontologies/natural-world#number-of-legs",
"type": "owl:DatatypeProperty",
"rdfs:label": [{"value": "number of legs", "lang": "en"}],
"rdfs:comment": "Count of number of legs of the animal",
"rdfs:domain": "animal",
"rdfs:range": "xsd:nonNegativeInteger",
"owl:functionalProperty": true,
"owl:minCardinality": 0,
"owl:maxCardinality": 1
}
}
}
Desteklenen Özellikler:
uri: Özelliğin tam URI'si
type: Her zaman "owl:DatatypeProperty"
rdfs:label: Dil etiketli etiketlerin dizisi
rdfs:comment: Özelliğin açıklaması
rdfs:domain: Bu özelliğe sahip sınıf tanımlayıcısı
rdfs:range: Özellik değerleri için XSD veri türü
owl:functionalProperty: En fazla bir değer olduğunu gösteren boolean değeri
owl:minCardinality: Minimum değer sayısı (isteğe bağlı)
owl:maxCardinality: Maksimum değer sayısı (isteğe bağlı)
owl:cardinality: Tam değer sayısı (isteğe bağlı)
Desteklenen XSD Veri Türleri
Aşağıdaki XML Şema veri türleri, veri türü özellik aralıkları için desteklenmektedir:
xsd:string - Metin değerleri
xsd:integer - Tamsayılar
xsd:nonNegativeInteger - Negatif olmayan tamsayılar
xsd:float - Ondalık sayılar
xsd:double - Çift hassasiyetli sayılar
xsd:boolean - Doğru/yanlış değerleri
xsd:dateTime - Tarih ve saat değerleri
xsd:date - Tarih değerleri
xsd:anyURI - URI referansları
Dil Desteği
Etiketler ve yorumlar, W3C dil etiketi biçimini kullanarak çoklu dilleri destekler:
{
"rdfs:label": [
{"value": "Animal", "lang": "en"},
{"value": "Tier", "lang": "de"},
{"value": "Animal", "lang": "es"}
]
}
Örnek Ontoloji
İşte basit bir ontolojinin eksiksiz bir örneği:
{
"metadata": {
"name": "The natural world",
"description": "Ontology covering the natural order",
"version": "1.0.0",
"created": "2025-09-20T12:07:37.068Z",
"modified": "2025-09-20T12:12:20.725Z",
"creator": "current-user",
"namespace": "http://trustgraph.ai/ontologies/natural-world",
"imports": ["http://www.w3.org/2002/07/owl#"]
},
"classes": {
"lifeform": {
"uri": "http://trustgraph.ai/ontologies/natural-world#lifeform",
"type": "owl:Class",
"rdfs:label": [{"value": "Lifeform", "lang": "en"}],
"rdfs:comment": "A living thing"
},
"animal": {
"uri": "http://trustgraph.ai/ontologies/natural-world#animal",
"type": "owl:Class",
"rdfs:label": [{"value": "Animal", "lang": "en"}],
"rdfs:comment": "An animal",
"rdfs:subClassOf": "lifeform"
},
"cat": {
"uri": "http://trustgraph.ai/ontologies/natural-world#cat",
"type": "owl:Class",
"rdfs:label": [{"value": "Cat", "lang": "en"}],
"rdfs:comment": "A cat",
"rdfs:subClassOf": "animal"
},
"dog": {
"uri": "http://trustgraph.ai/ontologies/natural-world#dog",
"type": "owl:Class",
"rdfs:label": [{"value": "Dog", "lang": "en"}],
"rdfs:comment": "A dog",
"rdfs:subClassOf": "animal",
"owl:disjointWith": ["cat"]
}
},
"objectProperties": {},
"datatypeProperties": {
"number-of-legs": {
"uri": "http://trustgraph.ai/ontologies/natural-world#number-of-legs",
"type": "owl:DatatypeProperty",
"rdfs:label": [{"value": "number-of-legs", "lang": "en"}],
"rdfs:comment": "Count of number of legs of the animal",
"rdfs:range": "xsd:nonNegativeInteger",
"rdfs:domain": "animal"
}
}
}
Doğrulama Kuralları
Yapısal Doğrulama
- URI Tutarlılığı: Tüm URI'ler
{namespace}#{identifier}kalıbını takip etmelidir. - Sınıf Hiyerarşisi:
rdfs:subClassOfiçinde döngüsel miras ilişkisi olmamalıdır. - Özellik Alanları/Aralıkları: Mevcut sınıflara veya geçerli XSD türlerine başvurmalıdır.
- Ayrık Sınıflar: Birbirinin alt sınıfı olamazlar.
- Ters Özellikler: Belirtilmişse, çift yönlü olmalıdır.
Anlamsal Doğrulama
- Benzersiz Tanımlayıcılar: Sınıf ve özellik tanımlayıcıları, bir ontoloji içinde benzersiz olmalıdır.
- Dil Etiketleri: BCP 47 dil etiketi formatını takip etmelidir.
- Kardinalite Kısıtlamaları: Hem belirtilmişse,
minCardinality≤maxCardinalityolmalıdır. - Fonksiyonel Özellikler:
maxCardinality> 1 olamaz.
İçe/Dışa Aktarma Formatı Desteği
İç format JSON olmasına rağmen, sistem standart ontoloji formatlarına dönüştürmeyi destekler:
Turtle (.ttl) - RDF'nin kompakt seri hale getirilmesi RDF/XML (.rdf, .owl) - W3C standardı formatı OWL/XML (.owx) - OWL'e özel XML formatı JSON-LD (.jsonld) - Bağlı Veri için JSON
Referanslar
OWL 2 Web Ontology Language RDF Schema 1.1 XML Schema Datatypes BCP 47 Language Tags