XML Information Set (Second Edition)

W3C Recommendation 4 February 2004

Magyar fordítás

2005. február

Jelen verzió:
http://mgl.uw.hu/XMLPath/xpath.html
Fordító:
Máté Gábor, gabor.lajos.mate@gmail.com <gabor.lajos.mate@gmail.com>

Jelen dokumentum egy W3C-dokumentum fordítása. Mind az eredeti dokumentum, mind pedig a fordítás szerzői jogi védelem alatt áll. Az eredeti dokumentum szerzői jogára vonatkozóan lásd az angol nyelvű copyright megjegyzést. A fordítás nem minősül normatív dokumentumnak. A dokumentum egyetlen normatív verziója az angol nyelvű verzió.

A fordításban talált esetleges hibákat, illetve a fordítással kapcsolatos javaslatokat a fordító fent megadott elérhetőségén lehet jelezni.


XML Information Set (Második kiadás)
W3C

XML információs adathalmaz (Második kiadás)

W3C ajánlás 2004. február 4.

Jelen verzió:
http://www.w3.org/TR/2004/REC-xml-infoset-20040204
Legutolsó verzió:
http://www.w3.org/TR/xml-infoset
Előző verzió:
http://www.w3.org/TR/2003/PER-xml-infoset-20031210
Szerkesztők:
John Cowan, jcowan@reutershealth.com
Richard Tobin, richard@cogsci.ed.ac.uk

A dokumentum hibajegyzéke tartalmazhat bizonyos normatív javításokat is, ezért azt mindig vegyük figyelembe a dokumentum olvasásakor.

Lásd még a dokumentum fordításait is.


Absztrakt

Ez a specifikáció olyan definíciókat tartalmaz, amelyekre akkor van szükség, ha az XML dokumentumok által hordozott információra kell hivatkozni az ezzel kapcsolatos specifikációkban.

A dokumentum státusza

Jelen alfejezet a dokumentum státuszát a publikálásának az időpontjában rögzíti. Más dokumentumok később hatályon kívül helyezhetik ezt a dokumentumot. Az érvényben lévő W3C publikációk listája a http://www.w3.org/TR/ címen a W3C technical reports index oldalán található meg. Ugyanitt megtalálható ennek a dokumentumnak a legújabb verziója is.

Jelen dokumentum a W3C ajánlása. Ezt a dokumentumot a W3C tagjai, valamint egyéb érdekelt felek is ellenőrizték, és a director támogatta a W3C-ajánlásként való elfogadását. Ez egy stabil, már nem változó dokumentum, amit referenciaanyagként is lehet használni, vagy más dokumentumban normatív hivatkozásként is meg lehet adni. W3C szerepe az ajánlás létrehozásában az, hogy felhívja a figyelmet a specifikációra és elősegítse a széleskörű elfogadottságát, ezáltal növelve a Web funkcionalitását és interoperabilitását.

Ez a dokumentum az Infoset aktualizált verzióját tartalmazza. Az aktualizálásra célja az volt, hogy az Infoset az XML 1.1 és Namespaces 1.1 specifikációkat is lefedje, hogy az érvénytelenség néhány következményét is tisztázzuk, illetve hogy a tipográfiai hibákat kijavítsuk. Ezt a dokumentumot a W3C XML Activity hozta létre. Jelen specifikáció angol nyelvű változata az egyetlen normatív változat, mindazonáltal ha a specifikáció valamely fordítása érdekelne bennünket, akkor látogassuk meg a http://www.w3.org/2003/03/Translations/byTechnology?technology=xml-infoset oldalt.

A jelen ajánlással esetlegesen kapcsolatba hozható szellemi tulajdon dokumentációja a munkacsoport IPR bejelentések oldalán található meg.

A dokumentumban talált esetleges hibákat a www-xml-infoset-comments@w3.org levelezési listán lehet jelezni (a lista archívuma is bárki számára hozzáférhető). A talált hibák http://www.w3.org/2001/10/02/xml-infoset-errata.html címen található hibajegyzékben vannak dokumentálva.

Tartalomjegyzék


1. Bevezetés

Ez a specifikáció az XML információs adathalmaz (vagy más szóval az angol XML Information Set elnevezés rövidítéseként Infoset) névvel ellátott absztrakt adathalmazt definiálja. A dokumentum célja, hogy konzisztens definíciókat biztosítson az olyan specifikációk számára, amelyek információtartalma jólformált XML dokumentumok [XML] által van eltárolva.

A specifikáció nem terjed ki minden lehetséges területre: a tárgyalt információs adatelemek vagy jellemzők kiválasztásánál az elsődleges kiválasztási szempont az volt, hogy később más specifikációk a kiválasztott elemet használni fogják-e. Az így kiválasztott elemek, jellemzők nem alkotnak olyan minimális információs adatelemhalmazt sem, amit az XML processzoroknak mindig vissza kellene adnia.

