blob: 6fc84476c18c81e30abcce6489a6bc5c49dc81cc [file] [log] [blame]
<!--***********************************************************
*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*
***********************************************************-->
<!ELEMENT api (element)+>
<!ATTLIST api
library-name CDATA #REQUIRED
library-identifier CDATA #REQUIRED
library-majorversion CDATA #IMPLIED
library-minorversion CDATA #IMPLIED
library-type CDATA #IMPLIED
library-GUID CDATA #IMPLIED
library-filename CDATA #IMPLIED
author CDATA #REQUIRED
date-created CDATA #REQUIRED
>
<!ELEMENT element (source, destination?)>
<!ATTLIST element
type (class|method|property|enumeration|constant|event) #REQUIRED
collection (true|false) "false"
platform CDATA #IMPLIED
>
<!ELEMENT source (context?, name?, type?, value?, parameter-list?)>
<!ATTLIST source
id CDATA #REQUIRED
start-index CDATA #IMPLIED
>
<!ELEMENT context (#PCDATA)>
<!ATTLIST context
kind (library|class|module|enumeration) #REQUIRED
>
<!ELEMENT name (#PCDATA)>
<!ATTLIST name
default (true|false) "false"
>
<!ELEMENT type (#PCDATA | choice)*>
<!ATTLIST type
array CDATA #IMPLIED
>
<!ELEMENT choice (#PCDATA)>
<!ELEMENT value (#PCDATA)>
<!ELEMENT parameter-list (parameter+)>
<!ELEMENT parameter (type?, name)>
<!ATTLIST parameter
optional (true|false) "false"
reference (true|false) "false"
>
<!ELEMENT destination (((inplace-code | property-access-code), localdecl-code*, module-code*, comment*)?)>
<!ATTLIST destination designation (identity|not-yet-implemented) "not-yet-implemented">
<!ELEMENT inplace-code (context-code? , name-code, parameter-code*)>
<!ELEMENT context-code EMPTY>
<!ELEMENT name-code (#PCDATA)>
<!ELEMENT parameter-code (#PCDATA | context-code | rvalue-code | default-code)*>
<!ELEMENT rvalue-code EMPTY>
<!ELEMENT default-code (#PCDATA)>
<!ELEMENT property-access-code (getter-code?, setter-code?)>
<!ELEMENT getter-code (context-code? , name-code, parameter-code*)>
<!ELEMENT module-code (#PCDATA)>
<!ATTLIST module-code
module-name CDATA #IMPLIED
>
<!ELEMENT comment (#PCDATA)>
<!ATTLIST comment
apistatus (todo|so7|so8|noapi) #REQUIRED
forparams CDATA #IMPLIED
>
<!ELEMENT localdecl-code (#PCDATA | context-code)*>
<!ELEMENT setter-code (context-code? , name-code, parameter-code*)>