# Business Data Standard 0.1, released 2026-09-03
#
# Generated from data/bds.ttl (sha-256 3d0ebc9c44b2846c5c6a99aeea31778635c174671650ad7fc8e88aa212f0d4f3)
# by packages/vocabulary/scripts/build-release.py on 2026-09-10.
#
# This file is derived: the same triples as data/bds.ttl in normalized order.
# Edit data/bds.ttl to change the vocabulary.

@prefix bds: <https://bds.local/> .
@prefix schema: <https://schema.org/> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix dcterms: <http://purl.org/dc/terms/> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .

bds:
    a owl:Ontology ;
    rdfs:label "Business Data Standard" ;
    rdfs:comment "A business vocabulary published as an external extension of schema.org. Every type is a subclass of a schema.org type." ;
    owl:versionInfo "0.1" ;
    dcterms:issued "2026-09-03"^^xsd:date .

bds:Agreement
    a rdfs:Class ;
    rdfs:subClassOf schema:CreativeWork ;
    rdfs:label "Agreement" ;
    rdfs:comment "A contract or other binding arrangement between two or more party entries, such as a customer contract, a vendor agreement, an NDA or a lease (see agreementType). Use schema:validFrom and schema:validThrough for the term, signedDate, contractValue, renewalTerms and autoRenews." ;
    dcterms:subject "Commercial" .

bds:Asset
    a rdfs:Class ;
    rdfs:subClassOf schema:Thing ;
    rdfs:label "Asset" ;
    rdfs:comment "A physical or licensed thing the business owns or controls, such as equipment, a vehicle, or a software license. Use schema:purchaseDate, schema:itemCondition and cost. For software the business runs on, prefer Tool." ;
    dcterms:subject "Operations" .

bds:Automation
    a rdfs:Class ;
    rdfs:subClassOf bds:Process ;
    rdfs:label "Automation" ;
    rdfs:comment "A Process that software performs without a person, fired by a trigger and running on a Tool (see runsOn)." ;
    dcterms:subject "Operations" .

bds:BusinessRelationship
    a rdfs:Class ;
    rdfs:subClassOf schema:Intangible ;
    rdfs:label "BusinessRelationship" ;
    rdfs:comment "The relationship between an organization (subjectOrganization) and another party (counterparty): customer, prospect, vendor, partner, investor and so on, as given by relationshipType. One company can be a customer in one relationship and a vendor in another, which is why this is a record of its own rather than a label on the company." ;
    dcterms:subject "Commercial" .

bds:BusinessUnit
    a rdfs:Class ;
    rdfs:subClassOf schema:Organization ;
    rdfs:label "BusinessUnit" ;
    rdfs:comment "A part of an organization that has its own people and purpose, such as a division, a Department or a Team. Use schema:parentOrganization to place a unit inside a larger unit or company, and head to name who leads it." ;
    dcterms:subject "Organization" .

bds:ComplianceRequirement
    a rdfs:Class ;
    rdfs:subClassOf schema:Intangible ;
    rdfs:label "ComplianceRequirement" ;
    rdfs:comment "An obligation the business must meet, such as a filing, a license renewal or a training, coming from a law, a regulator or a contract (requirementSource). Track schema:jurisdiction, cadence, dueDate, complianceStatus and the evidence that it was met." ;
    dcterms:subject "Risk and compliance" .

bds:Deal
    a rdfs:Class ;
    rdfs:subClassOf schema:Intangible ;
    rdfs:label "Deal" ;
    rdfs:comment "A potential sale or agreement being pursued with a counterparty, often called an opportunity. Track its dealStage in the pipeline, its dealValue, the probability of closing, the expectedCloseDate and the final dealStatus." ;
    dcterms:subject "Commercial" .

bds:Decision
    a rdfs:Class ;
    rdfs:subClassOf schema:CreativeWork ;
    rdfs:label "Decision" ;
    rdfs:comment "A record of a choice the business made: what was decided, by whom (decidedBy), when (decisionDate), why (rationale) and what else was considered (alternative). Decisions are often made in a Meeting and can later be replaced via supersedes." ;
    dcterms:subject "Work" .

bds:Department
    a rdfs:Class ;
    rdfs:subClassOf bds:BusinessUnit ;
    rdfs:label "Department" ;
    rdfs:comment "A BusinessUnit organized around a function, such as Sales, Finance or Engineering." ;
    dcterms:subject "Organization" .

bds:Goal
    a rdfs:Class ;
    rdfs:subClassOf schema:Intangible ;
    rdfs:label "Goal" ;
    rdfs:comment "An outcome the business or a BusinessUnit is trying to reach in a period, such as an objective in an OKR. Goals nest via parentGoal and are made measurable by one or more keyResults, each a MetricTarget." ;
    dcterms:subject "Work" .

bds:Incident
    a rdfs:Class ;
    rdfs:subClassOf schema:Event ;
    rdfs:label "Incident" ;
    rdfs:comment "Something that did go wrong: an outage, a breach, an injury, a failed delivery. Record its severity, what it affects, the rootCause and the postmortem. Start and end use schema:startDate and schema:endDate." ;
    dcterms:subject "Risk and compliance" .

bds:Meeting
    a rdfs:Class ;
    rdfs:subClassOf schema:Event ;
    rdfs:label "Meeting" ;
    rdfs:comment "A scheduled conversation between people in or around the business. Use schema:attendee, schema:organizer, schema:startDate and schema:endDate from schema:Event; add the meetingType, each agendaItem, every decision taken and every actionItem (a Task) that came out of it. Recurring meetings use schema:eventSchedule." ;
    dcterms:subject "Meetings" .

bds:Membership
    a rdfs:Class ;
    rdfs:subClassOf schema:OrganizationRole ;
    rdfs:label "Membership" ;
    rdfs:comment "The fact that a schema:Person belongs to an organization or BusinessUnit in some Position for some period. Most facts about a person at work (their manager, their status, their start date) live on the Membership, not on the Person, because one person can hold several." ;
    dcterms:subject "Organization" .