Az XML dokumentumokhoz akkor rendelhető hozzá információs adathalmaz, ha jólformáltak és kielégítik az alábbi névtér-feltételeket. Nem követeljük meg, hogy az XML dokumentumok érvényesek is legyenek, enélkül is rendelhető hozzájuk információs adathalmaz.

Az információs adathalmazt létre lehet hozni (a jelen specifikáció által nem tárgyalt) metódusokkal is. Ezek a metódusok nem egyeznek meg az XML dokumentum elemzésekor használt metódusokkal. Erről a témáról további információk a Szintetikus Infosetek részben találhatók.

Az XML dokumentumok információs adathalmaza információs adatelemekből áll; bármely jólformált XML dokumentum információs adathalmaza tartalmaz legalább egy dokumentum típusú információs elemet és néhány más típusú elemet. Az információs elemek az XML dokumentumok egyes részeinek az absztrakt leírására szolgálnak: minden információs elemhez hozzá vannak rendelve névvel ellátott tulajdonságok. Ebben a specifikációban a tulajdonságok neveit mindig szögletes zárójelbe tesszük: [így]. Az információs elemek típusainak a listája a 2. szakaszban található.

Az XML információs adathalmaz specifikáció nem követeli meg és nem részesíti előnyben valamely specifikus interfész vagy interfészosztály használatát. Ez a specifikáció az információs adathalmazt módosított faként reprezentálja az egyszerűség és az érthetőség kedvéért, de nincs olyan követelmény, hogy az XML információs adathalmaznak valamilyen fastruktúra formájában kellene elérhetőnek lennie. Más típusú interfészek, ideértve az esemény-alapú és a lekérdezés-alapú interfészeket is (de nem korlátozva a lehetséges egyéb interfészeket csak ezekre az interfészekre), szintén képesek lehetnek arra, hogy az XML információs adathalmaz specifikációnak megfelelő információkat szolgáltassák.

Az "információs adathalmaz" és "információs elem" kifejezések jelentése hasonló a számítástudományban használt módon értelmezett "fa", illetve "csomópont" kifejezések jelentéséhez. Azért választottuk mégis az előbbi kifejezések használatát ebben a specifikációban, hogy minimálisra csökkentsük annak lehetőségét, hogy más, specifikus adatmodellek összetévesszük őket. Az információs elemek és a DOM csomópontjai, illetve az információs elemek és az XPath adatmodell "fája" és "csomópontjai" között nem létesíthető egyértelmű leképezés.

A "kell" (must), "kellene" (should), "ajánlott" (should), "lehet" (may) kifejezések, illetve kulcsszavak a jelen specifikációban úgy értelmezendők, ahogy az [RFC2119] specifikálja őket, eltekintve attól, hogy ebben a specifikációban nincsenek nagybetűs írásmóddal kiemelve ezek a kulcsszavak.

XML verziók

Az XML specifikáció különböző verzióihoz különböző elemzési szabályokat írhatnak elő. Az XML dokumentumokhoz rendelt információs adathalmazt úgy definiáljuk, hogy az az legyen, amit annak a specifikációnak az elemzési szabályainak megfelelő elemzéssel kaptunk, amelynek a verziószáma megegyezik a dokumentumhoz tartozó XML verzió számával. Azon dokumentumok esetében, amelyek nem határozzák a használt XML verzió számát, úgy tekintjük, hogy a verziószám 1.0. Ha egy XML processzor olyan dokumentumot kap elemzésre, aminek a verziószámát nem ismeri, akkor az XML processzor nem szükségképpen tudja a megfelelő, helyes információs adathalmazt előállítani.

Névterek

Azon XML dokumentumok esetében, amelyek jóllehet technikai értelemben jólformáltak, azonban nem felelnek meg a [Névterek] dokumentumban specifikáltaknak, úgy tekintjük, hogy nincs értelmezhető információs adathalmazuk. Azaz jelen specifikáció nem definiál információs adathalmazt azokhoz a dokumentumokhoz, amelyeknek olyan elemnevek vagy attribútumnevek fordulnak elő, ahol a név kettőspontot is tartalmaz, de a kettőspontot nem abban az értelemben használja, ahogy azt a [Névterek] dokumentum előírja.

Továbbá, jelen specifikáció nem definiál információs adathalmazt azon dokumentumokhoz, amelyek relatív URI hivatkozásokat használnak a névtérdeklarációkban. Ez összhangban van a W3C XML Plenary Interest Group korábbi döntésével, ami a [Relatív névtér URI hivatkozások] dokumentumban található.

A [névtér-név] tulajdonság értéke a megfelelő névtér-attribútum normalizált értéke. A processzor nem hajt végre rajta semmilyen további URI behelyettesítést.

