<?xml version="1.0" encoding="UTF-8" ?> <!ELEMENT psql (type|pers|link)* > <!ENTITY % psql.id 'psql.uuid ID #IMPLIED psql.idref CDATA #IMPLIED' > <!-- --> <!-- Akce s objektem. Může nabývat hodnot none - žádná změna added - nové přidáno removed - smazáno --> <!ENTITY % psql.att 'action CDATA "added"' > <!-- Definice vlastního typu nebo složeného typu --> <!ELEMENT type ANY > <!ATTLIST type %psql.id; %psql.att; > <!-- Definice tabulky --> <!ELEMENT pers ANY > <!ATTLIST pers %psql.id; %psql.att; > <!-- Definice odkazu na master tabulku, obsahuje dovážené cizí klíče --> <!ELEMENT link ANY > <!ATTLIST link %psql.id; %psql.att; position CDATA #REQUIRED > <!-- Vlastnost nadřazeného objektu. Nese např. jméno, datový typ apod. --> <!ELEMENT prop EMPTY> <!ATTLIST prop %psql.att; name CDATA #REQUIRED value CDATA #IMPLIED old CDATA #IMPLIED > <!-- Definice jednoduchého vlastního sloupce tabulky. --> <!ELEMENT baseattr (prop*) > <!ATTLIST baseattr %psql.id; %psql.att; order CDATA '999' > <!-- Sloupec vzniklý expanzí atributu se složeným typem. Obsahuje cestu od jednoduchého atributu až po iniciální atribut. --> <!ELEMENT expcompattr ANY > <!ATTLIST expcompattr %psql.id; %psql.att; order CDATA '999' > <!-- Atribut jenž je cizím klíčem dováženym přes vazbu. --> <!ELEMENT impattr ANY > <!ATTLIST impattr %psql.id; %psql.att; order CDATA '999' > <!-- atribut se složeným typem. Nevzniká z něj sloupec. --> <!ELEMENT compattr ANY > <!ATTLIST compattr %psql.id; %psql.att; order CDATA '999' > <!-- Pomocné uzly. --> <!ELEMENT import ANY > <!ELEMENT expand ANY >