bds:Metric
    a rdfs:Class ;
    rdfs:subClassOf schema:StatisticalVariable ;
    rdfs:label "Metric" ;
    rdfs:comment "The definition of something the business measures repeatedly, such as \"Monthly recurring revenue\" or \"Support tickets closed per week\": its formula, its schema:unitText, which direction counts as good, how often it is read (cadence), where the numbers come from (dataSource) and what it measures. Individual readings are schema:Observation records whose schema:variableMeasured is the Metric; targets are MetricTarget records." ;
    dcterms:subject "Measurement" .

bds:MetricTarget
    a rdfs:Class ;
    rdfs:subClassOf schema:Intangible ;
    rdfs:label "MetricTarget" ;
    rdfs:comment "A value a Metric should reach in a period, such as \"MRR of 50,000 by end of Q3\". Used as the keyResult of a Goal." ;
    dcterms:subject "Measurement" .

bds:Milestone
    a rdfs:Class ;
    rdfs:subClassOf schema:Intangible ;
    rdfs:label "Milestone" ;
    rdfs:comment "A named point a project or Goal aims to reach by a targetDate, such as \"Beta launched\". Record when it actually happened with achievedDate." ;
    dcterms:subject "Work" .

bds:Policy
    a rdfs:Class ;
    rdfs:subClassOf schema:CreativeWork ;
    rdfs:label "Policy" ;
    rdfs:comment "A stated commitment about how the business behaves, such as \"Refunds are honored within 30 days\". A Policy says what; a Rule says exactly when and what happens. Use schema:validFrom and schema:validThrough for the period it applies and reviewDate for when it should next be looked at." ;
    dcterms:subject "Operations" .

bds:Position
    a rdfs:Class ;
    rdfs:subClassOf schema:Intangible ;
    rdfs:label "Position" ;
    rdfs:comment "A seat in the organization chart, such as \"Head of Sales\", independent of the person who currently fills it. A Membership connects a schema:Person to a Position. Compare schema:Occupation, which describes a kind of job in general, and schema:JobPosting, which advertises an open one." ;
    dcterms:subject "Organization" .

bds:Process
    a rdfs:Class ;
    rdfs:subClassOf schema:HowTo ;
    rdfs:label "Process" ;
    rdfs:comment "A repeatable way the business gets a piece of work done, such as \"Monthly invoicing\" or \"New-hire onboarding\". A Process has an schema:owner, a cadence or trigger, steps (via schema:step), the Tools it usesTool, the Policy it is governedBy, and the Metrics it is measuredBy. Because it is a schema:HowTo, the same record can be published as a readable procedure." ;
    dcterms:subject "Operations" .

bds:Risk
    a rdfs:Class ;
    rdfs:subClassOf schema:Intangible ;
    rdfs:label "Risk" ;
    rdfs:comment "Something that could go wrong for the business, rated by likelihood and impact, with an schema:owner and a mitigation." ;
    dcterms:subject "Risk and compliance" .

bds:Rule
    a rdfs:Class ;
    rdfs:subClassOf bds:Policy ;
    rdfs:label "Rule" ;
    rdfs:comment "A Policy precise enough to check: if the condition holds, the consequence follows. Rules can be enforced by people or by an Automation." ;
    dcterms:subject "Operations" .

bds:Task
    a rdfs:Class ;
    rdfs:subClassOf schema:Action ;
    rdfs:label "Task" ;
    rdfs:comment "A unit of work that someone is expected to do. A Task has an assignee, a dueDate, a priority and a status expressed with schema:actionStatus. Tasks can nest via parentTask and subtask, depend on each other via blockedBy, and belong to a project. Because Task is a schema:Action, schema:object can name what the task is about and schema:result what it produced." ;
    dcterms:subject "Work" .

bds:Team
    a rdfs:Class ;
    rdfs:subClassOf bds:BusinessUnit ;
    rdfs:label "Team" ;
    rdfs:comment "A small BusinessUnit of people who work together day to day, usually inside a Department." ;
    dcterms:subject "Organization" .

bds:Tool
    a rdfs:Class ;
    rdfs:subClassOf schema:Intangible ;
    rdfs:label "Tool" ;
    rdfs:comment "A piece of software or a service the business runs on, such as a CRM subscription, an internal app, or a payment provider. A Tool has a schema:provider (the vendor), an schema:owner inside the business, a cost with a billing cadence, and the Processes it supportsProcess." ;
    dcterms:subject "Operations" .

bds:AgreementType
    a rdfs:Class ;
    rdfs:subClassOf schema:Enumeration ;
    rdfs:label "AgreementType" ;
    rdfs:comment "Common kinds of Agreement." .

bds:CustomerAgreement
    a bds:AgreementType ;
    rdfs:label "CustomerAgreement" ;
    rdfs:comment "Terms under which the organization sells to a customer." .

bds:EmploymentAgreement
    a bds:AgreementType ;
    rdfs:label "EmploymentAgreement" ;
    rdfs:comment "Terms of employment or contracting for a person." .

bds:LeaseAgreement
    a bds:AgreementType ;
    rdfs:label "LeaseAgreement" ;
    rdfs:comment "Renting property or equipment." .

bds:LicenseAgreement
    a bds:AgreementType ;
    rdfs:label "LicenseAgreement" ;
    rdfs:comment "Permission to use something owned by another party." .

bds:NonDisclosureAgreement
    a bds:AgreementType ;
    rdfs:label "NonDisclosureAgreement" ;
    rdfs:comment "A promise to keep information confidential." .

bds:PartnershipAgreement
    a bds:AgreementType ;
    rdfs:label "PartnershipAgreement" ;
    rdfs:comment "Terms of working together with another organization." .

bds:ServiceAgreement
    a bds:AgreementType ;
    rdfs:label "ServiceAgreement" ;
    rdfs:comment "Terms for an ongoing service, often with service levels." .

bds:VendorAgreement
    a bds:AgreementType ;
    rdfs:label "VendorAgreement" ;
    rdfs:comment "Terms under which the organization buys from a vendor." .

bds:Cadence
    a rdfs:Class ;
    rdfs:subClassOf schema:Enumeration ;
    rdfs:label "Cadence" ;
    rdfs:comment "How often something repeats. Used by cadence on processes, metrics, tools and compliance requirements. For exact recurrence rules use a schema:Schedule instead." .

bds:Annual
    a bds:Cadence ;
    rdfs:label "Annual" ;
    rdfs:comment "Repeats once a year." .