Entitások

Az információs adathalmazok a hozzájuk tartozó XML dokumentumokat már feloldott entitáshivatkozásokkal írják le, azaz az információs elemek a megfelelő behelyettesítendő szövegrészeket reprezentálják. Azonban bizonyos körülmények között a processzorok lehet, hogy nem tudják elvégezni ezt a hivatkozásfeloldást. Lehet, hogy az entitás nem volt deklarálva, vagy nem elérhető. Az érvényességet nem ellenőrző processzorok lehet, hogy nem olvasnak be minden deklarációt, vagy még ha be is olvassák őket, még akkor is lehet, hogy nem oldanak minden külső entitásra történő hivatkozást. Ezekben az esetekben a nem feloldott entitáshivatkozás típusú információs elemet használjuk az entitáshivatkozás reprezentálására.

Sorvége jel kezelése

Az Infosetben található összes tulajdonság értékének a megadásakor figyelembe vesszük az [XML] specifikáció 2.11 "A sorvége jel kezelése" alfejezetében leírt sorvégejel-normalizációt.

Bázis URI-k

Egyes információs elemeknek hozzá van rendelve [base URI] vagy [declaration base URI] tulajdonság. Ezeket az [XML Base] specifikáció szerint számítjuk ki. Vegyük észre, hogy egy erőforrás lekérdezése átirányítást is magában foglalhat az elemzés szintén (például entitás feloldásakor) vagy az elemzés alatti szinteken. Ebben az esetben a bázis URI az az URI lesz, amit az erőforrás lekérdezéséhez használtunk az összes átirányítás végrehajtása után.

Ezeknek a tulajdonságoknak az értéke nem ad vissza semmilyen URI behelyettesítést sem, ami viszont szükséges lehet az erőforrás lekérdezéséhez, de ez az érték ugyanakkor lehet, hogy tartalmaz behelyettesített karaktereket, ha ezek a dokumentumban behelyettesítve voltak megadva, vagy ha valamely szerver ezeket így adta vissza egy átirányítás során.

Bizonyos esetekben (mint amilyen a dokumentum sztringből vagy pipeline-ból történő olvasása) az [XML Base] szabályai lehet, hogy azt eredményezik, hogy a bázis URI függeni fog az alkalmazástól. Ezekben az esetekben jelen specifikáció nem definiálja a [base URI] és a [declaration base URI] tulajdonság értékét.

Relatív URI-k feloldásakor inkább a [bázis URI] tulajdonságot ajánlott használni az xml:base attribútumok értékei helyett. Ezek inkonzisztensek lehetnek szintetikus Infosetek esetében.

``Unknown'' és ``No Value''

Bizonyos tulajdonságoknak lehet néha az az értéke, hogy unknown vagy no value, és ezekben az esetekben azt mondjuk, hogy a tulajdonság értéke ismeretlen, illetve hogy a tulajdonságnak nincs értéke. Ezek az értékek egymástól és minden más értéktől is különböznek. Különböznek az üres sztringtől is, az üres halmaztól is és az üres listától is. utóbbiaknak egyszerűen csak nincsenek elemeik. Ez a specifikáció nem használja a null kifejezést, mivel ez a kifejezés bizonyos körökben bizonyos jelentéstöbblettel bír, ami viszont lehet, hogy nem mindig egyezik a jelenlegi céljainkkal.

A nem érvényes dokumentumoknál előálló inkonzisztenciák

Mint azt fentebb említettük, az XML dokumentumoknak nem szükséges érvényes XML dokumentumoknak lenniük ahhoz, hogy információs adathalmazt rendelhessünk hozzájuk. Azonban az a tény, hogy egy dokumentum nem érvényes, bizonyos esetekben kihatással van bizonyos tulajdonságok értékére. Lehet, hogy egyes entitások, jelölésmódok, elemek vagy attribútumok nem lesznek deklarálva. Lehet, hogy egyes jelölésmódok és elemek többször is deklarálva lesznek (entitások és attribútumok esetében a többszöri deklaráció érvényes dokumentumokban is megengedett). Lehet, hogy egy ID nem lesz definiála vagy többször is definiálva lesz. Ezekre az esetekre, ahol szükséges, felhívjuk a figyelmet az információs elemek alábbi definícióiban.

Szintetikus Infosetek

Ez a specifikáció az XML dokumentumok elemzése során előálló információs adathalmazt írja le. Információs adathalmazokat azonban más módokon is elő lehet állítani, például egy, a DOM-hoz hasonló API használatával vagy egy meglévő információs adathalmaz transzformálásával.

