Кіріспе

XML редакторы – XML-ді өңдеуді жеңілдету үшін қосымша мүмкіндіктері бар таңбалау тілінің редакторы. Бұл жай мәтін редакторы арқылы да жасалуы мүмкін, онда барлық код көрінеді, бірақ XML редакторлары документтің түрін анықтау (DTD) немесе XML ағашымен берілген деректерге сүйене отырып, XML-де жиі кездесетін тапсырмалар үшін тегтерді автоматты толықтыру, мәзірлер мен батырмалар сияқты қосымша мүмкіндіктер ұсынады. Сондай-ақ, кодты фондық режимде жасырып, мазмұнды пайдаланушыға көрінетін, түсінікті форматта ұсынатын графикалық XML редакторлары да бар, бұл көрсетілім нұсқасына немесе өңдеу формаларына жақын болады. Бұл, әсіресе, XML кодын жақсы білмейтін адамдарға уақыт кестелері және шығындар туралы есептер сияқты XML негізделген құжаттарға ақпарат енгізуі қажет болған жағдайларда пайдалы. Тіпті егер пайдаланушы XML-ге үйренген болса да, синтаксистік ережелерді автоматты түрде басқаратын мұндай редакторларды пайдалану көбінесе жылдамырақ және ыңғайлырақ болады.

Синтаксисті бояулаудан тыс функционалдылық

XML редакторы, көптеген қарапайым мәтін редакторлары мен жалпы мақсаттағы код редакторлары ұсынатын синтаксистік белгілеуден артық мүмкіндіктерге ие. Ол XML дерегін XML схемасы немесе XML DTD негізінде тексеріп, ал кейбіреулері құжат өңделіп жатқанда нақты уақыт режимінде осыны істей алады. XML-ді өңдеуге арналған редактордың басқа да мүмкіндіктеріне элемент атауын автотөліктіру және ашық тег енгізілген кезде жабық тегті автоматты түрде қосу кіруі мүмкін. Бұл мүмкіндіктер XML кодындағы қателердің алдын алуға көмектеседі. Кейбір XML редакторлары құжат бойынша XSLT түрлендіруін немесе түрлендірулер тізбегін орындау мүмкіндігін ұсынады. Ал кейбір кеңейтілген XML жиынтықтары тіпті XSLT түзету мүмкіндіктерін және құжаттардан PDF файлдарын жасау үшін XSL FO процессорларын ұсынады. <?xml version="1.0" encoding="utf-8"?>

Графикалық редакторлар

Кейбір адамдар үшін GUI-ге негізделген графикалық редакторларды мәтіндік редакторларға қарағанда пайдалану оңайырақ болуы мүмкін және XML синтаксисін білуді қажет етпеуі мүмкін. Бұлар көбінесе WYSIWYG ("Көргеніңіз – алғаныңыз") редакторлары деп аталады, бірақ олардың барлығы WYSIWYG емес: графикалық XML редакторлары соңғы көрсетілімін (рендерингті) көрсетуге тырысқанда WYSIWYG, ал XML элементтерінің нақты мағынасын көрсетуге тырысқанда WYSIWYM ("Көргеніңіз – түсінгеніңіз") бола алады. WYSIWYG емес жағдайда, олар құжаттың графикалық нәтижесін (немесе оның бірін) көрсетпейді, керісінше мәтіннің мағынасын жеткізуге баса назар аударады. Олар DTD немесе XML схемаларын және/немесе конфигурациялық файлдарды XML элементтерін графикалық компоненттермен байланыстыру үшін пайдаланады. Мұндай редакторлар әдетте құжаттарды сақтау емес, деректерді сақтау үшін қолданылатын XML тілдері үшін тиімдірек. Құжаттардың құрылымы көбінесе еркін болады, бұл көптеген графикалық редакторлардың қатаң табиғатына қайшы келеді. Жоғарыдағы мысалда, редактор TABLE элементі кестеге, TR элементі кестедегі қатарға, ал TD элементі кестедегі жасушаға сәйкес екенін білу үшін конфигурациялық файлды пайдаланады. Ол өңдеуді жеңілдету үшін осы құрылымдық ақпаратқа негізделген кестені көрсету үшін бұл ақпаратты қолданады. Схемалық және конфигурациялық файлдардағы ақпарат пайдаланушылардың жарамсыз құжаттар жасауына жол бермеу үшін де қолданылуы мүмкін. Мысалы, мәтіндік редакторда кестедегі қатарға тым көп жасуша қоюға болады, бірақ бұл жоғарыда көрсетілген графикалық интерфейспен мүмкін емес.

WYSIWYG редакторлары

WYSIWYG редакторлары адамдарға XML кодының өзі емес, графикалық түрде көрсетілген тегтер арқылы файлдарды тікелей өңдеуге мүмкіндік береді. WYSIWYG редакторлары көбінесе кейбір түрлендіру немесе CSS стильдерін қолдану нәтижесін имитациялауға тырысады. Мұндай имитация XML-ден нәтижеге түрлендіруге байланысты мүмкін немесе мүмкін болмауы мүмкін. WYSIWYG редакторын салмақсыз пайдалану белгілі бір XML тілінің ішкі семантикалық мағынасын жоғалтқан құжаттарды жасауға әкелуі мүмкін. Бұл, егер пайдаланушы WYSIWYG редакторын пайдаланудың орнына, редакторда белгілі бір көрініс түрін жасауға тырысса, орын алады. Мысалы, веб-бет құрастырушы H1 (бірінші деңгейлі тақырып) орнына H2 элементін (екінші деңгейлі тақырып) қолдануы мүмкін, себебі ол ағымдағы WYSIWYG редакторында кішкентайрақ көрінеді. Мұндай автор көрініс негізінде шешім қабылдайды, бірақ автордың веб-бетіне кірген келуші өз браузерінде мүлдем басқаша көрініс ала алады. Дегенмен, егер автор құжаттың мағынасын түсініп, WYSIWYG редакторындағы нақты көрініске сүйенген шешімдер қабылдамаса, мұндай редактор жазушы үшін пайдалы болуы мүмкін. Әдетте, қандай да бір түріде көрсетілген құжатты, қара XML кодты оқудан гөрі оңайырақ. Сонымен қатар, өңдеу әлдеқайда интуитивті болуы мүмкін, өйткені WYSIWYG редакторы көптеген мәтіндік редакторларға ұқсас құралдарды қолдана алады. Кейбір WYSIWYG редакторлары тіпті пайдаланушыға DTD немесе Схема қолдануға және өңдеу үшін өз интерфейсін анықтауға мүмкіндік береді. WYSIWYG редакторлары көбінесе CSS-ті қолдайды, бірақ XSLT-ні қолдамайды, себебі XSLT түрлендірулері өте күрделі болуы мүмкін, ал нәтижені өзгерткенде пайдаланушының ниетін болжау мүмкін емес. XSLT-ні қолдайтын WYSIWYG редакторлары, мысалы Syntext Serna, өзгерістерді түпнұсқа XML-ге тікелей қолданады, сонымен бірге әр өзгеріс үшін XSLT-ні іске қосып, көріністі жаңартады. Жоғарыдағы мысалда, кесте жасушаларын белгілі бір түспен бояу үшін стильдік кесте қолданылады. Мысалы, оқуды жеңілдету үшін жұп қатарлар тақ қатарлармен бірдей түске ие емес.