⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gjdoc-classdoc.rng

📁 linux下建立JAVA虚拟机的源码KAFFE
💻 RNG
📖 第 1 页 / 共 2 页
字号:
<?xml version="1.0"?>

<!-- gjdoc-classdoc.rng
     Copyright (C) 2003 Free Software Foundation, Inc.

This file is part of GNU Classpath.

GNU Classpath is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.
 
GNU Classpath is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
General Public License for more details.

You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING.  If not, write to the
Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
02110-1301 USA. -->

<grammar 
      xmlns="http://relaxng.org/ns/structure/1.0" 
      xmlns:a="http://relaxng.org/ns/annotation/1.0" 
      xmlns:gjdoc="http://www.gnu.org/software/cp-tools/gjdocxml">

   <include href="gjdoc-common.rng"/>
   
   <a:documentation>
      The Relax NG grammar for an classdoc XML document generated by
      GNU Gjdoc.
   </a:documentation>

   <start>
      <a:documentation>
	 The root element for a Gjdoc classdoc XML document.
      </a:documentation>

      <element name="gjdoc:classdoc">
	 <a:documentation>
	    Corresponds to a Javadoc API com.sun.javadoc.ClassDoc
	    object, the subtree of the full generated documentation
	    corresponding to a particular Java class.
	 </a:documentation>

	 <ref name="name-attribute"/>
	 <ref name="qualifiedtypename-attribute"/>

	 <optional>
	    <ref name="superclass-element"/>
	 </optional>

	 <zeroOrMore>
	    <ref name="implements-element"/>
	 </zeroOrMore>

	 <zeroOrMore>
	    <ref name="superimplements-element"/>
	 </zeroOrMore>

	 <ref name="ProgramElementDocBody"/>

	 <optional>
	    <ref name="isAbstract-element"/>
	 </optional>

	 <optional>
	    <ref name="isSerializable-element"/>
	 </optional>

	 <optional>
	    <ref name="isExternalizable-element"/>
	 </optional>

	 <optional>
	    <ref name="definesSerializableFields-element"/>
	 </optional>

	 <zeroOrMore>
	    <ref name="constructordoc-element"/>
	 </zeroOrMore>

	 <zeroOrMore>
	    <ref name="methoddoc-element"/>
	 </zeroOrMore>

	 <zeroOrMore>
	    <ref name="fielddoc-element"/>
	 </zeroOrMore>

      </element>      

   </start>

   <!-- The following patterns are "body" patterns for the element
   patterns below. Their content corresponds to the abstract
   superclasses of the classes which are represented by the "element"
   patterns below.  -->

   <define name="DocBody">
      <a:documentation>
	 Corresponds to the abstract class
	 <code>com.sun.javadoc.Doc</code>, the common base class for
	 all documentation classes.
      </a:documentation>

      <optional>
	 <ref name="isClass-element"/>
      </optional>

      <optional>
	 <ref name="isConstructor-element"/>
      </optional>

      <optional>
	 <ref name="isError-element"/>
      </optional>

      <optional>
	 <ref name="isException-element"/>
      </optional>

      <optional>
	 <ref name="isField-element"/>
      </optional>

      <optional>
	 <ref name="isIncluded-element"/>
      </optional>

      <optional>
	 <ref name="isInterface-element"/>
      </optional>

      <optional>
	 <ref name="isMethod-element"/>
      </optional>

      <optional>
	 <ref name="isOrdinaryClass-element"/>
      </optional>

      <optional>
	 <ref name="inlineTags-element"/>
      </optional>

      <optional>
	 <ref name="firstSentenceTags-element"/>
      </optional>

      <optional>
	 <ref name="tags-element"/>
      </optional>

      <optional>
	 <ref name="seeTags-element"/>
      </optional>

   </define>

   <define name="ProgramElementDocBody">
      <a:documentation>
	 Corresponds to the abstract class
	 <code>com.sun.javadoc.ProgramElementDoc</code>.
      </a:documentation>

      <!-- ... which is derived from class com.sun.javadoc.Doc -->
      <ref name="DocBody"/>

      <ref name="containingPackage-element"/>

      <optional>
	 <ref name="containingClass-element"/>
      </optional>
      
      <ref name="access-element"/>
      
      <optional>
	 <ref name="isFinal-element"/>
      </optional>

      <optional>
	 <ref name="isStatic-element"/>
      </optional>

   </define>

   <define name="MemberDocBody">
      <a:documentation>
	 Corresponds to the abstract class
	 <code>com.sun.javadoc.MemberDoc</code>.
      </a:documentation>

      <!-- ... which is derived from class
      com.sun.javadoc.ProgramElementDoc -->
      <ref name="ProgramElementDocBody"/>

   </define>

   <define name="ExecutableMemberDocBody">
      <a:documentation>
	 Corresponds to the abstract class
	 <code>com.sun.javadoc.ExecutableMemberDoc</code>.
      </a:documentation>

      <!-- ... which is derived from class 
      com.sun.javadoc.MemberDoc -->
      <ref name="MemberDocBody"/>

      <zeroOrMore>
	 <ref name="parameter-element"/>
      </zeroOrMore>

      <zeroOrMore>
	 <ref name="thrownException-element"/>
      </zeroOrMore>

      <ref name="signature-element"/>

      <optional>
	 <ref name="isNative-element"/>
      </optional>

      <optional>
	 <ref name="isSynchronized-element"/>
      </optional>

   </define>

   <define name="ConstructorDocBody">
      <a:documentation>
	 Corresponds to an object of class
	 <code>com.sun.javadoc.ConstructorDoc</code>.
      </a:documentation>

      <!-- ... which is derived from class
      com.sun.javadoc.ExecutableMemberDoc -->
      <ref name="ExecutableMemberDocBody"/>

   </define>

   <define name="MethodDocBody">
      <a:documentation>
	 Corresponds to an object of class
	 <code>com.sun.javadoc.MethodDoc</code>.
      </a:documentation>

      <!-- ... which is derived from class
      com.sun.javadoc.ExecutableMemberDoc -->
      <ref name="ExecutableMemberDocBody"/>

      <ref name="returns-element"/>
   </define>

   <define name="FieldDocBody">
      <a:documentation>
	 Corresponds to an object of class
	 <code>com.sun.javadoc.FieldDoc</code>.
      </a:documentation>

      <!-- ... which is derived from class
      com.sun.javadoc.ProgramElementDoc -->
      <ref name="ProgramElementDocBody"/>

      <optional>
	 <ref name="isTransient-element"/>
      </optional>

      <optional>
	 <ref name="isVolatile-element"/>
      </optional>

      <element name="gjdoc:type">
	 <ref name="typedef-attributes"/>
      </element>

   </define>


   <!-- The following patterns define the elements representing
   concrete classes in the Javadoc API. -->

   <define name="constructordoc-element">
      <a:documentation>
	 Specifies a constructor of the class.
      </a:documentation>

      <element name="gjdoc:constructordoc">
	 <ref name="name-attribute"/>
	 <ref name="ConstructorDocBody"/>
      </element>
   </define>

   <define name="methoddoc-element">
      <a:documentation>
	 Specifies a method of the class.
      </a:documentation>

      <element name="gjdoc:methoddoc">
	 <ref name="name-attribute"/>
	 <ref name="MethodDocBody"/>
      </element>
   </define>

   <define name="fielddoc-element">
      <a:documentation>
	 Specifies a field of the class.
      </a:documentation>

      <element name="gjdoc:fielddoc">
	 <ref name="name-attribute"/>
	 <ref name="FieldDocBody"/>
      </element>
   </define>

   <!-- The following patterns represent the return value of the
   corresponding boolean getters of various classes in
   <code>com.sun.javadoc</code>. The presence of each tag denotes a
   return value of <code>true</code>, absence denotes a return value
   of <code>false</code>. -->

   <define name="isAbstract-element">
      <a:documentation>
	 Presence means <code>ClassDoc.isAbstract()</code> returns

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -