alvinalexander.com | career | drupal | java | mac | mysql | perl | scala | uml | unix  

Java example source code file (PSVIProvider.java)

This example Java source code file (PSVIProvider.java) is included in the alvinalexander.com "Java Source Code Warehouse" project. The intent of this project is to help you "Learn Java by Example" TM.

Learn more about this Java project at its project page.

Java - Java tags/keywords

attributepsvi, elementpsvi, psviprovider, string

The PSVIProvider.java Java example source code

/*
 * reserved comment block
 * DO NOT REMOVE OR ALTER!
 */
/*
 * Copyright 2003,2004 The Apache Software Foundation.
 *
 * Licensed 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.
 */

package com.sun.org.apache.xerces.internal.xs;

/**
 * This interface provides access to the post schema validation infoset for an
 * API that provides a streaming document infoset, such as SAX, XNI, and
 * others.
 * <p>For implementations that would like to provide access to the PSVI in a
 * streaming model, a parser object should also implement the
 * <code>PSVIProvider interface. Within the scope of the methods
 * handling the start and end of an element, applications may use the
 * <code>PSVIProvider to retrieve the PSVI related to the element and
 * its attributes.
 */
public interface PSVIProvider {
    /**
     *  Provides the post schema validation item for the current element
     * information item. The method must be called by an application while
     * in the scope of the methods which report the start and end of an
     * element. For example, for SAX the method must be called within the
     * scope of the document handler's <code>startElement or
     * <code>endElement call. If the method is called outside of the
     * specified scope, the return value is undefined.
     * @return The post schema validation infoset for the current element. If
     *   an element information item is valid, then in the
     *   post-schema-validation infoset the following properties must be
     *   available for the element information item: The following
     *   properties are available in the scope of the method that reports
     *   the start of an element: {element declaration}, {validation
     *   context}, {notation}. The {schema information} property is
     *   available for the validation root. The {error codes} property is
     *   available if any errors occured during validation.  The following
     *   properties are available in the scope of the method that reports
     *   the end of an element: {nil}, {schema specified}, {normalized
     *   value},{ member type definition}, {validity}, {validation attempted}
     *   . If the declaration has a value constraint, the property {schema
     *   default} is available. The {error codes} property is available if
     *   any errors occured during validation. Note: some processors may
     *   choose to provide all the PSVI properties in the scope of the
     *   method that reports the end of an element.
     */
    public ElementPSVI getElementPSVI();

    /**
     * Provides <code>AttributePSVI given the index of an attribute
     * information item in the current element's attribute list. The method
     * must be called by an application while in the scope of the methods
     * which report the start and end of an element at a point where the
     * attribute list is available. For example, for SAX the method must be
     * called while in the scope of the document handler's
     * <code>startElement call. If the method is called outside of
     * the specified scope, the return value is undefined.
     * @param index The attribute index.
     * @return The post schema validation properties of the attribute.
     */
    public AttributePSVI getAttributePSVI(int index);

    /**
     * Provides <code>AttributePSVI given the namespace name and the
     * local name of an attribute information item in the current element's
     * attribute list. The method must be called by an application while in
     * the scope of the methods which report the start and end of an element
     * at a point where the attribute list is available. For example, for
     * SAX the method must be called while in the scope of the document
     * handler's <code>startElement call. If the method is called
     * outside of the specified scope, the return value is undefined.
     * @param uri The namespace name of an attribute.
     * @param localname The local name of an attribute.
     * @return The post schema validation properties of the attribute.
     */
    public AttributePSVI getAttributePSVIByName(String uri,
                                                String localname);

}

Other Java examples (source code examples)

Here is a short list of links related to this Java PSVIProvider.java source code file:

... this post is sponsored by my books ...

#1 New Release!

FP Best Seller

 

new blog posts

 

Copyright 1998-2021 Alvin Alexander, alvinalexander.com
All Rights Reserved.

A percentage of advertising revenue from
pages under the /java/jwarehouse URI on this website is
paid back to open source projects.