synesis  Cheat Sheet
Basic · pt-BR
Comece aqui synesis init Execute em uma pasta vazia para criar project.synp, template.synt, references.bib, annotations.syn e ontology.syno.
Arquivos e saídas
.synpProjeto
.syntTemplate
.bibReferências
.synAnotações
.synoOntologia
JSON CSV Excel Alpaca JSONL
.synp Arquivo de Projeto Ponto de entrada único do compilador. Declara todos os outros arquivos.
Sintaxe
PROJECT demo TEMPLATE "template.synt" INCLUDE BIBLIOGRAPHY "references.bib" INCLUDE ANNOTATIONS "annotations.syn" INCLUDE ONTOLOGY "ontology.syno" END PROJECT
Regras
TEMPLATEObrigatório. Exatamente um arquivo .synt
BIBLIOGRAPHYUse um arquivo .bib. A implementação atual carrega o primeiro INCLUDE
ANNOTATIONSUm INCLUDE por arquivo .syn. Ordem não importa
ONTOLOGYUm INCLUDE por arquivo .syno. A ontologia define os códigos válidos
METADATABloco opcional. Campos: version, author, created, modified, dataset
CLI
synesis check project.synp synesis compile project.synp \ --json basic_out.json synesis compile project.synp \ --csv out/ --xls out.xlsx
Erros frequentes
E065ERRO TEMPLATE não declarado Adicione TEMPLATE "…"
E061ERRO Anotações sem INCLUDE Adicione INCLUDE ANNOTATIONS
E062ERRO Ontologia sem INCLUDE Adicione INCLUDE ONTOLOGY
E066ERRO Bloco PROJECT duplicado Mantenha somente um PROJECT
Invariante: saídas (JSON, CSV, Excel) geradas somente se zero ERROs. AVISOs não bloqueiam. Compilação sempre determinística.
.synt Template / Contrato Define quais campos existem, seus tipos e se são obrigatórios. É a única fonte da verdade.
Sintaxe — FIELDS e FIELD
SOURCE FIELDS OPTIONAL description END SOURCE FIELDS ITEM FIELDS REQUIRED citation, note, code END ITEM FIELDS ONTOLOGY FIELDS REQUIRED definition, group END ONTOLOGY FIELDS FIELD citation TYPE QUOTATION SCOPE ITEM DESCRIPTION Excerto textual da fonte GUIDELINES Extraia um excerto completo e autocontido. Preserve a redação original. Não parafraseie. END GUIDELINES END FIELD FIELD code TYPE CODE SCOPE ITEM GUIDELINES Use códigos existentes na ontologia. Evite sinônimos redundantes. END GUIDELINES END FIELD
Tipos de campo (TYPE)
TYPEEscopoNotas obrigatórias
QUOTATIONITEMExcerto da fonte
MEMOITEMNota analítica do pesquisador
CODEITEMDeve existir na ontologia
CHAINITEMAvançado: exige ARITY. RELATIONS opcional
TEXTqualquerTexto livre genérico
DATESOURCEFormato YYYY-MM-DD
SCALEqualquerExige FORMAT [min..max]
ENUMERATEDqualquerExige VALUES. Lista fechada sem ordem
ORDEREDqualquerExige VALUES com índice [1] [2]…
TOPICONTOLOGYAgrupamento dinâmico, valor aberto
Contrato e instruções
REQUIREDObrigatório — erro se ausente no bloco
OPTIONALPode ser omitido
GUIDELINESInstruções livres para anotadores e IA. O compilador exporta, mas não interpreta
REQUIRED BUNDLEAvançado: campos co-ocorrem em igual quantidade
Erros frequentes
E047ERRO CHAIN sem ARITY Adicione ARITY >= 2
E039ERRO Campo em FIELDS sem bloco FIELD Crie o bloco FIELD correspondente
E042AVISO FIELD definido mas não em FIELDS Adicione ao bloco *FIELDS ou remova
E049ERRO ORDERED sem VALUES Adicione bloco VALUES com índices
E051ERRO SCALE sem FORMAT Adicione FORMAT [min..max]
E069ERRO Campo definido duas vezes Remova definição duplicada
Projeto Basic: usa somente TEXT, QUOTATION, MEMO, CODE e TOPIC. CHAIN, BUNDLE, VALUES e FORMAT são extensões opcionais para templates mais avançados.
.bib Referências BibTeX Cada @bibref usado em .syn deve existir aqui como chave BibTeX.
Sintaxe mínima
# A chave é o @bibref dos blocos SOURCE @article{smith2024, author = {Smith, Jane}, title = {Understanding Community Resilience}, journal = {Journal of Social Research}, year = {2024}, volume = {12}, pages = {45--67} }
Regras
ChaveCase-insensitive. O compilador normaliza para minúsculas internamente
@bibrefO identificador usado no SOURCE e ITEM deve bater exatamente com esta chave (após normalização)
Tipos BibTeXarticle, book, inproceedings, misc, etc. O compilador aceita qualquer tipo válido
Arquivo ativoUse um único INCLUDE BIBLIOGRAPHY. A implementação atual lê o primeiro .bib declarado
O compilador usa bibtexparser para leitura. O campo _original_key preserva a grafia original para uso nos exports, mesmo após normalização.
Erros frequentes
E001ERRO @bibref do SOURCE não existe no .bib Adicione entrada BibTeX com a chave
E063ERRO Arquivo .bib não encontrado Verifique o caminho no .synp
E070ERRO @bibref duplicado em SOURCEs Mantenha somente um SOURCE por @bibref no projeto
smith2024, Smith2024 e SMITH2024 são tratados como a mesma chave. Use uma grafia consistente para evitar confusão.
.syn Anotações SOURCE declara a fonte. ITEM contém os recortes analíticos. Um SOURCE pode ter vários ITEMs.
Bloco SOURCE
SOURCE @smith2024 description: Qualitative study on community resilience strategies in urban contexts. END SOURCE
Bloco ITEM — projeto Basic
ITEM @smith2024 citation: "People here look out for each other. When the flood came, nobody waited for official help — neighbors just organized themselves." note: Participant describes spontaneous collective action as a resilience mechanism. code: Social_Cohesion, Collective_Action END ITEM
Campos do ITEM básico
citationExcerto literal e autocontido da fonte
noteInterpretação analítica distinta da citação
codeUm ou mais conceitos existentes na ontologia
Múltiplos codes
# Formas equivalentes: code: Conceito_A, Conceito_B ← vírgula code: Conceito_A ← linhas code: Conceito_B separadas
Linkagem: a relação ITEM → SOURCE é estabelecida pelo compilador via @bibref compartilhado — não por aninhamento. SOURCE e ITEM podem estar em arquivos .syn diferentes.
Erros frequentes
E002ERRO ITEM sem SOURCE correspondente Crie um SOURCE @bibref incluído no projeto
E004AVISO Código não definido na ontologia Adicione ONTOLOGY no .syno
E020ERRO Campo REQUIRED ausente Ver REQUIRED no .synt
E023ERRO Bloco ITEM vazio Adicione pelo menos um campo
E022ERRO Campo desconhecido no bloco Defina FIELD no .synt ou corrija o nome
E003AVISO SOURCE sem ITEMs Adicione pelo menos um ITEM
Keywords case-insensitive: SOURCE, source e Source são equivalentes.
.syno Ontologia Define o vocabulário controlado. Todo code: usado nas anotações deve existir aqui.
Bloco ONTOLOGY
ONTOLOGY Social_Cohesion definition: The degree to which community members trust, support, and cooperate with one another. group: Community_Resilience END ONTOLOGY ONTOLOGY Collective_Action definition: Coordinated efforts by community members to address shared challenges. group: Community_Resilience END ONTOLOGY
Regras de nomenclatura e GROUP
EspaçosProibidos no nome do conceito. Use _ como separador: Solar_Energy
groupCampo TYPE TOPIC: valor aberto, sem aspas e sem espaços
Cypher-safeNomes compatíveis com Neo4j por convenção
DuplicatasMesmo conceito definido 2× → E068
Agrupamento via TYPE TOPIC
# group usa TYPE TOPIC no template ONTOLOGY Social_Cohesion group: Community_Resilience END ONTOLOGY ONTOLOGY Collective_Action group: Community_Resilience END ONTOLOGY # Ambos aparecem no mesmo agrupamento temático
Erros frequentes
E004AVISO code: usa conceito inexistente Adicione ONTOLOGY conceito aqui
E032ERRO Valor TOPIC com espaço Use _ em vez de espaço no valor
E068ERRO Conceito definido duas vezes Remova a definição duplicada
W071AVISO definition duplicada entre conceitos Revise se conceitos são realmente distintos
E005ERRO Projeto inclui .syno mas template sem ONTOLOGY FIELDS Adicione ONTOLOGY FIELDS no .synt
Dependência crítica: todo code: do projeto Basic deve existir como ONTOLOGY nome aqui. Em templates avançados, referências em chain: seguem a mesma regra.
Como os arquivos e blocos se conectam
references.bib @article{smith2024, ...} SOURCE @smith2024 description: ... ITEM @smith2024 citation, note, code ONTOLOGY conceito definition, group TOPIC / group Community_Resilience chave BibTeX @bibref code: group:
Leitura: a chave BibTeX liga a referência ao SOURCE; o mesmo @bibref liga cada ITEM ao SOURCE; cada valor de code: aponta para um bloco ONTOLOGY; e o campo group, declarado como TYPE TOPIC, reúne conceitos no mesmo tema.
Ver código Mermaid
flowchart LR B["references.bib<br/>@article{smith2024}"] S["SOURCE @smith2024"] I["ITEM @smith2024"] O["ONTOLOGY conceito"] T["TOPIC / group<br/>Community_Resilience"] B -- "chave BibTeX" --> S S -- "@bibref" --> I I -- "code:" --> O O -- "group: TYPE TOPIC" --> T
Workflow
01Criar .synp
02Definir contrato .synt
03Preparar referências .bib
04Anotar dados .syn
05Definir conceitos .syno
06synesis check project.synp
07synesis compile project.synp --json basic_out.json
JSON · CSV · Excel · Alpaca JSONL
Exportação do projeto Basic
# JSON canônico v3.0 synesis compile project.synp --json basic_out.json # Dataset Alpaca JSONL para fine-tuning synesis compile project.synp --alpaca basic_alpaca.jsonl # Os dois artefatos podem ser gerados na mesma execução synesis compile project.synp \ --json basic_out.json \ --alpaca basic_alpaca.jsonl
Execute os comandos dentro de case-studies/Basic. O JSON preserva o projeto compilado; o arquivo Alpaca contém pares de instrução e resposta derivados dos dados validados.