Class DatasetsWebService.TagCommit
- Enclosing class:
DatasetsWebService
TagCommit); a statement-shaped tag rides its statements.
🛑 Every field below describes a NEW tag (one carrying a clientRef). An item carrying a
gemmaId is a keep-marker — this section is add/delete only — and carrying any of these fields
alongside the id is a 400, not an update.
- Author:
- tesarst
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected booleanbooleanHow this tag was arrived at, as aGOEvidenceCodename.Declares that this tag is meant to be free text — novalue.uri— on purpose.com.fasterxml.jackson.databind.JsonNodeVerbatim provenance for this tag.getValue()inthashCode()voidvoidsetEvidenceCode(String evidenceCode) How this tag was arrived at, as aGOEvidenceCodename.voidsetFreeTextIntended(Boolean freeTextIntended) Declares that this tag is meant to be free text — novalue.uri— on purpose.voidvoidsetSupportingEvidence(com.fasterxml.jackson.databind.JsonNode supportingEvidence) Verbatim provenance for this tag.voidtoString()Methods inherited from class DatasetsWebService.EntityRef
getClientRef, getGemmaId, setClientRef, setGemmaId
-
Constructor Details
-
TagCommit
public TagCommit()
-
-
Method Details
-
getCategory
-
getValue
-
getStatements
-
getFreeTextIntended
Declares that this tag is meant to be free text — novalue.uri— on purpose.An experiment tag with no URI is refused by default: it is usually an oversight, and after the fact it is indistinguishable from a grounding the client intended and forgot. Setting this says the absence is a decision.
🛑 **Necessary but no longer sufficient.** Since Paul's ruling of 2026-09-06 a free-text experiment tag must ALSO carry a statement pairing a predicate with a grounded object (
TermViolation.Reason.FREE_TEXT_NOT_HOOKED). The two are different questions — this one says the missing URI was deliberate, the hook says the annotation reaches the ontology somewhere — and a tag that satisfies one and not the other is refused. Setting this flag alone no longer gets a bare free-text tag accepted.🛑 Per item and deliberate. A client that sets it on every tag has not made the check stricter, it has turned the check off — and the ungrounded tags already on production are what that looks like accumulated over years.
WHY the term was left ungrounded belongs in
getSupportingEvidence(), which is the mechanism this project already uses to document a curation decision (Paul, 2026-09-01). This flag records that the decision was made; the evidence records what it was. Nothing enforces the pairing, but a declared free-text tag with no supporting evidence is a decision nobody wrote down, and it will read later exactly like the oversight this gate exists to catch. -
getSupportingEvidence
@Nullable public com.fasterxml.jackson.databind.JsonNode getSupportingEvidence()Verbatim provenance for this tag. Same shape and same null = "no change" convention asDatasetsWebService.StatementCommit.getSupportingEvidence(). When the tag rides a statement, evidence set on the statement wins; this is the fallback for a plain category/value tag. -
getEvidenceCode
How this tag was arrived at, as aGOEvidenceCodename. Same precedence asgetSupportingEvidence(): when the tag rides a statement, a code set on the statement wins and this is the fallback.Omitted leaves the tag to the
ICthatExpressionExperimentWriteServiceImpl#addCharacteristicfills in for a code-less add, which is what every tag written through this route has carried so far. -
setCategory
-
setValue
-
setStatements
public void setStatements(DatasetsWebService.Section<DatasetsWebService.StatementCommit> statements) -
setFreeTextIntended
Declares that this tag is meant to be free text — novalue.uri— on purpose.An experiment tag with no URI is refused by default: it is usually an oversight, and after the fact it is indistinguishable from a grounding the client intended and forgot. Setting this says the absence is a decision.
🛑 **Necessary but no longer sufficient.** Since Paul's ruling of 2026-09-06 a free-text experiment tag must ALSO carry a statement pairing a predicate with a grounded object (
TermViolation.Reason.FREE_TEXT_NOT_HOOKED). The two are different questions — this one says the missing URI was deliberate, the hook says the annotation reaches the ontology somewhere — and a tag that satisfies one and not the other is refused. Setting this flag alone no longer gets a bare free-text tag accepted.🛑 Per item and deliberate. A client that sets it on every tag has not made the check stricter, it has turned the check off — and the ungrounded tags already on production are what that looks like accumulated over years.
WHY the term was left ungrounded belongs in
getSupportingEvidence(), which is the mechanism this project already uses to document a curation decision (Paul, 2026-09-01). This flag records that the decision was made; the evidence records what it was. Nothing enforces the pairing, but a declared free-text tag with no supporting evidence is a decision nobody wrote down, and it will read later exactly like the oversight this gate exists to catch. -
setSupportingEvidence
public void setSupportingEvidence(@Nullable com.fasterxml.jackson.databind.JsonNode supportingEvidence) Verbatim provenance for this tag. Same shape and same null = "no change" convention asDatasetsWebService.StatementCommit.getSupportingEvidence(). When the tag rides a statement, evidence set on the statement wins; this is the fallback for a plain category/value tag. -
setEvidenceCode
How this tag was arrived at, as aGOEvidenceCodename. Same precedence asgetSupportingEvidence(): when the tag rides a statement, a code set on the statement wins and this is the fallback.Omitted leaves the tag to the
ICthatExpressionExperimentWriteServiceImpl#addCharacteristicfills in for a code-less add, which is what every tag written through this route has carried so far. -
toString
- Overrides:
toStringin classDatasetsWebService.EntityRef
-
equals
- Overrides:
equalsin classDatasetsWebService.EntityRef
-
canEqual
- Overrides:
canEqualin classDatasetsWebService.EntityRef
-
hashCode
public int hashCode()- Overrides:
hashCodein classDatasetsWebService.EntityRef
-