RELAX NG (Regular Language for XML Next Generation) ist eine Schemasprache für XML-Dokumente, die auf Murata Makotos RELAX und James Clarks TREX basiert. Die Dateiendung .rnc kennzeichnet spezifisch die Compact-Syntax-Version dieser Sprache. Im Gegensatz zur standardmäßigen RELAX-NG-Syntax, die selbst in XML geschrieben ist (und die Endung .rng verwendet), handelt es sich bei der kompakten Syntax um eine nicht auf XML basierende, textorientierte Notation, die deutlich besser lesbar und einfacher manuell zu erstellen ist. Sie verwendet eine prägnante, mathematische Notation, die regulären Ausdrücken oder Grammatiken im BNF-Stil ähnelt. Dieses Format wird häufig im professionellen Dokument-Engineering und von bedeutenden Web-Standardisierungsgremien eingesetzt, um die Struktur, Elemente und Attribute innerhalb spezifischer XML-Vokabulare zu definieren. Da es sich um ein reines Textformat handelt, eignet es sich hervorragend für Versionskontrollsysteme und kann problemlos in jedem Standard-Texteditor bearbeitet werden. Entwickler bevorzugen .rnc oft aufgrund seiner Kürze und Klarheit und nutzen häufig Werkzeuge wie 'Trang', um zwischen der kompakten Syntax und der XML-basierten Syntax oder anderen Schemaformaten wie XSD zu konvertieren.