bds:Biweekly
    a bds:Cadence ;
    rdfs:label "Biweekly" ;
    rdfs:comment "Repeats once every two weeks." .

bds:Daily
    a bds:Cadence ;
    rdfs:label "Daily" ;
    rdfs:comment "Repeats every day, or every working day." .

bds:Monthly
    a bds:Cadence ;
    rdfs:label "Monthly" ;
    rdfs:comment "Repeats once a month." .

bds:OnDemand
    a bds:Cadence ;
    rdfs:label "OnDemand" ;
    rdfs:comment "Whenever it is needed; no fixed rhythm." .

bds:Quarterly
    a bds:Cadence ;
    rdfs:label "Quarterly" ;
    rdfs:comment "Repeats once a quarter, every three months." .

bds:Weekly
    a bds:Cadence ;
    rdfs:label "Weekly" ;
    rdfs:comment "Repeats once a week." .

bds:ComplianceStatus
    a rdfs:Class ;
    rdfs:subClassOf schema:StatusEnumeration ;
    rdfs:label "ComplianceStatus" ;
    rdfs:comment "Where a ComplianceRequirement stands." .

bds:ComplianceExpired
    a bds:ComplianceStatus ;
    rdfs:label "ComplianceExpired" ;
    rdfs:comment "It was met before but has lapsed." .

bds:ComplianceInProgress
    a bds:ComplianceStatus ;
    rdfs:label "ComplianceInProgress" ;
    rdfs:comment "Work is under way." .

bds:ComplianceNotApplicable
    a bds:ComplianceStatus ;
    rdfs:label "ComplianceNotApplicable" ;
    rdfs:comment "Does not apply to this organization." .

bds:ComplianceNotStarted
    a bds:ComplianceStatus ;
    rdfs:label "ComplianceNotStarted" ;
    rdfs:comment "Nothing done yet." .

bds:ComplianceWaived
    a bds:ComplianceStatus ;
    rdfs:label "ComplianceWaived" ;
    rdfs:comment "Formally excused." .

bds:Compliant
    a bds:ComplianceStatus ;
    rdfs:label "Compliant" ;
    rdfs:comment "The requirement is met." .

bds:DealStatus
    a rdfs:Class ;
    rdfs:subClassOf schema:StatusEnumeration ;
    rdfs:label "DealStatus" ;
    rdfs:comment "Whether a Deal is still open or how it ended." .

bds:DealAbandoned
    a bds:DealStatus ;
    rdfs:label "DealAbandoned" ;
    rdfs:comment "The organization chose not to proceed." .

bds:DealLost
    a bds:DealStatus ;
    rdfs:label "DealLost" ;
    rdfs:comment "The counterparty chose not to proceed." .

bds:DealOpen
    a bds:DealStatus ;
    rdfs:label "DealOpen" ;
    rdfs:comment "Still being pursued." .

bds:DealWon
    a bds:DealStatus ;
    rdfs:label "DealWon" ;
    rdfs:comment "Closed successfully." .

bds:DecisionStatus
    a rdfs:Class ;
    rdfs:subClassOf schema:StatusEnumeration ;
    rdfs:label "DecisionStatus" ;
    rdfs:comment "Where a Decision stands." .

bds:DecisionAccepted
    a bds:DecisionStatus ;
    rdfs:label "DecisionAccepted" ;
    rdfs:comment "Decided and in effect." .

bds:DecisionDeprecated
    a bds:DecisionStatus ;
    rdfs:label "DecisionDeprecated" ;
    rdfs:comment "No longer recommended, not formally replaced." .

bds:DecisionProposed
    a bds:DecisionStatus ;
    rdfs:label "DecisionProposed" ;
    rdfs:comment "Suggested, not yet decided." .

bds:DecisionRejected
    a bds:DecisionStatus ;
    rdfs:label "DecisionRejected" ;
    rdfs:comment "Considered and turned down." .

bds:DecisionSuperseded
    a bds:DecisionStatus ;
    rdfs:label "DecisionSuperseded" ;
    rdfs:comment "Replaced by a later decision." .

bds:Level
    a rdfs:Class ;
    rdfs:subClassOf schema:Enumeration ;
    rdfs:label "Level" ;
    rdfs:comment "A simple three-step scale used for ratings such as likelihood, impact and severity." .

bds:HighLevel
    a bds:Level ;
    rdfs:label "HighLevel" ;
    rdfs:comment "The highest of the three levels: likely, major, or severe." .

bds:LowLevel
    a bds:Level ;
    rdfs:label "LowLevel" ;
    rdfs:comment "The lowest of the three levels: unlikely, minor, or mild." .

bds:MediumLevel
    a bds:Level ;
    rdfs:label "MediumLevel" ;
    rdfs:comment "The middle of the three levels: possible, noticeable, or moderate." .

bds:LifecycleStatus
    a rdfs:Class ;
    rdfs:subClassOf schema:StatusEnumeration ;
    rdfs:label "LifecycleStatus" ;
    rdfs:comment "Where a record is in its life, from draft to archived. Used by lifecycleStatus on processes, policies, projects, goals, agreements, tools and more." .

bds:ActiveStatus
    a bds:LifecycleStatus ;
    rdfs:label "ActiveStatus" ;
    rdfs:comment "In effect and in use." .

bds:ArchivedStatus
    a bds:LifecycleStatus ;
    rdfs:label "ArchivedStatus" ;
    rdfs:comment "No longer in use, kept for reference." .

bds:CancelledStatus
    a bds:LifecycleStatus ;
    rdfs:label "CancelledStatus" ;
    rdfs:comment "Stopped before completion and not expected to resume." .

bds:CompletedStatus
    a bds:LifecycleStatus ;
    rdfs:label "CompletedStatus" ;
    rdfs:comment "Finished as intended." .

bds:DraftStatus
    a bds:LifecycleStatus ;
    rdfs:label "DraftStatus" ;
    rdfs:comment "Being written; not yet in effect." .

bds:OnHoldStatus
    a bds:LifecycleStatus ;
    rdfs:label "OnHoldStatus" ;
    rdfs:comment "Paused; expected to resume." .

bds:ProposedStatus
    a bds:LifecycleStatus ;
    rdfs:label "ProposedStatus" ;
    rdfs:comment "Put forward for approval." .

