Semantius Logo

Contract Authoring

1. Overview

Template-driven contract drafting with the approved clause library. Masters contract_templates and contract_clauses; produces draft legal_contracts that flow into CLM-NEGOTIATION. Realizes CLM-CONTRACT-AUTHORING and CLM-CLAUSE-LIBRARY-MGMT.

2. Entity summary

Namedata_objectDescription
Clause Librariesclause_librariesVersioned, governed collections of approved contract clauses, often organized by jurisdiction or contract type, that authors draw from.
Contract Clausescontract_clausesReusable clause library with preferred and fallback language for terms like indemnification, IP, termination, and payment.
Contract Templatescontract_templatesPre-approved contract templates such as NDAs, MSAs, and SOWs, assembled from the clause library to author new contracts.
CPQ Contract Draftscontract_draftsDraft contracts handed off from an approved quote, the precursor to a signed contract.
Sourcing Eventssourcing_eventsCompetitive bidding processes (RFI, RFQ, RFP, or reverse auction), tracking scope, suppliers, scorecards, responses, and the awarded supplier.
flowchart TD
  classDef master fill:#d4f4dd,stroke:#27ae60,color:#0b3d20;
  classDef consumer fill:#e8def8,stroke:#7b1fa2,color:#3a155d;
  classDef platform_builtin fill:#e0e0e0,stroke:#424242,color:#1a1a1a;
  contract_templates["Contract Templates"]
  contract_clauses["Contract Clauses"]
  sourcing_events["Sourcing Events"]
  contract_drafts["CPQ Contract Drafts"]
  clause_libraries["Clause Libraries"]
  users["Users"]
  contract_templates -->|"defines"| contract_clauses
  contract_templates -->|"published_to"| contract_drafts
  clause_libraries -->|"contains"| contract_clauses
  users -->|"manages sourcing events"| sourcing_events
  users -->|"owns"| contract_templates
  users -->|"approved"| contract_templates
  users -->|"approved"| contract_clauses
  class contract_templates master;
  class contract_clauses master;
  class sourcing_events consumer;
  class contract_drafts consumer;
  class clause_libraries master;
  class users platform_builtin;
  style contract_drafts stroke-dasharray:5 5;
  style clause_libraries stroke-dasharray:5 5;

3. Entities catalog

#data_objectcanonical codesingularpluralrolemastered inmastered labelnecessitypersonal_contententity_typewrite tiernotes
1clause_librariesclause_librariesClause LibraryClause Librariesmaster--optional-catalog:admin-
2contract_clausescontract_clausesContract ClauseContract Clausesmaster--required-catalog:admin-
3contract_templatescontract_templatesContract TemplateContract Templatesmaster--required-catalog:admin-
4contract_draftscontract_draftsCPQ Contract DraftCPQ Contract Draftsconsumercpq-approvals-contractsApprovals and Contract Draftsoptional-operational_workflow:manage-
5sourcing_eventssourcing_eventsSourcing EventSourcing Eventsconsumer--required-operational_workflow:manage-

4. Aliases and industry synonyms

(none: no industry-scoped aliases for this scope)

5. Relationships

5.1 Intra-scope edges

fromverbtocardinalitykindnecessityowner_sidedelete_modefk_formatnotes
contract_templatesdefinescontract_clausesone_to_manycompositionoptionalsourcecascadeparent-
contract_templatespublished_tocontract_draftsone_to_manyreferenceoptionalsourceclearreference-
clause_librariescontainscontract_clausesone_to_manycompositionoptionalsourcecascadeparent-

5.2 Built-in edges (users and other platform built-ins)

fromverbtocardinalitynecessityowner_sidedelete_modefk_formatnotes
usersmanages sourcing eventssourcing_eventsone_to_manyoptionalsourceclearreference-
usersownscontract_templatesone_to_manyoptionalsourceclearreference-
usersapprovedcontract_templatesone_to_manyoptionalsourceclearreference-
usersapprovedcontract_clausesone_to_manyoptionalsourceclearreference-