Az igazi dokumentumoknak megfelelő információs adathalmazok szükségképpen konzisztensek lesznek. Például egy elem [in-scope namespaces] tulajdonsága konzisztens lesz az elemhez, illetve az elem őseihez rendelt [namespace attributes] tulajdonsággal. Ez lehet, hogy nem igaz, ha az információs adathalmazt más módon hoztuk létre, ilyen esetekben nem lesz olyan XML dokumentum, ami megfelelne az információs adathalmaznak, és ahhoz, hogy az információs adathalmazt szerializálni tudjuk, szükséges lesz az inkonzisztenciák feloldására (például úgy, hogy kiírunk egy olyan névtérdeklarációt, ami megfelel a hatókörben szereplő névtérnek).

2. Információs elemek

Az információs adathalmaz legfeljebb tizenegy különböző típusú információs elemet tartalmazhat, amelyeket a következő szakaszokban tárgyalunk. Minden információs elemhez tulajdonságok vannak rendelve. Hogy könnyebben hivatkozhassunk rájuk, minden tulajdonság egy névvel van megadva, amit [így] jelölünk. Az [XML] XML 1.0 ajánlásban található definíciókra és/vagy szintaxisra mutató linkek minden információs elem esetében meg vannak adva.

2.1. A dokumentum (Document) típusú információs elem

XML Definíció: document (Section 2, Documents)

XML Szintaxis: [1] Document (Section 2.1, Well-Formed XML Documents)

Az információs adathalmazban pontosan egy dokumentum típusú információs elem van, és minden más információs elem elérhető a dokumentum típusú információs elem tulajdonságain keresztül vagy közvetlenül, vagy pedig közvetve más információs elemek tulajdonságait is felhasználva.

A dokumentum típusú információs elemhez a következő tulajdonságok vannak hozzárendelve:

  1. [children] An ordered list of child information items, in document order. The list contains exactly one element information item. The list also contains one processing instruction information item for each processing instruction outside the document element, and one comment information item for each comment outside the document element. Processing instructions and comments within the DTD are excluded. If there is a document type declaration, the list also contains a document type declaration information item.
  2. [document element] The element information item corresponding to the document element.
  3. [notations] An unordered set of notation information items, one for each notation declared in the DTD. If any notation is multiply declared, this property has no value.
  4. [unparsed entities] An unordered set of unparsed entity information items, one for each unparsed entity declared in the DTD.
  5. [base URI] A dokumentumentitás bázis URI-ja.
  6. [character encoding scheme] Annak a karakterkódolási eljárásnak a neve, amiben a dokumentumentitás meg van adva.
  7. [standalone] A dokumentum standalone státuszának a jelzése, értéke yes vagy no. Ez a tulajdonság standalone dokumentum deklarációjából származtatható, ami a dokumentumentitás elején található XML deklaráció opcionális része. A tulajdonságnak nincs értéke, ha nincs a dokumentumban a standalone dokumentum deklarációja nincs megadva.
  8. [version] A dokumentumhoz tartozó XML verzióját reprezentáló sztring. Ez a tulajdonság az XML deklarációból származtatható, ami opcionális van a dokumentumentitás elején megadva, és a tulajdonságnak nincs értéke, ha nincs XML deklaráció a dokumentumban.
  9. [all declarations processed] Ez a tulajdonság szigorú értelemben véve nem része a dokumentumhoz rendelt infosetnek. Inkább azt jelzi, hogy a processzor beolvasta-e a teljes DTD-t. Az értéke boolean típusú. Ha az értéke false (hamis), akkor lehet, hogy bizonyos tulajdonságok ismeretlenek (hogy mely tulajdonságokról van szó, azt a tulajdonságok alábbi leírása jelzi). Ha az értéke true (igaz), akkor ezek a tulajdonságok sosem ismeretlenek.

2.2. Elem (Element) típusú információs elemek

XML Definíció: element (Section 3, Logical Structures)

XML Szintaxis: [39] Element (Section 3, Logical Structures)

There is an element information item for each element appearing in the XML document. One of the element information items is the value of the [document element] property of the document information item, corresponding to the root of the element tree, and all other element information items are accessible by recursively following its [children] property.

