sprig and prose docs classic docs
Reference› Errors

Errors

When prose cannot compile a universe, it reports an error. Each error is something an author can hit. It has a name so it can be found again, and a code that appears in the compiler output.

Codes

  • SP001 NestedUniverseError — ActiveError
  • SP002 DuplicateTitleError — ActiveError
  • SP003 DuplicateDescribeError — ActiveError
  • SP004 DuplicateRelationshipsError — ActiveError
  • SP005 DisallowedKindError — ActiveError
  • SP006 ConceptWithoutUniverseError — DeprecatedError
  • SP007 TargetNotFoundError — ActiveError
  • SP008 ConceptAlreadyExistsError — ActiveError
  • SP009 DuplicateDeclaredParentError — DeprecatedError
  • SP010 DimensionNotFoundError — ActiveError
  • SP011 DimensionAlreadyExistsError — ActiveError
  • SP012 RelationshipAlreadyExistsError — ActiveError
  • SP013 MissingUniverseError — ActiveError
  • SP014 MultipleUniversesError — ActiveError
  • SP015 RelationshipNotFoundError — ActiveError
  • SP016 ExpectedTokenError — ActiveError
  • SP017 UnknownDeclarationError — ActiveError
  • SP018 UnclosedDescribeError — ActiveError
  • SP019 UnterminatedBlockCommentError — ActiveError
  • SP020 StrayBlockCommentEndError — ActiveError
  • SP021 DimensionAlreadyDeclaredInChainError — ActiveError
  • SP022 DeprecatedInClause — ActiveError
  • SP023 RelationshipPairConflictError — ActiveError
  • SP024 AmbiguousEndpointError — ActiveError
  • SP025 RelationshipAlreadyDeclaredInChainError — ActiveError
  • SP026 TargetNotInPairError — ActiveError
  • SP027 ReservedRelationshipNameError — ActiveError
  • SP028 SideNotInRelationshipError — ActiveError
  • SP029 UnexpectedCharacterError — ActiveError
  • SP030 DuplicateTargetError — ActiveError
  • SP031 NameInEdgeBlockError — ActiveError

What some pages leave out

A Decided in section appears only where a decision record introduced or retired the code.

These pages have no Raised by section, because the universe does not record which construct raises the code: SP016, SP017.

These pages have no In the compiler section, because no receipt points at them: SP006.

How this catalogue is made

Every page here is generated from the universe that defines these errors, so a page cannot disagree with it. Each error appears under its code and its name exactly as the compiler spells them. A fuller title would be shown beside a name, never instead of it, but the universe records none yet.

An In the compiler section names the line in the parser that raises the error, taken from the receipts sprig observe last recorded.