XML sémák előállítása DTD fájlokból

Az XML sémák DTD fájlokból történő előállítása a DTD fájlokból származó elemekkel és attribútumokkal automatikusan feltöltésre kerülő XML sémák létrehozását teszi lehetővé. Ezzel időt takaríthat meg, ha egy XML fájl ellenőrzéséhez a DTD fájl helyett inkább XML sémát kíván használni, ugyanakkor a DTD fájlban már beállításra került szabályokat is alkalmazni szeretné.

Mielőtt elkezdené

Erről a feladatról

Az alábbi utasítások az Erőforrás perspektívához készültek, de számos más perspektívában is felhasználhatók.

Az XML sémafájlok DTD fájlokból való előállításához tegye a következőket:

Eljárás

  1. A Navigátor nézetben kattintson a jobb egérgombbal a DTD fájlra, majd válassza az előugró menü Előállítás > XML séma menüpontját.
  2. Válassza ki azt a projektet vagy mappát, amely a sémát fogja tartalmazni.
  3. Fogadja el az alapértelmezett nevet vagy adjon meg egy újat és kattintson a Tovább gombra.
  4. Ha olyan XML sémát kíván létrehozni, mely a DTD fájl mellett az összes általa hivatkozott DTD fájlt is tartalmazza, akkor kattintson Az összes DTD fájlt tartalmazó XML séma létrehozása választógombra.
  5. Ha ellenkező esetben egyéni sémát kíván készíteni a DTD fájl, valamint az összes által hivatkozott DTD fájl számára, akkor kattintson az XML séma létrehozása minden egyes DTD fájlhoz választógombra. Ha ezt a lehetőséget választja, akkor minden XML séma ugyanazzal a névvel fog rendelkezni, mint az a hivatkozott DTD fájl, melyből a séma előállításra került. Ha például a DTD fájl neve Udvozlet.dtd, mely a Hello.dtd és a Viszlat.dtd fájlra hivatkozik, akkor előállításra kerül egy Udvozlet.dtd fájlból készített séma (mely a számára megadott névvel fog rendelkezni), valamint Hello.xsd és Viszlat.xsd néven még további két séma.
  6. Kattintson a Befejezés gombra.

Eredmények

A sémák a Navigátor nézetben jelennek meg. Ugyanazzal a névvel fognak rendelkezni, mint az a DTD fájl, melyből előállításra kerültek (ha az XML séma készítésekor elfogadta a Fájlnév mezőben szereplő alapértelmezett értéket).

A DTD fájlban található entitások nem fognak szerepelni az XML sémában (mivel az entitások nem támogatottak az XML sémákban). Ennek ellenére minden entitásra hivatkozó elem vagy attribútum át fogja vinni a kérdéses értéket az XML sémába.

Példa

Példa: Egy "Copyright" nevű entitást tartalmazó "Jogi" nevű DTD definícióval rendelkezik. Az entitás értéke a következő: "Copyright 2004. SajátCég Könyvkiadó". A DTD definíció egy Copyright entitásra hivatkozó "SajatCopyright" elemmel rendelkezik. Az XML séma létrehozása után a Copyright entitás nem jelenik meg az XML sémában, azonban a rendszer átviszi az entitás értékét (vagyis a SajatCopyright elem értéke a következő lesz: Copyright 2004. SajátCég Könyvkiadó).

A DTD fájlban meglévő összes elem és attribútum megtalálható lesz az XML sémafájlban.

A DTD fájlban (#PCDATA) tartalommodellel rendelkező (és attribútumok nélküli) elemek üresen jelennek meg az XML sémaszerkesztőben. Ezek olyan jelölést kapnak, mely szerint string Beépített egyszerű típussal rendelkeznek. Vagyis ez azt jelenti, hogy a (#PCDATA) értékű DTD elemek string XML séma primitív típusú XML sémaelemekre kerülnek leképezésre.

Megjegyzés: Ha héber vagy arab elemeket tartalmazó DTD fájlból készít XML sémát, akkor előfordulhat, hogy bizonyos elemnevek a nekik megfelelő hexadecimális héber vagy arab kódolási értékekkel kerülnek kódolásra. A probléma elkerülése érdekében a séma előállítása előtt módosítsa az eredeti DTD vagy XML sémafájl kódolási attribútumát UTF-8 értékre. Ez azt jelenti, hogy az XML deklarációnak a következőnek kell lennie: <?xml version="1.0" encoding="UTF-8"?> Az érintett kódolási értékek a következők: ISO-8859-8-I, ISO-8859-8, Windows-1256 és ISO-8859-6.

Mi a következő lépés?


Visszajelzés