Closed ExarcaFidalgo closed 4 years ago
Se puede complicar, haciendo que uno de los operandos sea un conjunto de propiedades:
:User { schema:name xsd:string | ( schema:givenName xsd:string + ; schema:familyName xsd:string ) }
Por último, se pueden indicar cardinalidades para el operador.
:Product { schema:productId xsd:string ; ( schema:isRelatedTo @:Product | schema:isSimilarTo @:Product ){0,2} }
Ya tengo Shex > XMI para el siguiente fragmento:
prefix : https://schema.org/ prefix xsd: http://www.w3.org/2001/XMLSchema# base http://example.org/
:User { :name xsd:string | ( :givenName xsd:string + ; :familyName xsd:string ) }
:Car { :model xsd:string; (:turbo xsd:string | :atm xsd:string;){1,2} }
Queda lo contrario.
Declara que los nodos tienen una de sendas propiedades, nunca ambas o ninguna.
:User { schema:name xsd:string | foaf:name xsd:string }