view Lib/IMPL/Text/Schema.pm @ 25:9dd67fa91ee3

small fix in the dom schema works under text schema
author Sergey
date Tue, 13 Oct 2009 17:51:25 +0400
parents
children c529d386d80e
line wrap: on
line source

package IMPL::Text::Schema;
use strict;
use warnings;

use base qw(IMPL::DOM::Schema);

__PACKAGE__->PassThroughArgs;

1;

__END__

=pod

=head1 SINOPSYS

<schema>
    <ComplexNode name="syntax">
        <Node name="Define" type="Statement" minOccur="1" maxOccur="unbounded">
            <Property name="name" type="Word"/>
        </Node>
    </ComplexNode>
    <ComplexType type="Statement" nativeType="IMPL::Text::Schema::Statement">
        <NodeList>
            <SwitchNode minOccur="1" maxOccur="unbounded">
                <Node name="Word" type="Word"/>
                <Node name="Statement" type="Word"/>
                <Node name="Switch" type="Switch"/>
                <Node name="List" type="List"/>
            </SwitchNode>
        </NodeList>
    </ComplexType>
</schema>

=head1 DESCRIPTION

Схема текстового файла, которую можно использовать для разбора содержимого
текстового файла.

Схема текстового файла состоит из выражений.
1. Регулярное выражение является выражением
2. Строковое значение является выражением.
3. Выражения объединенные логическими операторами также выражение.

Допускаются следующие операторы
1. Повтор
2. 

=head1 METHODS

=over

=item C<<$schema->compile()>>

Возвращает объект для разбора текста.

=back


=cut