Crate sophia_iri
source ·Expand description
This crate provides functions for validating IRIs and IRI references, as well as for resolving IRI references agains a given base IRI.
It is developed as a part of Sophia, an RDF and Linked Data toolkit in Rust, but can be used independantly.
Feature gates
-
test_data exposes the
test
module, which contains arrays of good and bad IRIs, useful for testing purposes, possibly in other crates. -
examples exposes the
wrap_macro_examples
module, whose role is to exemplify the effect of thewrap
macro.
Modules
- Implementation of IRI resolution as per [RFC 3987].
- Test module for
sophia_iri
. - This module provides examples of what the
wrap
macro generates.
Macros
- This macro is used to create a read-only wrapper around a type T, usually for the purpose of guaranteeing that the wrapped value verifies some condition. This macro takes care of defining all the usual traits for the wrapper type.
Structs
- This error is raised when trying to parse an invalid IRI.
- See
Iri::new
. - See
IriRef::new
.
Traits
- Marker trait guaranteeing that the underlying
str
is a valid IRI-reference (i.e. absolute, with an optional fragment identifier) - Marker trait guaranteeing that the underlying
str
is a valid IRI (i.e. absolute or relative, with an optional fragment identifier)
Functions
- Check whether
txt
is an absolute IRI reference. - Check whether
txt
is a relative IRI reference. - Check whether
txt
is a valid (absolute or relative) IRI reference. - Check whether
ns
andsuffix
concatenate into a valid (absolute or relative) IRI reference.
Type Aliases
- Type alias for
Result
with default errorTermError
.