Inhoudsopgave:
- Definitie - Wat betekent reguliere taal voor XML Next Generation (RELAX NG)?
- Techopedia verklaart reguliere taal voor XML Next Generation (RELAX NG)
Definitie - Wat betekent reguliere taal voor XML Next Generation (RELAX NG)?
Reguliere taal voor XML Next Generation (RELAX NG) is een schemataal voor eXtensible Markup Language (XML). RELAX NG wordt gebruikt om XML-instantiedocumenten te valideren. Het is geschreven door Makoto Murata en James Clark met het ontwerp gebaseerd op Clark's Tree Regular Expression for XML (TREX) en Murata's Regular Language description for XML (RELAX).
Een van de kenmerken van RELAX NG is dat een enkel RELAX NG-schemadocument vele XML-instantiedocumenten kan valideren. (Of een enkel XML-instantiedocument kan worden gevalideerd door meerdere RELAX NG-schemadocumenten.)
Andere kenmerken van RELAX NG zijn onder meer:
- het is een op patronen gebaseerde grammatica gebaseerd op een sterke wiskundige basis,
- het heeft XML-syntaxis en compacte syntaxis,
- het ondersteunt XML-schematypetypes,
- het ondersteunt door de gebruiker gedefinieerde schematypes,
- het ondersteunt XML-naamruimten,
- het is zeer composeerbaar,
- het gaat op dezelfde manier om met elementen en attributen.
RELEAX NG heeft twee verschillende syntaxis, de XML-syntaxis en compacte syntaxis. Bestandsnaamextensies van RELAX NG zijn ".rng" en ".rnc" voor respectievelijk een normale syntaxis en een compacte syntaxis.
Techopedia verklaart reguliere taal voor XML Next Generation (RELAX NG)
Het acroniem is logisch als je het ziet geschreven als: REgular LAnguage for XML Next Generation.
De auteurs, Clark en Murata hebben RELAX NG gemaakt na Document Type Definition (DTD) en XML-schematalen en hebben verschillende problemen aangepakt die zijn ervaren met DTD's en XML-schematalen.
RELAX NG's benadering van validatie is gebaseerd op patronen - het maakt gebruik van patroonsamenstelling en benoemde patronen om herbruikbare secties in schemadocumenten te maken.
RELAX NG heeft niet de typehiërarchie van XML-schema's en ondersteunt geen type overerving, maar wel datatyping met datatypes geleverd door het W3C XML-schema en door de gebruiker gedefinieerde types.
Hoewel RELEAX NG de meest eenvoudige validatietechnologie is, is ondersteuning niet zo breed beschikbaar in vergelijking met het W3C XML-schema.