5.3 Cross-scope edges

5.3a Outbound from this scope’s masters and contributors

Edges this scope drives: the in-scope endpoint has role of master or contributor.

fromverbtocardinalitynecessitydelete_modefk_formatnotes
contract_templatesseedslegal_contractsone_to_manyoptionalnonen/a-
legal_contractscontainscontract_clausesone_to_manyoptionalnonen/a-
negotiation_playbooksdefines positions forcontract_clausesone_to_manyoptionalnonen/a-

5.3b Context edges on embedded shells and consumed entities

Edges the canonical owner drives, shown for context: the in-scope endpoint has role of embedded_master, consumer, or derived.

fromverbtocardinalitynecessitydelete_modefk_formatnotes
sourcing_eventsoriginateslegal_contractsone_to_manyoptionalnonen/a-
contract_draftsdraftslegal_contractsone_to_manyoptionalnonen/a-
suppliersenablessourcing_eventsone_to_manyoptionalnonen/a-

6. Cross-domain context

6.1 Master consumers (other modules / domains that embed this scope’s masters)

(none: no other module embeds this scope’s masters; the canonical owners do.)

6.2 Outbound handoffs (events this scope publishes)

source moduletarget domaintarget moduletrigger_eventtransitionpayloadintegrationfrictiondescription
CLM-AUTHORINGCPQCPQ-APPROVALS-CONTRACTScontract_template.published(state_change)contract_templatesapi_callmediumNew approved template available to CPQ for contract-draft generation.

6.3 Inbound handoffs (events this scope reacts to)

target modulesource domainsource moduletrigger_eventtransitionpayloadintegrationfrictiondescription
CLM-AUTHORINGCLMCLM-NEGOTIATIONcontract_clause.flagged(state_change)contract_clauseslifecycle_progressionmediumClause flagged during negotiation (counterparty pushed back, non-standard language detected, missing protection) is routed back to the authoring/library team for review. Library team decides whether the flag warrants a new approved variant or a clarification on the existing clause.
CLM-AUTHORINGS2P(domain-level)sourcing_event.awarded(state_change)sourcing_eventsevent_streamlowAward triggers contract drafting in CLM with the chosen supplier.
CLM-AUTHORINGCPQCPQ-APPROVALS-CONTRACTScontract_draft.generated(state_change)contract_draftsapi_callmediumCPQ-generated contract draft handed off to CLM for clause assembly and signature routing. Friction when CPQ’s term language doesn’t match approved CLM templates.

6.4 Master providers (modules / domains that own masters this scope embeds)

data_objectrole herenecessitycanonical owner(s)slice notes
contract_draftsconsumeroptionalCPQ-APPROVALS-CONTRACTS (CPQ)-
sourcing_eventsconsumerrequired(no canonical owner recorded)-

7. Lifecycle states

contract_clauses (Contract Clause)

orderstate_nameinitial?terminal?requires_permission?derived gatedescription
10draft---Clause authored but not yet reviewed. Cannot be selected for new contracts.
20in_review----Clause routed to the legal panel for review.
30approved--clm-authoring:approve_contract_clauseClause approved for use in contract authoring.
40published----Clause available in the library for selection by authors. Locked from edits; supersession requires a new version.
50deprecated-clm-authoring:deprecate_contract_clauseClause withdrawn from the library; existing contracts retain it but new authoring cannot select it. Terminal.

contract_drafts (CPQ Contract Draft)

This scope holds contract_drafts as consumer; the canonical state machine is owned by CPQ-APPROVALS-CONTRACTS.

orderstate_nameinitial?terminal?requires_permission?derived gatedescription
1draft---Draft contract assembled from an approved quote.
2in_review----Legal/desk review of clauses, terms, and exceptions.
3signed----Counter-signatures collected from both parties.
4executed----Contract effective and handed off to CLM/billing.
5expired---Contract term elapsed without renewal.
6terminated---Contract ended early by either party.

