ShEx - ShEx
Paradigma | Validación de datos |
---|---|
Diseñada por | Eric Prud'hommeaux, Iovka Boneva, Jose Emilio Labra Gayo, Gregg Kellogg, Shape Expressions W3C Community Group |
Lanzamiento estable | 2.1 / 21 de noviembre de 2018
|
Alcance | Web semántica |
Lenguaje de implementación | JavaScript , Scala |
Extensiones de nombre de archivo | shex, sx |
Sitio web | www |
Implementaciones importantes | |
shex.js , Shaclex | |
Influenciado por | |
Tortuga , SPARQL , RelaxNG | |
Influenciado | |
SHACL |
Shape Expressions ( ShEx ) es un lenguaje de modelado de datos para validar y describir un marco de descripción de recursos (RDF).
Se propuso en el Taller de validación RDF de 2012 como un lenguaje conciso de alto nivel para la validación RDF.
Las formas se pueden definir en una sintaxis compacta amigable para los humanos llamada ShExC o usando cualquier formato de serialización RDF como JSON-LD o Turtle .
Las expresiones ShEx se pueden usar tanto para describir RDF como para verificar automáticamente la conformidad de los datos RDF. La sintaxis de ShEx es similar a Turtle y SPARQL, mientras que la semántica está inspirada en lenguajes de expresión regular como RelaxNG .
Ejemplo
PREFIX : <http://example.org/>
PREFIX schema: <http://schema.org/>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
:Person {
schema:name xsd:string ;
schema:knows @:Person * ;
}
El ejemplo anterior declara que los nodos que se ajustan a la forma Person
deben tener una propiedad schema:name
con un valor de cadena y cero o más propiedades schema:knows
cuyos valores deben ajustarse a la forma Person
.
Implementaciones
- shex.js : JavaScript
- shaclex : biblioteca Scala con soporte para Jena (framework) y RDF4J
- PyShEx : Python
- shexjava : Java
- Ruby ShEx : Rubí
- ShEx.ex : Elixir
Patios de juegos y demostraciones en línea
- ShExSimple : demostración en línea basada en shex.js
- rdfshape : demostración en línea basada en shaclex
Referencias
Otras lecturas
- Especificación
- Prud'hommeaux, Eric; Boneva, Iovka; Labra Gayo, José Emilio; Kellogg, Gregg, eds. (2018). Especificación del lenguaje de expresiones de forma . Informe preliminar del grupo comunitario del W3C.
- Labra Gayo, José Emilio; Prud'hommeaux, Eric; Boneva, Iovka; Kontokostas, Dimitris (2018). Validación de datos RDF . Morgan y Claypool.