SchematronSchematron s'engloba dins de la família de llenguatges de marcatge XML, sent un llenguatge de validació basat en regles i en XPath. Es basa en afirmacions en comptes d'en gramàtica. Utilitza expressions d'accés en lloc de gramaticals per definir el que es permet i el que no es permet en un document XML. Aquest mètode de validació aporta una gran flexibilitat en la descripció d'estructures relacionals. En canvi, és un llenguatge molt limitat a l'hora d'especificar l'estructura bàsica del document, problema que se soluciona combinant Schematron amb altres llenguatges d'esquema. En la seva forma típica d'implementació, els esquemes Schematron són processats com a codi XSLT. Podent ser utilitzats en qualsevol situació on XSLT pugui ser aplicable. VersionsSchematron va ser inventat per Rich Jelliffe a l'Acadèmia Sinica Computing Centre, de Taiwan. Segons les seves pròpies paraules: com "un plomall per arribar a aquelles parts que altres llenguatges d'esquema no poden aconseguir". Les principals versions que s'han llançat des de llavors han estat:
Schematron com un estàndard ISOHa estat estandarditzat com a part de la norma: ISO / IEC 19757 - Document Schema Definition Languages (DSDL) - Part 3: "Rule-based validation - Schematron ". Aquest estàndard està disponible de manera gratuïta a la llista de l'ISO Publicly Available Specifications'.[1] I pot ser adquirit imprès en paper en el mateix ISO o en algunes de les institucions nacionals d'estàndards. Els esquemes que facin ús de la norma ISO / IEC FDIS 19757-3, han d'utilitzar el següent espai de noms: http://purl.oclc.org/dsdl/schematron
Exemple<schema xmlns="http://purl.oclc.org/dsdl/schematron">
<pattern>
<title>Date rules</title>
<rule context="Contract">
<assert test="ContractDate < current-date()">ContractDate should be in the past because future contracts are not allowed.</assert>
</rule>
</pattern>
</schema>
Aquesta regla comprova que l'element ContractDate tingui una data anterior a la data en curs. Si aquesta condició no es compleix, es retornarà el missatge d'error indicat en el cos de l'element assert. ReferènciesEnllaços externs |
Portal di Ensiklopedia Dunia