The OmniCode Specification:

Description for the New Net

Version 0.1.8

The OmniCode is a fun little way to present personal information and the spiritual successor to GeekCode, now a respectable, largely forgotten part of Internet history. It is designed to be both human- and machine-readable, condensed, yet descriptive; it can be put in your forum and email signatures, in your profile blurb, on your homepage and pretty much everywhere else you might desire.

Several tools exist to both create and decode OmniCode, the most notable of which is IByte's OmniCode Decoder. In general, the creation of OmniCode-processing tools is free for all, provided that your implementation doesn't break the specification in some horrible way. Making additions to the OmniCode on your own is also strongly discouraged to avoid breaking other people's implementations.

Discussion on the specification is held primarily through email. New proposals are sent to the maintainer directly (emails should include the word "OmniCode" in the subject to ease sorting and tagging). After preliminary evaluation, selected proposals are posted to the OmniCode Newsletter for discussion. Another post is made to the newsletter when a proposal is accepted and/or the specification is changed in any way.

To subscribe to the newsletter, send an email with the subject "subscribe" to a dedicated address and and follow the instructions you receive. To unsubscribe, send an email with the subject "unsubscribe" instead. Please note that you will need to use the same email address for both operations; if you no longer have access to the subscribed email, contact the maintainer for manual unsubscription.

General Rules

The basic rules for assembling one's OmniCode are as follows:

Some attributes are akin to keywords and can be applied to any code. Those are:

!Negation (this code does not apply to me)
+This code applies to me better than normal
-This code applies to me worse than normal
=The average value applies
*All possible values apply
?Unknown or unsure
(n)Level of accomplishment (0-9)
^(n)Aspiration to level of accomplishment (0-9)

Code Listing

sx — Gender

Your gender. Not to confuse with sexual preference, below. Possible values:

sxyMale
sxxFemale
sx*Hermaphrodite
sx!Genderless
sx~Transgender

cm — Height

Your height in centimeters. One inch is approximately 2.54cm. Fairly straightforward. Automated tools may also calculate and display the feet-inch equivalent. Examples:

