SGML-entitás
From Wikipedia, the free encyclopedia
Remove ads
Az SGML jelölőnyelvben és az SGML-t használó, vagy abból származó nyelvekben (pl. HTML, XML) entitásnak nevezzük a dokumentumhoz rendelt, névvel ellátott adatokat, vagy magát a név nélküli dokumentumot.
Egy entitás jellemzően egy vagy több karakter sorozatából áll. Az elnevezett entitásokra a dokumentumban tetszőleges számban lehet hivatkozni, hasonló módon, mint a több programozási nyelvben is használatos makrókra.
Remove ads
Entitás típusok
- Láthatóság szerint
- Az entitás általános, ha az entitásra a dokumentumban bárhol lehet hivatkozni.
- Az entitás paraméter típusú, ha csak a DTD-n belül lehet rá hivatkozni.
- Forrás alapján
- A belső entitások deklarációja magában a DTD-ben szerepel.
- A külső entitások adatait egy külső fájl tartalmazza.
- Értelmezhetőség alapján
- Az értelmezhető entitások olyan szöveges információkat tartalmaznak, melyek hivatkozáskor a dokumentum részévé válnak, és a feldolgozás során az értelmező elemzi őket. Egy paraméter típusú entitás csak értelmezhető lehet.
- A nem értelmezhető entitások bármilyen nyers adatot tartalmazhatnak. A használó alkalmazás csupán az entitás meglétét ellenőrzi, de a tartalmát nem elemzi, még akkor sem, ha az szöveges típusú.
Remove ads
Szintaxis
Az entitásokat a dokumentumhoz tartozó dokumentumtípus-definícióban deklarálhatjuk. Példák:
<!ENTITY valami "Valami">
Belső általános entitás, aminek a neve "valami", és a "Valami" szöveget tartalmazza.
<!ENTITY Eacute CDATA "É">
Belső általános entitás, aminek a neve "Eacute", és az "É" betűt tartalmazza.
<!ENTITY % adat "file:///adat.txt">
Külső paraméter entitás, aminek a neve "adat", és az értékét az "adat.txt" állomány tartalmazza.
A paraméter entitásokra a DTD-n belül "%" és ";" jelek között hivatkozhatunk, míg az általánosakra az egész dokumentumban "&" és ";" jelek között:
<!ENTITY ValamiAdat "&valami; adat: %adat;">
Remove ads
Karakter entitások
Egy általános SGML dokumentum kódolása csak a 7 bites ASCII kódkészletet használhatja. Konkrét alkalmazások ezt definiálhatják másképp (pl. a HTML alapértelmezett kódolásként a nyugat-európai 8 bites ISO-8859-1 kódolást használja), de egy általános SGML dokumentumnak is biztosítania kell a nemzetközi karakterek kezelését.
Entitások használata nélkül egy tetszőleges Unicode karakterre annak UCS kódjával hivatkozhatunk. A hivatkozás lehetséges decimális számmal "&#" és ";" jelek között vagy hexadecimálisan "&#x" és ";" jelek között.
Az SGML számos nemzetközi betűhöz, nyomdai jelhez és egyéb karakterhez definiál entitásneveket.[1][2] Köztük szerepel az összes magyar ékezetes betű is, illetve számos olyan nyomdai jel is, ami még a Unicode-ban sem szerepel (mint pl. az ligatúra).
A magyar ékezetes betűk SGML entitásai
Megjegyzés: Az SGML alkalmazásoknak nem kötelező használniuk az SGML karakter entitásokat. Hogy mit használnak, azt dokumentumonként a DTD határozza meg. Így pl. a HTML a 4.01-es verzióban nem támogatja a közép-európai csoportba (ISOlat2) tartozó betűket entitásnevek formájában,[3] azonban ez áthidalható a numerikus hivatkozással vagy a HTML fejlécében beállítható alapértelmezett karakterkódolással.
Remove ads
Kapcsolódó szócikkek
Jegyzetek
Külső hivatkozások
Wikiwand - on
Seamless Wikipedia browsing. On steroids.
Remove ads