All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.openmdx.base.wbxml.GlobalTokens Maven / Gradle / Ivy

There is a newer version: 2.18.10
Show newest version
/*
 * ====================================================================
 * Project:     openMDX/Core, http://www.openmdx.org/
 * Description: Global Tokens
 * Owner:       OMEX AG, Switzerland, http://www.omex.ch
 * ====================================================================
 *
 * This software is published under the BSD license as listed below.
 * 
 * Copyright (c) 2010, OMEX AG, Switzerland
 * All rights reserved.
 * 
 * Redistribution and use in source and binary forms, with or
 * without modification, are permitted provided that the following
 * conditions are met:
 * 
 * * Redistributions of source code must retain the above copyright
 *   notice, this list of conditions and the following disclaimer.
 * 
 * * Redistributions in binary form must reproduce the above copyright
 *   notice, this list of conditions and the following disclaimer in
 *   the documentation and/or other materials provided with the
 *   distribution.
 * 
 * * Neither the name of the openMDX team nor the names of its
 *   contributors may be used to endorse or promote products derived
 *   from this software without specific prior written permission.
 * 
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
 * CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
 * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
 * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
 * TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
 * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
 * POSSIBILITY OF SUCH DAMAGE.
 * 
 * ------------------
 * 
 * This product includes software developed by other organizations as
 * listed in the NOTICE file.
 */
package org.openmdx.base.wbxml;

/**
 * The following token codes are common across all document types and are 
 * present in all code spaces and all code pages.
 */
public class GlobalTokens {

    /**
     * Change the code page for the current token state. Followed by a
     * single u_int8 indicating the new code page number.
     */
    static public final short SWITCH_PAGE = 0x0;
    
    /**
     * Indicates the end of an attribute list or the end of an element.
     */
    static public final short END = 0x1;
    
    /**
     * A character entity. Followed by a mb_u_int32 encoding the
     * character entity number.
     */
    static public final short ENTITY = 0x2;
    
    /**
     * Inline string. Followed by a termstr.
     */
    static public final short STR_I = 0x3;
    
    /**
     * An unknown attribute name, or unknown tag posessing no
     * attributes or content.Followed by a mb_u_int32 that encodes
     * an offset into the string table.
     */
    static public final short LITERAL = 0x4;
    
    /**
     * Inline string document-type-specific extension token. Token is
     * followed by a termstr.
     */
    static public final short EXT_I_0 = 0x40;
    
    /**
     * Inline string document-type-specific extension token. Token is
     * followed by a termstr.
     */
    static public final short EXT_I_1 = 0x41;
    
    /**
     * Inline string document-type-specific extension token. Token is
     * followed by a termstr.
     */
    static public final short EXT_I_2 = 0x42;
    
    /**
     * Processing instruction.
     */
    static public final short PI = 0x43;
    
    /**
     * An unknown tag posessing content but no attributes.
     */
    static public final short LITERAL_C = 0x44;
    
    /**
     * Inline integer document-type-specific extension token. Token is
     * followed by a mb_u_int32.
     */
    static public final short EXT_T_0 = 0x80;
    
    /**
     * Inline integer document-type-specific extension token. Token is
     * followed by a mb_u_int32.
     */
    static public final short EXT_T_1 = 0x81;
    
    /**
     * Inline integer document-type-specific extension token. Token is
     * followed by a mb_u_int32.
     */
    static public final short EXT_T_2 = 0x82;
    
    /**
     * String table reference. Followed by a mb_u_int32 encoding a
     * byte offset from the beginning of the string table.
     */
    static public final short STR_T = 0x83;
    
    /**
     * An unknown tag posessing attributes but no content.
     */
    static public final short LITERAL_A = 0x84;
    
    /**
     * Single -byte document-type-specific extension token.
     */
    static public final short EXT_0 = 0xc0;
    
    /**
     * Single -byte document-type-specific extension token.
     */
    static public final short EXT_1 = 0xc1;
    
    /**
     * Single -byte document-type-specific extension token.
     */
    static public final short EXT_2 = 0xc2;
    
    /**
     * Opaque document-type-specific data.
     */
    static public final int OPAQUE = 0xc3;
    
    /**
     * An unknown tag posessing both attributes and content.
     */
    static public final int LITERAL_AC = 0xc4;

    
    //----------------------------------------------------------
    // Tag Modifiers
    //----------------------------------------------------------
    
    /**
     * Element has attribute(s)
     */
    public static final int ATTRIBUTE_FLAG = 0x80;
    
    /**
     * Element has content
     */
    public static final int CONTENT_FLAG = 0x40;

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy