syntax = "proto3"; | |
message Document { | |
Tag root = 1; | |
} | |
message Tag { | |
Name name = 1; | |
repeated Attribute attrs = 2; | |
repeated Tag subtags = 3; | |
enum Name { | |
A = 0; | |
ABBR = 1; | |
ADDRESS = 2; | |
AREA = 3; | |
ARTICLE = 4; | |
ASIDE = 5; | |
AUDIO = 6; | |
B = 7; | |
BASE = 8; | |
BDI = 9; | |
BDO = 10; | |
BLOCKQUOTE = 11; | |
BODY = 12; | |
BR = 13; | |
BUTTON = 14; | |
CANVAS = 15; | |
CAPTION = 16; | |
CITE = 17; | |
CODE = 18; | |
COL = 19; | |
COLGROUP = 20; | |
DATA = 21; | |
DATALIST = 22; | |
DD = 23; | |
DEL = 24; | |
DFN = 25; | |
DIV = 26; | |
DL = 27; | |
DT = 28; | |
EM = 29; | |
EMBED = 30; | |
FIELDSET = 31; | |
FIGCAPTION = 32; | |
FIGURE = 33; | |
FOOTER = 34; | |
FORM = 35; | |
H1 = 36; | |
H2 = 37; | |
H3 = 38; | |
H4 = 39; | |
H5 = 40; | |
H6 = 41; | |
HEAD = 42; | |
HEADER = 43; | |
HR = 44; | |
HTML = 45; | |
I = 46; | |
IFRAME = 47; | |
IMG = 48; | |
INPUT = 49; | |
INS = 50; | |
KBD = 51; | |
KEYGEN = 52; | |
LABEL = 53; | |
LEGEND = 54; | |
LI = 55; | |
LINK = 56; | |
MAIN = 57; | |
MAP = 58; | |
MARK = 59; | |
META = 60; | |
METER = 61; | |
NAV = 62; | |
NOSCRIPT = 63; | |
OBJECT = 64; | |
OL = 65; | |
OPTGROUP = 66; | |
OPTION = 67; | |
OUTPUT = 68; | |
P = 69; | |
PARAM = 70; | |
PRE = 71; | |
PROGRESS = 72; | |
Q = 73; | |
RB = 74; | |
RP = 75; | |
RT = 76; | |
RTC = 77; | |
RUBY = 78; | |
S = 79; | |
SAMP = 80; | |
SCRIPT = 81; | |
SECTION = 82; | |
SELECT = 83; | |
SMALL = 84; | |
SOURCE = 85; | |
SPAN = 86; | |
STRONG = 87; | |
STYLE = 88; | |
SUB = 89; | |
SUP = 90; | |
TABLE = 91; | |
TBODY = 92; | |
TD = 93; | |
TEMPLATE = 94; | |
TEXTAREA = 95; | |
TFOOT = 96; | |
TH = 97; | |
THEAD = 98; | |
TIME = 99; | |
TITLE = 100; | |
TR = 101; | |
TRACK = 102; | |
U = 103; | |
UL = 104; | |
VAR = 105; | |
VIDEO = 106; | |
WBR = 107; | |
} | |
} | |
message Attribute { | |
Name name = 1; | |
Value value = 2; | |
message Value { | |
oneof value { | |
bool bool_value = 1; | |
uint64 uint_value = 2; | |
int64 int_value = 3; | |
double double_value = 4; | |
int64 px_value = 5; | |
uint32 pct_value = 6; | |
} | |
} | |
enum Name { | |
ACCEPT = 0; | |
ACCEPT_CHARSET = 1; | |
ACCESSKEY = 2; | |
ACTION = 3; | |
ALIGN = 4; | |
ALT = 5; | |
ASYNC = 6; | |
AUTOCOMPLETE = 7; | |
AUTOFOCUS = 8; | |
AUTOPLAY = 9; | |
AUTOSAVE = 10; | |
BGCOLOR = 11; | |
BORDER = 12; | |
BUFFERED = 13; | |
CHALLENGE = 14; | |
CHARSET = 15; | |
CHECKED = 16; | |
CITE = 17; | |
CLASS = 18; | |
CODE = 19; | |
CODEBASE = 20; | |
COLOR = 21; | |
COLS = 22; | |
COLSPAN = 23; | |
CONTENT = 24; | |
CONTENTEDITABLE = 25; | |
CONTEXTMENU = 26; | |
CONTROLS = 27; | |
DATA = 28; | |
DATETIME = 29; | |
DEFAULT = 30; | |
DEFER = 31; | |
DIR = 32; | |
DIRNAME = 33; | |
DISABLED = 34; | |
DOWNLOAD = 35; | |
DRAGGABLE = 36; | |
DROPZONE = 37; | |
ENCTYPE = 38; | |
FOR = 39; | |
FORM = 40; | |
FORMACTION = 41; | |
HEADERS = 42; | |
HEIGHT = 43; | |
HIDDEN = 44; | |
HIGH = 45; | |
HREF = 46; | |
HREFLANG = 47; | |
ICON = 48; | |
ID = 49; | |
ISMAP = 50; | |
ITEMPROP = 51; | |
KEYTYPE = 52; | |
KIND = 53; | |
LABEL = 54; | |
LANG = 55; | |
LANGUAGE = 56; | |
LIST = 57; | |
LOOP = 58; | |
LOW = 59; | |
MANIFEST = 60; | |
MAX = 61; | |
MAXLENGTH = 62; | |
MEDIA = 63; | |
METHOD = 64; | |
MIN = 65; | |
MULTIPLE = 66; | |
MUTED = 67; | |
NAME = 68; | |
NOVALIDATE = 69; | |
OPEN = 70; | |
OPTIMUM = 71; | |
PATTERN = 72; | |
PING = 73; | |
PLACEHOLDER = 74; | |
POSTER = 75; | |
PRELOAD = 76; | |
RADIOGROUP = 77; | |
READONLY = 78; | |
REL = 79; | |
REQUIRED = 80; | |
REVERSED = 81; | |
ROWS = 82; | |
ROWSPAN = 83; | |
SANDBOX = 84; | |
SCOPE = 85; | |
SCOPED = 86; | |
SEAMLESS = 87; | |
SELECTED = 88; | |
SHAPE = 89; | |
SIZE = 90; | |
SIZES = 91; | |
SPAN = 92; | |
SPELLCHECK = 93; | |
SRC = 94; | |
SRCDOC = 95; | |
SRCLANG = 96; | |
SRCSET = 97; | |
START = 98; | |
STEP = 99; | |
STYLE = 100; | |
SUMMARY = 101; | |
TABINDEX = 102; | |
TARGET = 103; | |
TITLE = 104; | |
TYPE = 105; | |
USEMAP = 106; | |
VALUE = 107; | |
WIDTH = 108; | |
WRAP = 109; | |
} | |
} |