Releases: ruby-rdf/shex
Releases · ruby-rdf/shex
Release 0.5.1
- Update for stems and exclusions being represented as strings.
- Allow a Shape Definition without an expression. –
<S> IRI {} - Don't merge nested ANDs.
- Don't use StemRange where Stem will do.
- Add
languageoperator for matching lanugage tags. JSON-LD predicate islanguageTag. - Add format for shex with CLI for matching shapes.
Release 0.5.0
Updates for the announced Candidate release of ShEx 2.0:
- Update EBNF rules to avoid a labeled shapeRef. per shexSpec/shex#38.
- Updates to split
nodeConstraintin tolitNodeConstraintandnonLitNodeConstraint. - Datatyped-literal validation.
- Change API to require map, and process all map entries. If
focusis provided, there must be a start;focus is now an option. Note that this is a breaking change. - Support
//style regular expressions. - Return hash of nodes referencing shape labels and results, rather than a marked-up schema.
- Use
-1for unbounded cardinality. - Use w3.org namespace.
- Support for Literal and Language Tag stems and stem ranges.
Release 0.4.0
Latest updates for ShEx 2.0:
- JSON grammar is now JSON-LD, creating a path to full support of RDF for specifying shapes.
InclusionandShapeRefhave been removed, as regular RDF-style references to resources are now the norm.- An Inclusion
&refnow references aTripleExpressiondirectly rather than aShapeExpression.
Release 0.3.0
- Supports JSON-LD version of ShExJ.
ShEx.parsewithformat: :shexjShEx::Algebra.from_shexjShEx::Operator.to_hfor complete serialization to ShExJ from the internal algebra.
- Some improvements on shape results on either success or exception.
- Create
ShEx::Extensionas an abstract class for implementing extensions used for Semantic Actions (ShEx::Algebra::SemAct). This implements an event mechanism allowing a single extension instanace to be entered, exited and visited during the course of shape validation.
Release 0.2.0
- Separate
Schema#satisfies?fromSchema#execute.- Rework exception handling, keeping track of partial matched/unmatched and satisfied/unsatisfied. The operands are marked up with these recursively, and included in the
expressionaccessor of the appropriate exception.ShEx::Algebra::Schema#executereturns this marked-up expression if it succeeds, and raisesShEx::NotSatisfiedincluding the marked-up expression if it fails. #satisfies?now just returns a boolean value.
- Rework exception handling, keeping track of partial matched/unmatched and satisfied/unsatisfied. The operands are marked up with these recursively, and included in the
- Now passing all regexp and numeric tests.
- Add only pertinent information to operation expression when not matched or satisfied.
- Change the way
referencedis handled in statements, and include it when showing SXP.
Release
First public release.
- Parses ShExC into an executable algebra, serializable as S-Expressions.
- No support for ShExJ at this time.
- Error messages when graph does not satisfy a shape are not particularly useful yet.
- Passes most syntax, structure, and validation tests.