Az elem típusú információs elemekhez a következő tulajdonságok vannak hozzárendelve:

  1. [namespace name] The namespace name, if any, of the element type. If the element does not belong to a namespace, this property has no value.
  2. [local name] The local part of the element-type name. This does not include any namespace prefix or following colon.
  3. [prefix] The namespace prefix part of the element-type name. If the name is unprefixed, this property has no value. Note that namespace-aware applications should use the namespace name rather than the prefix to identify elements.
  4. [children] A közvetlen leszármazott információs elemek rendezett listája, ahol a rendezés a dokumentum rendezése szerinti rendezés. Ez a lista elem, feldolgozó utasítás, feloldatlan entitáshivatkozás, karakter és megjegyzés típusú információs elemeket tartalmaz, méghozzá minden egyes olyan elemhez, feldolgozó utasításhoz, feldolgozatlan külső entitásra történő hivatkozáshoz, karakteres adathoz és megjegyzéshez pontosan egy információs elemet, amely közvetlenül az adott elemen belül található. Ha az adott elem üres, akkor ennek a listának nincs egyetlen eleme se.
  5. [attributes] An unordered set of attribute information items, one for each of the attributes (specified or defaulted from the DTD) of this element. Namespace declarations do not appear in this set. If the element has no attributes, this set has no members.
  6. [namespace attributes] An unordered set of attribute information items, one for each of the namespace declarations (specified or defaulted from the DTD) of this element. Declarations of the form xmlns="" and xmlns:name="", which undeclare the default namespace and prefixes respectively, count as namespace declarations. Prefix undeclaration was added in Namespaces in XML 1.1. By definition, all namespace attributes (including those named xmlns, whose [prefix] property has no value) have a namespace URI of http://www.w3.org/2000/xmlns/. If the element has no namespace declarations, this set has no members.
  7. [in-scope namespaces] An unordered set of namespace information items, one for each of the namespaces in effect for this element. This set always contains an item with the prefix xml which is implicitly bound to the namespace name http://www.w3.org/XML/1998/namespace. It does not contain an item with the prefix xmlns (used for declaring namespaces), since an application can never encounter an element or attribute with that prefix. The set will include namespace items corresponding to all of the members of [namespace attributes], except for any representing declarations of the form xmlns="" or xmlns:name="", which do not declare a namespace but rather undeclare the default namespace and prefixes. When resolving the prefixes of qualified names this property should be used in preference to the [namespace attributes] property; they may be inconsistent in the case of Synthetic Infosets.
  8. [base URI] Az elem bázis URI-ja.
  9. [parent] Az a dokumentum típusú vagy elem típusú információs elem, ami ezt az információs elemet tartalmazza a [children] tulajdonsága által megadott listában.

2.3. Attribute Information Items

XML Definíció: attribute (Section 3.1, Start-Tags, End-Tags, and Empty-Element Tags)

XML Szintaxis: [41] Attribute (Section 3.1, Start-Tags, End-Tags, and Empty-Element Tags)

There is an attribute information item for each attribute (specified or defaulted) of each element in the document, including those which are namespace declarations. The latter however appear as members of an element's [namespace attributes] property rather than its [attributes] property.

Attributes declared in the DTD with no default value and not specified in the element's start tag are not represented by attribute information items.

Az attribútum típusú információs elemekhez a következő tulajdonságok vannak hozzárendelve:

  1. [namespace name] The namespace name, if any, of the attribute. Otherwise, this property has no value.
  2. [local name] The local part of the attribute name. This does not include any namespace prefix or following colon.
  3. [prefix] The namespace prefix part of the attribute name. If the name is unprefixed, this property has no value. Note that namespace-aware applications should use the namespace name rather than the prefix to identify attributes.
  4. [normalized value] The normalized attribute value (see 3.3.3 Attribute-Value Normalization [XML]).
  5. [specified] A flag indicating whether this attribute was actually specified in the start-tag of its element, or was defaulted from the DTD.
  6. [attribute type] An indication of the type declared for this attribute in the DTD. Legitimate values are ID, IDREF, IDREFS, ENTITY, ENTITIES, NMTOKEN, NMTOKENS, NOTATION, CDATA, and ENUMERATION. If there is no declaration for the attribute, this property has no value. If no declaration has been read, but the [all declarations processed] property of the document information item is false (so there may be an unread declaration), then the value of this property is unknown. Applications should treat no value and unknown as equivalent to a value of CDATA. The value of this property is not affected by the validity of the attribute value.
  7. [references] If the attribute type is ID, NMTOKEN, NMTOKENS, CDATA, or ENUMERATION, this property has no value. If the attribute type is unknown, the value of this property is unknown. Otherwise (that is, if the attribute type is IDREF, IDREFS, ENTITY, ENTITIES, or NOTATION), the value of this property is an ordered list of the element, unparsed entity, or notation information items referred to in the attribute value, in the order that they appear there. In this case, if the attribute value is syntactically invalid, this property has no value. If the type is IDREF or IDREFS and any of the IDs does not appear as the value of an ID attribute in the document, or if the type is ENTITY, ENTITIES or NOTATION and no declaration has been read for any of the entities or the notation, then this property has no value or is unknown, depending on whether the [all declarations processed] property of the document information item is true or false. If the type is IDREF or IDREFS and any of the IDs appears as the value of more than one ID attribute in the document, or if the type is NOTATION and there are multiple declarations for the notation, then this property has no value.
  8. [owner element] The element information item which contains this information item in its [attributes] property.

