linneo

Extensiones

Además de la taxonomía estándar, Linneo incluye extensiones opcionales para un sector: términos que la mayoría de las aplicaciones no necesitan, empaquetados como una TaxonomyExtension en el JAR de Linneo, cada una en su propio paquete exportado io.github.devbpm.linneo.extension.<sector>, con constantes de compilación para sus claves.

Extensión Clase name() Añade Página
Educación superior io.github.devbpm.linneo.extension.university.UniversityTaxonomy "university" 33 categorías de datos, 27 usos de datos, 13 interesados Universidad

No se aplican por defecto

Una extensión incluida nunca forma parte de la taxonomía salvo que la aplicación la pida:

Una extensión incluida sigue las mismas reglas que las tuyas: añade hijos de términos existentes (una extensión incluida puede añadir una raíz nueva de usos de datos cuando fideslang no tiene ninguna para el sector, como hace la extensión universitaria) y solo endurece la protección.

Aplicar una extensión incluida

Aplícala en el builder, después de los términos estándar:

import io.github.devbpm.linneo.Taxonomy;
import io.github.devbpm.linneo.extension.university.UniversityTaxonomy;

Taxonomy taxonomy = Taxonomy.builder().withStandard().extend(new UniversityTaxonomy()).build();

taxonomy.toString() imprime Taxonomy[158 data categories, 90 data uses, 34 data subjects], frente a Taxonomy[125 data categories, 63 data uses, 21 data subjects] de la taxonomía estándar. Guarda el resultado y úsalo en todas partes: en el Classifier, en el ProcessingChecker y en los exportadores a catálogos. Un Classifier construido sobre Taxonomy.standard() informa de cada clave de la extensión como UNKNOWN_CATEGORY.

Registrar una extensión incluida

Para que Taxonomy.load() aplique una extensión incluida, la aplicación la registra con ServiceLoader. Cómo hacerlo depende de dónde esté Linneo:

La llamada explícita a extend de la sección anterior funciona en ambos casos y no necesita registro.

Las extensiones incluidas y las tuyas

Una extensión incluida y tus propias extensiones se aplican al mismo builder y se combinan como dos extensiones cualesquiera:

Véase también: Extensión universitaria · Extender la taxonomía · Taxonomía estándar · curso: Extender la taxonomía