Кіріспе

XML схема тілі

Информатикада RELAX NG (REgular LAnguage for XML Next Generation) – XML үшін схема тілі. RELAX NG схемасы XML құжатының құрылымы мен мазмұнына арналған үлгіні анықтайды. RELAX NG схемасы өзі XML құжаты болып табылады, бірақ RELAX NG сонымен қатар ықшам, XML емес синтаксисті де ұсынады. Басқа XML схема тілдерімен салыстырғанда RELAX NG салыстырмалы түрде қарапайым деп есептеледі. Ол 2001 және 2002 жылдары OASIS RELAX NG техникалық комитетінің комитет спецификациясымен, Мурата Макотоның RELAX және Джеймс Кларктың TREX негізінде, сондай-ақ ISO/IEC 19757: Құжат схемасын анықтау тілдері (DSDL) халықаралық стандартының екінші бөлігімен анықталды. ISO/IEC 19757 2 стандартын ISO/IEC JTC 1/SC 34 әзірледі және оның алғашқы нұсқасы 2003 жылы жарияланды.

W3C XML схемасымен салыстыру

RELAX NG спецификациясы W3C XML Schema спецификациясымен шамамен бір уақытта әзірленгенімен, соңғысы 2001 жылы W3C ұсынысы болған кезде ашық кодты және коммерциялық XML анализаторлары мен редакторларында көбірек танылып, кеңінен қолданылды. Бірақ содан бері RELAX NG қолдауы XML бағдарламалық құралдарында кеңейіп келеді, ал DocBook, TEI нұсқаулары, OpenDocument және EPUB сияқты танымал құжатқа бағытталған таңбалау тілдері үшін негізгі схема ретінде қабылдануы оның қабылдануына көмектесті. RELAX NG, W3C XML Schema сияқты, дәстүрлі DTD-ден ерекшеленетін көптеген мүмкіндіктерді бөліседі: деректердің түрлерін анықтау, реттегіш өрнектерді қолдау, атау кеңістіктерін қолдау және күрделі анықтамаларға сілтеме жасау мүмкіндігі.

Файл атауының кеңейтулері

Бейресми келісім бойынша, RELAX NG схемалары тұрақты синтаксисте әдетте ".rng" файлдық кеңейтіммен сақталады. Ал ықшам синтаксистегі схемалар үшін ".rnc" кеңейтімі қолданылады.

Детерминизм

Relax NG схемалары міндетті түрде "анықталған" немесе "бірмәнді емес".