Typed metamodel package projecting the OWL 2 Web Ontology Language Structural Specification into TypeScript for AML-driven agentic systems.
| Field | Value |
|---|---|
| metamodel | owl |
| package | @amlhubs/owl@0.0.1 |
| spec | OWL 2 Structural Specification (Second Edition) — W3C Rec 2012-12-11 |
| spec URL | https://www.w3.org/TR/owl2-syntax/ |
| repo | https://github.com/amlhubs/owl |
| upstream | @amlhubs/rdfs (peer), @amlhubs/rdf (peer) |
| license | UNLICENSED (private; published to GitHub Packages) |
OWL 2 is the W3C-standardized ontology metamodel for the Semantic Web. It extends RDFS with a richer vocabulary for describing classes, properties, individuals, and the formal relations among them — disjointness, equivalence, cardinality, restriction, key constraints, and inverse/functional/transitive characteristics — sufficient to support automated reasoning under decidable description-logic profiles.
OWL 2 carries dual semantics, both fixed by the same 2012-12-11 Recommendation suite:
- Direct Semantics (W3C Rec) interprets OWL 2 ontologies as expressions of the SROIQ description logic, the formal foundation that enables sound and complete reasoning by HermiT, Pellet, ELK, Konclude, and FaCT++.
- RDF-Based Semantics (W3C Rec) interprets OWL 2 ontologies as RDF graphs, mapping every structural construct to RDF triples per the OWL 2 Mapping to RDF Graphs Recommendation. This semantics specializes the RDFS vocabulary metamodel (
rdfs:Class,rdfs:subClassOf,rdfs:domain,rdfs:range) and the RDF graph metamodel (rdf:type, triples, IRIs, blank nodes), which is why this package declares peer dependencies on@amlhubs/rdfsand@amlhubs/rdf.
The Structural Specification (§3-§10) is the abstract-syntax canon this package projects. The OWL 2 Profiles (W3C Rec) — EL, QL, RL — slice the structural surface into computationally tractable subsets; this package projects the full surface, leaving profile selection to the consumer.
Ontology engineering at agent scale. Every concept in an AML-governed system that requires formal class hierarchies, property characteristics, restrictions, equivalence, disjointness, or key constraints maps directly into the OWL 2 Structural Specification. By projecting that specification into typed TypeScript, this package gives every AML agent a compile-time-checked vocabulary for ontology authoring — eliminating the entire class of defects that arise from string-typed RDF/Turtle handling and lifting ontology operations into the same type-safe authoring discipline as the rest of the AML metamodel suite.
Regulator-recognized W3C standard. OWL 2 is a Recommendation of the World Wide Web Consortium, the same body that ratifies HTTP, HTML, XML, and the RDF/SPARQL stack. Choosing OWL 2 as the ontology metamodel means every artifact this package produces is auditable against a public, citation-stable, internationally adopted standard. Healthcare (SNOMED CT, the FDA's RxNorm), finance (FIBO), defense (the Cyc upper ontology bridges), bioinformatics (the OBO Foundry), and digital libraries (the Library of Congress LCSH bridge to SKOS) all serialize their canonical ontologies as OWL 2 — meaning AML systems built on this package interoperate with the existing regulator and industry-consortium ontology infrastructure without bespoke adapters.
Agentic reasoning leverage. Every OWL 2 reasoner — HermiT (academic gold standard), Pellet (Stardog's commercial engine), ELK (the EL-profile reasoner used by SNOMED CT for sub-second classification of 350,000-class ontologies), Konclude, FaCT++ — consumes the same OWL 2 abstract syntax this package projects. An AML agent that authors against @amlhubs/owl automatically inherits the entire OWL 2 reasoner ecosystem. The agent issues SubClassOf, EquivalentClasses, and HasKey axioms; the reasoner returns class hierarchies, instance retrievals, and consistency checks that no hand-rolled inference logic could match for soundness or scale. This is the difference between an AML agent that ships heuristic guesses and one that ships formally entailed conclusions.
Compounding reuse with SKOS, SHACL, and PROV. OWL 2 is the ontology layer of a Recommendation stack that also includes SKOS (skos:Concept for taxonomies), SHACL (sh:NodeShape for graph-level validation), and PROV-O (prov:Entity, prov:Activity, prov:Agent for provenance). All three are themselves authored in OWL 2. By owning the OWL 2 metamodel, AML inherits the structural ground beneath every one of those W3C ontologies — turning each subsequent metamodel package (@amlhubs/skos, @amlhubs/shacl, @amlhubs/prov) into an extension of an already-typed surface rather than a parallel re-projection.
| Section reference | Surface this package projects |
|---|---|
| §3 | Ontology, OntologyIRI, VersionIRI, Import, DirectImportsClosure |
| §5 | Individual: NamedIndividual, AnonymousIndividual |
| §6 | ObjectPropertyExpression, ObjectProperty, InverseObjectProperty, DataProperty |
| §7 | DataRange: Datatype, DataIntersectionOf, DataUnionOf, DataComplementOf, DataOneOf, DatatypeRestriction, FacetRestriction |
| §8 | ClassExpression: Class, Object/Data restrictions and cardinalities |
| §9.1 | Class axioms: SubClassOf, EquivalentClasses, DisjointClasses, DisjointUnion |
| §9.2 | Object-property axioms (sub, equivalent, disjoint, inverse, domain, range, functional, inverse-functional, reflexive, irreflexive, symmetric, asymmetric, transitive) |
| §9.3 | Data-property axioms (sub, equivalent, disjoint, domain, range, functional) |
| §9.4 | DatatypeDefinition |
| §9.5 | HasKey |
| §9.6 | Assertions: SameIndividual, DifferentIndividuals, ClassAssertion, Object/Data property assertions and negative variants |
| §10 | Annotations: Annotation, AnnotationProperty, AnnotationAssertion, SubAnnotationPropertyOf, AnnotationPropertyDomain, AnnotationPropertyRange |
The companion serializations — OWL 2 XML Serialization, Manchester Syntax, and Mapping to RDF Graphs — are out of scope for this package and will be projected by sibling packages when authored.
Scaffold stage. owl.ts is a banner-only enumeration of the metaclasses listed in the table above, anchored by §x.y references into the W3C Recommendation. No typed declarations are exported until the implementation phase publishes the full surface.