bds:SupersededStatus
    a bds:LifecycleStatus ;
    rdfs:label "SupersededStatus" ;
    rdfs:comment "Replaced by a newer record; see supersedes on the replacement." .

bds:MeetingType
    a rdfs:Class ;
    rdfs:subClassOf schema:Enumeration ;
    rdfs:label "MeetingType" ;
    rdfs:comment "Common kinds of Meeting." .

bds:AllHandsMeeting
    a bds:MeetingType ;
    rdfs:label "AllHandsMeeting" ;
    rdfs:comment "The whole company." .

bds:BoardMeeting
    a bds:MeetingType ;
    rdfs:label "BoardMeeting" ;
    rdfs:comment "A meeting of the board of directors or advisors." .

bds:ClientMeeting
    a bds:MeetingType ;
    rdfs:label "ClientMeeting" ;
    rdfs:comment "A meeting with a customer or prospect." .

bds:InterviewMeeting
    a bds:MeetingType ;
    rdfs:label "InterviewMeeting" ;
    rdfs:comment "Hiring or research interview." .

bds:OneOnOneMeeting
    a bds:MeetingType ;
    rdfs:label "OneOnOneMeeting" ;
    rdfs:comment "Two people, usually a manager and a report." .

bds:PlanningMeeting
    a bds:MeetingType ;
    rdfs:label "PlanningMeeting" ;
    rdfs:comment "Deciding what to do next." .

bds:ReviewMeeting
    a bds:MeetingType ;
    rdfs:label "ReviewMeeting" ;
    rdfs:comment "Looking back at results, work or performance." .

bds:StandUpMeeting
    a bds:MeetingType ;
    rdfs:label "StandUpMeeting" ;
    rdfs:comment "A short daily or weekly sync." .

bds:TeamMeeting
    a bds:MeetingType ;
    rdfs:label "TeamMeeting" ;
    rdfs:comment "A regular meeting of one team." .

bds:MembershipStatus
    a rdfs:Class ;
    rdfs:subClassOf schema:StatusEnumeration ;
    rdfs:label "MembershipStatus" ;
    rdfs:comment "Whether a Membership is current." .

bds:MembershipActive
    a bds:MembershipStatus ;
    rdfs:label "MembershipActive" ;
    rdfs:comment "The person currently holds the membership." .

bds:MembershipEnded
    a bds:MembershipStatus ;
    rdfs:label "MembershipEnded" ;
    rdfs:comment "The membership has finished; the person no longer holds it." .

bds:MembershipInactive
    a bds:MembershipStatus ;
    rdfs:label "MembershipInactive" ;
    rdfs:comment "Temporarily not active, such as on leave." .

bds:MembershipPending
    a bds:MembershipStatus ;
    rdfs:label "MembershipPending" ;
    rdfs:comment "Agreed but not yet started." .

bds:MetricDirection
    a rdfs:Class ;
    rdfs:subClassOf schema:Enumeration ;
    rdfs:label "MetricDirection" ;
    rdfs:comment "Which way is good for a Metric." .

bds:HigherIsBetter
    a bds:MetricDirection ;
    rdfs:label "HigherIsBetter" ;
    rdfs:comment "A larger value is better, as with revenue." .

bds:LowerIsBetter
    a bds:MetricDirection ;
    rdfs:label "LowerIsBetter" ;
    rdfs:comment "A smaller value is better, as with churn." .

bds:TargetIsBetter
    a bds:MetricDirection ;
    rdfs:label "TargetIsBetter" ;
    rdfs:comment "Closest to a target value is better, as with inventory days on hand." .

bds:PriorityLevel
    a rdfs:Class ;
    rdfs:subClassOf schema:Enumeration ;
    rdfs:label "PriorityLevel" ;
    rdfs:comment "How urgent or important something is. Used by priority." .

bds:CriticalPriority
    a bds:PriorityLevel ;
    rdfs:label "CriticalPriority" ;
    rdfs:comment "Must be handled immediately; the business is at risk." .

bds:HighPriority
    a bds:PriorityLevel ;
    rdfs:label "HighPriority" ;
    rdfs:comment "Should be handled before normal work." .

bds:LowPriority
    a bds:PriorityLevel ;
    rdfs:label "LowPriority" ;
    rdfs:comment "Can wait until higher-priority work is done." .

bds:MediumPriority
    a bds:PriorityLevel ;
    rdfs:label "MediumPriority" ;
    rdfs:comment "Normal priority." .

bds:RelationshipType
    a rdfs:Class ;
    rdfs:subClassOf schema:Enumeration ;
    rdfs:label "RelationshipType" ;
    rdfs:comment "What a counterparty is to the subjectOrganization in a BusinessRelationship." .

bds:CompetitorRelationship
    a bds:RelationshipType ;
    rdfs:label "CompetitorRelationship" ;
    rdfs:comment "The counterparty competes for the same customers." .

bds:ContractorRelationship
    a bds:RelationshipType ;
    rdfs:label "ContractorRelationship" ;
    rdfs:comment "The counterparty does work for the organization without being an employee." .

bds:CustomerRelationship
    a bds:RelationshipType ;
    rdfs:label "CustomerRelationship" ;
    rdfs:comment "The counterparty buys from the organization." .

bds:InvestorRelationship
    a bds:RelationshipType ;
    rdfs:label "InvestorRelationship" ;
    rdfs:comment "The counterparty owns part of, or lends to, the organization." .

bds:PartnerRelationship
    a bds:RelationshipType ;
    rdfs:label "PartnerRelationship" ;
    rdfs:comment "The two work together without one buying from the other." .

bds:ProspectRelationship
    a bds:RelationshipType ;
    rdfs:label "ProspectRelationship" ;
    rdfs:comment "The counterparty might buy from the organization." .

bds:RegulatorRelationship
    a bds:RelationshipType ;
    rdfs:label "RegulatorRelationship" ;
    rdfs:comment "The counterparty sets or enforces rules the organization must follow." .

bds:VendorRelationship
    a bds:RelationshipType ;
    rdfs:label "VendorRelationship" ;
    rdfs:comment "The counterparty sells to the organization." .

bds:achievedDate
    a rdf:Property ;
    schema:domainIncludes bds:Goal,
        bds:Milestone ;
    schema:rangeIncludes schema:Date ;
    rdfs:label "achievedDate" ;
    rdfs:comment "When the milestone or goal was actually reached." .

