<!-- artifician documentation master file, created by
sphinx-quickstart on Sun Feb 20 23:06:29 2022.
You can adapt this file completely to your liking, but it should at least
contain the root `toctree` directive. -->

# Documentation

* [Introduction](intro.md)
  * [“Turn your data preparation nightmares into a dream.”](intro.md#turn-your-data-preparation-nightmares-into-a-dream)
  * [Why Artifician?](intro.md#why-artifician)
  * [Simple Example](intro.md#simple-example)
  * [Without Artifician](intro.md#without-artifician)
  * [Using Artifician](intro.md#using-artifician)
  * [Output](intro.md#output)
* [Getting Started with Artifician](getting_started.md)
  * [Pre-requisites](getting_started.md#pre-requisites)
  * [Installation](getting_started.md#installation)
  * [Using pip](getting_started.md#using-pip)
  * [Using conda](getting_started.md#using-conda)
  * [Verify Installation](getting_started.md#verify-installation)
  * [Next Steps](getting_started.md#next-steps)
* [Quick Start](quick_start.md)
  * [Define Extractor](quick_start.md#define-extractor)
  * [Initialize components](quick_start.md#initialize-components)
  * [Subscriptions](quick_start.md#subscriptions)
  * [Dataset Preparation](quick_start.md#dataset-preparation)
  * [Output](quick_start.md#output)
* [Advanced Concepts](advanced_concepts.md)
  * [Defining Custom Extractors](define_extractors.md)
    * [Introduction](define_extractors.md#introduction)
    * [Why Custom Extractors?](define_extractors.md#why-custom-extractors)
    * [How Extractors Work](define_extractors.md#how-extractors-work)
    * [Example of a Simple Extractor](define_extractors.md#example-of-a-simple-extractor)
    * [Integrating Custom Extractors](define_extractors.md#integrating-custom-extractors)
    * [Advanced Usage](define_extractors.md#advanced-usage)
    * [Conclusion](define_extractors.md#conclusion)
  * [Defining Custom Processors](define_processor.md)
    * [Introduction](define_processor.md#introduction)
    * [Why Custom Processors?](define_processor.md#why-custom-processors)
    * [How Processors Work](define_processor.md#how-processors-work)
    * [Example of a Simple Processor](define_processor.md#example-of-a-simple-processor)
    * [Integrating Custom Processors](define_processor.md#integrating-custom-processors)
    * [Advanced Usage](define_processor.md#advanced-usage)
    * [Conclusion](define_processor.md#conclusion)
  * [Library Architecture](library_architecture.md)
    * [Events](library_architecture.md#events)
    * [Dataset](library_architecture.md#dataset)
    * [Feature Definition](library_architecture.md#feature-definition)
    * [Processors](library_architecture.md#processors)
    * [Extractors](library_architecture.md#extractors)
* [API Reference](modules.md)
  * [artifician package](artifician.md)
    * [Subpackages](artifician.md#subpackages)
      * [artifician.extractors package](artifician.extractors.md)
        * [artifician.extractors.html_extractors module](artifician.extractors.md#module-artifician.extractors.html_extractors)
          * [`count_child_nodes()`](artifician.extractors.md#artifician.extractors.html_extractors.count_child_nodes)
          * [`get_child_attribute()`](artifician.extractors.md#artifician.extractors.html_extractors.get_child_attribute)
          * [`get_child_node_text()`](artifician.extractors.md#artifician.extractors.html_extractors.get_child_node_text)
          * [`get_node_attribute()`](artifician.extractors.md#artifician.extractors.html_extractors.get_node_attribute)
          * [`get_node_text()`](artifician.extractors.md#artifician.extractors.html_extractors.get_node_text)
          * [`get_parent_attribute()`](artifician.extractors.md#artifician.extractors.html_extractors.get_parent_attribute)
          * [`get_parent_node_text()`](artifician.extractors.md#artifician.extractors.html_extractors.get_parent_node_text)
          * [`get_sibling_node_text()`](artifician.extractors.md#artifician.extractors.html_extractors.get_sibling_node_text)
        * [Module contents](artifician.extractors.md#module-artifician.extractors)
      * [artifician.processors package](artifician.processors.md)
        * [artifician.processors.mapper module](artifician.processors.md#module-artifician.processors.mapper)
          * [`FeatureMap`](artifician.processors.md#artifician.processors.mapper.FeatureMap)
            * [`FeatureMap.get_value_id()`](artifician.processors.md#artifician.processors.mapper.FeatureMap.get_value_id)
          * [`Mapper`](artifician.processors.md#artifician.processors.mapper.Mapper)
            * [`Mapper.process()`](artifician.processors.md#artifician.processors.mapper.Mapper.process)
            * [`Mapper.subscribe()`](artifician.processors.md#artifician.processors.mapper.Mapper.subscribe)
        * [artifician.processors.normalizer module](artifician.processors.md#module-artifician.processors.normalizer)
          * [`KeyValuesNormalizer`](artifician.processors.md#artifician.processors.normalizer.KeyValuesNormalizer)
            * [`KeyValuesNormalizer.normalize()`](artifician.processors.md#artifician.processors.normalizer.KeyValuesNormalizer.normalize)
            * [`KeyValuesNormalizer.normalize_key_values()`](artifician.processors.md#artifician.processors.normalizer.KeyValuesNormalizer.normalize_key_values)
          * [`Normalizer`](artifician.processors.md#artifician.processors.normalizer.Normalizer)
            * [`Normalizer.process()`](artifician.processors.md#artifician.processors.normalizer.Normalizer.process)
            * [`Normalizer.subscribe()`](artifician.processors.md#artifician.processors.normalizer.Normalizer.subscribe)
          * [`NormalizerStrategy`](artifician.processors.md#artifician.processors.normalizer.NormalizerStrategy)
            * [`NormalizerStrategy.normalize()`](artifician.processors.md#artifician.processors.normalizer.NormalizerStrategy.normalize)
          * [`PathsNormalizer`](artifician.processors.md#artifician.processors.normalizer.PathsNormalizer)
            * [`PathsNormalizer.get_path_values()`](artifician.processors.md#artifician.processors.normalizer.PathsNormalizer.get_path_values)
            * [`PathsNormalizer.normalize()`](artifician.processors.md#artifician.processors.normalizer.PathsNormalizer.normalize)
          * [`PropertiesNormalizer`](artifician.processors.md#artifician.processors.normalizer.PropertiesNormalizer)
            * [`PropertiesNormalizer.normalize()`](artifician.processors.md#artifician.processors.normalizer.PropertiesNormalizer.normalize)
          * [`StrategySelector`](artifician.processors.md#artifician.processors.normalizer.StrategySelector)
            * [`StrategySelector.get_key_values_delimiter()`](artifician.processors.md#artifician.processors.normalizer.StrategySelector.get_key_values_delimiter)
            * [`StrategySelector.get_paths_delimiter()`](artifician.processors.md#artifician.processors.normalizer.StrategySelector.get_paths_delimiter)
            * [`StrategySelector.get_properties_delimiter()`](artifician.processors.md#artifician.processors.normalizer.StrategySelector.get_properties_delimiter)
            * [`StrategySelector.select()`](artifician.processors.md#artifician.processors.normalizer.StrategySelector.select)
        * [artifician.processors.processor module](artifician.processors.md#module-artifician.processors.processor)
          * [`Processor`](artifician.processors.md#artifician.processors.processor.Processor)
            * [`Processor.process()`](artifician.processors.md#artifician.processors.processor.Processor.process)
            * [`Processor.subscribe()`](artifician.processors.md#artifician.processors.processor.Processor.subscribe)
        * [Module contents](artifician.processors.md#module-artifician.processors)
    * [artifician.dataset module](artifician.md#module-artifician.dataset)
      * [`Dataset`](artifician.md#artifician.dataset.Dataset)
        * [`Dataset.add_samples()`](artifician.md#artifician.dataset.Dataset.add_samples)
        * [`Dataset.observe()`](artifician.md#artifician.dataset.Dataset.observe)
        * [`Dataset.post_process()`](artifician.md#artifician.dataset.Dataset.post_process)
    * [artifician.feature_definition module](artifician.md#module-artifician.feature_definition)
      * [`FeatureDefinition`](artifician.md#artifician.feature_definition.FeatureDefinition)
        * [`FeatureDefinition.map()`](artifician.md#artifician.feature_definition.FeatureDefinition.map)
        * [`FeatureDefinition.observe()`](artifician.md#artifician.feature_definition.FeatureDefinition.observe)
        * [`FeatureDefinition.process()`](artifician.md#artifician.feature_definition.FeatureDefinition.process)
        * [`FeatureDefinition.subscribe()`](artifician.md#artifician.feature_definition.FeatureDefinition.subscribe)
