QENEX Law
Legal-source taxonomy, licence tagging, corpus gate

QENEX Law — Source Licence-Tagging Schema (v0.1, Phase-0)#

Why this exists first: nothing enters the QENEX Law corpus without a licence tag. This schema is the gate. It records what a source is, whether we may ingest it into an AI corpus, and proves provenance. Red-bucket material is never ingested — only referenced by a human.


1. The tag record — fields#

Every source (and every version of it) gets one record. * = required before ingestion.

FieldReqType / vocabNotes
id*slugstable unique id, e.g. ogl-legislation-companies-act-2006
title*stringhuman title
publisher*stringe.g. The National Archives, HMRC, BVCA
source_url*urlcanonical source
retrieved_at*datefetch date
jurisdiction*england-wales \uk \scotland \ni \other
practice_area*list (see §3)one or more
instrument_type*legislation \case \guidance \model_document \commentary \dataset
versionstringedition / point-in-time / doc version
effective_datedateenactment / decision / publication
licence_bucket*green \amber \redthe gate (see §2)
licence_name*stringe.g. OGL-v3.0, TNA-Computational-Reuse, Proprietary
licence_urlurllicence text
ai_use_right*allowed \conditional \prohibitedmay it go in the AI corpus?
redistribution_right*allowed \conditional \prohibited
attribution_required*bool
corpus_action*ingest \ingest_conditional \reference_onlyderived from bucket (see §4)
licence_conditionsstringthe specific conditions for conditional/amber
storage_locationstringIPFS / Supabase / Forgejo ref
ipfs_cidstringpinned raw copy
anchor_idstringdual-rail audit anchor id (provenance)
trust_score0–100source authority × freshness
last_verified*datefreshness
superseded_byidsupersession chain
reviewed_bystringwho tagged it
notesstring

2. The three buckets (the rule)#


3. Controlled vocab — practice areas#

company-governance · fundraising-seis-eis · fundraising-asa-termsheet · ip-patents · ip-trademarks · ip-assignment · employment · contractor · data-protection · commercial-nda · tax-reliefs


4. Decision rules (apply in order)#

  1. Is it commercial-subscription / textbook / firm know-how? → red, reference_only, ai_use_right=prohibited. STOP.
  2. Is it primary legislation or official gov/regulator guidance under OGL? → green, ingest, ai_use_right=allowed. Record OGL-v3.0.
  3. Is it a court judgment (or other "free but conditional" source)? → amber, ingest_conditional. Record the exact re-use licence (for case law: the TNA computational/AI re-use licence) in licence_conditions. No licence recorded ⇒ treat as red until resolved.
  4. Model documents / standards (e.g. BVCA): default amber — verify terms until the publisher's terms of use are read and recorded; only mark green if the terms explicitly permit AI/corpus use.
  5. Unsure? → red by default. Never ingest on assumption.

5. Machine-readable template (YAML front-matter per source)#

id:
title:
publisher:
source_url:
retrieved_at:
jurisdiction:            # england-wales | uk | scotland | ni | other
practice_area: []        # see §3
instrument_type:         # legislation | case | guidance | model_document | commentary | dataset
version:
effective_date:
licence_bucket:          # green | amber | red
licence_name:
licence_url:
ai_use_right:            # allowed | conditional | prohibited
redistribution_right:    # allowed | conditional | prohibited
attribution_required:    # true | false
corpus_action:           # ingest | ingest_conditional | reference_only
licence_conditions:
storage_location:
ipfs_cid:
anchor_id:
trust_score:
last_verified:
superseded_by:
reviewed_by:
notes:

Enforcement: the ingestion pipeline refuses any record where corpus_action != ingest/ingest_conditional, or where required fields are blank, or licence_bucket=red. Amber requires a non-empty licence_conditions.


6. Worked examples (P1 free sources)#

- id: ogl-legislation-companies-act-2006
  publisher: The National Archives (legislation.gov.uk)
  instrument_type: legislation
  jurisdiction: uk
  practice_area: [company-governance]
  licence_bucket: green
  licence_name: OGL-v3.0
  ai_use_right: allowed
  corpus_action: ingest
  attribution_required: true

- id: hmrc-vcm-seis-eis
  publisher: HMRC (gov.uk)
  instrument_type: guidance
  practice_area: [fundraising-seis-eis]
  licence_bucket: green
  licence_name: OGL-v3.0
  ai_use_right: allowed
  corpus_action: ingest

- id: tna-findcaselaw-judgment-<neutral-citation>
  publisher: The National Archives — Find Case Law
  instrument_type: case
  licence_bucket: amber
  licence_name: TNA-Computational-Reuse
  ai_use_right: conditional
  corpus_action: ingest_conditional
  licence_conditions: "Bulk/AI re-use under TNA computational-analysis licence; confirm licence obtained before ingest."

- id: bvca-model-early-stage-docs
  publisher: BVCA / UK Private Capital
  instrument_type: model_document
  practice_area: [fundraising-asa-termsheet, company-governance]
  licence_bucket: amber           # verify BVCA terms before promoting to green
  ai_use_right: conditional
  corpus_action: ingest_conditional
  licence_conditions: "Read BVCA terms of use; confirm corpus/AI use permitted + attribution."

- id: practical-law-note-<x>
  publisher: Thomson Reuters Practical Law
  instrument_type: commentary
  licence_bucket: red
  licence_name: Proprietary
  ai_use_right: prohibited
  corpus_action: reference_only
  notes: "Subscription for human research only. Never ingest."

7. Next#

  1. Adopt this schema as the corpus gate.
  2. Tag the P1 free sources (examples above) — that's the first real corpus content.
  3. Store each tag record with the raw doc (IPFS) + anchor (provenance) + metadata (Supabase); version the schema itself in Forgejo (qenex-law).