cm170170 centimeters (or about 5'7")
cm150.With_hat150 centimeters tall, but with the hat

kg — Weight

Your weight in kilograms. One pound is approximately 0.45kg. Also fairly straightforward. Automated tools may also calculate and display the equivalent in pounds. Example:

kg7070 kilograms (or about 31.5lbs.)

sk — Skin Color

The color of your skin in hexadecimal notation. A color picker tool can be used to find a suitable approximation. Automated tools may render a sample of the color in a box for immediate reference. Attribute joining can be used to represent more complex cases (such as some parts of the body having a different color from the rest of the body). Examples:

skffffffPure white
sk000000Pure black
skead5c9A lighter skin tone
sk9e684fA darker skin tone
ske7dbbf&efc7a7.arms;facea T-shirt tan

ha — Hair Color

The color of your hair in hexadecimal notation. See "skin color" above for reference.

ey — Eye Color

The color of your eyes in hexadecimal notation. See "skin color" above for reference. This is not for eyesight — see below. The {L} and {R} attributes can be used to represent more complex cases (such as eyes having different colors). Examples:

ey84a4f0Blue eyes
ey543408Brown eyes
ey{R}ey543408&{L}ey3a6e2dOne brown and one green eye

es — Eyesight

The {L} and {R} attributes can be used to represent more complex cases (such as different eyesight for different eyes). Possible values:

es=20/20 vision
es+Better than 20/20 vision
esONearsighted
esoFarsighted
es#Astigmatic
es~Colorblind
es!Blind

sp — Sexual Preference

Your sexual preference. You may elaborate on this using the period notation. Examples:

sp=Heterosexual
sp<Homosexual
sp*Bisexual
sp!Asexual
sp!.HumanNon-humans
spOOther, please specify with a period (i.e. spO.cars)

Ag — Age

Your birth date. You may make it as accurate as you wish, in the order of year, month, day, hour, minute, using the period notation. The minimum is to specify the year. Automated tools may also calculate and display the current age of the code bearer. Examples:

Ag1992I was born in 1992
Ag1970.Jan.1.00.00I was born at the start of the UNIX Epoch

an — Ancestry

Indicates your ancestry, or, simply put, who your parents (and their parents) were. Several may apply. Examples:

anAAfrican
anCCelt
anEEuropean
anOAsian
anPPolynesian and other Islander
anINative (North and South) American
anUother aboriginal
anE&O.Chinapart European, part Chinese
an?Unsure
an!Nonhuman

hd — Handedness

Indicates your handedness. Possible values:

hddRight-handed
hdsLeft-handed
hdaAmbidextrous (both are equal in use)
hdnAmbi-sinistral (neither is any good)
hd!No hands

Lo — Longitude and Latitude

Your current, primary or usual location. You can be as accurate or general as you feel comfortable with. The format is the Google Maps format and can be easily obtained from it (just search for your address, right-click on the location, select "What's here?" from the drop-down menu and copy the coordinates from the search bar). Automated tools may also look up the location and present it on a map. Example:

Lo49.257498,-123.181458Vancouver, BC, Canada

GM — Time Zone

The time zone and daylight saving settings in your region. This code consists of five parts:

Examples:

GM+2DNUTC+2 hours, DST in a Northern hemisphere summer
GM-10DSUTC-10 hours, DST in a Southern hemisphere summer
GM0NUTC, no DST in a Northern hemisphere summer

Zo — Astrological Sign

Your astrological (zodiac) sign(s). Western astrological signs:

ZoQAquarius
ZoPPisces
ZoAAries
ZoTTaurus
ZoGGemini
ZoCCancer
ZoLLeo
ZoVVirgo
ZoBLibra
ZoSScorpio
ZosSagittarius
ZocCapricorn

Chinese astrological signs:

ZoRRat
ZoOOx
ZotTiger
ZorRabbit
ZoDDragon
ZoKSnake
ZoHHorse
ZobSheep/Goat
ZoMMonkey
ZooRooster
ZodDog
ZopPig

rl — Religion

Your religious affiliation. You can have more than one, following the ampersand notation. Submit additions to this section (with proof of existence and notability) to the maintainer. Current list:

rlCChristian
rlIMuslim
rlHHindu
rlBBuddhist
rlSSikh
rlYYoruba
rlJJewish
rljJainist
rlsShintoist
rlNNeo-pagan
rlLScientologist
rlRRastafarian
rlZZoroastrian
rlDDiscordian
rlGGravitist
rlFJedi
rlMFlying Spaghetti Monster
rlhHumanist
rlbChurch of the SubGenius
rl?Agnostic
rl!Atheist
rl<Self
rlOOther, please specify with a period

LA — Language

Languages you speak. This part of the specification is loosely based on the ISO-639-2 standard. Fluency is specified using the bracket notation on an IELTS numeric scale, where (1) would mean knowing a few menu items, swear words and likely being able to find a restaurant and the bathroom and (9) would imply perfect fluency. Use the latter with care, as even native speakers might not qualify for "perfect" fluency under certain circumstances. The specific dialect spoken may be specified with the period notation. Current list:

LAAAAfar
LAABAbkhazian
LAAFAfrikaans
LAAMAmharic
LAARArabic
LAASAssamese
LAAYAymara
LAAZAzerbaijani
LABABashkir
LABEByelorussian
LABGBulgarian
LABHBihari
LABIBislama
LABNBengali
LABOTibetan
LABRBreton
LACACatalan
LACOCorsican
LACSCzech
LACYWelsh
LADADanish
LADEGerman
LADZBhutani
LAELGreek
LAENEnglish
LAEOEsperanto
LAESSpanish
LAETEstonian
LAEUBasque
LAFAPersian
LAFIFinnish
LAFJFiji
LAFOFaeroese
LAFRFrench
LAFYFrisian
LAGAIrish
LAGDGaelic
LAGLGalician
LAGNGuarani
LAGUGujarati
LAHAHausa
LAHIHindi
LAHRCroatian
LAHUHungarian
LAHYArmenian
LAIAInterlingua
LAIEInterlingue
LAIKInupiak
LAINIndonesian
LAISIcelandic
LAITItalian
LAIWHebrew
LAJAJapanese
LAJIYiddish
LAJWJavanese
LAKAGeorgian
LAKIKlingon
LAKKKazakh
LAKLGreenlandic
LAKMCambodian
LAKNKannada
LAKOKorean
LAKSKashmiri
LAKUKurdish
LAKYKirghiz
LALALatin
LALNLingala
LALOLaothian
LALTLithuanian
LALVLatvian
LAMGMalagasy
LAMIMaori
LAMKMacedonian
LAMLMalayalam
LAMNMongolian
LAMOMoldavian
LAMRMarathi
LAMSMalay
LAMTMaltese
LAMYBurmese
LANANauru
LANENepali
LANLDutch
LANONorwegian
LAOCOccitan
LAOMOromo
LAOROriya
LAPAPunjabi
LAPLPolish
LAPSPashto
LAPTPortuguese
LAQUQuechua
LARMRhaeto-Romance
LARNKirundi
LARORomanian
LARURussian
LARWKinyarwanda
LASASanskrit
LASDSindhi
LASGSangro
LASHSerbo-Croatian
LASISinghalese
LASKSlovak
LASLSlovenian
LASMSamoan
LASNShona
LASOSomali
LASQAlbanian
LASRSerbian
LASSSiswati
LASTSesotho
LASUSudanese
LASVSwedish
LASWSwahili
LATATamil
LATETegulu
LATGTajik
LATHThai
LATITigrinya
LATKTurkmen
LATLTagalog
LATNSetswana
LATOTonga
LATRTurkish
LATSTsonga
LATTTatar
LATWTwi
LAUKUkrainian
LAURUrdu
LAUZUzbek
LAVIVietnamese
LAVOVolapuk
LAWOWolof
LAXHXhosa
LAYOYoruba
LAZHChinese
LAZUZulu
LAALArtifical language not listed (specify which with a period)

Ed — Education

Describes your formal (or informal, if that's your shtick) education. Specify the level of accomplishment with the bracket notation and the specific area of expertise with the period notation. Possible values:

EdaArts
EdbFinance and banking
EdmConstruction and manufacturing
EdeEducation
EdEEngineering
EdsScience
EdcComputing
EdhHealth
EdpPhilosophy
EdMMilitary
EdlLaw
EdgGovernment
EddMedia
EdnNature
EdrRecreation and leisure
EdSSales
EdtTransportation
Ed!None
EdOOther
Ed?I think I know something but I'm not sure what

Cr — Career

Describes your profession or primary source(s) of income. Specify the level of accomplishment with the bracket notation and the specific area of expertise with the period notation. Possible values:

CraArts
CrbFinance and banking
CrmConstruction and manufacturing
CreEducation
CrEEngineering
CrsScience
CrcComputing
CrhHealth
CrpPhilosophy
CrMMilitary
CrlLaw
CrgGovernment
CrdMedia
CrnNature
CrrRecreation and leisure
CrSSales
CrtTransportation
CrHHome-worker
CrLStudent
Cr!Unemployed
CrRRetired
Cr$Independently wealthy
CrPPart-time or temporary "odd jobs"
CrOOther
Cr?Money arrives from somewhere

Hb — Hobbies

A free-form description of what you like to do in your free time. There are no special rules here, apart from the usual notation guidelines. Examples:

HbMotorbikesMotorbikes
HbGaming.PC.FPSGaming in a very specific way (first person shooters on the PC)
HbDancing&TV.CSI;House_MDDancing and watching specific TV series

Pl — Political Leanings

Describes your political leanings. Current possible values:

PlCCommunist
PlmMarxist
PlnLeninist
PlDDemocrat
PlRRepublican
PlLLabor
PlTTory
PlGGreen
PllLibertarian
Pl{L}Left/Liberal
Pl{R}Right/Conservative
Pl{L}.FarFar left
PlMModerate or Centrist
Pl!Anarchist
PlOOther (please specify with a period, i.e., PlO.Theocrat)

Mv — Transportation Method

Describes your usual method of transportation. Possible values:

MvDDriving
MvWWalking
MvSScooter
Mvs'Segway'
MvMMotorbike
MvBPublic transit
MvHHired transport (i.e., taxi, limo)
MvLSchool bus
MvAVehicle capable of air travel
MvQVehicle capable of water travel
Mv-Wheelchair
MvOOther (specify with period, i.e., MvD.Car.Ford_Aspire)

Rl — Relationship Status

Describes your relationship (marital) status. Possible values:

RlMMarried
RlCLiving together or common law
RlEEngaged
RlDDating
RlWWidow(er)
RlPPolygamous
RlxDivorced
Rl!Single
Rl+Seeking
Rl-Not seeking
RlD&+Divorced and seeking

Kd — Children

Describes children you consider "yours". The general format is Kd[n][g]..., where 'n' is the number and 'g' is the gender. Further specification is possible using the period notation. An example would be Kd2x1y.brats (someone with two girls and a boy who are prone to misbehave). Additional parameters:

Kd!No kids
Kd?Possible kids somewhere
Kd>Expecting kids
Kd*Too many kids
Kd+Someone else's kids (stepchildren)
Kd!.NeverResolved to not have any kids

Pe — Pets

Describes any pets you might have. The general groups (as well as some specifics, for simplicity's sake) are:

PeAAmphibian (frog, salamander etc.)
PeBAvian (a bird)
PeNArachnoid
PeIInsect
PeRReptile
PerRodent
PeFFish
PeMMollusk (clam, snail, scallop, squid etc.)
PePPlant
PeOOther, please specify with a period
PeCCat
PeDDog
PeSSnake
PeHHare or rabbit
PeTRat

MB — Myers-Briggs Personality Type

Indicates your Myers-Briggs personality type. Your personality type can be determined using one (or more) of the many online personality tests available: [1], [2], [3]. Additional modifiers can be added using the period notation (i.e., MBINTP.Extreme_introvert). Possible values:

MBENFPMBINFPMBENFJMBINFJ
MBENTPMBINTPMBENTJMBINTJ
MBESTJMBISTJMBESFJMBISFJ
MBESTPMBISTPMBESFPMBISFP

FH — Facial Hair

Describes your facial hair. You may omit this code if having facial hair would be very strange for you indeed. Specify further using the period notation. Possible values:

FHbFull beard
FHgGoatee
FHpSoul patch
FHmMustache
FHsSideburns
FHSStubble
FH!No facial hair
FHOOther, please elaborate
FHm.HandlebarHandlebar mustache

BA — Body Adornments

Describes any permanent or semi-permanent body adornments you might have. You may chain as many of those as you wish and be as elaborate as you like using the ampersand, semicolon and period joining. A fairly elaborate example would be BAT.Shoulder.Bird&T.Ankle.Chain&P.Ears;Belly&I. Possible values:

BATTatoo
BAPPiercing
BABBranding
BASScarring
BAIImplants
BAlStretching
BAOOther, please elaborate

IN — Internet Use

Indicates time spent on the Internet each day in hours. Type or speed of connection can be added with a trailing period modifier. The usual modifiers apply as well.

IN16.CableI use cable
IN!I don't use the Internet
IN?Internet? What's that?
IN2.Workdays&16.Weekends2 hours on workdays and 16 on weekends

The addictions you are willing to admit having. Further specification can be indicated using the period notation (i.e. AdC.Tea.Earl_Grey.Hot).

The list doesn't include things admitting which can get you in trouble with the law.

AdCCaffeine
AdNNicotine
AdMMarijuana
AdAAlcohol
AdIInternet
AdGGambling
AdSSex
Ad+More than I can fit here
Ad*Everything
Ad!No addictions
Ad?Addicted? Me?
AdOOther (i.e. AdO.Chocolate)

Pr — Programming Languages

Describes languages you program in. This is a simplified notation; just write the code followed by whatever programming language you use. Add modifiers as necessary. Examples:

Pr?Programming? What's that?
Pr!I don't do programming.
Pr*I program in all languages
PrPascalPascal
PrPascal.TurboTurbo Pascal
PrPascal.DelphiDelphi (Object Pascal)
PrPHPPHP
PrPerlPerl
PrPythonPython
PrBASICBASIC
PrBASIC.VisualVisual Basic
PrCC
PrC++C++
PrC#C Sharp
PrHTMLHTML
PrXMLXML
PrCOBOLCOBOL
PrJavaJava
PrJavaScriptJavaScript
PrLispLisp
PrSGMLSGML
PrRubyRuby
PrRuby.on_RailsRuby on Rails

UF — UserFriendly Connection

This code is depreciated and its use is discouraged. The reason is: UserFriendly is (was?) a local phenomenon. OmniCode strives for Internet-wide recognition.

OmniCode processing tool authors may display a depreciation notice with the decoding or ignore this code altogether.

Change Log