version: 1
project_id: example-ontology
root_ontology: https://example.org/ontology
# '.' is the directory that contains .protege-mcp/ (or the policy's own directory elsewhere).
project_root: .

# RO-Crate 1.1 is the broad-compatibility default. Policies may explicitly select
# ro-crate-1.0, 1.2, or 1.3 with that version's normative metadata filename.
interoperability:
  profile: https://hakjuoh.github.io/protege-mcp/profiles/project-v1/
  additional_profiles: []
  root_artifact: ontology.ttl
  metadata:
    path: ro-crate-metadata.json
    format: ro-crate-1.1
  canonicalization:
    algorithm: RDFC-1.0
    hash: SHA-256
    scope: root-ontology
    timeout_ms: 120000

# These security defaults are explicit so a reviewed policy does not depend on
# process working-directory or network state.
filesystem:
  allow_external_paths: false
audit:
  retention_days: 90
  max_file_bytes: 10485760
  max_files: 10
network:
  default: deny
  allowed_hosts: []

reasoning:
  reasoner: HermiT
  owl_profile: DL
  required: true
  timeout_ms: 120000

imports:
  mode: unlocked
  fail_on_missing: true
  network: deny

validation:
  required_stages: [interoperability, reasoner, profile, governance, structural]
  fail_on: warning
