Meticulous Engineering Overseeing Workgroup Glax Internet-Draft Raugh Intended status: Informational Duali Expires: Never March 2022 Poescont notation Abstract This document defines the "poescont" notation: a text-based language used to describe pictures and videos whose subject includes cats, containers and their interactions. Status of This Memo This document is not an Internet Standards Track specification; it is published for informational purposes. This document is a product of the Meticulous Engineering Overseeing Workgroup (MEOW) and represents information that the MEOW has deemed valuable to provide for permanent record. It represents the consensus of the Meticulous Engineering Overseeing Workgroup (MEOW). Information about the current status of this document, any errata, and how to provide feedback on it may be obtained at . Copyright Notice Copyright (c) 2024 Meticulous Engineering Overseeing Workgroup and the persons identified as the document authors. All rights reserved. Table of Contents 1 Introduction .....................................................1 1.1 Conventions Used in This Document ...........................2 2 Definition .......................................................3 2.1 Terminology .................................................4 2.2 Grammar .....................................................5 3 Elements .........................................................6 3.1 Cats ........................................................7 3.1.1 Partial Cats ...........................................8 3.1.2 Other Animals ..........................................9 3.1.3 Balls of Yarn .........................................10 3.2 Containers .................................................11 3.3 Positioning ................................................12 3.3.1 Horizontal Position ...................................13 3.3.2 Vertical Position .....................................14 3.3.3 Multiple Repeated Objects .............................15 3.4 Changes Over Time ..........................................16 3.4.1 Disambiguation ........................................17 4 Internationalization Considerations .............................18 5 Security Considerations .........................................19 6 IANA Considerations .............................................20 7 References ......................................................21 Appendix A Examples ...............................................22 1. Introduction Cat pictures and videos are often shared across the internet, many of such files display feline subjects interacting with boxes and other containers. Since currently there is no compact notation for describing such media, this document describes a standard notation to describe the position and interaction of cats, containers and related subjects pictured in these images. The notation language descibed in this document is text-based and limits itself to the US-ASCII [RFC20] character encoding, allowing the transfer of cat-related materials in environments with restricted capabilities. 1.1. Conventions Used in This Document The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all capitals, as shown here. 3. Definition 3.1. Terminology This document uses some specific terms to refer to items being described by the notation described herein. To avoid ambiguity some of such terms are defined as follows. Subject The term "subject" is used in this document to refer to the object that is the focus in the media to be annotated. This usually is an animate object, specifically a cat. An annotation can have multiple subjects interacting in various ways. Cat A cat is a special kind of subject of feline origin. While usually this document will assume a house cat is present in the source media, other felines are also acceptable. Poes "poes" is used in the notation language to refer to cats. It's based on the Dutch word for "cat" and it allow to more accurately describe a cat only partially within a container (See [Partial Cats]). Container The term "container" is used to refer to inanimate objects inside of which one or more subjects can be located. Most commonly this will be a cardboard box but a variety of containers can be used. 3.2. Grammar The grammar is defined following the ABFN notation [RFC5234]. SEQUENCE = POSITION / POSITION "=>" SEQUENCE POSITION = ADJACENT ADJACENT = OVER / ADJACENT "+" OVER OVER = MULTIPLE / MULTIPLE "/" POSITION MULTIPLE = POESCONT / NUMBER [ "*" ] MULTIPLE / NUMBER "/" MULTIPLE POESCONT = SUBJECT [ NUMBER ] / [ PARTIAL ] CONTAINER [ PARTIAL ] CONTAINER = "[" OPT-POSITION "]" / "(" OPT-POSITION ")" CONTAINER =/ "{" OPT-POSITION "}" / "<" POSITION ">" OPT-POSITION = [ POSITION ] SUBJECT = POES / 1*ALPHA / "@" POES = "poes" / PARTIAL PARTIAL = "p" / "o" / "e" / "s" / "po" / "oe" / "es" ALPHA = %x41-5A / %x61-7A NUMBER = 1*DIGIT DIGIT = "0" / "1" / "2" / "3" / "4" / "5" / "6" / "7" / "8" / "9" 5. Elements 5.1. Cats The standard notation for a cat is the word poes. Other words to describe a cat MAY be used (for example cat). 5.1.1. Partial Cats When referencing cats partly inside a container, the annotation MUST contain the full cat mark, adequately split inside and outside the container. If a cat is only partly visible in the frame of the picture of video, the annotation MAY only reference the visible portion of the cat. The partial cat notations is as follows: o p Marks the first quarter of a cat (head) o o Marks the second quarter of a cat (fore legs) o e Marks the third quarter of a cat (hind legs) o s Marks the fourth quarter of a cat (rump and tail) o po Marks the first half of a cat (head and fore legs) o es Marks the second half of a cat (hind legs and tail) o oe Marks the middle section of a cat The annotation for a partial cat SHOULD use the terms mentioned above that best describe the portion of the cat that is being referenced. 5.1.2. Other Animals Other animals or animate objects SHOULD be represented with a suitable word describing the species of such animal. The cat-specific words described in this document MUST NOT be used for non-feline subjects. 5.1.3. Balls of Yarn Balls of yarn SHOULD be represented with @. 5.2. Containers When a cat or other subject is inside a container, the container notation MUST be used. Such notation is denoted by its subject being between brackets. The type of bracket depends on the shape of the container as follows: o Square brackets represent boxes or other containers with a rectangular opening. o parentheses represent containers with a round opening or shape. o curly braces SHALL be used to represent soft containers without a fixed shape Additionally angle brackets MAY be used to group subjects outside a container, such annotations MUST NOT contain partial cats. 5.3. Positioning The Poescont notation only gives information about the general layout of subjects and containers, but it does make a distinction between horizontal and vertical positions. The order of positional operands SHOULD follow the order of how they appear from left to right in the source media. 5.3.1. Horizontal Position The + operator is used to represent subjects (or containers) next to each other. 5.3.2. Vertical Position When a subject is above or on top another, the operator / MUST be used. 5.3.3. Multiple Repeated Objects When multiple objects or configurations are repeated, the shorthand notation MAY be used. For horizontal positioning such notation is denoted by a number, followed by an optional * and then the annotation to be repeated. Similarly, for vertical position, repeated objects are denoted by a number followed by / and the annotation to be repeated. When using such a shorthand, the number of repetitions MUST be a positive integer. 5.4. Changes Over Time In the case of videos or other animations, a proper Poescont annotation SHOULD make use of the state change operator (=>) to mark significant changes in the cat position and major interactions. 5.4.1. Disambiguation Subject tokens MAY be followed by an integer identifier to distinguish specific cats, balls of yarn, or other subjects. An annotation containing such numeric disambiguations MUST contain such disambiguations for all cats and balls of yarn. Since in a static image a specific subject can only appear once, disambiguation identifiers SHOULD be used only on annotations showing state changes. 7. Internationalization Considerations The word poes is in Dutch and is provided to allow transfer of Poescont notations using only the US-ASCII [RFC20] character encoding. Users of other languages MAY extend the alphabet and use their localized words for cat and other animals. Using non-standard words for cats SHOULD NOT be used unless all parties involved in the production and consuption of the Poescont annotation have agreed upon a character encoding and a language prior to the transmission of the annotation. 9. Security Considerations A cat might find themselves in a container smaller than the perceived volume of the cat. While this might seem as a dangerous situation, it's actually a natural occurrence when the cat is in its liquid form. Cats might chew on the cardboard of the box containing them, to mitigate this attack we recommend having multiple boxes to put the cats into. 11. IANA Considerations This document has no IANA actions. 13. References [RFC20] "ASCII format for network interchange", STD 80, RFC 20, DOI 10.17487/RFC0020, October 1969, . [RFC2119] "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, March 1997, . [RFC8174] "Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, May 2017, . [RFC5234] "Augmented BNF for Syntax Specifications: ABNF", STD 68, RFC 5234, DOI 10.17487/RFC5234, January 2008, . Appendix A. Examples This appendix provides some examples of the Poescont notation. [poes] Figure 1: Cat in a box [poes] + poes Figure 2: Cat in a box next to a cat not in a box poes / [poes] Figure 3: A cat over a box containing another cat [po]es Figure 4: A cat with their head and fore legs inside a box 3 * poes Figure 5: 3 cats side by side 3 / poes Figure 6: 3 cats on top of each other poes + poes / [poes] Figure 7: A cat standing next to a box which has a cat on top and inside of it / [poes] Figure 8: Two cats standing on a box with another cat inside of it poes1 + [poes2] => poes2 + [poes1] Figure 9: A cat inside a box and a cat outside swap places