% $Id: XMLInfoSetBasics.html,v 1.1 2003/10/01 07:22:16 connolly Exp $


  1. XML Information Set
    Working Draft of August 30, 1999
    Editors: John Cowan, David Megginson

XMLInfoSetBasics: trait
        Set(Item, FiniteSet[Item] for Set[E]),
        ListTree(Item, Rel[Item]), %@@REVIEW: children generic to all items
        ElementTest(taggedAs, Item, List[Item], Item_tag) % for filter

% 2. Information Items

        Item union of document: DocumentItem,
                      element: ElementItem,
                      attribute: AttributeItem,
                      pi: PIItem,
                      char: CharacterItem,
                      rse: RSEItem,
                      comment: CommentItem,
                      dtd: DTDItem,
                      entity: EntityItem,
                      notation: NotationItem,
                      entityStart: EntityStartMarkerItem,
                      entityEnd: EntityEndMarkerItem,
                      namespaceDeclaration: NamespaceDeclarationItem

% 1. Introduction

        describes: InformationSet, Document → Bool
% describes(i, d) ::= i describes d

        infosetMin: Document → InformationSet
% minimal information set of a document

        infosetMax: Document → InformationSet
% maximal information set of a document
%@@REVIEW: why model the document item as distinct from
% the infoset? a document item describes a document, no?

% 2. Information Items
        taggedAs: Item, Item_tag → Bool % auxiliary

        ∀ d: Document,
                is: InformationSet,
                i, i1, i2: Item,
                t: Item_tag

% auxiliary
        taggedAs(i, t) = (tag(i) = t);

% 1. Introduction
        describes(infosetMin(d), d);
        describes(infosetMax(d), d);

%@@ hmm... how to specify
% consistency of infosets with the maximial infoset?
% I can see an elaborate, tedious way, but isn't there some
% elegant way to do it?
% describes(is, d) ... infosetMax(d)


HTML generated using lsl2html.