19declare(strict_types=1);
76 $general->getSubElement(
'description'),
94 $life_cycle =
$structure->getRoot()->getSubElement(
'lifeCycle');
95 $this->setLastTagForLangString($life_cycle->getSubElement(
'version'));
96 $this->setLastTagForVocab($life_cycle->getSubElement(
'status'));
97 $this->setTagsForSubContribute($life_cycle);
103 $meta =
$structure->getRoot()->getSubElement(
'metaMetadata');
104 $this->setTagsForSubIdentifier($meta);
105 $this->setTagsForSubContribute($meta);
106 $this->setLastTagForNonContainer(
107 $meta->getSubElement(
'metadataSchema'),
111 $this->setLastTagForNonContainer(
112 $meta->getSubElement(
'language'),
122 $this->setLastTagForNonContainer(
127 $this->setLastTagForNonContainer(
132 $this->setLastTagForNonContainer(
137 $this->addTagToElement(
138 $this->tag($requirement =
$technical->getSubElement(
'requirement'))
139 ->withCreatedWith($or = $requirement->getSubElement(
'orComposite'))
140 ->withPreview($or->getSubElement(
'name')->getSubElement(
'value'))
144 $this->addTagToElement(
146 ->withPreview($or->getSubElement(
'name')->getSubElement(
'value'))
147 ->withRepresentation($or->getSubElement(
'type')->getSubElement(
'value'))
148 ->withLastInTree(
true)
152 $this->setImportantLabelTag($or->getSubElement(
'minimumVersion'));
153 $this->setImportantLabelTag($or->getSubElement(
'maximumVersion'));
154 $this->setLastTagForLangString(
$technical->getSubElement(
'installationRemarks'));
155 $this->setLastTagForLangString(
$technical->getSubElement(
'otherPlatformRequirements'));
167 $this->addTagToElement(
169 ->withPreview(
$educational->getSubElement(
'typicalLearningTime')->getSubElement(
'duration'))
170 ->withRepresentation(
$educational->getSubElement(
'interactivityType')->getSubElement(
'value'))
171 ->withIsCollected(
true)
175 $this->setLastTagForVocab(
$educational->getSubElement(
'interactivityType'));
176 $this->setLastTagForVocab(
180 $this->setLastTagForVocab(
$educational->getSubElement(
'interactivityLevel'));
181 $this->setLastTagForVocab(
$educational->getSubElement(
'semanticDensity'));
182 $this->setLastTagForVocab(
186 $this->setLastTagForVocab(
190 $this->setLastTagForLangString(
194 $this->setLastTagForVocab(
$educational->getSubElement(
'difficulty'));
200 $this->setLastTagForLangString(
204 $this->setLastTagForNonContainer(
215 $this->addTagToElement(
217 ->withLastInTree(
true)
221 $this->addTagToElement(
222 $this->tag($cost =
$rights->getSubElement(
'cost'))
223 ->withPreview($cost->getSubElement(
'value'))
227 $this->addTagToElement(
228 $this->tag($cor =
$rights->getSubElement(
'copyrightAndOtherRestrictions'))
229 ->withPreview($cor->getSubElement(
'value'))
233 $this->addTagToElement(
234 $this->tag($description =
$rights->getSubElement(
'description'))
235 ->withPreview($description->getSubElement(
'string'))
245 $this->addTagToElement(
247 ->withPreview(
$relation->getSubElement(
'resource')->getSubElement(
'identifier')->getSubElement(
'entry'))
248 ->withCreatedWith($kind =
$relation->getSubElement(
'kind'))
249 ->withRepresentation($kind->getSubElement(
'value'))
250 ->withIsCollected(
true)
254 $this->setLastTagForVocab($kind);
255 $this->addTagToElement(
256 $this->tag($resource =
$relation->getSubElement(
'resource'))
257 ->withCreatedWith($identifier = $resource->getSubElement(
'identifier'))
258 ->withPreview($identifier->getSubElement(
'entry'))
262 $this->setTagsForSubIdentifier($resource);
263 $this->setLastTagForLangString(
264 $resource->getSubElement(
'description'),
273 $this->addTagToElement(
275 ->withPreview(
$annotation->getSubElement(
'description')->getSubElement(
'string'))
276 ->withRepresentation(
$annotation->getSubElement(
'entity'))
277 ->withIsCollected(
true)
278 ->withLastInTree(
true)
282 $this->addTagToElement(
283 $this->tag($entity =
$annotation->getSubElement(
'entity'))
284 ->withPreview($entity)
285 ->withImportantLabel(
true)
289 $this->addTagToElement(
290 $this->tag($date =
$annotation->getSubElement(
'date'))
291 ->withPreview($date->getSubElement(
'dateTime'))
295 $this->addTagToElement(
296 $this->tag($description =
$annotation->getSubElement(
'description'))
297 ->withPreview($description->getSubElement(
'string'))
306 $class =
$structure->getRoot()->getSubElement(
'classification');
307 $taxon_path = $class->getSubElement(
'taxonPath');
308 $taxon = $taxon_path->getSubElement(
'taxon');
309 $taxon_entry_string = $taxon->getSubElement(
'entry')->getSubElement(
'string');
310 $this->addTagToElement(
312 ->withPreview($taxon_entry_string)
313 ->withCreatedWith($purpose = $class->getSubElement(
'purpose'))
314 ->withRepresentation($purpose->getSubElement(
'value'))
315 ->withIsCollected(
true)
319 $this->setLastTagForVocab($purpose);
320 $this->addTagToElement(
321 $this->tag($taxon_path)
322 ->withPreview($taxon_entry_string)
323 ->withCreatedWith($source = $taxon_path->getSubElement(
'source'))
324 ->withRepresentation($source->getSubElement(
'string'))
328 $this->setLastTagForLangString($source);
335 $this->setLastTagForLangString($class->getSubElement(
'description'));
336 $this->setLastTagForLangString(
337 $class->getSubElement(
'keyword'),
346 $identifier = $super_element->getSubElement(
'identifier'),
350 $this->setImportantLabelTag($identifier->getSubElement(
'catalog'));
351 $this->setImportantLabelTag($identifier->getSubElement(
'entry'));
357 $this->addTagToElement(
359 ->withImportantLabel(
true)
368 $this->addTagToElement(
369 $this->tag($contribute = $super_element->getSubElement(
'contribute'))
370 ->withPreview($contribute->getSubElement(
'entity'))
371 ->withCreatedWith($role = $contribute->getSubElement(
'role'))
372 ->withRepresentation($role->getSubElement(
'value'))
376 $this->setLastTagForVocab($contribute->getSubElement(
'role'));
377 $this->setLastTagForNonContainer(
378 $contribute->getSubElement(
'entity'),
383 $contribute->getSubElement(
'date'),
391 bool $is_collected =
false
402 bool $is_collected =
false
414 bool $important_label
416 $this->addTagToElement(
418 ->withPreview($element)
419 ->withIsCollected($is_collected)
420 ->withLastInTree(
true)
421 ->withImportantLabel($important_label)
430 string ...$steps_to_preview
433 foreach ($steps_to_preview as $step) {
436 $this->addTagToElement(
438 ->withPreview($preview)
439 ->withLastInTree(
true)
440 ->withIsCollected($is_collected)
448 return $this->tag_factory->forElement($element);
$structure
TOTAL STRUCTURE.
__construct(Container $dic, ilPlugin $plugin)
@inheritDoc