# AUTHORED-BY Claude Opus 4.8 (Fable unavailable) — re-review/upgrade candidate # @prefix eq: . @prefix core: . @prefix owl: . @prefix rdf: . @prefix rdfs: . @prefix xsd: . @prefix dcterms: . @prefix skos: . @prefix vann: . @prefix gufo: . @prefix schema: . @prefix org: . # ============================================================================= # Solid EQUINE sector ontology (KEY=equine). # # The racehorse ownership / breeding / prize domain — the sector the `Furlong` # revenue product (jeswr/product-6) operates in (fedapp:sector). Furlong today # mints its private predicates as PER-RESOURCE fragment IRIs # (`furlong/horses.ttl#flg.status`), so every pod — indeed every # resource — coins a different IRI for the same concept: no cross-pod query, no # SHACL shape, no federation membership. This sector REPLACES that whole # `flgPred`/`flgClass` map 1:1 with shared `eq:` terms at a domain the suite owns # (w3id.org/jeswr), and REPLACES the NON-EXISTENT schema.org terms Furlong wrote: # - schema:Animal (HTTP 404 — schema.org has no animal class) → eq:Horse; # - schema:prize (HTTP 404 — schema:award (Text) exists) → eq:PrizeDistribution; # - schema:season (media-series only, superseded) → eq:season; # - schema:price on a Reservation → schema:totalPrice. # See the ontology review, full-solid-ecosystem # docs/design/revenue-products-ontology-review.md §2. # # CORRECT schema.org reuse is KEPT (dual-typed, real terms, verified extant): # eq:StudNomination ⊑ schema:Reservation (price via schema:totalPrice); # eq:RaceResult ⊑ schema:SportsEvent; # eq:PrizeDistribution ⊑ schema:MoneyTransfer (amount via schema:amount — # schema:recipient is an advisory domain stretch, documented, kept). # # gUFO META-TYPES (each class carries its own AND roots transitively in Core): # Horse = gufo:Kind → root core:Asset (an owned animal — schema.org has no # animal class, so NO schema: root; external animal ontologies are alignment # only, equine-alignments.ttl). # Syndicate = gufo:Kind → root core:Organization (aligned org:Organization Mode A). # OwnershipShare / StudShare = gufo:SubKind → root core:Record (fractional # ownership / breeding-rights records about a horse). # StudNomination = gufo:SubKind → root core:InformationResource (a booking). # RaceResult = gufo:EventType → root core:Event. # PrizeDistribution = gufo:EventType → root core:Activity. # Sex / HorseStatus / StudStatus / RecipientType / ExpenseCategory = # gufo:Category → root core:Category (coded values, bound to skos:Concept). # # CONTRACT (sector contract R8 §4, F1–F7): imports the gUFO Core; roots every # class transitively in a Core class and carries its gUFO meta-type; CONSTRAINS, # never forks, the vocabularies it reuses (schema.org where real, org:, vCard/foaf # for people). Open-world by default — the SHACL profile (equine.shacl.ttl) # carries the closed-world MUST/SHOULD contract. F5 DL hygiene: external classes # referenced in axioms are declared as punned owl terms. # ============================================================================= a owl:Ontology ; dcterms:title "Solid Equine Sector Ontology"@en ; rdfs:label "Solid Equine Sector Ontology"@en ; vann:preferredNamespacePrefix "eq" ; vann:preferredNamespaceUri "https://w3id.org/jeswr/sectors/equine#" ; owl:imports ; owl:versionInfo "0.1.0" ; owl:versionIRI ; dcterms:description """The racehorse ownership / breeding / prize data sector for the Furlong revenue product: horses, ownership + stud shares held via syndicates, stud nominations, race results and prize distributions, plus the coded status/sex/expense value sets. Replaces Furlong's per-resource fragment-IRI private predicates with shared eq: terms, and the non-existent schema:Animal/schema:prize/schema:season terms with correct ones. Keeps the real schema.org dual-types (Reservation/SportsEvent/MoneyTransfer). Aligns Mode-A to schema.org, org: and external animal ontologies in equine-alignments.ttl."""@en ; dcterms:modified "2026-07-03"^^xsd:date ; rdfs:comment "Sector ontology for the Furlong product (revenue-products ontology review §2). Fixes non-existent schema terms + the per-resource-IRI anti-pattern."@en . # ----------------------------------------------------------------------------- # Annotation-property declarations (F5 DL hygiene — match the Core pattern). # ----------------------------------------------------------------------------- dcterms:title a owl:AnnotationProperty . dcterms:description a owl:AnnotationProperty . dcterms:modified a owl:AnnotationProperty . vann:preferredNamespacePrefix a owl:AnnotationProperty . vann:preferredNamespaceUri a owl:AnnotationProperty . skos:definition a owl:AnnotationProperty . skos:scopeNote a owl:AnnotationProperty . skos:notation a owl:AnnotationProperty . # ----------------------------------------------------------------------------- # External classes referenced in axioms below, declared (punned) so the DL # profile holds even when their host ontology is not in the reasoned closure # (the F5 fix the Core + sibling sectors apply). schema.org / org: are NOT # owl:imported; specific terms are referenced and aligned in equine-alignments.ttl. # ----------------------------------------------------------------------------- schema:Reservation a owl:Class ; rdfs:label "schema.org Reservation"@en ; rdfs:isDefinedBy . schema:SportsEvent a owl:Class ; rdfs:label "schema.org SportsEvent"@en ; rdfs:isDefinedBy . schema:MoneyTransfer a owl:Class ; rdfs:label "schema.org MoneyTransfer"@en ; rdfs:isDefinedBy . schema:MonetaryAmount a owl:Class ; rdfs:label "schema.org MonetaryAmount"@en ; rdfs:isDefinedBy . skos:Concept a owl:Class ; rdfs:label "SKOS Concept"@en ; rdfs:isDefinedBy . skos:ConceptScheme a owl:Class ; rdfs:label "SKOS Concept Scheme"@en ; rdfs:isDefinedBy . # ============================================================================= # 1. HORSE — gufo:Kind, root core:Asset. The animal itself (schema.org has NO # animal class; external animal ontologies are alignment-only). Owned via # fractional shares; its pedigree (eq:sire/eq:dam) links to other horses. # ============================================================================= eq:Horse a owl:Class, gufo:Kind ; rdfs:subClassOf core:Asset ; rdfs:label "Horse"@en ; skos:definition "A horse — typically a racehorse or breeding animal — held as an owned asset. schema.org has NO animal class (schema:Animal returns 404), so eq:Horse roots in core:Asset and aligns to external animal ontologies (Mode A) only. Its sex is a coded eq:sex value; status a coded eq:status value; pedigree via eq:sire/eq:dam; foaling country via eq:country."@en ; skos:scopeNote "gufo:Kind. Roots in core:Asset (an owned thing). Identify with core:identifiedBy + a studbook/registry-scheme core:Identifier."@en . # ============================================================================= # 2. OWNERSHIP — a syndicate + fractional shares. gufo:Kind / SubKind. # ============================================================================= eq:Syndicate a owl:Class, gufo:Kind ; rdfs:subClassOf core:Organization ; rdfs:label "Syndicate"@en ; skos:definition "A racing/breeding syndicate — an organization of members who jointly own one or more horses through fractional shares. Aligned Mode-A to org:Organization (equine-alignments.ttl); members and their percentages are carried by eq:OwnershipShare records."@en ; skos:scopeNote "gufo:Kind. Roots in core:Organization."@en . eq:OwnershipShare a owl:Class, gufo:SubKind ; rdfs:subClassOf core:Record ; rdfs:label "Ownership Share"@en ; skos:definition "A fractional-ownership record: a share (eq:sharePct, an xsd:decimal percentage) of a horse (eq:horse) held by an owner (eq:owner) or via a syndicate (eq:syndicate), optionally managed by a racing manager (eq:managedBy, eq:mgmtPct). A core:Record about the ownership relation."@en ; skos:scopeNote "gufo:SubKind of core:Record (information object). Percentages are plain xsd:decimal datatype values — honest, not borrowed from qudt."@en . eq:StudShare a owl:Class, gufo:SubKind ; rdfs:subClassOf core:Record ; rdfs:label "Stud Share"@en ; skos:definition "A breeding-rights share in a stallion at stud: a fractional share (eq:sharePct) of a horse (eq:horse), typically carrying a nomination entitlement per breeding season (eq:season) and a stud status (eq:studStatus). A core:Record distinct from an eq:OwnershipShare (racing ownership) — stud shares confer breeding rights."@en ; skos:scopeNote "gufo:SubKind of core:Record."@en . # ============================================================================= # 3. BREEDING — a stud nomination. gufo:SubKind, root core:InformationResource, # dual-typed schema:Reservation (a booking of a covering); price via # schema:totalPrice (the Reservation price property — NOT schema:price). # ============================================================================= eq:StudNomination a owl:Class, gufo:SubKind ; rdfs:subClassOf core:InformationResource, schema:Reservation ; rdfs:label "Stud Nomination"@en ; skos:definition "A booking to send a mare (eq:mareName) to a stallion (eq:horse) for covering in a breeding season (eq:season), made by a nominator (eq:nominator). A booking, so dual-typed schema:Reservation — its price is schema:totalPrice (the Reservation price property; schema:price is NOT declared on Reservation)."@en ; skos:scopeNote "gufo:SubKind of core:InformationResource; ⊑ schema:Reservation (punned above). The mare may not be a pod Horse, so eq:mareName is a literal; the stallion is eq:horse."@en . # ============================================================================= # 4. RACING — race results + prize distributions. gufo:EventType. # ============================================================================= eq:RaceResult a owl:Class, gufo:EventType ; rdfs:subClassOf core:Event, schema:SportsEvent ; rdfs:label "Race Result"@en ; skos:definition "A horse's result in a race: the race (eq:forRace), the finishing position (eq:finishPos) and the horse (eq:horse). Dual-typed schema:SportsEvent (the correct, extant schema.org term — kept from Furlong). Prize money flows through a linked eq:PrizeDistribution."@en ; skos:scopeNote "gufo:EventType rooting in core:Event; ⊑ schema:SportsEvent (punned above)."@en . eq:PrizeDistribution a owl:Class, gufo:EventType ; rdfs:subClassOf core:Activity, schema:MoneyTransfer ; rdfs:label "Prize Distribution"@en ; skos:definition "A distribution of race prize money to a recipient. Dual-typed schema:MoneyTransfer (correct, extant — replacing the NON-EXISTENT schema:prize): the amount is schema:amount; the split between owner/trainer/jockey is carried by eq:jockeyPct / eq:trainerPct and the recipient kind by eq:recipientType. (schema:recipient is an advisory domain stretch on MoneyTransfer — documented, kept, since domainIncludes is non-restrictive.)"@en ; skos:scopeNote "gufo:EventType rooting in core:Activity; ⊑ schema:MoneyTransfer (punned above)."@en . # ============================================================================= # 5. CODED-VALUE CLASSES — gufo:Category, root core:Category. # ============================================================================= eq:Sex a owl:Class, gufo:Category ; rdfs:subClassOf core:Category ; rdfs:label "Sex"@en ; skos:definition "The sex/entirety class of a horse (colt / filly / gelding / mare / stallion). A coded value (core:Category); members are skos:Concepts in eq:sexScheme."@en ; skos:scopeNote "gufo:Category of core:Category."@en . eq:HorseStatus a owl:Class, gufo:Category ; rdfs:subClassOf core:Category ; rdfs:label "Horse Status"@en ; skos:definition "The current racing/management status of a horse (in-training / racing / spelling / retired / at-stud / broodmare). A coded value; members are skos:Concepts in eq:horseStatusScheme."@en ; skos:scopeNote "gufo:Category of core:Category."@en . eq:StudStatus a owl:Class, gufo:Category ; rdfs:subClassOf core:Category ; rdfs:label "Stud Status"@en ; skos:definition "A coded status carried by eq:studStatus. Two value sets share this class: the BREEDING status of a broodmare or stud share (maiden / covered / in-foal / barren / slipped / retired-from-stud, in eq:studStatusScheme) and the BOOKING-WORKFLOW status of a stud nomination (pending / confirmed / served / foaled / cancelled, in eq:nominationStatusScheme). Members are skos:Concepts in one of those two schemes."@en ; skos:scopeNote "gufo:Category of core:Category. eq:studStatus on an eq:StudShare takes an eq:studStatusScheme value; on an eq:StudNomination it takes an eq:nominationStatusScheme value."@en . eq:RecipientType a owl:Class, gufo:Category ; rdfs:subClassOf core:Category ; rdfs:label "Recipient Type"@en ; skos:definition "The kind of party a prize distribution pays (owner / trainer / jockey / manager / breeder / stable-staff). A coded value qualifying an eq:PrizeDistribution's recipient; members are skos:Concepts in eq:recipientTypeScheme."@en ; skos:scopeNote "gufo:Category of core:Category."@en . eq:ExpenseCategory a owl:Class, gufo:Category ; rdfs:subClassOf core:Category ; rdfs:label "Expense Category"@en ; skos:definition "The kind of a horse-keeping expense (training-fees / veterinary / transport / entry-fees / agistment / farrier / insurance / registration / sales / other). A coded value classifying a schema:Invoice expense; members are skos:Concepts in eq:expenseCategoryScheme. A seed set, not law — an app maps its own expense categories onto these (falling back to eq:expense-other rather than an uncoded literal)."@en ; skos:scopeNote "gufo:Category of core:Category. Classifies expense invoices (schema:Invoice + schema:totalPaymentDue — the correct terms Furlong keeps)."@en . # ============================================================================= # 6. PROPERTIES. Domained onto an eq: class where a single class owns them; # properties shared by several classes deliberately carry NO rdfs:domain. # ============================================================================= # --- Horse attributes --- eq:status a owl:ObjectProperty ; rdfs:domain eq:Horse ; rdfs:range eq:HorseStatus ; rdfs:label "status"@en ; skos:definition "The current racing/management status of a horse (a coded eq:HorseStatus value). Replaces Furlong's per-resource #flg.status IRI."@en . eq:sex a owl:ObjectProperty ; rdfs:domain eq:Horse ; rdfs:range eq:Sex ; rdfs:label "sex"@en ; skos:definition "The sex/entirety of a horse (a coded eq:Sex value)."@en . eq:sire a owl:ObjectProperty ; rdfs:domain eq:Horse ; rdfs:range eq:Horse ; rdfs:label "sire"@en ; skos:definition "The father of a horse (a pedigree link to another eq:Horse — possibly an external studbook IRI)."@en . eq:dam a owl:ObjectProperty ; rdfs:domain eq:Horse ; rdfs:range eq:Horse ; rdfs:label "dam"@en ; skos:definition "The mother of a horse (a pedigree link to another eq:Horse — possibly an external studbook IRI)."@en . eq:colour a owl:DatatypeProperty ; rdfs:domain eq:Horse ; rdfs:range xsd:string ; rdfs:label "colour"@en ; skos:definition "The coat colour of a horse (e.g. \"bay\", \"chestnut\", \"grey\") — free text, as colours vary by registry."@en . eq:country a owl:DatatypeProperty ; rdfs:domain eq:Horse ; rdfs:range xsd:string ; rdfs:label "country"@en ; skos:definition "The country of foaling of a horse, as an ISO 3166 / studbook country code (e.g. \"GB\", \"IRE\", \"AUS\")."@en . # --- Ownership / management (shared by OwnershipShare and StudShare) --- eq:horse a owl:ObjectProperty ; rdfs:range eq:Horse ; rdfs:label "horse"@en ; skos:definition "The horse an ownership share, stud share or race result concerns. No rdfs:domain — shared by eq:OwnershipShare, eq:StudShare and eq:RaceResult."@en . eq:owner a owl:ObjectProperty ; rdfs:domain eq:OwnershipShare ; rdfs:range core:Agent ; rdfs:label "owner"@en ; skos:definition "The agent (person or organization) holding an ownership share."@en . eq:syndicate a owl:ObjectProperty ; rdfs:range eq:Syndicate ; rdfs:label "syndicate"@en ; skos:definition "The syndicate through which a share is held. No rdfs:domain — an OwnershipShare or a StudShare may be held via a syndicate."@en . eq:sharePct a owl:DatatypeProperty ; rdfs:range xsd:decimal ; rdfs:label "share percentage"@en ; skos:definition "The fractional-ownership percentage (0–100) an OwnershipShare or StudShare represents. A plain xsd:decimal — honest, not a qudt QuantityValue."@en . eq:managedBy a owl:ObjectProperty ; rdfs:domain eq:OwnershipShare ; rdfs:range core:Agent ; rdfs:label "managed by"@en ; skos:definition "The racing manager acting for an ownership share on the owners' behalf."@en . eq:mgmtPct a owl:DatatypeProperty ; rdfs:domain eq:OwnershipShare ; rdfs:range xsd:decimal ; rdfs:label "management percentage"@en ; skos:definition "The percentage (0–100) a racing manager takes from an ownership share's prize returns."@en . eq:mgmtFlat a owl:ObjectProperty ; rdfs:domain eq:OwnershipShare ; rdfs:range schema:MonetaryAmount ; rdfs:label "flat management fee"@en ; skos:definition "A flat (fixed) management fee a racing manager charges an ownership share — the fixed-fee alternative (or complement) to the percentage eq:mgmtPct. A schema:MonetaryAmount node (schema:value + schema:currency), matching the sector's other monetary values (prize schema:amount, nomination schema:totalPrice, expense schema:totalPaymentDue) so a federated consumer reads the currency unambiguously — a bare decimal cannot be compared across pods/currencies. (eq:mgmtPct / eq:sharePct / eq:jockeyPct / eq:trainerPct stay plain decimals: they are unit-free percentages, not monetary amounts.)"@en . # --- Breeding (StudShare + StudNomination) --- eq:studStatus a owl:ObjectProperty ; rdfs:range eq:StudStatus ; rdfs:label "stud status"@en ; skos:definition "A coded eq:StudStatus value. On an eq:Horse (a broodmare) or an eq:StudShare it is the BREEDING status (eq:studStatusScheme); on an eq:StudNomination it is the BOOKING-WORKFLOW status (eq:nominationStatusScheme). No rdfs:domain — shared by those three classes."@en . eq:season a owl:DatatypeProperty ; rdfs:range xsd:string ; rdfs:label "season"@en ; skos:definition "The breeding (or racing) season a stud share / nomination applies to, as a season label (e.g. \"2026\" or \"2026/2027\"). Replaces the MIS-DOMAINED schema:season (declared only on media series)."@en . eq:mareName a owl:DatatypeProperty ; rdfs:domain eq:StudNomination ; rdfs:range xsd:string ; rdfs:label "mare name"@en ; skos:definition "The name of the mare a stud nomination sends to the stallion. A literal because the mare is often not a pod-held eq:Horse."@en . eq:nominator a owl:ObjectProperty ; rdfs:domain eq:StudNomination ; rdfs:range core:Agent ; rdfs:label "nominator"@en ; skos:definition "The agent who made a stud nomination (the mare's owner or their agent)."@en . # --- Racing results + prizes --- eq:forRace a owl:ObjectProperty ; rdfs:domain eq:RaceResult ; rdfs:label "for race"@en ; skos:definition "The race a result is for — an IRI identifying the race (a fixtures/registry IRI). No rdfs:range: the race is an external entity referenced by IRI."@en . eq:finishPos a owl:DatatypeProperty ; rdfs:domain eq:RaceResult ; rdfs:range xsd:positiveInteger ; rdfs:label "finishing position"@en ; skos:definition "The finishing position of the horse in the race (1 = win). A positive integer."@en . eq:recipientType a owl:ObjectProperty ; rdfs:domain eq:PrizeDistribution ; rdfs:range eq:RecipientType ; rdfs:label "recipient type"@en ; skos:definition "The kind of party (a coded eq:RecipientType value) a prize distribution pays."@en . eq:jockeyPct a owl:DatatypeProperty ; rdfs:domain eq:PrizeDistribution ; rdfs:range xsd:decimal ; rdfs:label "jockey percentage"@en ; skos:definition "The percentage (0–100) of a prize distribution allocated to the jockey."@en . eq:trainerPct a owl:DatatypeProperty ; rdfs:domain eq:PrizeDistribution ; rdfs:range xsd:decimal ; rdfs:label "trainer percentage"@en ; skos:definition "The percentage (0–100) of a prize distribution allocated to the trainer."@en . # --- Expenses --- eq:expenseCategory a owl:ObjectProperty ; rdfs:range eq:ExpenseCategory ; rdfs:label "expense category"@en ; skos:definition "The coded category (a coded eq:ExpenseCategory value) of a horse-keeping expense invoice (a schema:Invoice — the correct term Furlong keeps). No rdfs:domain — attached to the external invoice resource."@en . # ============================================================================= # 7. CODED-VALUE SCHEMES — the canonical value sets (skos:Concept members). Each # member is typed with its eq: coded class AND skos:Concept, carries # skos:prefLabel + skos:definition (F1 term hygiene) + skos:notation, and # skos:inScheme its scheme. Seeds, not law — cross-map (skos:closeMatch) other # value sets. # ============================================================================= # --- Sex --- eq:sexScheme a skos:ConceptScheme ; rdfs:label "Horse sex scheme"@en ; skos:definition "The coded sex/entirety values for eq:sex."@en . eq:sex-colt a eq:Sex, skos:Concept ; skos:inScheme eq:sexScheme ; skos:notation "colt" ; skos:prefLabel "Colt"@en ; skos:definition "An entire male horse aged four or under."@en . eq:sex-filly a eq:Sex, skos:Concept ; skos:inScheme eq:sexScheme ; skos:notation "filly" ; skos:prefLabel "Filly"@en ; skos:definition "A female horse aged four or under."@en . eq:sex-gelding a eq:Sex, skos:Concept ; skos:inScheme eq:sexScheme ; skos:notation "gelding" ; skos:prefLabel "Gelding"@en ; skos:definition "A castrated male horse."@en . eq:sex-mare a eq:Sex, skos:Concept ; skos:inScheme eq:sexScheme ; skos:notation "mare" ; skos:prefLabel "Mare"@en ; skos:definition "A female horse aged five or over."@en . eq:sex-stallion a eq:Sex, skos:Concept ; skos:inScheme eq:sexScheme ; skos:notation "stallion" ; skos:prefLabel "Stallion"@en ; skos:definition "An entire male horse aged five or over, typically at stud."@en . # --- Horse status --- eq:horseStatusScheme a skos:ConceptScheme ; rdfs:label "Horse status scheme"@en ; skos:definition "The coded racing/management status values for eq:status."@en . eq:status-in-training a eq:HorseStatus, skos:Concept ; skos:inScheme eq:horseStatusScheme ; skos:notation "in-training" ; skos:prefLabel "In training"@en ; skos:definition "The horse is in a training yard preparing to race."@en . eq:status-racing a eq:HorseStatus, skos:Concept ; skos:inScheme eq:horseStatusScheme ; skos:notation "racing" ; skos:prefLabel "Racing"@en ; skos:definition "The horse is actively racing."@en . eq:status-spelling a eq:HorseStatus, skos:Concept ; skos:inScheme eq:horseStatusScheme ; skos:notation "spelling" ; skos:prefLabel "Spelling"@en ; skos:definition "The horse is resting/turned out between preparations."@en . eq:status-retired a eq:HorseStatus, skos:Concept ; skos:inScheme eq:horseStatusScheme ; skos:notation "retired" ; skos:prefLabel "Retired"@en ; skos:definition "The horse has retired from racing."@en . eq:status-at-stud a eq:HorseStatus, skos:Concept ; skos:inScheme eq:horseStatusScheme ; skos:notation "at-stud" ; skos:prefLabel "At stud"@en ; skos:definition "The (male) horse is standing at stud for breeding."@en . eq:status-broodmare a eq:HorseStatus, skos:Concept ; skos:inScheme eq:horseStatusScheme ; skos:notation "broodmare" ; skos:prefLabel "Broodmare"@en ; skos:definition "The (female) horse is retired to breeding as a broodmare."@en . # --- Stud status --- eq:studStatusScheme a skos:ConceptScheme ; rdfs:label "Stud status scheme"@en ; skos:definition "The coded breeding-status values for eq:studStatus."@en . eq:stud-maiden a eq:StudStatus, skos:Concept ; skos:inScheme eq:studStatusScheme ; skos:notation "maiden" ; skos:prefLabel "Maiden"@en ; skos:definition "A mare that has not yet been bred."@en . eq:stud-covered a eq:StudStatus, skos:Concept ; skos:inScheme eq:studStatusScheme ; skos:notation "covered" ; skos:prefLabel "Covered"@en ; skos:definition "A mare that has been covered by a stallion this season, pregnancy not yet confirmed."@en . eq:stud-in-foal a eq:StudStatus, skos:Concept ; skos:inScheme eq:studStatusScheme ; skos:notation "in-foal" ; skos:prefLabel "In foal"@en ; skos:definition "A mare confirmed pregnant."@en . eq:stud-barren a eq:StudStatus, skos:Concept ; skos:inScheme eq:studStatusScheme ; skos:notation "barren" ; skos:prefLabel "Barren"@en ; skos:definition "A mare that failed to conceive this season."@en . eq:stud-slipped a eq:StudStatus, skos:Concept ; skos:inScheme eq:studStatusScheme ; skos:notation "slipped" ; skos:prefLabel "Slipped"@en ; skos:definition "A mare that lost the pregnancy (aborted/slipped the foal)."@en . eq:stud-retired-from-stud a eq:StudStatus, skos:Concept ; skos:inScheme eq:studStatusScheme ; skos:notation "retired-from-stud" ; skos:prefLabel "Retired from stud"@en ; skos:definition "A broodmare or stud share retired from breeding (no longer covered / standing)."@en . # --- Stud nomination booking-workflow status (the eq:studStatus value set on an # eq:StudNomination — distinct from the breeding statuses above; these track # the covering BOOKING lifecycle Furlong records on a nomination). --- eq:nominationStatusScheme a skos:ConceptScheme ; rdfs:label "Stud nomination status scheme"@en ; skos:definition "The coded booking-workflow status values for eq:studStatus on an eq:StudNomination."@en . eq:nomination-pending a eq:StudStatus, skos:Concept ; skos:inScheme eq:nominationStatusScheme ; skos:notation "pending" ; skos:prefLabel "Pending"@en ; skos:definition "A stud nomination has been requested but not yet confirmed by the stallion's stud."@en . eq:nomination-confirmed a eq:StudStatus, skos:Concept ; skos:inScheme eq:nominationStatusScheme ; skos:notation "confirmed" ; skos:prefLabel "Confirmed"@en ; skos:definition "The stud has confirmed the nomination (a covering slot is booked) but the mare has not yet been covered."@en . eq:nomination-served a eq:StudStatus, skos:Concept ; skos:inScheme eq:nominationStatusScheme ; skos:notation "served" ; skos:prefLabel "Served"@en ; skos:definition "The mare has been served (covered) under the nomination this season."@en . eq:nomination-foaled a eq:StudStatus, skos:Concept ; skos:inScheme eq:nominationStatusScheme ; skos:notation "foaled" ; skos:prefLabel "Foaled"@en ; skos:definition "The nomination resulted in a live foal."@en . eq:nomination-cancelled a eq:StudStatus, skos:Concept ; skos:inScheme eq:nominationStatusScheme ; skos:notation "cancelled" ; skos:prefLabel "Cancelled"@en ; skos:definition "The nomination was cancelled before a covering took place."@en . # --- Recipient type --- eq:recipientTypeScheme a skos:ConceptScheme ; rdfs:label "Prize recipient type scheme"@en ; skos:definition "The coded recipient-kind values for eq:recipientType."@en . eq:recipient-owner a eq:RecipientType, skos:Concept ; skos:inScheme eq:recipientTypeScheme ; skos:notation "owner" ; skos:prefLabel "Owner"@en ; skos:definition "The prize share paid to the horse's owners."@en . eq:recipient-trainer a eq:RecipientType, skos:Concept ; skos:inScheme eq:recipientTypeScheme ; skos:notation "trainer" ; skos:prefLabel "Trainer"@en ; skos:definition "The prize share paid to the trainer."@en . eq:recipient-jockey a eq:RecipientType, skos:Concept ; skos:inScheme eq:recipientTypeScheme ; skos:notation "jockey" ; skos:prefLabel "Jockey"@en ; skos:definition "The prize share paid to the jockey."@en . eq:recipient-manager a eq:RecipientType, skos:Concept ; skos:inScheme eq:recipientTypeScheme ; skos:notation "manager" ; skos:prefLabel "Manager"@en ; skos:definition "The prize share paid to the racing manager (their management cut of the owners' prize returns). The recipient kind the Furlong distribution waterfall pays alongside owner/trainer/jockey — previously written as an uncoded literal fallback for want of this concept."@en . eq:recipient-breeder a eq:RecipientType, skos:Concept ; skos:inScheme eq:recipientTypeScheme ; skos:notation "breeder" ; skos:prefLabel "Breeder"@en ; skos:definition "The breeder's prize/bonus share where a scheme pays one."@en . eq:recipient-stable-staff a eq:RecipientType, skos:Concept ; skos:inScheme eq:recipientTypeScheme ; skos:notation "stable-staff" ; skos:prefLabel "Stable staff"@en ; skos:definition "The stable-staff share of a prize."@en . # --- Expense category --- eq:expenseCategoryScheme a skos:ConceptScheme ; rdfs:label "Horse expense category scheme"@en ; skos:definition "The coded expense-category values for eq:expenseCategory."@en . eq:expense-training-fees a eq:ExpenseCategory, skos:Concept ; skos:inScheme eq:expenseCategoryScheme ; skos:notation "training-fees" ; skos:prefLabel "Training fees"@en ; skos:definition "Trainer's day-rate and preparation fees."@en . eq:expense-veterinary a eq:ExpenseCategory, skos:Concept ; skos:inScheme eq:expenseCategoryScheme ; skos:notation "veterinary" ; skos:prefLabel "Veterinary"@en ; skos:definition "Veterinary treatment and examinations."@en . eq:expense-transport a eq:ExpenseCategory, skos:Concept ; skos:inScheme eq:expenseCategoryScheme ; skos:notation "transport" ; skos:prefLabel "Transport"@en ; skos:definition "Horse transport to and from races and yards."@en . eq:expense-entry-fees a eq:ExpenseCategory, skos:Concept ; skos:inScheme eq:expenseCategoryScheme ; skos:notation "entry-fees" ; skos:prefLabel "Entry fees"@en ; skos:definition "Race entry and declaration fees."@en . eq:expense-agistment a eq:ExpenseCategory, skos:Concept ; skos:inScheme eq:expenseCategoryScheme ; skos:notation "agistment" ; skos:prefLabel "Agistment"@en ; skos:definition "Spelling/agistment (grazing and keep) fees."@en . eq:expense-farrier a eq:ExpenseCategory, skos:Concept ; skos:inScheme eq:expenseCategoryScheme ; skos:notation "farrier" ; skos:prefLabel "Farrier"@en ; skos:definition "Farrier (shoeing) fees."@en . eq:expense-insurance a eq:ExpenseCategory, skos:Concept ; skos:inScheme eq:expenseCategoryScheme ; skos:notation "insurance" ; skos:prefLabel "Insurance"@en ; skos:definition "Bloodstock mortality / veterinary insurance premiums."@en . eq:expense-registration a eq:ExpenseCategory, skos:Concept ; skos:inScheme eq:expenseCategoryScheme ; skos:notation "registration" ; skos:prefLabel "Registration"@en ; skos:definition "Studbook registration, naming, microchipping and colours-registration fees."@en . eq:expense-sales a eq:ExpenseCategory, skos:Concept ; skos:inScheme eq:expenseCategoryScheme ; skos:notation "sales" ; skos:prefLabel "Sales"@en ; skos:definition "Sales-ring and bloodstock costs — sales-entry fees, agent commission, and purchase costs."@en . eq:expense-other a eq:ExpenseCategory, skos:Concept ; skos:inScheme eq:expenseCategoryScheme ; skos:notation "other" ; skos:prefLabel "Other"@en ; skos:definition "Any horse-keeping expense not covered by a more specific category — the catch-all an app maps an uncoded expense category onto instead of writing an uncoded literal."@en . # ============================================================================= # SECTOR MARKER — the IRI an app's fedapp:sector names to declare it operates in # the equine (racehorse ownership / breeding) sector. A skos:Concept in the # federation sector register; dereferences to this ontology. # ============================================================================= a skos:Concept ; rdfs:label "Equine sector"@en ; rdfs:comment "The Equine (racehorse ownership, breeding, prize distribution) data sector. The value an app's fedapp:sector names in its Client Identifier Document to declare it operates over equine-ownership data — the sector the Furlong product declares. Backed by this sector ontology."@en ; rdfs:isDefinedBy ; skos:prefLabel "Equine"@en .