Каждый элемент (блок) определяет действия одного или нескольких акторов
- для людей – русскоязычным текстом элемента
- для машин – элементом <code>
Автор гипертекста создаёт отдельные «семантические» инструментальные гипертексты
Выборка и обработка «машиновыполняемых» блоков
var t1 = "";
blocks(window.opener.document.body.children);
window.opener.eval(t1);
Обработка блоковfunction blocks(els) {
Цикл по блокамfor (var i = 0; i < els.length; i++) {
Обработка блокаblock1(els[i]);
}
}
Обработка блокаfunction block1(el) {
var suff = "";
switch(el.tagName) {
«машиновыполняемый» блок (code)case "CODE":
программный текст элементаt1 += el.textContent+"\n"; break;
композитный блок (cb, if, sw, fn)
case "CB":
case "IF":
case "SW":
case "FN":
закрывающая скобка блокаsuff = "}\n";
базовый блок (bb)case "BB":
Обработка блоковblocks(el.children); t1 += suff;
}
};