This repository has been archived on 2023-08-20. You can view files and clone it, but cannot push or open issues or pull requests.
yap-6.3/Logtalk/xml/logtalk.dtd

122 lines
2.2 KiB
DTD
Raw Normal View History

<!--
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% Logtalk - Object oriented extension to Prolog
% Release 2.25.0
%
% Copyright (c) 1998-2005 Paulo Moura. All Rights Reserved.
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-->
<!ELEMENT logtalk (entity, relations, predicates, remarks)>
<!ELEMENT entity (name, type, compilation, comment?, (parnames|parameters)?, author?, version?, date?, info*)>
<!ELEMENT name (#PCDATA)>
<!ELEMENT type (#PCDATA)>
<!ELEMENT compilation (#PCDATA)>
<!ELEMENT comment (#PCDATA)>
<!ELEMENT parnames (#PCDATA)>
<!ELEMENT parameters (parameter*)>
<!ELEMENT parameter (name, description)>
<!ELEMENT description (#PCDATA)>
<!ELEMENT author (#PCDATA)>
<!ELEMENT version (#PCDATA)>
<!ELEMENT date (#PCDATA)>
<!ELEMENT info (key, value)>
<!ELEMENT key (#PCDATA)>
<!ELEMENT value (#PCDATA)>
<!ELEMENT relations (implements*, imports*, extends*, instantiates*, specializes*, uses*, calls*)>
<!ELEMENT implements (name, scope, file)>
<!ELEMENT imports (name, scope, file)>
<!ELEMENT extends (name, scope, file)>
<!ELEMENT instantiates (name, scope, file)>
<!ELEMENT specializes (name, scope, file)>
<!ELEMENT uses (name, file)>
<!ELEMENT calls (name, file)>
<!ELEMENT scope (#PCDATA)>
<!ELEMENT file (#PCDATA)>
<!ELEMENT predicates (public, protected, private)>
<!ELEMENT public (predicate*)>
<!ELEMENT protected (predicate*)>
<!ELEMENT private (predicate*)>
<!ELEMENT predicate (name, scope, compilation, meta?, mode*, comment?, template?, (argnames|arguments)?, exceptions?, info*, examples?)>
<!ELEMENT meta (#PCDATA)>
<!ELEMENT mode (template, solutions)>
<!ELEMENT template (#PCDATA)>
<!ELEMENT solutions (#PCDATA)>
<!ELEMENT argnames (#PCDATA)>
<!ELEMENT arguments (argument*)>
<!ELEMENT argument (name, description)>
<!ELEMENT exceptions (exception*)>
<!ELEMENT exception (condition, term)>
<!ELEMENT condition (#PCDATA)>
<!ELEMENT term (#PCDATA)>
<!ELEMENT examples (example*)>
<!ELEMENT example (description, call, bindings)>
<!ELEMENT call (#PCDATA)>
<!ELEMENT bindings (#PCDATA)>
<!ELEMENT remarks (remark*)>
<!ELEMENT remark (topic, text)>
<!ELEMENT topic (#PCDATA)>
<!ELEMENT text (#PCDATA)>