2.4. Processing Instruction Information Items

XML Definíció: processing instruction (Section 2.6, Processing Instructions)

XML Szintaxis: [16] PI (Section 2.6, Processing Instructions)

There is a processing instruction information item for each processing instruction in the document. The XML declaration and text declarations for external parsed entities are not considered processing instructions.

A feldolgozó utasítás típusú információs elemekhez a következő tulajdonságok vannak hozzárendelve:

  1. [target] A string representing the target part of the processing instruction (an XML name).
  2. [content] A string representing the content of the processing instruction, excluding the target and any white space immediately following it. If there is no such content, the value of this property will be an empty string.
  3. [base URI] The base URI of the PI. Note that if an infoset is serialized as an XML document, it will not be possible to preserve the base URI of any PI that originally appeared at the top level of an external entity, since there is no syntax for PIs corresponding to the xml:base attribute on elements.
  4. [notation] The notation information item named by the target. If there is no declaration for a notation with that name, or there are multiple declarations, this property has no value. If no declaration has been read, but the [all declarations processed] property of the document information item is false (so there may be an unread declaration), then the value of this property is unknown.
  5. [parent] The document, element, or document type declaration information item which contains this information item in its [children] property.

2.5. Unexpanded Entity Reference Information Items

XML Definíció: Section 4.4.3, Included If Validating

A unexpanded entity reference information item serves as a placeholder by which an XML processor can indicate that it has not expanded an external parsed entity. There is such an information item for each unexpanded reference to an external general entity within the content of an element. A validating XML processor, or a non-validating processor that reads all external general entities, will never generate unexpanded entity reference information items for a valid document.

Az unexpanded entity reference típusú információs elemekhez a következő tulajdonságok vannak hozzárendelve:

  1. [name] The name of the entity referenced.
  2. [system identifier] The system identifier of the entity, as it appears in the declaration of the entity, without any additional URI escaping applied by the processor. If there is no declaration for the entity, this property has no value. If no declaration has been read, but the [all declarations processed] property of the document information item is false (so there may be an unread declaration), then the value of this property is unknown.
  3. [public identifier] The public identifier of the entity, normalized as described in 4.2.2 External Entities [XML]. If there is no declaration for the entity, or the declaration does not include a public identifier, this property has no value. If no declaration has been read, but the [all declarations processed] property of the document information item is false (so there may be an unread declaration), then the value of this property is unknown.
  4. [declaration base URI] The base URI relative to which the system identifier should be resolved (i.e. the base URI of the resource within which the entity declaration occurs). This is unknown or has no value in the same circumstances as the [system identifier] property.
  5. [parent] The element information item which contains this information item in its [children] property.

2.6. Character Information Items

XML Szintaxis: [2] Char (Section 2.2, Characters)

There is a character information item for each data character that appears in the document, whether literally, as a character reference, or within a CDATA section.

Each character is a logically separate information item, but XML applications are free to chunk characters into larger groups as necessary or desirable.