bds:actionItem
    a rdf:Property ;
    schema:domainIncludes bds:Meeting ;
    schema:rangeIncludes bds:Task ;
    rdfs:label "actionItem" ;
    rdfs:comment "A task that came out of the meeting." .

bds:actualEffort
    a rdf:Property ;
    schema:domainIncludes bds:Task ;
    schema:rangeIncludes schema:Duration ;
    rdfs:label "actualEffort" ;
    rdfs:comment "How much working time the task actually took, as an ISO 8601 duration." .

bds:affects
    a rdf:Property ;
    schema:domainIncludes bds:Incident,
        bds:Risk ;
    schema:rangeIncludes schema:Organization,
        schema:Product,
        schema:Service,
        bds:Process,
        bds:Tool ;
    rdfs:label "affects" ;
    rdfs:comment "What the incident or risk touches: a tool, a process, a unit, a product or a customer." .

bds:agendaItem
    a rdf:Property ;
    schema:domainIncludes bds:Meeting ;
    schema:rangeIncludes schema:Text,
        schema:Thing ;
    rdfs:label "agendaItem" ;
    rdfs:comment "A topic the meeting is meant to cover. Repeat for each item; use a JSON-LD @list to keep the order." .

bds:agreementType
    a rdf:Property ;
    schema:domainIncludes bds:Agreement ;
    schema:rangeIncludes bds:AgreementType ;
    rdfs:label "agreementType" ;
    rdfs:comment "What kind of agreement it is." .

bds:alternative
    a rdf:Property ;
    schema:domainIncludes bds:Decision ;
    schema:rangeIncludes schema:Text,
        schema:Thing ;
    rdfs:label "alternative" ;
    rdfs:comment "An option that was considered and not chosen." .

bds:appliesTo
    a rdf:Property ;
    schema:domainIncludes bds:Policy ;
    schema:rangeIncludes schema:Organization,
        schema:Thing,
        bds:Position,
        bds:Process ;
    rdfs:label "appliesTo" ;
    rdfs:comment "Who or what the policy covers." .

bds:assignee
    a rdf:Property ;
    schema:domainIncludes bds:Task ;
    schema:rangeIncludes schema:Person,
        bds:BusinessUnit,
        bds:Position ;
    rdfs:label "assignee" ;
    rdfs:comment "Who is expected to do the task." .

bds:autoRenews
    a rdf:Property ;
    schema:domainIncludes bds:Agreement ;
    schema:rangeIncludes schema:Boolean ;
    rdfs:label "autoRenews" ;
    rdfs:comment "True if the agreement renews by itself unless someone cancels." .

bds:blockedBy
    a rdf:Property ;
    schema:domainIncludes bds:Milestone,
        bds:Task ;
    schema:rangeIncludes bds:Task ;
    rdfs:label "blockedBy" ;
    rdfs:comment "A task that must finish before this one can proceed." .

bds:businessUnit
    a rdf:Property ;
    schema:domainIncludes bds:Goal,
        bds:Membership,
        bds:Metric,
        bds:Position,
        bds:Process,
        bds:Tool ;
    schema:rangeIncludes schema:Organization,
        bds:BusinessUnit ;
    rdfs:label "businessUnit" ;
    rdfs:comment "The unit or organization this item belongs to." .

bds:cadence
    a rdf:Property ;
    schema:domainIncludes bds:ComplianceRequirement,
        bds:Metric,
        bds:Process,
        bds:Tool ;
    schema:rangeIncludes bds:Cadence ;
    rdfs:label "cadence" ;
    rdfs:comment "How often the item repeats: how often a Process runs, a Metric is read, a Tool is billed, or a ComplianceRequirement comes due. For exact recurrence use schema:eventSchedule or a schema:Schedule." .

bds:complianceStatus
    a rdf:Property ;
    schema:domainIncludes bds:ComplianceRequirement ;
    schema:rangeIncludes bds:ComplianceStatus ;
    rdfs:label "complianceStatus" ;
    rdfs:comment "Where the requirement stands." .

bds:condition
    a rdf:Property ;
    schema:domainIncludes bds:Rule ;
    schema:rangeIncludes schema:Text ;
    rdfs:label "condition" ;
    rdfs:comment "The \"if\" part of a rule, in words or as an expression." .

bds:consequence
    a rdf:Property ;
    schema:domainIncludes bds:Rule ;
    schema:rangeIncludes schema:Action,
        schema:Text ;
    rdfs:label "consequence" ;
    rdfs:comment "The \"then\" part of a rule: what happens when the condition holds." .

bds:contact
    a rdf:Property ;
    schema:domainIncludes bds:Agreement,
        bds:BusinessRelationship,
        bds:Deal ;
    schema:rangeIncludes schema:Person ;
    rdfs:label "contact" ;
    rdfs:comment "The person on the counterparty's side who is the main point of contact." .

bds:contractValue
    a rdf:Property ;
    schema:domainIncludes bds:Agreement ;
    schema:rangeIncludes schema:MonetaryAmount ;
    rdfs:label "contractValue" ;
    rdfs:comment "The total value of the agreement over its term." .

bds:cost
    a rdf:Property ;
    schema:domainIncludes bds:Asset,
        bds:Process,
        bds:Tool ;
    schema:rangeIncludes schema:MonetaryAmount ;
    rdfs:label "cost" ;
    rdfs:comment "What the item costs. For a recurring charge, give the amount per billing period and set cadence to the period." .

bds:counterparty
    a rdf:Property ;
    schema:domainIncludes bds:BusinessRelationship,
        bds:Deal ;
    schema:rangeIncludes schema:Organization,
        schema:Person ;
    rdfs:label "counterparty" ;
    rdfs:comment "The other organization or person in the relationship or deal." .

bds:dataSource
    a rdf:Property ;
    schema:domainIncludes bds:Metric ;
    schema:rangeIncludes schema:Dataset,
        schema:Text,
        bds:Tool ;
    rdfs:label "dataSource" ;
    rdfs:comment "Where the numbers for the metric come from: a tool, a dataset, or a description." .

