001package org.apache.maven.doxia.module.xdoc;
002
003/*
004 * Licensed to the Apache Software Foundation (ASF) under one
005 * or more contributor license agreements.  See the NOTICE file
006 * distributed with this work for additional information
007 * regarding copyright ownership.  The ASF licenses this file
008 * to you under the Apache License, Version 2.0 (the
009 * "License"); you may not use this file except in compliance
010 * with the License.  You may obtain a copy of the License at
011 *
012 *   http://www.apache.org/licenses/LICENSE-2.0
013 *
014 * Unless required by applicable law or agreed to in writing,
015 * software distributed under the License is distributed on an
016 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
017 * KIND, either express or implied.  See the License for the
018 * specific language governing permissions and limitations
019 * under the License.
020 */
021
022import javax.swing.text.html.HTML.Tag;
023
024import org.apache.maven.doxia.markup.HtmlMarkup;
025
026/**
027 * List of <code>Xdoc</code> markups.
028 * <br/>
029 * Xdoc uses several  {@link javax.swing.text.html.HTML.Tag} and {@link javax.swing.text.html.HTML.Attribute}
030 * as markups and custom tags.
031 *
032 * @author <a href="mailto:vincent.siveton@gmail.com">Vincent Siveton</a>
033 * @version $Id$
034 * @since 1.0
035 */
036public interface XdocMarkup
037    extends HtmlMarkup
038{
039    /** XDOC namespace: "http://maven.apache.org/XDOC/2.0" */
040    String XDOC_NAMESPACE = "http://maven.apache.org/XDOC/2.0";
041
042    /** XDOC system id: "http://maven.apache.org/xsd/xdoc-2.0.xsd" */
043    String XDOC_SYSTEM_ID = "http://maven.apache.org/xsd/xdoc-2.0.xsd";
044
045    // ----------------------------------------------------------------------
046    // Specific Xdoc tags
047    // ----------------------------------------------------------------------
048
049    /** Xdoc tag for <code>author</code> */
050    Tag AUTHOR_TAG = new Tag()
051    {
052        /** {@inheritDoc} */
053        public String toString()
054        {
055            return "author";
056        }
057    };
058
059    /** Xdoc tag for <code>date</code> */
060    Tag DATE_TAG = new Tag()
061    {
062        /** {@inheritDoc} */
063        public String toString()
064        {
065            return "date";
066        }
067    };
068
069    /** Xdoc tag for <code>document</code> */
070    Tag DOCUMENT_TAG = new Tag()
071    {
072        /** {@inheritDoc} */
073        public String toString()
074        {
075            return "document";
076        }
077    };
078
079    /** Xdoc tag for <code>macro</code> */
080    Tag MACRO_TAG = new Tag()
081    {
082        /** {@inheritDoc} */
083        public String toString()
084        {
085            return "macro";
086        }
087    };
088
089    /** Xdoc tag for <code>properties</code> */
090    Tag PROPERTIES_TAG = new Tag()
091    {
092        /** {@inheritDoc} */
093        public String toString()
094        {
095            return "properties";
096        }
097    };
098
099    /** Xdoc tag for <code>section</code> */
100    Tag SECTION_TAG = new Tag()
101    {
102        /** {@inheritDoc} */
103        public String toString()
104        {
105            return "section";
106        }
107    };
108
109    /** Xdoc tag for <code>source</code> */
110    Tag SOURCE_TAG = new Tag()
111    {
112        /** {@inheritDoc} */
113        public String toString()
114        {
115            return "source";
116        }
117    };
118
119    /** Xdoc tag for <code>subsection</code> */
120    Tag SUBSECTION_TAG = new Tag()
121    {
122        /** {@inheritDoc} */
123        public String toString()
124        {
125            return "subsection";
126        }
127    };
128}