Skip to main content

Index

  • English Document

    English Document <- Here

  • Japanese Document

    Japanese Document

  • Annotation YAML(ANOY)

    A YAML file that allows type checking for Map types.

    More about ANOY

  • Configuration YAML(Config YAML)

    A YAML file that defines the data types usable in Annotation YAML.

    More about Config YAML

  • ANOY CLI

    A CLI application that verifies whether Annotation YAML adheres to the data type defined in Configuration YAML.

    More about ANOY CLI

Introduction

YAML maps often become nested and complex.

And these requests have come up.

  • Detecting typos in map keys.
  • Verifying the data type of map values.
  • Ensuring the map's nested structure is appropriate.

This library satisfies these requests.

Installing

pip install anoy

Usage

library_config.yaml

"@Books":
  "@Summary": List the book titles.
  "!Child": "!FreeMap"
"@Author":
  "@Summary": Author of the book.
  "!Child": "!Str"
"@PublishYear":
  "@Summary": The year of the publishment.
  "!Child": "!Int"
"@Country":
  "@Summary": The author's native language.
  "!Child": "!Str"

valid_library.yaml:

"@Books":
  "Alice's Adventures in Wonderland":
    "@Author": Lewis Carroll
    "@PublishYear": 1865
    "@Country": UK
  "The Little Prince":
    "@Author": Antonie de Saint-Exupéry
    "@PublishYear": 1945
    "@Country": France
  "Harry Potter":
    "@Author": J.K.Rowling
    "@PublishYear": 1997
    "@Country": UK

Use the anoy command to verify data types.

The following is an example of execution in debug mode.

$ anoy library_config.yaml valid_library.yaml -d
open: C:\Users\tomot\Backup\sourcecode\python\projects\annotation_yaml\tests\unused\sampleCase\valid_library.yaml
result: 0/1 invalid.

If you mistyped @Auther as @Auther.

invalid_library.yaml:

"@Books":
  "Alice's Adventures in Wonderland":
    "@Auther": Lewis Carroll
    "@PublishYear": 1865
    "@Country": UK
  "The Little Prince":
    "@Auther": Antonie de Saint-Exupéry
    "@PublishYear": 1945
    "@Country": France
  "Harry Potter":
    "@Auther": J.K.Rowling
    "@PublishYear": 1997
    "@Country": UK

When there is an issue with the annotation YAML, anoy outputs as follows.

$ anoy library_config.yaml library.yaml -d
open: C:\Users\tomot\Backup\sourcecode\python\projects\annotation_yaml\docs\sampleCase\invalid_library.yaml
open: C:\Users\tomot\Backup\sourcecode\python\projects\annotation_yaml\docs\sampleCase\invalid_library.yaml
  keyError at:
    ['@Books', "Alice's Adventures in Wonderland", '@Auther']
result: 1/1 invalid.

Others

Introduction to sub-specifications

ANOY can define sub-specifications based on the definitions in config yaml.

Object-Oriented Document YAML(OODY)

Object-Oriented Document in YAML, or OODY for short.

This is a document for object-oriented system.

Designed to be independent of any specific programming language.

Metadata

Release files for anoy 0.6.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for anoy 0.6.2
File Size Uploaded Provenance Actions
anoy-0.6.2.tar.gz 12.9 kB Without provenance Details for anoy-0.6.2.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for anoy 0.6.2
File Interpreter ABI Platform Actions
anoy-0.6.2-py3-none-any.whl Python 3 none any Details for anoy-0.6.2-py3-none-any.whl

Total release size: 24.8 kB

Release files / anoy-0.6.2.tar.gz

Download URL anoy-0.6.2.tar.gz
Size 12.9 kB
Tags Source
SHA-256 checksum
How to use checksums
665c1f182b880a52d5b44589f877d79f6d05dbc964f4cd75fb8dff0cc904b7f9
BLAKE2b-256 checksum
How to use checksums
726f5efe7b380880d3997c6f4ca019d5f0088797c84da0371da14f7e3336d3d8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.11.3

Release files / anoy-0.6.2-py3-none-any.whl

Download URL anoy-0.6.2-py3-none-any.whl
Size 11.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
00861b99f3549ad923da841f0a71817e750fc8e5e9eefc0a0637dcd9158a6c02
BLAKE2b-256 checksum
How to use checksums
1d901b1dd9de7950969281854605a254c49c5966ef26fb682e1d5a763ebb055d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.11.3

Security for anoy 0.6.2

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page