bds:dealStage
    a rdf:Property ;
    schema:domainIncludes bds:Deal ;
    schema:rangeIncludes schema:DefinedTerm,
        schema:Text ;
    rdfs:label "dealStage" ;
    rdfs:comment "Where the deal is in the sales pipeline. Pipelines differ between businesses, so the value is a schema:DefinedTerm from your own pipeline or plain text." .

bds:dealStatus
    a rdf:Property ;
    schema:domainIncludes bds:Deal ;
    schema:rangeIncludes bds:DealStatus ;
    rdfs:label "dealStatus" ;
    rdfs:comment "Whether the deal is open, won, lost or abandoned." .

bds:dealValue
    a rdf:Property ;
    schema:domainIncludes bds:Deal ;
    schema:rangeIncludes schema:MonetaryAmount ;
    rdfs:label "dealValue" ;
    rdfs:comment "How much the deal is worth if it closes." .

bds:decidedBy
    a rdf:Property ;
    schema:domainIncludes bds:Decision ;
    schema:rangeIncludes schema:Person,
        bds:BusinessUnit,
        bds:Meeting,
        bds:Position ;
    rdfs:label "decidedBy" ;
    rdfs:comment "Who made the decision: a person, a position, a unit, or the meeting where it was taken." .

bds:decision
    a rdf:Property ;
    schema:domainIncludes bds:Meeting ;
    schema:rangeIncludes bds:Decision ;
    rdfs:label "decision" ;
    rdfs:comment "A decision recorded in the meeting." .

bds:decisionDate
    a rdf:Property ;
    schema:domainIncludes bds:Decision ;
    schema:rangeIncludes schema:Date,
        schema:DateTime ;
    rdfs:label "decisionDate" ;
    rdfs:comment "When the decision was made." .

bds:decisionStatus
    a rdf:Property ;
    schema:domainIncludes bds:Decision ;
    schema:rangeIncludes bds:DecisionStatus ;
    rdfs:label "decisionStatus" ;
    rdfs:comment "Whether the decision is proposed, accepted, rejected, superseded or deprecated." .

bds:direction
    a rdf:Property ;
    schema:domainIncludes bds:Metric ;
    schema:rangeIncludes bds:MetricDirection ;
    rdfs:label "direction" ;
    rdfs:comment "Whether higher, lower, or closest-to-target is good." .

bds:dueDate
    a rdf:Property ;
    schema:domainIncludes bds:ComplianceRequirement,
        bds:Goal,
        bds:Task ;
    schema:rangeIncludes schema:Date,
        schema:DateTime ;
    rdfs:label "dueDate" ;
    rdfs:comment "When the item must be done." .

bds:enforcedBy
    a rdf:Property ;
    schema:domainIncludes bds:Policy ;
    schema:rangeIncludes schema:Person,
        bds:Position,
        bds:Process ;
    rdfs:label "enforcedBy" ;
    rdfs:comment "The person, position, process or automation that makes sure the policy is followed." .

bds:estimatedEffort
    a rdf:Property ;
    schema:domainIncludes bds:Task ;
    schema:rangeIncludes schema:Duration ;
    rdfs:label "estimatedEffort" ;
    rdfs:comment "How much working time the task is expected to take, as an ISO 8601 duration such as PT4H." .

bds:evidence
    a rdf:Property ;
    schema:domainIncludes bds:ComplianceRequirement ;
    schema:rangeIncludes schema:CreativeWork,
        schema:URL ;
    rdfs:label "evidence" ;
    rdfs:comment "A document or link that proves the requirement was met." .

bds:expectedCloseDate
    a rdf:Property ;
    schema:domainIncludes bds:Deal ;
    schema:rangeIncludes schema:Date ;
    rdfs:label "expectedCloseDate" ;
    rdfs:comment "When the deal is expected to close." .

bds:formula
    a rdf:Property ;
    schema:domainIncludes bds:Metric ;
    schema:rangeIncludes schema:Text ;
    rdfs:label "formula" ;
    rdfs:comment "How the metric is calculated, in words or as an expression, such as \"Customers lost in month / customers at start of month\"." .

bds:goal
    a rdf:Property ;
    schema:domainIncludes bds:MetricTarget ;
    schema:rangeIncludes bds:Goal ;
    rdfs:label "goal" ;
    rdfs:comment "The goal this target serves." .

bds:governedBy
    a rdf:Property ;
    schema:domainIncludes bds:Agreement,
        bds:BusinessUnit,
        bds:Deal,
        bds:Process ;
    schema:rangeIncludes bds:Policy ;
    rdfs:label "governedBy" ;
    rdfs:comment "A policy or rule this item must follow." .

bds:head
    a rdf:Property ;
    schema:domainIncludes bds:BusinessUnit ;
    schema:rangeIncludes schema:Person,
        bds:Position ;
    rdfs:label "head" ;
    rdfs:comment "The person or position that leads this unit." .

bds:impact
    a rdf:Property ;
    schema:domainIncludes bds:Risk ;
    schema:rangeIncludes bds:Level ;
    rdfs:label "impact" ;
    rdfs:comment "How bad it would be if the risk happened." .

bds:input
    a rdf:Property ;
    schema:domainIncludes bds:Process ;
    schema:rangeIncludes schema:Text,
        schema:Thing ;
    rdfs:label "input" ;
    rdfs:comment "Something the process needs before it can run." .

bds:integratesWith
    a rdf:Property ;
    schema:domainIncludes bds:Tool ;
    schema:rangeIncludes bds:Tool ;
    rdfs:label "integratesWith" ;
    rdfs:comment "Another tool this tool exchanges data with." .

bds:keyResult
    a rdf:Property ;
    schema:domainIncludes bds:Goal ;
    schema:rangeIncludes bds:MetricTarget ;
    rdfs:label "keyResult" ;
    rdfs:comment "A measurable target that shows the goal is being reached." .

bds:lifecycleStatus
    a rdf:Property ;
    schema:domainIncludes schema:Project,
        bds:Agreement,
        bds:Asset,
        bds:BusinessRelationship,
        bds:Goal,
        bds:Incident,
        bds:Metric,
        bds:Milestone,
        bds:Policy,
        bds:Position,
        bds:Process,
        bds:Risk,
        bds:Tool ;
    schema:rangeIncludes bds:LifecycleStatus ;
    rdfs:label "lifecycleStatus" ;
    rdfs:comment "Where the item is in its life: draft, active, on hold, completed, cancelled, archived or superseded. For a Task use schema:actionStatus instead; for a Deal use dealStatus." .

