Mercurial > pub > Impl
comparison Lib/IMPL/DOM/Navigator/Builder.pm @ 64:259cd3df6e53
Doc generation
Minor fixes
| author | wizard |
|---|---|
| date | Mon, 15 Mar 2010 17:45:13 +0300 |
| parents | 16ada169ca75 |
| children | cf3b6ef2be22 |
comparison
equal
deleted
inserted
replaced
| 63:76b878ad6596 | 64:259cd3df6e53 |
|---|---|
| 54 } | 54 } |
| 55 | 55 |
| 56 1; | 56 1; |
| 57 | 57 |
| 58 __END__ | 58 __END__ |
| 59 | |
| 59 =pod | 60 =pod |
| 60 | 61 |
| 62 =head1 NAME | |
| 63 | |
| 64 C< IMPL::DOM::Navigator::Builder > - Навигатор, строящий документ по указанной схеме. | |
| 65 | |
| 61 =head1 SYNOPSIS | 66 =head1 SYNOPSIS |
| 67 | |
| 68 =begin code | |
| 62 | 69 |
| 63 my $builder = new IMPL::DOM::Navigator::Builder(new MyApp::Document,$schema); | 70 my $builder = new IMPL::DOM::Navigator::Builder(new MyApp::Document,$schema); |
| 64 my $reader = new IMPL::DOM::XMLReader(Navigator => $builder); | 71 my $reader = new IMPL::DOM::XMLReader(Navigator => $builder); |
| 65 | 72 |
| 66 $reader->ParseFile("document.xml"); | 73 $reader->ParseFile("document.xml"); |
| 67 | 74 |
| 68 my @errors = $schema->Validate($builder->Document); | 75 my @errors = $schema->Validate($builder->Document); |
| 76 | |
| 77 =end code | |
| 69 | 78 |
| 70 =head1 DESCRIPTION | 79 =head1 DESCRIPTION |
| 71 | 80 |
| 72 Построитель DOM документов по указанной схеме. Обычно используется в связке | 81 Построитель DOM документов по указанной схеме. Обычно используется в связке |
| 73 с объектами для чтения такими как C<IMPL::DOM::XMLReader>. | 82 с объектами для чтения такими как C<IMPL::DOM::XMLReader>. |
| 74 | 83 |
| 75 =head1 METHODS | 84 =head1 METHODS |
| 76 | 85 |
| 77 =over | 86 =over |
| 78 | 87 |
| 79 =item C<CTOR($domDocument,$schema)> | 88 =item C< CTOR($classDocument,$schema) > |
| 80 | 89 |
| 81 Создает новый объект, принимает на вход пустой (но не обязательно) документ и | 90 Создает новый объект, принимает на вход класс документа (или фабрику, например |
| 82 схему. | 91 L<IMPL::Object::Factory>) и схему. В процессе процедуры построения документа |
| 92 будет создан объект документа. | |
| 83 | 93 |
| 84 =item C<< $obj->NavigateCreate($nodeName) >> | 94 =item C< NavigateCreate($nodeName,\%props) > |
| 85 | 95 |
| 86 Создает новый узел с указанным именем и переходит в него. В случае если в схеме | 96 Создает новый узел с указанным именем и переходит в него. В случае если в схеме |
| 87 подходящий узел не найден, то вызывается исключение. | 97 подходящий узел не найден, то вызывается исключение. |
| 88 | 98 |
| 89 При этом по имени узла ищется его схема, после чего определяется класс для | 99 При этом по имени узла ищется его схема, после чего определяется класс для |
| 90 создания экземпляра и созданный узел доавляется в документ. | 100 создания экземпляра и созданный узел доавляется в документ. При создании |
| 101 нового узла используется метод документа C<< IMPL::DOM::Document->Create >> | |
| 91 | 102 |
| 92 Также имя создаваемого узла НЕ может быть переопределено свойством nodeName, оно | 103 Свойства узла передаются при создании через параметр C<props>, но имя создаваемого |
| 93 будет проигнорировано. | 104 узла НЕ может быть переопределено свойством C<nodeName>, оно будет проигнорировано. |
| 105 | |
| 106 =item C< Document > | |
| 107 | |
| 108 Свойство, которое содержит документ по окончании процедурв построения. | |
| 94 | 109 |
| 95 =back | 110 =back |
| 96 | 111 |
| 97 =cut | 112 =cut |