A karakter típusú információs elemekhez a következő tulajdonságok vannak hozzárendelve:

  1. [character code] The ISO 10646 character code (in the range 0 to #x10FFFF, though not every value in this range is a legal XML character code) of the character.
  2. [element content whitespace] A boolean indicating whether the character is white space appearing within element content (see [XML], 2.10 "White Space Handling"). Note that validating XML processors are required to provide this information. If there is no declaration for the containing element, or there are multiple declarations, this property has no value for white space characters. If no declaration has been read, but the [all declarations processed] property of the document information item is false (so there may be an unread declaration), then the value of this property is unknown for white space characters. It is always false for characters that are not white space.
  3. [parent] The element information item which contains this information item in its [children] property.

2.7. Comment Information Items

XML Definíció: comment (Section 2.5, Comments)

XML Szintaxis: [15] Comment (Section 2.5, Comments)

There is a comment information item for each XML comment in the original document, except for those appearing in the DTD (which are not represented).

A megjegyzés típusú információs elemekhez a következő tulajdonságok vannak hozzárendelve:

  1. [content] A string representing the content of the comment.
  2. [parent] The document or element information item which contains this information item in its [children] property.

2.8. A Dokumentumtípus-deklaráció (Document Type Declaration) típusú információs elem

XML Definíció: document type declaration (section 2.8, Prolog and Document Type Declaration)

XML Szintaxis: [28] doctypedecl (section 2.8, Prolog and Document Type Declaration)

If the XML document has a document type declaration, then the information set contains a single document type declaration information item. Note that entities and notations are provided as properties of the document information item, not the document type declaration information item.

A dokumentumtípus-deklaráció típusú információs elemhez a következő tulajdonságok vannak hozzárendelve:

  1. [system identifier] The system identifier of the external subset, as it appears in the DOCTYPE declaration, without any additional URI escaping applied by the processor. If there is no external subset this property has no value.
  2. [public identifier] The public identifier of the external subset, normalized as described in 4.2.2 External Entities [XML]. If there is no external subset or if it has no public identifier, this property has no value.
  3. [children] An ordered list of processing instruction information items representing processing instructions appearing in the DTD, in the original document order. Items from the internal DTD subset appear before those in the external subset.
  4. [parent] The document information item.

2.9. Unparsed Entity típusú információs elemek

XML Definíció: entity (section 4, Physical Structures)

XML Szintaxis: [71] GEDecl (section 4.2, Entities)

There is an unparsed entity information item for each unparsed general entity declared in the DTD.

Az elemzés nélküli entitás típusú információs elemekhez a következő tulajdonságok vannak hozzárendelve::

  1. [name] The name of the entity.
  2. [system identifier] The system identifier of the entity, as it appears in the declaration of the entity, without any additional URI escaping applied by the processor.
  3. [public identifier] The public identifier of the entity, normalized as described in 4.2.2 External Entities [XML]. If the entity has no public identifier, this property has no value.
  4. [declaration base URI] The base URI relative to which the system identifier should be resolved (i.e. the base URI of the resource within which the entity declaration occurs).
  5. [notation name] The notation name associated with the entity.
  6. [notation] The notation information item named by the notation name. If there is no declaration for a notation with that name, or there are multiple declarations, this property has no value. If no declaration has been read, but the [all declarations processed] property of the document information item is false (so there may be an unread declaration), then the value of this property is unknown.

2.10. Notation Information Items

XML Definíció: notation (section 4.7, Notations)

XML Szintaxis: [82] NotationDecl (section 4.7, Notations)

There is a notation information item for each notation declared in the DTD.

A jelölésmód típusú információs elemekhez a következő tulajdonságok vannak hozzárendelve:

  1. [name] A jelölésmód neve.
  2. [system identifier] The system identifier of the notation, as it appears in the declaration of the notation, without any additional URI escaping applied by the processor. If no system identifier was specified, this property has no value.
  3. [public identifier] The public identifier of the notation, normalized as described in 4.2.2 External Entities [XML]. If the notation has no public identifier, this property has no value.
  4. [declaration base URI] The base URI relative to which the system identifier should be resolved (i.e. the base URI of the resource within which the notation declaration occurs).

2.11. Névtér (Namespace) típusú információs elemek

Each element in the document has a namespace information item for each namespace that is in scope for that element.

A névtér típusú információs elemekhez a következő tulajdonságok vannak hozzárendelve:

  1. [prefix] The prefix whose binding this item describes. Syntactically, this is the part of the attribute name following the xmlns: prefix. If the attribute name is simply xmlns, so that the declaration is of the default namespace, this property has no value.
  2. [namespace name] The namespace name to which the prefix is bound.

3. Megfelelés a specifikációnak

Since the purpose of the Information Set is to provide a set of definitions, conformance is a property of specifications that use those definitions, rather than of implementations.

Specifications referring to the Infoset must:

If a specification allows the construction of an infoset that has inconsistencies as described above under Synthetic Infosets it may describe how those inconsistencies are to be resolved, and should do so if it provides for serialization of the infoset.

A Függelék: Hivatkozások

Normatív hivatkozások

ISO/IEC 10646
ISO (International Organization for Standardization). ISO/IEC 10646-1:2000. Information technology — Universal Multiple-Octet Coded Character Set (UCS) — Part 1: Architecture and Basic Multilingual Plane and ISO/IEC 10646-2:2001.Information technology — Universal Multiple-Octet Coded Character Set (UCS) — Part 2: Supplementary Planes, as, from time to time, amended, replaced by a new edition or expanded by the addition of new parts. [Geneva]: International Organization for Standardization. (See http://www.iso.ch for the latest version.)
Namespaces
Namespaces in XML, W3C, eds. Tim Bray, Dave Hollander, Andrew Layman. 14 January 1999. Available at http://www.w3.org/TR/REC-xml-names.
Namespaces 1.1
Namespaces in XML 1.1, W3C, eds. Tim Bray, Dave Hollander, Andrew Layman, Richard Tobin. 4 February 2004. Available at http://www.w3.org/TR/xml-names11.
RFC2119
Key words for use in RFCs to Indicate Requirement Levels, ed. S. Bradner. March 1997. Available at http://www.ietf.org/rfc/rfc2119.txt.
XML
Extensible Markup Language (XML) 1.0 (Third Edition), W3C, eds. Tim Bray, Jean Paoli, C.M. Sperberg-McQueen, Eve Maler, François Yergeau. 4 February 2004. Available at http://www.w3.org/TR/REC-xml.
XML 1.1
Extensible Markup Language (XML) 1.1, W3C, eds. Tim Bray, Jean Paoli, C.M. Sperberg-McQueen, Eve Maler, John Cowan, François Yergeau. 4 February 2004. Available at http://www.w3.org/TR/xml11.
XML Base
XML Base, W3C, ed. Jonathan Marsh. February 2000. Available at http://www.w3.org/TR/xmlbase.

Informatív hivatkozások

DOM
Document Object Model (DOM) Level 1 Specification, W3C, eds. Vidur Apparao, Steve Byrne, Mike Champion, et al. 1 October 1998. Available at http://www.w3.org/TR/REC-DOM-Level-1.
XPointer-Liaison
XPointer-Information Set Liaison Statement, W3C, ed. Steven J. DeRose. 24 February 1999. Available at http://www.w3.org/TR/NOTE-xptr-infoset-liaison.
Relative Namespace URI References
Results of W3C XML Plenary Ballot on relative URI References in namespace declarations, 3-17 July 2000, W3C, eds. Dave Hollander, C. M. Sperberg-McQueen. 6 September 2000. Available at http://www.w3.org/2000/09/xppa.
RDF Schema for the XML Information Set
RDF Schema for the XML Information Set, W3C, szerk. Richard Tobin. 2001. április 6. Elérhető a http://www.w3.org/TR/xml-infoset-rdfs címen.

Appendix B: XML Reporting Requirements (informative)

Although the XML Recommendation [XML] is primarily concerned with XML syntax, it also includes some specific reporting requirements for XML processors.

The reporting requirements include errors, which are outside the scope of this specification, and document information. All of the XML requirements for document information reporting have been integrated into the XML Information Set; numbers in parentheses refer to sections of the XML Recommendation:

  1. An XML processor must always provide all characters in a document that are not part of markup to the application (2.10).
  2. A validating XML processor must inform the application which of the character data in a document is white space appearing within element content (2.10).
  3. An XML processor must normalize line-ends to LF before passing them to the application (2.11).
  4. An XML processor must normalize the value of attributes according to the rules in clause 3.3.3 before passing them to the application.
  5. An XML processor must pass the names and external identifiers (system identifiers, public identifiers or both) of declared notations to the application (4.7).
  6. When the name of an unparsed entity appears as the explicit or default value of an ENTITY or ENTITIES attribute, an XML processor must provide the names, system identifiers, and (if present) public identifiers of both the entity and its notation to the application (4.6, 4.7).
  7. An XML processor must pass processing instructions to the application (2.6).
  8. An XML processor (necessarily a non-validating one) that does not include the replacement text of an external parsed entity in place of an entity reference must notify the application that it recognized but did not read the entity (4.4.3).
  9. A validating XML processor must include the replacement text of an entity in place of an entity reference (5.2).
  10. An XML processor must supply the default value of attributes declared in the DTD for a given element type but not appearing in the element's start tag (3.3.2).

C Függelék: Példa (informatív)

Vegyük példaként a következő XML dokumentumot:

<?xml version="1.0"?>

<msg:message doc:date="19990421"
             	xmlns:doc="http://doc.example.org/namespaces/doc"
             	xmlns:msg="http://message.example.org/"
>Phone home!</msg:message>

A fenti XML dokumentumhoz tartozó információs adathalmaz a következő információs elemeket tartalmazza:

D Függelék: Mit nem tartalmaz az információs adathalmaz

The following information is not represented in the current version of the XML Information Set (this list is not intended to be exhaustive):

  1. The content models of elements, from ELEMENT declarations in the DTD.
  2. The grouping and ordering of attribute declarations in ATTLIST declarations.
  3. The document type name.
  4. White space outside the document element.
  5. White space immediately following the target name of a PI.
  6. Whether characters are represented by character references.
  7. The difference between the two forms of an empty element: <foo/> and <foo></foo>.
  8. White space within start-tags (other than significant white space in attribute values) and end-tags.
  9. The difference between CR, CR-LF, and LF line termination.
  10. The order of attributes within a start-tag.
  11. The order of declarations within the DTD.
  12. The boundaries of conditional sections in the DTD.
  13. The boundaries of parameter entities in the DTD.
  14. Comments in the DTD.
  15. The location of declarations (whether in internal or external subset or parameter entities).
  16. Any ignored declarations, including those within an IGNORE conditional section, as well as entity and attribute declarations ignored because previous declarations override them.
  17. The kind of quotation marks (single or double) used to quote attribute values.
  18. The boundaries of general parsed entities.
  19. The boundaries of CDATA marked sections.
  20. The default value of attributes declared in the DTD.

E Függelék: RDF Schema (informatív)

Az Infoset formális jellemzéséhez lásd az RDF Schema for the XML Information Set dokumentumot.