Class ProjectionDiagnostic
A diagnostic message emitted while projecting an S-100 feature-bag
dataset (e.g. S421Dataset, S124Dataset) into a strongly-typed
data model.
public sealed class ProjectionDiagnostic
- Inheritance
-
ProjectionDiagnostic
- Inherited Members
Remarks
Typed-model projections are deliberately permissive: malformed input
surfaces here rather than throwing. The only fatal condition is a missing
root entity (e.g. an S-421 dataset with no Route feature), which
remains an InvalidOperationException.
Use Code for programmatic dispatch — stable identifiers
(e.g. "xlink.unresolved", "attribute.parse.double",
"feature.missing") are preferred over message-text matching.
Properties
Code
Stable, programmatic identifier for the issue (e.g.
"xlink.unresolved", "attribute.parse.int",
"attribute.parse.double", "attribute.parse.bool",
"attribute.parse.datetime", "feature.missing",
"feature.geometry.missing", "feature.duplicate").
public string? Code { get; init; }
Property Value
Message
Human-readable description of the issue. Not intended for machine parsing — use Code instead.
public required string Message { get; init; }
Property Value
RelatedAttribute
The name of the attribute (or association role) the issue relates to,
when applicable (e.g. "routeInfoEditionTime", "routeWaypoint").
public string? RelatedAttribute { get; init; }
Property Value
RelatedId
The gml:id of the feature or information type the issue
relates to, when applicable.
public string? RelatedId { get; init; }
Property Value
Severity
The diagnostic severity.
public required DiagnosticSeverity Severity { get; init; }
Property Value
Methods
ToString()
Returns a string that represents the current object.
public override string ToString()
Returns
- string
A string that represents the current object.