bds:likelihood
    a rdf:Property ;
    schema:domainIncludes bds:Risk ;
    schema:rangeIncludes bds:Level ;
    rdfs:label "likelihood" ;
    rdfs:comment "How likely the risk is to happen." .

bds:measuredBy
    a rdf:Property ;
    schema:domainIncludes schema:Project,
        bds:BusinessUnit,
        bds:Goal,
        bds:Process ;
    schema:rangeIncludes bds:Metric ;
    rdfs:label "measuredBy" ;
    rdfs:comment "A metric that tells whether this item is working." .

bds:measures
    a rdf:Property ;
    schema:domainIncludes bds:Metric ;
    schema:rangeIncludes schema:Organization,
        schema:Project,
        bds:BusinessUnit,
        bds:Goal,
        bds:Process ;
    rdfs:label "measures" ;
    rdfs:comment "The process, goal, unit or organization this metric tells you about." .

bds:meetingType
    a rdf:Property ;
    schema:domainIncludes bds:Meeting ;
    schema:rangeIncludes bds:MeetingType ;
    rdfs:label "meetingType" ;
    rdfs:comment "What kind of meeting it is." .

bds:membershipStatus
    a rdf:Property ;
    schema:domainIncludes bds:Membership ;
    schema:rangeIncludes bds:MembershipStatus ;
    rdfs:label "membershipStatus" ;
    rdfs:comment "Whether the membership is pending, active, inactive or ended." .

bds:metric
    a rdf:Property ;
    schema:domainIncludes bds:MetricTarget ;
    schema:rangeIncludes bds:Metric ;
    rdfs:label "metric" ;
    rdfs:comment "The metric this target is for." .

bds:milestone
    a rdf:Property ;
    schema:domainIncludes schema:Project,
        bds:Goal ;
    schema:rangeIncludes bds:Milestone ;
    rdfs:label "milestone" ;
    rdfs:comment "A milestone within the project or goal." .

bds:mitigation
    a rdf:Property ;
    schema:domainIncludes bds:Risk ;
    schema:rangeIncludes schema:Text,
        bds:Process,
        bds:Task ;
    rdfs:label "mitigation" ;
    rdfs:comment "What is done to make the risk less likely or less harmful: a description, a process, or a task." .

bds:notes
    a rdf:Property ;
    schema:domainIncludes bds:Meeting ;
    schema:rangeIncludes schema:CreativeWork,
        schema:Text ;
    rdfs:label "notes" ;
    rdfs:comment "Written notes or minutes for the meeting, as text or as a document." .

bds:output
    a rdf:Property ;
    schema:domainIncludes bds:Process ;
    schema:rangeIncludes schema:Text,
        schema:Thing ;
    rdfs:label "output" ;
    rdfs:comment "Something the process produces when it runs." .

bds:parentGoal
    a rdf:Property ;
    schema:domainIncludes bds:Goal ;
    schema:rangeIncludes bds:Goal ;
    rdfs:label "parentGoal" ;
    rdfs:comment "The broader goal this goal contributes to." .

bds:parentTask
    a rdf:Property ;
    schema:domainIncludes bds:Task ;
    schema:rangeIncludes bds:Task ;
    rdfs:label "parentTask" ;
    rdfs:comment "The larger task this task is part of." .

bds:party
    a rdf:Property ;
    schema:domainIncludes bds:Agreement ;
    schema:rangeIncludes schema:Organization,
        schema:Person ;
    rdfs:label "party" ;
    rdfs:comment "An organization or person bound by the agreement. Repeat for each party." .

bds:period
    a rdf:Property ;
    schema:domainIncludes bds:Goal,
        bds:MetricTarget ;
    schema:rangeIncludes schema:Text ;
    rdfs:label "period" ;
    rdfs:comment "The time span the item is about, written as an ISO 8601 date, month, or interval such as \"2026-Q3\" or \"2026-07-01/2026-09-30\"." .

bds:positionHeld
    a rdf:Property ;
    schema:domainIncludes bds:Membership ;
    schema:rangeIncludes bds:Position ;
    rdfs:label "positionHeld" ;
    rdfs:comment "The position a person holds through this membership." .

bds:postmortem
    a rdf:Property ;
    schema:domainIncludes bds:Incident ;
    schema:rangeIncludes schema:CreativeWork,
        bds:Decision ;
    rdfs:label "postmortem" ;
    rdfs:comment "The write-up of what happened and what will change, as a document or a decision." .

bds:priority
    a rdf:Property ;
    schema:domainIncludes schema:Project,
        bds:ComplianceRequirement,
        bds:Goal,
        bds:Incident,
        bds:Risk,
        bds:Task ;
    schema:rangeIncludes bds:PriorityLevel ;
    rdfs:label "priority" ;
    rdfs:comment "How urgent or important the item is." .

bds:probability
    a rdf:Property ;
    schema:domainIncludes bds:Deal ;
    schema:rangeIncludes schema:Number ;
    rdfs:label "probability" ;
    rdfs:comment "The estimated chance the deal closes, from 0 to 1." .

bds:progress
    a rdf:Property ;
    schema:domainIncludes schema:Project,
        bds:Goal,
        bds:Milestone,
        bds:Task ;
    schema:rangeIncludes schema:Number ;
    rdfs:label "progress" ;
    rdfs:comment "How far along the item is, as a number from 0 (not started) to 1 (done)." .

bds:project
    a rdf:Property ;
    schema:domainIncludes bds:Decision,
        bds:Meeting,
        bds:Milestone,
        bds:Risk,
        bds:Task ;
    schema:rangeIncludes schema:Project ;
    rdfs:label "project" ;
    rdfs:comment "The project this item belongs to." .

bds:rationale
    a rdf:Property ;
    schema:domainIncludes bds:Decision ;
    schema:rangeIncludes schema:Text ;
    rdfs:label "rationale" ;
    rdfs:comment "Why this was decided." .

bds:relationshipType
    a rdf:Property ;
    schema:domainIncludes bds:BusinessRelationship ;
    schema:rangeIncludes bds:RelationshipType ;
    rdfs:label "relationshipType" ;
    rdfs:comment "What the counterparty is to the subject organization." .