contract_templates (Contract Template)

orderstate_nameinitial?terminal?requires_permission?derived gatedescription
10draft---Template authored but not yet reviewed. Cannot be used for new contracts.
20in_review----Template routed to the legal panel for review.
30approved--clm-authoring:approve_contract_templateTemplate approved for publication.
40published----Template available in the library; authors can instantiate new contracts from it. Locked from edits.
50deprecated-clm-authoring:deprecate_contract_templateTemplate withdrawn from the library; existing in-flight drafts retain it but new authoring cannot select it. Terminal.

sourcing_events (Sourcing Event)

This scope holds sourcing_events as consumer; the canonical state machine is owned by (no canonical master found).

orderstate_nameinitial?terminal?requires_permission?derived gatedescription
1draft---Sourcing event being scoped: requirements, supplier list, scorecard weighting.
2published----Event released to invited suppliers; responses can now be collected.
3in_progress----Suppliers are actively submitting responses or bids.
4bidding_closed----Response window has closed; sourcing team is evaluating submissions.
5awarded--Winning supplier selected; outcome feeds CLM contract creation.
6canceled---Event terminated without award.

8. Permissions and business rules (derived)

8.1 Permissions

permissiontierdescriptionincluded in :admin?
clm-authoring:readbaseline-readRead access to every entity in the module
clm-authoring:managebaseline-manageEdit operational records
clm-authoring:adminbaseline-adminEdit reference data and inherit every workflow gate below-
clm-authoring:approve_contract_clauseworkflow-gate (lifecycle)Transition contract_clauses into state approved
clm-authoring:deprecate_contract_clauseworkflow-gate (lifecycle)Transition contract_clauses into state deprecated
clm-authoring:approve_contract_templateworkflow-gate (lifecycle)Transition contract_templates into state approved
clm-authoring:deprecate_contract_templateworkflow-gate (lifecycle)Transition contract_templates into state deprecated

8.2 Business rules

(none: no flag-derived business rules)

9. Roles, RACI, and responsibilities (derived)

Baseline roles, the permission hierarchy, and RACI realization are DERIVED from this scope’s entity-type write tiers + process_raci; none of it is stored in the catalog (the deployer provisions it from this blueprint).

9.1 CLM-AUTHORING

Baseline roles:

rolebaseline grant
clm-authoring_viewerclm-authoring:read
clm-authoring_managerclm-authoring:manage
clm-authoring_adminclm-authoring:admin

Permission hierarchy:

permissionincludes
clm-authoring:adminclm-authoring:manage
clm-authoring:manageclm-authoring:read
clm-authoring:adminclm-authoring:approve_contract_clause
clm-authoring:adminclm-authoring:deprecate_contract_clause
clm-authoring:adminclm-authoring:approve_contract_template
clm-authoring:adminclm-authoring:deprecate_contract_template

Processes wired:

process_keyprocess_namePCF codePCF IDleveldescription
provide_legal_advice_counselingProvide legal advice/counseling12.4.8110513Providing legal advice concerning the substance or procedure of a law in relation to a particular situation.

RACI realization:

actorkindraciprocess_keyrealization
LEGAL-COUNSELpersonaresponsibleprovide_legal_advice_counselinggrant gates [clm-authoring:approve_contract_clause, clm-authoring:deprecate_contract_clause, clm-authoring:approve_contract_template, clm-authoring:deprecate_contract_template] + the gated entities’ write tier
CONTRACT-OPS-MANAGERpersonaaccountableprovide_legal_advice_counselingapproval gate
CONTRACT-OPS-SPECIALISTpersonainformedprovide_legal_advice_counselingnotification side effect (trigger_event / webhook_receiver)

9.2 Functional ownership and default grants

responsibilitybusiness functiondefault roledefault tier
ownerContract Operationsadmin:admin
contributorProcurementmanage:manage
contributorSalesmanage:manage