Specifica OSL
La specifica OSL è il contratto normativo (RFC 2119). Definisce ogni primitiva, ogni campo e ogni codice di errore. La pagina Concetti insegna il modello; la spec lo vincola. Apache-2.0
Cronologia delle versioni
Sezione intitolata “Cronologia delle versioni”apiVersion: osl.opendome.eu/v1 copre l’intera linea v1.x. Le versioni minori
sono additive e compatibili in lettura; i cambiamenti incompatibili aspettano la v2.
v1.0Base
Le fondamenta: superset di MetricFlow (piano strutturato) + UnstructuredFacet (piano non strutturato) + il ponte JointEntity, e i quattro livelli di conformità.
RFC 0002 · semantic_match · Accepted
v1.1Progettazione
Il modello di relazioni e risoluzione: strutturato↔strutturato tramite entità condivise, N-N tramite bridge, join onesti strutturato↔non strutturato su chiavi autorevoli, multi-hop e risoluzione veloce.
RFC 0003 · Relationships & resolution
v1.22026-06Attuale · bozza
Rende operativo l'RFC 0003: attraversamento L2, campionamento di contenuto governato (ACL + oscuramento server-side) e il domain-map unificato (tutto è una Entity; i bridge collassano in archi). I livelli di conformità Lance + Governance si ampliano.
RFC 0003 · Implemented
v1.32026-07Prossima
La superficie di query unica (OSL-SQL): /osl/query diventa il solo endpoint di consumo, richiudendo retrieval, join e attraversamento in un unico dialetto SQL semantico — più gli operatori di proiezione. L'RFC 0002 viene superata dalla sorgente di relazione RETRIEVE.
RFC 0005 · OSL-SQL · DraftRFC 0004 · Projection operators · Draft
v2Futura
Riservata a cambiamenti incompatibili e a lavoro esplicitamente fuori dal confine v1.x (es. inferenza / ragionamento contenuto↔contenuto).
Le nove primitive
Sezione intitolata “Le nove primitive”SemanticModel, Metric, SavedQuery, TimeSpine, UnstructuredFacet,
JointEntity, Lexicon, DataContract, PolicyBinding. Ognuna porta
apiVersion: osl.opendome.eu/v1 e un kind. I JSON Schema si pubblicano uno per
primitiva più uno schema master del manifest.
I cambiamenti sostanziali passano per il processo RFC.
| # | Titolo | Stato |
|---|---|---|
| 0002 | predicato semantic_match / MATCHES |
Superata |
| 0003 | Relazioni, risoluzione e queryabilità | Implementato |
| 0004 | Operatori di proiezione (encoder + decoder opzionale) | Bozza |
| 0005 | OSL-SQL — la superficie di query unica | Bozza |
Principi di design (vincolanti)
Sezione intitolata “Principi di design (vincolanti)”Se una proposta ne infrange uno, viene rifiutata:
- Il pass-through di MetricFlow è sacro. Qualsiasi progetto
dbt-slvalido è OSL valido. - Lance è di prima classe, non un add-on — con le sue primitive, schema, errori, lineage.
- Il cliente dichiara, il motore esegue. La spec dice cosa esiste, mai come gira.
- Ogni decisione è verificabile in audit — query, retrieval, decisione del PDP emettono tutti OpenLineage.
- Il versionamento è un contratto.
…/v1non romperà il tuo YAML per tutta la linea v1; i cambiamenti incompatibili aspettano la v2.
Garanzia di versionamento
Sezione intitolata “Garanzia di versionamento”apiVersion: osl.opendome.eu/v1 è una promessa di non rompere il tuo YAML per
tutta la linea v1. Gli endpoint possono aggiungere campi opzionali entro v1.x; i
client devono ignorare i campi non riconosciuti. Qualsiasi cosa deprecata in v1.x
resta funzionante per almeno due versioni minori consecutive; la rimozione
richiede v2, servita insieme a v1 per quella finestra.
Correlati
Sezione intitolata “Correlati”- Livelli di conformità — Core, Lance, Lineage, Governance.
- Processo RFC — come proporre un cambiamento.