bds:renewalTerms
    a rdf:Property ;
    schema:domainIncludes bds:Agreement ;
    schema:rangeIncludes schema:Text ;
    rdfs:label "renewalTerms" ;
    rdfs:comment "How and when the agreement renews, in words." .

bds:reportsTo
    a rdf:Property ;
    schema:domainIncludes bds:Membership,
        bds:Position ;
    schema:rangeIncludes schema:Person,
        bds:Position ;
    rdfs:label "reportsTo" ;
    rdfs:comment "The position or person this position or membership answers to. Chains of reportsTo form the organization chart." .

bds:requirementSource
    a rdf:Property ;
    schema:domainIncludes bds:ComplianceRequirement ;
    schema:rangeIncludes schema:Legislation,
        schema:Organization,
        schema:Text,
        bds:Agreement ;
    rdfs:label "requirementSource" ;
    rdfs:comment "The law, regulator, standard or agreement the requirement comes from." .

bds:reviewDate
    a rdf:Property ;
    schema:domainIncludes bds:Agreement,
        bds:Metric,
        bds:Policy,
        bds:Process,
        bds:Risk ;
    schema:rangeIncludes schema:Date ;
    rdfs:label "reviewDate" ;
    rdfs:comment "When the item should next be reviewed to confirm it is still right." .

bds:rootCause
    a rdf:Property ;
    schema:domainIncludes bds:Incident ;
    schema:rangeIncludes schema:Text ;
    rdfs:label "rootCause" ;
    rdfs:comment "The underlying reason the incident happened, once known." .

bds:runsOn
    a rdf:Property ;
    schema:domainIncludes bds:Automation ;
    schema:rangeIncludes bds:Tool ;
    rdfs:label "runsOn" ;
    rdfs:comment "The tool that executes the automation." .

bds:severity
    a rdf:Property ;
    schema:domainIncludes bds:Incident ;
    schema:rangeIncludes bds:Level ;
    rdfs:label "severity" ;
    rdfs:comment "How serious the incident is." .

bds:signedDate
    a rdf:Property ;
    schema:domainIncludes bds:Agreement ;
    schema:rangeIncludes schema:Date ;
    rdfs:label "signedDate" ;
    rdfs:comment "When the last party signed." .

bds:subjectOrganization
    a rdf:Property ;
    schema:domainIncludes bds:BusinessRelationship ;
    schema:rangeIncludes schema:Organization ;
    rdfs:label "subjectOrganization" ;
    rdfs:comment "The organization whose relationship this describes; the counterparty is the other side." .

bds:subtask
    a rdf:Property ;
    schema:domainIncludes bds:Task ;
    schema:rangeIncludes bds:Task ;
    rdfs:label "subtask" ;
    rdfs:comment "A smaller task that is part of this one." .

bds:supersedes
    a rdf:Property ;
    schema:domainIncludes bds:Agreement,
        bds:Decision,
        bds:Policy,
        bds:Process ;
    schema:rangeIncludes bds:Agreement,
        bds:Decision,
        bds:Policy,
        bds:Process ;
    rdfs:label "supersedes" ;
    rdfs:comment "An earlier item of the same kind that this one replaces. The earlier item should carry SupersededStatus or DecisionSuperseded." .

bds:supportsProcess
    a rdf:Property ;
    schema:domainIncludes bds:Tool ;
    schema:rangeIncludes bds:Process ;
    rdfs:label "supportsProcess" ;
    rdfs:comment "A process that depends on this tool." .

bds:targetDate
    a rdf:Property ;
    schema:domainIncludes bds:Goal,
        bds:Milestone ;
    schema:rangeIncludes schema:Date ;
    rdfs:label "targetDate" ;
    rdfs:comment "When the milestone or goal is meant to be reached." .

bds:targetValue
    a rdf:Property ;
    schema:domainIncludes bds:MetricTarget ;
    schema:rangeIncludes schema:Number,
        schema:QuantitativeValue,
        schema:Text ;
    rdfs:label "targetValue" ;
    rdfs:comment "The value the metric should reach." .

bds:trigger
    a rdf:Property ;
    schema:domainIncludes bds:Process ;
    schema:rangeIncludes schema:Text ;
    rdfs:label "trigger" ;
    rdfs:comment "What starts the process, in words: an event (\"a customer signs up\"), a condition, or a schedule. Pair with cadence when it is time-based." .

bds:usesTool
    a rdf:Property ;
    schema:domainIncludes bds:Process ;
    schema:rangeIncludes bds:Tool ;
    rdfs:label "usesTool" ;
    rdfs:comment "A tool the process depends on." .

schema:endDate
    schema:domainIncludes bds:Goal,
        bds:MetricTarget,
        bds:BusinessRelationship,
        schema:Project .

schema:itemCondition
    schema:domainIncludes bds:Asset .

schema:jurisdiction
    schema:domainIncludes bds:ComplianceRequirement .

schema:keywords
    schema:domainIncludes bds:Goal,
        bds:Process,
        bds:Risk,
        bds:Task,
        bds:Policy,
        bds:Decision .

schema:member
    schema:domainIncludes bds:Membership .

schema:owner
    schema:domainIncludes bds:Goal,
        bds:Process,
        bds:Risk,
        bds:Metric,
        bds:ComplianceRequirement,
        bds:Deal,
        bds:Milestone,
        bds:BusinessRelationship,
        bds:Agreement,
        bds:Incident,
        schema:Project,
        bds:Policy,
        bds:Asset,
        bds:Decision,
        bds:Tool .

schema:provider
    schema:domainIncludes bds:Tool .

schema:purchaseDate
    schema:domainIncludes bds:Asset .

schema:startDate
    schema:domainIncludes bds:Goal,
        bds:MetricTarget,
        bds:BusinessRelationship,
        schema:Project .

schema:unitText
    schema:domainIncludes bds:Metric .

schema:validFrom
    schema:domainIncludes bds:Agreement,
        bds:Policy .

schema:validThrough
    schema:domainIncludes bds:Agreement,
        bds:Policy .

bds:WaitingActionStatus
    a schema:ActionStatusType ;
    rdfs:label "WaitingActionStatus" .

bds:CancelledActionStatus
    a schema:ActionStatusType ;
    rdfs:label "CancelledActionStatus" .
