BR112020007044A2 - linguagem de programação - Google Patents

linguagem de programação Download PDF

Info

Publication number
BR112020007044A2
BR112020007044A2 BR112020007044-0A BR112020007044A BR112020007044A2 BR 112020007044 A2 BR112020007044 A2 BR 112020007044A2 BR 112020007044 A BR112020007044 A BR 112020007044A BR 112020007044 A2 BR112020007044 A2 BR 112020007044A2
Authority
BR
Brazil
Prior art keywords
item
identity
type
data
items
Prior art date
Application number
BR112020007044-0A
Other languages
English (en)
Inventor
Jihui Zhang
Original Assignee
Baiyete (Shanghai) Software Technology Co., Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Baiyete (Shanghai) Software Technology Co., Ltd filed Critical Baiyete (Shanghai) Software Technology Co., Ltd
Publication of BR112020007044A2 publication Critical patent/BR112020007044A2/pt

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/31Programming languages or programming paradigms
    • G06F8/315Object-oriented languages
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/31Programming languages or programming paradigms

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

É proporcionada uma nova linguagem de programação de Computador, a saber, a linguagem DT, incluindo as características da linguagem e a implementação desta. Hoje em dia, a aplicação de processamento de dados está se tornando mais e mais amplamente usada em várias indústrias, e o uso de uma linguagem de Computador de décadas atrás para algum desenvolvimento de software de indústria, é muito problemático, ineficiente, difícil de manter, enquanto que tendo mais bugs, longo ciclo de desenvolvimento, e baixa taxa de implementação. Esta linguagem preconiza programação de "datamation, estruturação, configuração", e alcança produção de software rápida e eficiente através da adiação de alguns novos tipos de dados e a operação feita por esta linguagem para este tipo. Programadores e criadores podem configurar e codificar com novos tipos de dados pelo uso das ferramentas de programação de Cliente providas por esta linguagem, em segioda o Cliente, navegador or servidor da linguagem interpreta e executa, e o servidor da linguagem pode interpretar como outras linguagens.

Description

Relatório Descritivo da Patente de Invenção para "LIN- GUAGEM DE PROGRAMAÇÃO",
CAMPO DA REVELAÇÃO
[001] A presente invenção é uma nova linguagem de programa- ção, denominada "Linguagem de programação DT". Em algumas con- cretizações desta, especialmente uma nova ferramenta de linguagem de programação para aperfeiçoar a eficiência de programação, desen- volvimento do software e eficiência de projeto e eficiência de proces- samento de dados.
ANTECEDENTES
[002] As linguagens de programação de computador de corrente principal atuais foram criadas décadas atrás, e muitas delas estão de lado de nossa presente era. Por exemplo: C++ em 1983; Java em 1995; CA .Net em 2000; Python em 1991. Mesmo a última linguagem de programação CH .Net foi lançada 17 anos atrás. Quando pessoas desenvolveram estas linguagens de programação naquele momento, as tecnologias de hardware e software do computador estavam ainda em um estágio de desenvolvimento muito preliminar, a aplicação ex- tensiva de dados em várias indústrias não foi efetuada. Com o decor- rer do tempo, com o progresso de software e hardware de computa- dor, o processo de dados está se tornando mais e mais amplamente usado em várias indústrias e todas as condições de vida. O uso de lin- guagens de programação de computador criadas a décadas atrás para desenvolver software ou processar dados em várias indústrias é muito problemático, muito ineficiente, e muito difícil de efetuar pós- manutenção após desenvolvimento; existem muito mais defeitos, o ciclo de tempo de desenvolvimento é muito longo, e a taxa de imple- mentação é muito baixa. Mesmo se o software foi bem sucedidamente implementado, como o tempo passando, muitos usuários descartaram o mesmo devido à mudança de demandas. No presente, o uso da lin-
guagem de programação de corrente principal atual para desenvolver software é difícil de manter a mutação dos riscos necessários às em- presas. Neste momento, estes desenhos principais de linguagem de programação não compreendem estes problemas, porque neste mo- mento a Data Era (DT Era) ainda não chegou.
SUMÁRIO Problema Técnico:
[003] Nos dias de hoje, a eficiência de processamento de todas as linguagens de programação de computador de corrente principal atuais é muito baixa e existem muitos Defeitos. A presente invenção aperfeiçoa grandemente a eficiência de produção e produtividade. À presente invenção é uma nova linguagem de programação de compu- tador, isto é, Linguagem de programação DT. Diferente das linguagens de programação de computador tradicionais, a presente nova lingua- gem de programação encapsula todos os tipos de dados com tipos de dados de "biblioteca" e tipos de dados de "tabela", e inicializa o méto- do de "Datalization Programming", que é mais favorável à análise de dados, extração de dados, e inteligência artificial. Os tipos de dados recentemente inventados, tais como "Tipo de Dado de Identidade, Tipo de Dado de Relação, Tipo de Dado de Função, Tipo de Dado de Ce- nário, Tipo de Dado de Habilidade, Tipo de Fluxo de Dado..." etc., fo- ram adicionados na presente nova linguagem de programação. A nova linguagem de programação tem realizado produção de software rápida e eficiente e processamento de dados através dos tipos de dados re- centemente inventados, e a operação foi feita para estes tipos de da- dos por esta nova linguagem de programação. Solução Técnica:
[004] No presente, todas as linguagens de computador de corren- te principal atuais são linguagens de programação de versão autôno- ma, enquanto que a presente nova linguagem de programação é uma linguagem de programação de versão de rede. Os terminais do cliente estão no balcão de entrada, e existem um grande número de servido- res de nuvem no estágio posterior para suportar os mesmos. O usuá- rio codifica, escreve e se desenvolve no terminal do cliente, e, em se- guida, carrega ao servidor de nuvem desta linguagem de programa- ção. O servidor interpretará os códigos de aplicação, e usando método de extração de dados, método de aprendizagem de máquina, e produz a comparação com os dados da rede total, e então avalia o melhor método e o pior método, ou a prática que necessita ser otimizada, desse modo, estimulando os usuários a aperfeiçoar a codificação e desenvolvimento, ou usando o Al para proporcionar uma melhor codi- ficação ou escritura ou prática para os usuários. Os desenvolvedores ou criadores podem configurar e codificar pelo uso da ferramenta de programação de terminal de cliente provida por esta nova linguagem de programação, e os tipos de dados recentemente adicionados. Em seguida, pode ser interpretado pelo terminal do cliente, terminal do na- vegador, ou terminal do servidor desta linguagem de programação, e pode também ser interpretada pelo terminal do servidor desta lingua- gem para outras linguagens de programação, tal como Java, CH .Net, JavaScript, C++, Python etc. Novas características da presente lingua- gem de programação são como seguem:
1. Melhor em configuração do que codificação manual, porque a configuração é mais simples e mais fácil de usar, e com me- nos defeitos.
2. Todos os tipos de dados são encapsulados na forma de tipo de dados de "biblioteca" e tipo de dados de "tabela", onde a "bibli- oteca" e a "tabela" são classificadas.
3. Novos Tipos de Dados: A. Tipo de Dado de Identidade; B. Tipo de Dado de Relação; C. Tipo de Dado de Função; D. Tipo de Dado de Cenário; E. Tipo de Dado de Habilidade; F. Tipo de Fluxo de
Dado; G. Tipo de Dado de Configuração e Tipo de Dado de Usuário; H. Tipo de Dado de Verificação; |. Novo Tipo de Dado de Controle de Rede Grad; e outros Tipos de Dado únicos nesta linguagem. a) Tipo de Dado de Identidade
[005] O tipo de dado de identidade inclui a informação de todos os cenários. A informação de identidade necessita ser descrita a fun- ção que desempenha em cada cenário quando ela é definida. Por exemplo, uma tabela: Ela é uma tabela na base de dados. Ela é um controle de rede na interface frontal quando ela atua como um master, isto é, enquanto que está na interface de controle independente. E é um controle baixo ou um controle de árvore, etc., quando é denomina- do por outras interfaces (quando atua como um convidado).
[006] O tipo de dado de identidade também inclui itens de habili- dade, que são também divididos em itens de habilidade de sistema ou itens de habilidade do usuário. Os itens de habilidade do sistema são alguns itens de habilidades gerais providos por esta linguagem de pro- gramação, o ambiente do sistema é responsável pela interpretação e execução, ou translação. Os itens de habilidade do usuário são geral- mente orientados para negócios ou orientados para serviço, que é es- crito ou configurado pelos desenvolvedores usando esta nova lingua- gem de programação de acordo com as necessidades atuais.
[007] O desenho de tipo de dado de princípio de identidade é somente relacionado a si e a todos seus itens de inclusão. b) Tipo de dado de Relação
[008] O tipo de dado de relação descreve a relação entre dois itens de identidade em vários cenários, tal como abaixo de duas iden- tidades: Identidade A, Identidade B, elas são relação uma para muitas na base de dados, a Identidade A suporta uma, e a identidade B su- porta múltipla. Na interface UI, quando a Identidade A registra mudan- ças (os itens de mudança podem ser configurados pelo desenvolvedor usando esta nova linguagem de programação), então a identidade B atualizará a operação. c) Tipo de Dado de Função
[009] O tipo de dado de função descreve ações ou sinergias en- tre dois ou múltiplos itens de identidade. Quando um item de identida- de necessita colaborar com outros itens de identidade para completar uma tarefa, funções são requeridas. ltens de função are definidas na base que o item de identidade e o item de relação são ambos claros, isto é, item de relação deve ser definido primeiro e em seguida a fun- ção é definida, quando definindo uma função. Por exemplo, Identidade A e Identidade B: Existe uma relação um para muitos entre elas, as vezes o usuário pode usar as mesmas na interface. Para a Identidade A, se a Identidade A necessita pesquisar a informação da Identidade B, ou a Identidade A necessita contar a informação da Identidade B, neste caso a Identidade A necessita usar a função. ltem de função in- clui habilidades de função. d) Tipo de Dado de Cenário
[0010] O tipo de dado de cenário define cada ponto de operação do software, tal como: base de dados indica o final da base de dados, cliente indica o final do cliente, servidor indica o final do servidor, na- vegador indica o final do navegador, e móvel indica o final móvel (ou final do fone ou final da almofada). Existem definições diferentes de membros em cada cenário diferente. e) Tipo de Dado de Habilidade
[0011] Os tipos de dados de habilidade são divididos nos itens de habilidade de identidade e itens de habilidade de função, que são usa- dos para a ação de itens de identidade e a ação de itens de cenário respectivamente. Tipos de dados de habilidade incluem informação de cenário, porque uma habilidade pode cruzar múltiplos cenários. f) Tipo de dado de fluxo de dado
[0012] O tipo de fluxo de dado define o fluxo de dado ou a destina- ção e a fonte de dado. Se um item de campo de nível de tabela neces- sita ser definido, então é necessário definir a fonte de dado deste campo. Existem várias classificações de fonte conforme segue: Everyone: De qualquer entrada ou seleção do usuário; Design: Do design entrada ou seleção do usuário; Debug: Do debugging entrada ou seleção do usuário; Install: Da instalação entrada ou seleção do usuário; User: Da operação final entrada ou seleção do usuário; UserSelect: A partir da seleção do usuário e indica o item a ser seleci- onado; Table: A partir da tabela ou outros itens de identidade, e especificam outros itens de tabela; Field: A partir do campo na tabela; Record: De um registro na tabela; Function: A partir da função, e indica o nome da função; Interface: A partir da interface; Instance: A partir do exemplo; Machine: A partir da máquina ou equipamento; Other: De outros itens. g) config Tipo de Dados de Configuração
[0013] Os tipos de dados de configuração são divididos nos se- guintes níveis, indicando que se configurarão os mesmos separada- mente. design: Criador ou desenvolvedor; debug: Testador; install: Instalador; user: Usuário; everyone: Quem quer que seja; h) Tipo de dados de Verificação
Integer: Item de inteiro, incluindo se a opção nula é permitida, valores mínimos, valores máximos; Decimal: Item de inteiro, incluindo se a opção nula é permitida, valores mínimos, valores máximos; e números decimais; Number: Item de número, incluindo se a opção nula é permitida, com- primento mínimo, e comprimento máximo; String: String item, incluindo se a opção nula é permitida, comprimento mínimo, e comprimento máximo; e itens permitidos, itens rejeitados, expressões regulares, itens de função personalizados; Datetime: Date item, incluindo se a opção nula é permitida, data míni- ma, data máxima, format de data; File: Item de arquivo, incluindo se a opção nula é permitida, valores mínimos, valores máximos; "businessCheck": Item de verificação de Business logic. Novo Tipo de Dado de Controle Rede Grad
[0014] O novo tipo de dado de controle de rede grad difere do con- trole tradicional em que ele adiciona, a área de parâmetro, a área de exibição (área de visualização), e a área de edição, em adição às fun- ções de exibição de rede normal. Estas três áreas são combinadas em um controle, e a interação entre elas é coordenada ou interpretada por esta nova linguagem de programação. A área de parâmetro proporcio- na um controle de rede para filtragem, enquanto que extraindo dados. A área de exibição exibe detalhes quando um usuário clica uma série de registros de controle de rede. A área de edição exibe ao usuário os detalhes de conteúdo que necessitam serem editados após o usuário clicar um botão. A área de exibição e a área de edição podem ser combinadas juntas. Onde cada item interno da rede grad, cada item interno da área de parâmetro, cada item interno da área de edição, e cada item interno da área de exibição, podem ser configurados pelo criador ou pelo usuário final.
Efeito Técnico
[0015] No presente, todas as linguagens de computador de corren- te principal atuais foram criadas a décadas atrás. Todas delas são lin- guagens de programação versões autônomas, e a eficiência de de- senvolvimento da qual é muito baixa, longe de encontrar as necessi- dades de produção atuais, e produzindo muitos defeitos. Enquanto que esta nova linguagem de programação é baseada em novas teorias científicas e novas tecnologias científicas. Esta nova linguagem de programação é uma Linguagem de Programação de "Relação Orien- tada" (ROP), é uma Linguagem de Programação à base de Fluxo de Dados (DPL, Linguagem de Programação de Datalização), é uma Lin- guagem de Programação de Versão à base de "Rede" (NVP). Termi- nais de cliente estão no balcão de entrada, e existem um grande nú- mero de servidores de nuvem no contexto para suportar os terminais do cliente. Os usuários fazem a programação, codificação e desenvol- vimento nos terminais do cliente, e então carregam o mesmo aos ser- vidores de nuvem desta linguagem de programação. Os servidores interpretarão os códigos de aplicação, e usando exploração de dados, método de aprendizagem de máquina, e fazem a comparação com os dados a partir da rede total, e então avalia o melhor método e o pior método ou a prática que necessita ser otimizada, desse modo, promo- vendo os usuários a aperfeiçoar a codificação e desenvolvimento. Ou usam o método "Al" para proporcionar uma melhor codificação ou es- critura ou prática para os usuários, que podem aperfeiçoar diretamente a eficiência de produção e produtividade.
DESCRIÇÃO DETALHADA
[0016] A presente linguagem de programação realiza tipo de dado de biblioteca de sistema, tipo de dado de tabela de sistema, tipo de dado de base de dados (a base de dados neste documento se refere a A Coleta de Tipos de Dados Únicos desta Linguagem de Programa-
ção, não a base de dados SQL tradicional, se não especificada), e o tipo de dado de tabela de dado (a tabela de dado neste documento se refere a A Coleta de Tipos de Dados Únicos desta linguagem de pro- gramação, não as tabelas de dados SQL tradicionais, se não especifi- cadas) conforme segue: bydatabase by í /ITipos de dados básicos de sistema system sheet object [ item de identidade, item de função ] ( string name [item de identidade, item de função] , String parent [item de identidade, item de função] , String comx [item de identidade, item de função] , String summery [item de identidade, item de função] , String tName [item de identidade, item de função] ) ( Cond fint,,,"Tipos de dados básicos de sistema" , struct ) flong ,,," Tipos de dados básicos de sistema" , struct ) ( string, ,," Tipos de dados básicos de sistema " , class ) Con) ) )
[0017] No exemplo acima, "bydatabase" é o tipo de dado de biblio- teca de sistema, "by" é o nome da biblioteca, a biblioteca do sistema é somente armazenada na memória de Sistema, e é interpretada ou transladada por esta linguagem de programação. Ele pode ser direta- mente referenciado ou instanciado enquanto que não é necessário pa- ra especificar a tabela de "objeto" em outras bibliotecas. "Sistema" in- dica que esta é um tipo de dado de tabela de sistema. A diferença en- tre a tabela de sistema e a tabela de dado é que a tabela de dado é somente armazenada na base de dados, e todos os registros não são específicos, enquanto que ela pode ser dinamicamente adicionada, deletada ou atualizada; mas a tabela de sistema é armazenada dentro do ambiente desta linguagem de programação, será instalada na lista de memória de ambiente na primeira partida. A tabela de sistema na biblioteca do sistema não pode ser armazenada na base de dados, enquanto que as tabelas de sistema na base de dados podem ser ar- Mazenadas na base de dados. A. Realização de Tipo de dados de Biblioteca de Sistema e Tipo de Dados de Base de Dados
[0018] Para as linguagens de programação de corrente principal atuais tais como cf .net: namespace byt ( public class Class1 ( public string name ( get; set; ) ) )
[0019] Usar o namespace para denominar "byt" para classificar o código, todos os itens de conteúdo nos parênteses "byt" são colocados sob o nome de "byt"; Outro exemplo, java: package test; public class abc ( )
[0020] Usar o package para denominar "test" para classificar o có- digo. Todos os seguintes conteúdos são colocados sob o nome do "test".
[0021] Linguagens tradicionais usam somente um modificador ou ainda não usam qualquer modificador no todo.
[0022] Na presente linguagem de programação, usando dois modi- ficadores "bydatabase", "database" para classificação, conforme defi- nido abaixo: bydatabase by í 1/ Ele coloca todos tipos básicos do sistema, conteúdo de nível de linguagem. ) database stock í // Ele coloca todos os conteúdos definidos ou configurados pelo usuário. )
[0023] Após a atualização da definição, esta linguagem de pro- gramação realizará etapas diferentes para as duas definições acima. Se é "bydatabase" nesta linguagem de programação, ela gerará listas correspondentes um para um, carga para a memória, e proporciona operação de verificação, e assim por diante. Se ela é uma tabela de base de dados, em adição às etapas de execução de item "bydataba- se", ela também gera correspondente todas as tabelas de sistema mo- dificadas com a folha de sistema através da linguagem SQL na cor- respondente base de dados atual (onde base de dados atual se refere a alguma atual da base de dados de corrente principal tal como: servi- dor de MS SQL, Oracle, MySQL, e assim por diante).
[0024] Todos os tipos de dados nesta linguagem são todos colo- cados na biblioteca de sistema de "systembaseby".
[0025] Os dados de programa escritos ou codificados pelo usuário é uniformemente colocado na "database" modificada pela base de da- dos, e o nome do qual pode ser definido pelo usuário. B. Realização de Tipo de dados de tabela de sistema e tipo de da- dos de tabela de dado
1. Realização de tipo de dado de tabela de sistema database by í system sheet cmd[item de relação, item de identidade, item de função] (string namelitem de relação, item de identidade, item de função], string summery ) í (config, "palavra chave de configuração ") fconstraint, " Item de restrição")
) )
[0026] Na "bylibrary" acima modificada pela base de dados, existe uma tabela CMD. O "system" é uma tabela de sistema, a tabela é uni- formemente representada pela folha de palavra-chave, e o CMD é o nome de tabela. O conteúdo no "[]" é a informação de referência de "ltem de relação, Item de identidade, Item de função". Para a descri- ção do "Item de relação, Item de identidade, Item de função", favor se referir à seção de "Item de relação, Item de identidade, Item de fun- ção" deste documento. O conteúdo no "()" é o cabeçalho de campo de detalhe da tabela de sistema, um do qual é o string type name, outro um é o string type summery. O seguinte "fconfig, "configuration keywords"Y" no "fY" é o item de registro da tabela. O item de registro pode ser adicionado, deletado, atualizado ou mudado antes da opera- ção de compilação ou interpretação, mas não pode ser adicionado, deletado, atualizado ou mudado ou modificado durante o tempo de operação. Isto significa que o item de registro na tabela de sistema somente é permitido para ser modificado pelos programadores antes do programa começar a operar, ele não é permitido ser adicionado, deletado ou mudado ou modificado por SQL ou outro método durante o tempo de operação ou tempo de execução.
[0027] Onde, o conteúdo no "[]" após CMD é a descrição do "item de relação, item de identidade, item de função" relacionados ao nível da tabela. E o conteúdo no "[]" após o nome em "()" é a descrição de "item de relação, item de identidade, item de função" relacionados ao nível de membro de campo, e representa uma série se o "[]" é coloca- do após a haste, que é o mesmo significado como nas outras lingua- gens de programação.
2. Realização do tipo de tabela de dado
[0028] Existem dois métodos de realização para atualizar a cha- mada entre a tabela de sistema e a tabela de dados durante o tempo de operação, conforme segue:
1. Após completação de escrita oi codificação pela primeira vez, o usuário clica botão de interpretação ou execução, esta lingua- gem de programação se conectará à correspondente base de dados para uma operação de adição, inserir as tabelas de sistema definidas pelo usuário atual na base de dados atual série por série, neste caso a tabela de sistema não somente existe no ambiente de desenvolvimen- to, mas também na base de dados, desse modo, atualizando que a tabela de dados na base de dados pode referenciar a tabela de siste- ma na base de dados, e então atualizar que a tabela de sistema é também uma base de dados. Em seguida a tabela de sistema pode ser ligada em uma lista através de operação de relação de SQL, desse modo, atualizando que a tabela de dados pode chamar a tabela de sis- tema.
2. Quando o usuário chama, esta linguagem de programa- ção pode fazer a interpretação dinamicamente; o usuário pode direta- mente referenciar a tabela de sistema na tabela de dados nesta lin- guagem de programação. Quando o código é transferido ao terminal do servidor ou ao terminal do cliente para execução, os itens de dados específicos do usuário são retirados da base de dados primeiramente. E para os itens na tabela de sistema referenciado pelo usuário, esta linguagem de programação chamará sua informação originalmente definida para atravessar série por série e adicionar a mesma item de tabela de dados atuais. Ou quando o código é interpretado para outro código de linguagem de programação, se os itens na tabela de siste- ma são chamados pela tabela de dados, que serão atravessados série por série e adicionados aos itens de tabela do sistema denominados pelo usuário nesta linguagem de programação, desse modo, atuali- zando a tabela de sistema pode ser chamada sem armazenagem de base de dados de SQL.
3. Realização de tipo tabela cache
[0029] A tabela cache é somente usada para armazenar dados de outras tabelas temporariamente. Os dados na tabela cache devem vir de outras tabelas. Somente um item de referência de um registro oi um item de referência de uma tabela a ser registrada, conforme segue: /* Tabela de ambiente de sistema*/ cache sheet environment [ identity.cache ] ( string tableName [ identity.refTable ] , String fieldName [ identity.refField ] , object ID [ identity .refRecord ] , String summery [ identity.summery ] ) ( (linguagem , name , cn , " Default Simplified Chinese" ) )
[0030] O "tableName" é o nome de tabela de outras tabelas, o "fi- eldName" é o nome de campo de outras tabelas, o ID é o item de re- gistro de outras tabelas, o item "summery" é o item de descrição, e a tabela cache é modificada por cache, onde "linguagem , name , cn," default simplified Chinese " ) ", é um item de registro de exemplo. C. Realização de objeto e função
1. Realização de objeto
[0031] A realização de um objeto está incluindo três tabelas: a ta- bela "object", a tabela "object.state", e a tabela "object.attribute". Jun- tas, estas três tabelas descrevem os objetos que são incluídos dentro de todos os sistemas nesta linguagem de programação e os objetos adicionados pelo usuário. Cada tempo quando um objeto é adicionado, o nome do objeto, objeto principal, item de combinação, item de des- crição, e o registro de item de identidade são adicionados à tabela do objeto. A tabela "object.state" inclui operações que podem ser realiza- das na tabela do objeto. A tabela "object.attribute" inclui os atributos (propriedades) cedidas pelos objetos em cada tabela de objeto. global system sheet object [item de identidade, item de função]
(string name [item de identidade, item de função], string parent [item de identidade, item de função], string comx [item de identidade], string summary [item de identidade], string tName [item de identidade]) ( fint,,,"tipode dado básico do sistema", struct ) ( table.rows , table , include , " tipo de dado básico do sis- tema " , class ) )
[0032] Os objetos de sistema são colocados em uma tabela de sistema global (folha) denominada "objeto". O conteúdo no "[l" é a in- formação de referência de "item de identidade, item de função". Para a descrição de "ltem de identidade e Item de função", favor se referir à seção "ltem de identidade e Item de função" deste documento. O con- teúdo em "()" é o cabeçalho de campo de detalhe da tabela de siste- ma. O primeiro item é o string type "name item" (name), que é usado para descrever o nome do objeto. O segundo item é o string type "pa- rent item", usado para descrever qual objeto principal o objeto é her- dado do ou incluído dentro. O terceiro item é o string type "combination item", usado para descrever se a relação do objeto e o objeto principal é herdada de ou incluída dentro de. O quarto item é o string type "summary item", usado para descrever qual tipo de dado o objeto per- tence. O quinto item é o "type" item of string type, que descreve o tipo do objeto (class, reference type/structure, value type/enumeration, va- lue type/interface etc). O conteúdo em "()" é uma parte do item de re- gistro na tabela. Os itens de registro podem ser adicionados ou dele- tados ou modificados antes da compilação ou interpretação da opera-
ção, enquanto que as operações de adição, anulação e modificação não são permitidas durante o tempo de operação ou tempo de opera- ção, isto é, os itens de registro da tabela de sistema são somente permitidos a serem modificados pelo programador antes do programa ser iniciado para operar, e não é permitido ser adicionado ou mudado por SQL ou outro método durante tempo de execução ou execução. Se não existe qualquer conteúdo em um campo de um registro, tal como (int, , , "system basic(underlying) data type", struct ), isto signifi- ca que int object não tem principal e nenhuma herança ou inclusão de outros objetos. system sheet object.state [Item de identidade, Item de função] (string belong[ltem de identidade], string namel[ltem de identidade], string summary[ltem de identidade]) í fbutton.add , add , "adição") fbutton.add , complete , "completação") )
[0033] A tabela "object.state" é uma tabela de detalhe de objeto, usada para descrever os objetos para adição, deleção, modificação e consulta da tabela de objeto. O conteúdo em "[]" é a informação de referência de "ltem de função, ltem de identidade". Para a descrição do "Item de função e Item de identidade", favor se referir à seção "ltem de função e Item de identidade" deste documento. O conteúdo em "()" é o cabeçalho de campo de detalhe da tabela. O primeiro item é o string type "Belong Field", usado para descrever qual objeto a opera- ção pertence. O segundo item é o string type "Name Field", usado pa- ra descrever o nome da operação (adição / anulação / mudança / con- sulta / verificação / modificação, etc). O terceiro item é o string type "Summary Field" (Campo de descrição), usado para descrever a ação da operação. O conteúdo em "()" é uma parte do item de registro nesta tabela. system sheet object.attribute [Item de identidade, Item de função] (string belong [Item de identidade], string name [Item de identidade], object obj, bool isStatic, bool isPublic ) ( fint, max, int, true, true) (dataview, rowrFilter, string, false, true) )
[0034] A tabela "object.attribute" é a tabela subordinada do objeto, usada para descrever os atributos possuídos por cada objeto. O con- teúdo de "[]" é a informação de referência de "ltem de função, Item de identidade". Para a descrição de "ltem de função e Item de identida- de", favor se referir à seção de "ltem de função e Item de identidade" deste documento. O conteúdo em "()" é o cabeçalho de campo de de- talhe da tabela. O primeiro item é o string type "Belong Field", usado para descrever a qual objeto o atributo pertence. O segundo item é o string type "Name Field", usado para descrever o nome do atributo. O terceiro item é o Object type "Object item", usado para descrever o tipo do atributo. O quarto item é o bool type "isStatic" field (se o atributo é estático), usado para descrever se o atributo é um atributo estático do objeto ao qual ele pertence. O quinto item é o bool type "isPublic" field (se ele é público), usado para descrever se o atributo pode ser deno- minado por um método externo. O conteúdo em "()" é uma parte do item de registro nesta tabela.
2. Realização de função system sheet method(
string belong [Item de identidade], string name, string[] paraType [Item de identidade], string] paraName, string returnType [Item de identidade], bool isStatic, string body, string summary [Item de identidade] ) í (nodes, add, [node], [treeNode], int, false, (by), (Adicionar um nodo à coleção, retornar o índice de nodo)) (nodes, clear, [], [], void, false, (by), (Deletar todos os elementos na coleção)) )
[0035] Os métodos no sistema são armazenados em uma tabela de sistema (sheet) denominada "Method". O conteúdo em "[l" é a in- formação de referência de "ltem de identidade, Item de função". Para a descrição de Item de identidade e Item de função, favor referir à seção "ltem de identidade e ltem de função" deste documento. O conteúdo em "()" é o cabeçalho de tabela de campo de detalhe da tabela de sis- tema. O primeiro item é o string type "belong item", usado para des- crever qual objeto o método pertence. O segundo item é o string type "name item", usado para descrever o nome do próprio método. O ter- ceiro item é o otem string [] (string array) type "paraType" (tipo de pa- râmetro), usado para descrever o tipo de cada parâmetro incluído den- tro do método, e é registrado na string array em ordem. O quarto item é o item string [] (string array) type "baraName" (nome do parâmetro), usado para descrever o nome do parâmetro formal incluído dentro do método, e é registrado na string array em ordem. O quinto item é o item string type "returnType", usado para descrever o tipo de retorno do método. O sexto item é o item bool type "isStatic" (se o método é estático), usado para descrever se o método é método estático. O sé- timo item é o item string type "body" (corpo de método), usado para descrever o corpo de método do método. O oitavo item é o item string type "summary" (descrição), usado para descrever as funções especí- ficas do método.
[0036] Nos exemplos incluídos nas seguintes seções D, E, e F, a tabela A e tabela B são cotadas aqui: System sheet A [ identity .dictionaryRecord, relation.recordToField.record, role. re- cordActualize.record ]( string f1 [ identity ID, relation.partner.A, role.valueDisplay.value ] , String f2 [ identity.summery, relation.partner.B, role.valueDisplay.display ] ) í fid1 "Primeiro Registro") fid2,"Segundo Registro") ) System sheet B [ identity actualize, relation.recordToField.actualize, ro- le.recordActualize.actualize ] ( string id1 [ identity.refRecord : A.id1 ] , String id2 [ identity .refRecord : A.id2 ] ) (...Conteúdo omitido. ..,...Conteúdo omitido...) D. Realização de Item de identidade (tipo de identidade)
1. Definição de Item de identidade (tipo de identidade)
[0037] O item de identidade (tipo de identidade) é definido na tabe- la de identidade conforme segue: System sheet identity [identity.master, role.masterDetail.master, ro- le.masterExtend.master ] ( string name [identity.ID, role.tree.current ] , String parent [ identity.refField : identity.name, role.tree.parent ] , String comx [identity.refField : reserve.family ] , String summery [ identity.summery ] ) ( ( system, , , "por identidade de sistema de linguagem" ) 1/ Item de campo e seus itens de criança
(field, ,, "ltem de campo" ) (1D, field, inherit, " Campo de identidade único" ) ( summery, field, inherit, "Campo de descrição " ) ( reference, field, , "item de referência" ) ( refField, reference, inherit, "Campo de item de referência (este campo não é a chave primária)" ) ( refRecord, reference, inherit, "Um registro na tabela de referên- cia") // Item de tabela e seus itens de criança (table, , , "ltem de tabela" ) ( master, table, inherit, "Tabela Master" ) ( extend, table, inherit, "Tabela de Extensão" ) ( actualize, table, inherit, "Tabela de Atualização" ) ( dictionary, table, inherit, "Tabela de Dicionário" ) ( dictionaryRecord, dictionary, inherit, "Tabela de Registro de Dicionário" ) /IItem de bloco e seus itens de criança ( block, , , "item de bloco" ) ( masterExtend, block, inherit, "ltem de tabela" de Master- Extensão" 3 ( masterDetail, block, inherit, "Identidade de Detalhe de Tabela Master") //Item de função e seus itens de criança ( function, , , "Função" ) (linguagem, function, inherit, "Item de linguagem" ) I/ITodo item e seus itens de criança ( everyone, , , "Todo" ) ( design, everyone, inherit, "Criador" ) ( debug, everyone, inherit, "Testador" ) (install, everyone, inherit, "Instalador" ) ( user, everyone, inherit, "Usuário"
)
[0038] Os itens de identidade na tabela são divididos em item de tabela, item de campo, item de função, item de bloco (item de módulo), todo item. Estes itens de identidade são o item de raiz e são herdados pelos itens de criança. Estes itens de criança também podem ser atu- ados como principais, herdados por seus outros itens de criança, e en- tão extendidos para baixo por sua vez para formar uma estrutura simi- lar à árvore. E os usuários podem expandir os mesmos dinamicamente de acordo com suas próprias necessidades, mas os itens de identida- de definidos pelo usuário devem herdar do item de identidade definido pelo sistema. Devido a relação de herança, os itens de criança não somente possuem todas as características do principal, mas também possuem características que o principal não possui.
2. Uso de item de identidade (tipo de identidade)
[0039] Os métotos de uso de itens de identidade podem ser dividi- dos em dois modos:
1. Adicionar itens de identidade no "[]" após o nome da ta- bela ou nome do arquivo.
2. Configurar os mesmos na tabela de configuração de item de identidade.
1. Adicionar itens de identidade no "[]" após o nome de ta- bela ou come de campo na forma de "identity. identityItemName". To- mar a tabela A como um exemplo: System sheet A [identity.dictionaryRecord ]
[0040] Deve ser notado que quando do uso da identidade de item de campo, se o principal do item é um "item de identidade de referên- cia" e o campo de referência necessita ser especificado explicitamen- te, a expressão no "[]" se tornará "identity .identityltemName: referen- ceTableName.referenceFieldName", tomar o Campo id1 e Campo id2 na tabela B como um exemplo: string id1 [ identity .refRecord : A.id1 ]
, String id2 [ identity .refRecord : A.id2 ]
2. Configurar os itens de identidade na tabela de configura- ção de identidade, tomar a tabela A como um exemplo: (A instance, identity.dictionaryRecord, A)
[0041] Se o primeiro método é usado, o sistema reconhecerá o nome da tabela ou nome do campo e os conteúdos no "[]" após a tabe- la ou campo imediatamente, e gera um nome de exemplo (por exem- plo, o exemplo de identidade gerado pela tabela A é denominado "A instance"), então o "nome de exemplo, item de identidade, nome de tabela (ou nome de campo)", três itens são combinados em um re- gistro que será inserido na tabela de configuração de identidade, que é o mesmo como o segundo método. Se o segundo método é usado, não existe necessidade do sistema gerar informação de configuração de identidade automaticamente; o usuário pode configurar a mesma na tabela de configuração de identidade diretamente.
[0042] Pode ser visto dos acima dois métodos de uso que não im- porta o método que o usuário escolhe, o sistema obtém a informação de instanciação da identidade por acesso da tabela de configuração de identidade no estágio de instanciação. Em comparação, o primeiro mé- todo é mais adequado para os usuários lerem, enquanto que o segun- do método pode salvar o sistema suspenso. Estes dois métodos de uso podem ser livremente escolhidos pelo usuário.
3. Construção de item de identidade 1). Definição de item de construção
[0043] O item de construção é definido na tabela de construção de identidade, conforme segue: system sheet identity.compose ( string belong [identity .refField : identity.name ] , String name [ identity.config ] , String configType [ identity .reference ] /* Tipo declarative, ou tipo restrição*/ , String cName [ identity .refField : reserve.config ]
, String roName [ identity.refField : role.detail.name ] , String constraint [ identity .refTreeRecord : reserve .constraint ] /litem de restrição , String summery [ identity. summery ] ) ( (dictionaryRecord, idField, identityID, design, valueDisplay.value, must, "Deve incluir um campo com função como item de valor" ) f(dictionaryRecord, summeryField, identity.summery, design, valueDis- play.display, must, " Deve incluir um campo com função como item de valor") )
[0044] Cada dos registros acima representa um item de constru- ção da identidade de "item de linguagem", e o significado de cada co- luna é conforme segue: Coluna 1: O nome de item de identidade que necessita ser construído; Coluna 2: O nome do item de construção; Coluna 3: A restrição de identidade do item de construção; Coluna 4: Item de configuração, isto é, requer que seja ma- nualmente configurado pelos desenvolvedores; Coluna 5: As restrições de função do item de construção; Coluna 6: O item de restrição, onde "Deve" representa "item requerido", "Opção" representa "item opcional", e "condição" represen- ta "item condicional"; Coluna 7: Informação de descrição do item de construção.
[0045] Todos os itens de identidade definidos pelo sistema, ou itens de identidade definidos pelo usuário devem ser explicitamente dados o correspondente item de construção, e os itens de construção de itens de criança contêm todos os itens de construção do item do principal. Se o mesmo item de construção é definido no item de crian- ça, o item de criança sobreporá o mesmo um (s) do item do principal. O item de construção restringe a construção da identidade, isto é, ca- da identidade deve ter alguns itens de construção específicos de modo a completar a construção de identidade. Além disso, os usuários po-
dem também definir o item de construção para o item de identidade definido pelos mesmos, em adição à dada parte da biblioteca de clas- se básica do sistema (para o item de identidade, favor se referir à des- crição na seção "Definição de Item de identidade"). 2). Configuração do item de construção
[0046] Para cada item de exemplo de identidade na tabela de con- figuração de identidade, os correspondentes itens de construção ne- cessitam serem configurados na tabela de configuração de composi- ção de identidade, e estes itens de construção são todos das defini- ções na tabela de construção de identidade. Tomar a tabela A como um exemplo:
[0047] A identidade da tabela é configurada na tabela de configu- ração de composição de identidade conforme segue: system sheet config .identity.compose ( string belong — [ identity.refField:config .identity.name ] String composeName [ identity.refField:identity.compose.name ] // Nome de ele- mentos constituintes , String belongTo [identity reference ] // a quem ele é configurado) í (A instance, idField, f1 ) (A instance, summeryField, f2 ) )
[0048] Onde, Coluna 1 é o "nome de exemplo de identidade" da tabela A; Coluna 2 é o "nome de item de construção"; e Coluna 3 é o conteúdo específico indicado pelo item de construção. Conforme pode ser visto do exemplo acima, a tabela de configuração de identidade e a tabela de configuração de composição de identidade são associadas com o nome de exemplo da identidade, de modo que quando a identi- dade é instanciada, o item de construção de identidade contido dentro da identidade pode ser encontrado através do nome de exemplo. 4, Verificação do item de identidade
[0049] O item de verificação de identidade é definido na tabela de verificação de identidade. A seguinte é a definição do item de verifica- ção de identidade da tabela A: system sheet identity.verificar [ identity .extend, role.masterExtend.extend ] ( string belong [ identity.refFieldAsID : identity.name ] , Script body ) í (dictionaryRecord, ( if(!lcompose.idField.isldField) ( popup.show("Deve incluir o item de chave primário!"); ) ifl!lcompose.summeryField.isSummeryField) ( popup.show("Deve incluir um item de descrição!"); ) ) ) )
[0050] A primeira coluna é o nome de item de identidade da tabela A; a segunda coluna é a verificação de script correspondente ao item de identidade, onde detalhe dentro de () é o conteúdo do script. A es- critura syntax do script é basicamente a mesma conforme aquela de outras linguagens. As funções usadas no script são providas pela bi- blioteca de classe básica do sistema. Se o usuário necessita verificar os itens de identidade definidos pelo usuário, usar as funções providas pelo sistema e escreve a correspondente verificação de script de acor- do com a syntax.
[0051] A verificação do item de identidade é a parte de núcleo do processo de instanciação de identidade, que é feito pelos scripts. À correspondente relação entre itens de identidade de scripts é definida na tabela de verificação de identidade. Os itens de identidade defini-
dos pelo sistema são programados pelo sistema. O usuário necessita escrever correspondentes scripts para os itens de identidade adiciona- dos pelo usuário. O script é responsável pela verificação dos itens de construção de identidade (identity builder items) da tabela de configu- ração de composição de identidade. Devido à herança dos itens de identidade, a verificação de identidade deve ser realizada em seus principais primeiramente quando da verificação dos itens de identida- de. Além disso, se existem itens de construção definidos duplicados (builder items) em crianças e principais, então o item de construção de identidade (builder item) na criança deve sobrepor as duplicatas no principal quando da verificação.
5. Instanciação de item de identidade
[0052] Instanciação é realizada pelo sistema na fase "verificação de syntax", quando o usuário configura o item de identidade e todos os itens que contém (item de construção, verificar script...), a "verificação de syntax" será suspensa temporariamente. E a instanciação de iden- tidade começará após o usuário ter completado o processo de configu- ração. Tomar a instanciação de identidade da tabela A como um exemplo: 1). Verificar fonte
[0053] Encontrar o correspondente registro na tabela de configura- ção de identidade através do nome de exemplo da identidade de tabe- la A, A instance, conforme segue: (A instance, identity.dictionaryRecord, A)
[0054] Verificar a fonte para sua segunda coluna, isto é, o item de identidade, identity .dictionaryRecord.
[0055] A verificação da fonte é principalmente para verificar se o item de identidade e seu principal são definidos na tabela de identida- de. Tomar a tabela A como um exemplo. O item de identidade e seu principal são definidos como segue:
(table, , , "item de tabela" ) (dictionary, table, inherit, "tabela de dicionário" ) (dictionaryRecord, dictionary ,inherit, "tabela de registro de dicionário" )
[0056] E então verificar se o item de raiz está correto (o item de raiz de identidade da tabela deve ser um item de tabela, e o item de raiz de identidade do campo deve ser um item de campo. Conforme pode ser visto da definição acima, o item de raiz de identidade da ta- bela A é uma tabela, isto é, um item de tabela, de modo que passa a verificação. 2). Item de construção Verificar (Builder item verificar)
[0057] As restrições destes itens de construção necessitam serem verificadas antes do script ser executado. Nesta etapa, você pode pri- meiramente encontrar os itens de construção definidos na tabela de construção de identidade através do item de identidade, "dictionaryRe- cord", conforme segue: (dictionaryRecord, idField, identityID, design, valueDisplay.value, must, "Deve incluir um campo com função como item de valor") f(dictionaryRecord, summeryField, identity.summery, design, valueDis- play.display, must, " Deve incluir um campo com função como item de exibição" )
[0058] Pode ser visto que ambos dos itens de construção "idField" e "summeryField" são itens requeridos, isto é, se a identidade necessi- ta ser instanciada, ela deve ser configurada na tabela de configuração de composição de identidade.
[0059] Encontrar o relevante item de construção na tabela de con- figuração de composição de identidade através do nome de exemplo, conforme segue: (A instance, idField, f1) (A instance, summeryField, f2)
[0060] Pode ser visto que os itens requeridos definidos na tabela de construção de identidade foram configurados, de modo que você pode proceder para a próxima etapa da verificação de script. 3). Verificação de Script
[0061] Encontrar o correspondente script na tabela de verificação de identidade através do item de identidade, e o sistema interpreta e executa o script. Se o script é executado, então a instanciação de identidade é bem-sucedida. Se uma caixa popup aparece durante a execução, significa que a instanciação de identidade é falha; neste ca- so o usuário necessita verificar a tabela de configuração de composi- ção de identidade de acordo com o conteúdo aprontado pela caixa pop-up.
6. Habilidade do item de identidade
[0062] A correspondente relação entre o item de identidade e a habilidade é definida na tabela de habilidade de identidade. Em adi- ção, também foi definido na tabela que sob cuja ação a habilidade é denominada, e em qual identidade (aqui a identidade se refere a iden- tidade principal ou a identidade do convidado) a habilidade é denomi- nada; a criança inclui todas as habilidades dos principais. A seguinte é a definição da habilidade de "translação" de identidade de "item de lin- guagem": system sheet identity .skill [ identity.detail , role.masterDetail.detail ]( string belong [ identity.refField : identity.name ] , String namel identity.ID ] , String[] paraType [ identity.refField : object.name ] /*tipo 1,tipo 2,tipo N...*”/ , String] paraName /* nome do parâmetro 1,nome do parâmetro 2, nome do parâ- metro N...*/ , String returnType [ identity .refField : object.name ] /*tipo de retorno*/ , String summery [identity.summery ] , Script body ) ( (linguagem, translate, query, guest, "translação", (
// Código principal de habilidade ) ) )
[0063] Onde, a primeira coluna no registro é o "nome do item de identidade". A segunda coluna é o "nome de habilidade". A terceira coluna indica que a correspondente tabela de dado direcionada pela habilidade será denominada quando realizando uma operação de con- sulta. A quarta coluna indica que quando a correspondente tabela de dados direcionada pela habilidade atuada como um convidado, a habi- lidade é denominada, e a correspondente tabela de dados não pode ser adicionada, anulada, modificada. A quinta coluna é o item de des- crição de habilidade. E a sexta coluna é o item de código principal de habilidade. Durante a operação do programa, se a tabela de dados atuada como o convidado para denominar a habilidade de "interpreta- ção" (translação) da identidade de "item de linguagem", o sistema en- contrará este registro e interpreta e executa o código principal de habi- lidade na sexta coluna, e, em seguida, completa a chamada de habili- dade.
7. Cenário de item de identidade.
[0064] O item de identidade, o cenário, e o significado do item de identidade representado no cenário (descrito na forma de uma expres- são, que será interpretado pelo sistema) são definidos na tabela de cenário de identidade. Tomar a definição da "tabela master" cenário de identidade de item de identidade como um exemplo: system sheet identity.scene ( string iName [identity.refField : identity.name ] , String sName [ identity.refField : scene.name ] , Script isWho , String summery [ identity.summery ] ) (
(master, database, datatable, "tabela master" ) (master, client, [ host:object.grad, guest:object.popupList ], " Quando o controle de rede atua como o hospedeiro, e a janela popup atua como o convidado " (master, browser, [ host:object.grad, guest:object.popupList ], " Quando o controle de rede atua como o hospedeiro, e a janela popup atua co- mo o convidado " ) (master, pad, [ host:object.grad, guest:object.popupList ], " Quando o controle de rede atua como o hospedeiro, e a janela popup atua como o convidado " ) ( master, mobile, [ host:object.grad, guest:object.popupList ], " Quando o controle de rede atua como o hospedeiro, e a janela popup atua co- mo o convidado " ) )
[0065] Onde, a primeira coluna no registro é o "inome do tem de identidade"; a segunda coluna é o "nome do cenário" (para detalhes, favor ver a descrição no "Scene Data Type"); a terceira coluna indica o significado do item de identidade no correspondente cenário (des- crito na forma de uma expressão, que é interpretada pelo sistema); a quarta coluna é o "item de descrição". Durante o tempo de operação do programa, o sistema converterá a tabela de dados que possui o item de identidade de acordo com o dado item de identidade e o cená- rio. Tomando o item de identidade acima como um exemplo, a tabela master na base de dados é usada como uma tabela de dados, no ter- minal do cliente, terminal do navegador, terminal da tabela, e terminal móvel, se é exibido na forma de interface principal, como um controle de rede, se é denominado como um convidado, como uma janela po- Pup.
8. Ação de item de identidade
[0066] A "Folha de Informação de Empregados" no seguinte exemplo é referenciada aqui: data sheet employees|[ identity .master] (string ID, string NO, string name, string pwd ,string email, datetime entryDt, datetime dt ) ( ) 1). Definição do item de ação
[0067] Os itens de ação de identidade são definidos na tabela de ação de identidade, tomando a definição do item de ação "insert" como um exemplo: system sheet identity .action [ identity detail, role. masterDetail.detail ]( string belong [ identity.refField : identity. name ] , String name [identity.config : config.data.flow.reference ] , String summery [ identity.summery ] ) ( ftable, insert, "adição" ) )
[0068] A primeira coluna no registro é o "nome do item de identi- dade", a segunda coluna é o "nome do item de ação, e a terceira colu- na é o "item de descrição". Pode ser visto que o item de ação "insert" pertence a identidade de item de tabela, de modo que toda criança que herda a identidade de item de tabela pode usar o item de ação. 2). Uso de itens de ação
[0069] Tomando o item de ação acima como exemplo, seu uso conforme segue: identity.table.insert.insertFlow
[0070] Onde, a parte antes "insertFlow" é usada para especificar o item de ação, e "insertFlow" é usado para completar a operação de fluxo de dado no item de ação (favor ver a Realização do tipo de da- dos de fluxo de dados). E. Realização de item de relação (tipo de relação)
1. Definição de item de relação
[0071] Itens de relação são divididos em "itens de tabela de rela- ção" e "itens de relação de campo", onde os itens de tabela de relação são adequados para duas ou múltiplas tabelas, enquanto que os itens de relação de campo são adequados para os dois ou múltiplos campos dentro de uma tabela. Os itens de relação são definidos em tabela de relação incluindo: cujos membros são incluídos na relação, as restri- ções para cada membro, definidas na tabela de detalhes de relação.
[0072] A seguinte é a definição do item de relação na tabela de relação: system sheet relation [ identity. master, role.masterDetailSlavery.master 1 string name [identity.ID, role.valueDisplay.value ] , String summery [ identity.summery, role .valueDisplay.display ] ) ( I/ltem de tabela de relação frecordToField, "atualização de registro" ) Ifitem de relação de campo (partner, "partner" ) )
[0073] Onde, o primeiro item é o "nome de relação"; o segundo item é o "item de descrição".
[0074] A seguinte é definição na tabela de detalhes de relação cor- respondente à tabela de relação: system sheet relation.detail [ identity.slavery, ro- le.masterDetailSlavery.slavery ] ( string rName [identity.refField : relation.name ] , String member [ identity .slaveryl|D ]
, String csName |[ identity.refField : identity.name ] , String summery [ identity.summery ] ) ( Ilitem de tabela de relação frecordToField, recordToField.record, csTable, "tabela de registro" ) frecordToField, recordToField.actualize, csTable, "tabela de atualização" ) Ilitem de relação de campo (partner, partner.A, csField, "campo A" ) (partner, partner.B, csField, "campo B" ) )
[0075] Onde, o primeiro item é o "item de relação name"; o segun- do item é o membro do "item de relação"; o terceiro item é a restrição para cada membro (o item de tabela de membro de relação deve ser uma tabela, o item de campo de membro de relação deve ser um campo); o quarto item é item de descrição.
2. O uso do item de relação
[0076] O uso de item de relação é adicionar um item de relação no "[]" após o nome da tabela ou o nome do campo na forma de "rela- tion.relationltemName.relationltemMember". Tomando o uso do item de relação na seguinte Tabela A e Tabela B como um exemplo: System sheet A [ relation.recordToField.record ] ( string f1 [ relation.partner.A ] , String f2 [ relation.partner.B ] ) System sheet B [ relation.recordToField.actualize ]
3. Cenário do item de relação
[0077] O item de relação, o cenário, e o significado do item de re- lação no cenário (descrito na forma de uma expressão, que é interpre-
tado pelo sistema) são definidos na tabela de cenário de relação. To- mando a definição do cenário de relação do item de relação "tabela principal, tabela de extensão" como um exemplo: system sheet relation.scene ( string rName [identity.field : relation.name] , String rSence [identity .refField : sence.name] , Script exp /* Expressão de relação”*/ , String summery [identity.summery]) ( (masterExtend, database, one to one at least one ; all: solo, "um para um, pelo menos um") ( masterExtend, client, design config click refresh, "clicar o item princi- pal para atualizar os itens relacionados") (ímasterExtend, browser, design config click refresh, "clicar o item prin- cipal para atualizar os itens relacionados" j (ímasterExtend, pad, design config click refresh, "clicar o item principal para atualizar os itens relacionados" ) (ímasterExtend, mobile, design config click refresh, "clicar o item princi- pal para atualizar os itens relacionados" ) )
[0078] Onde, o primeiro item é o "nome do item de relação"; o se- gundo item é o cenário correspondente ao item de relação; o terceiro item é o significado do item de relação no cenário correspondente (descrito na forma de uma expressão, que é interpretada pelo siste- ma); o quarto item é o item de descrição. Durante o tempo de opera- ção do programa, o sistema associará as tabelas de dados múltiplos com este item de relação de acordo com o dado item de relação e ce- nário. Tomar os itens de relação acima como um exemplo, os itens de relação atuados como a tabela principal e a tabela de extensão na ba- se de dados, que pode encontrar a condição de "um para um, pelo menos um", e pode preencher "clicar o item principal para atualizar item relacionado" no terminal do cliente, no terminal do navegador, no terminal da tabela e no terminal móvel. F. Realização de item de função (tipo de função)
1. Definição de item de função
[0079] Os itens de função são definidos na tabela de função, inclu- indo: quais membros são incluídos na função, a identidade de cada membro, a relação de cada membro, definidos na tabela de detalhes de função, e o item de função deve ser estabelecido na base que o item de identidade e o item de relação são ambos claros (Referem-se a descrição em "Role Data Type").
[0080] O seguinte é a definição do item de função na tabela de função: system sheet role [ identity. master, role. masterDetailSlavery.master ] ( string name [identity.ID] , String rName [identity.refField : relation.name ] , String summery [ identity.summery ] ) í (valueDisplay, partner, "Item de valor, Item de exibição") frecordActualize, recordToField, "Tabela de Registro de Dicionário, Tabela de atualização") )
[0081] Onde, o primeiro item é o "role name"; o segundo item é o "relation name"; o terceiro item é o "description item".
[0082] O seguinte é a definição de tabela de detalhe de função correspondente à tabela de função: system sheet role detail [ identity.slavery, role.masterDetailSlavery.slavery ] ( string roName [ identity.refField : role.name ] , String name [identity slaveryID ] , String iName [identity.refField : identity.name ] , String rName [identity.refField : relation.detail.member ] , String summery [ identity.summery ] )
í frecordActualize, record, dictionaryRecord, recordActualize.record, "Tabela de Re- gistro de Dicionário" frecordActualize, actualize, actualize, recordActualize.actualize , "Ta- bela de Atualização" ) (valueDisplay, value, ID, partner.A, "ltem de Valor" (valueDisplay, display, summery, partner.B, "ltem de Exibição") )
[0083] Onde, o primeiro item é o "nome do item de função"; o se- gundo item é o membro do item de função; o terceiro item é a restrição de identidade do membro de item de função. Por exemplo, a identida- de de membro de "registro" do item "recordActualize" de função deve ser "dictionaryRecord". O quarto item é a restrição de relação do membro de item de função. Por exemplo, o membro de "registro" do item de função "recordActualize" é correspondente ao membro de "re- gistro" no "recordToField". E o quinto item é o item de descrição.
2. O uso do item de função
[0084] O uso do item de função é para adicionar um item de fun- ção no "[]" após o table name ou field name, na forma de "ro- le.roleltemName.memberName". Tomar a tabela A e tabela B como um exemplo: System sheet A [ role.recordActualize record ] ( string f1 [ role.valueDisplay.value ] , String f2 [ role .valueDisplay.display ] ) System sheet B [ role.recordActualize actualize ]
3. Habilidade do item de função
[0085] O item de função inclui o item de habilidade, e a relação correspondente entre o item de função e o item de habilidade é defini- da na tabela de habilidade de função. As seguintes são definições do item de habilidade geral de todas os itens de função: (AVG, "encontra a média da tabela correspondente") (sum, "encontra o total da tabela correspondente")
(max, "encontra o máximo da tabela correspondente") ímin, "encontra o mínimo da tabela correspondente") (count, "encontra o número da tabela correspondente")
[0086] Onde, o primeiro item é o nome da habilidade, o segundo item é o item de descrição. Uma vez que o item de função tenha sido instanciado, a folha de dados pode usar estas habilidades gerais aci- ma. A realização de Criação de Projeto
[0087] Cada tempo quando um projeto é gerado, duas tabelas cor- respondentes são criadas para salvar as configurações do usuário pa- ra o projeto recentemente criado. Uma tabela de sistema denominada "projeto" é usada para salvar a categoria do projeto; uma tabela de sis- tema denominada "project.config" é usada para salvar a configuração do sistema do projeto criada pelo usuário. system sheet project( string name [Item de identidade], string summary [ltem de identidade] ) ( (singleClient, "Single Client-end Project"), fclientServer, "Client-end Server-end Project") )
[0088] A tabela principal do projeto é armazenada na folha do sis- tema denominada "projeto". O conteúdo em "[]" é a informação de refe- rência de "item de identidade, item de função". Para a descrição de "item de identidade e item de função", favor ver a seção de "ltem de identidade e Item de função" deste documento. O conteúdo dentro de "()" é o cabeçalho da tabela de sistema. O primeiro item é o string type
"name item", que é usado para determinar a qual tipo o item pertence. O segundo item é o item string type "summary (description)", que é usado para descrever o conteúdo específico de projeto representado pelo "name item". system sheet project.config( string pName [identity.refField: project.namel], string sName [identity.refField: sence.namel], string defaultDevelop [identity.refField: reserve.languagel], string licence [identity.refField: reserve.config], string summary [identity. summary] ) ( (singleClient, database, sqlServer, design, "MS SQL Server") f(clientServer, database, sqlServer) )
[0089] A tabela de configuração de projeto é armazenada na folha do sistema denominada "project.config". O conteúdo em "[]" é a infor- mação de referência de "item de identidade, item de função". Para a descrição de "item de identidade e item de função", favor ver a seção de "ltem de identidade e Item de função" deste documento. O conteú- do dentro de "()" é o cabeçalho da tabela de sistema. O primeiro item é o item string type "pbName" (project name), usado para descrever o nome do projeto. O segundo item é o item string type "sName" (scene name), usado para descrever a qual cenário (base de dados, cliente ou servidor) o projeto é aplicável. O terceiro item é o item string type "defaultDevelop" (default development language), usado para descre- ver o projeto é desenvolvido pela qual a linguagem default. O quarto item é o item string type license (constraint), usado para descrever a qual tipo de restrições o projeto é submetido. O quinto item é o item string type "summary" (description), usado para descrever a linguagem de implementação específica do projeto. G. Realização de Tipo de dado de fluxo de dados
[0090] Aqui está uma tabela de dados denominada "empregados" (para um exemplo) data sheet employees|[identity .master]( string ID string NO String name String pwd String email datetime entryDt ,datetime dt De)
[0091] Abaixo está a tabela de fonte de dado de configuração: config.data.source system sheet config .data.source[identity.config]( string belong [identity.refRecord] String name [identity. name] String equal [identity.refField] String sourceDic [identity.refRecord:reserve.source] String sourceParameter [identity refRecord:reserve.source] String fromAction [identity.refRecord:reserve.dataAction] String currentAction [identity.refRecord:reserve.dataAction] String hostGuet [identity refRecord:reserve.hostGuest] ) ( femployees.|D,autoNo, function, object. field.generation.autoNO(), .insert,host) femployees.NO,userlnput, user, , .insert,host) femployees.name, userlnput, user, , [insert,update],host) femployees.pwd,userlnput, user, , ,[insert,update] host) femployees.email,userlnput, user, , ,[insert,update],host) femployees.dt,getDate, ,function,datetime.now().format(reserve."yyyy-
MM-dd HH:mm:ss"), .insert,host) )
[0092] Na tabela de fonte de dados "config.data.source", o item "belong" representa para qual item é configurado. O item "name" é o nome do fluxo. E o item "equal" é principalmente usado para itens de tabela virtuais. Por exemplo, se o flag bit é 1, ele é da tabela A, en- quanto que o flag bit é 2, ele é da tabela B, etc. (Se este item não está disponível, ele será nulo). O item "sourceDic" descreve se o dado é de nome de dicionário de classificação, que deve ser de "reserve.source", "reserve.source" é o item de fonte na tabela de detalhes de reserva. O item "sourceParameter" descreve que o dado é de valor de parâmetro. Se o parâmetro é uma função, o endereço e nome da função são indi- cados. Se o parâmetro é um campo, o nome tabela específica e o no- me de campo do qual são indicados. Se o parâmetro é um registro, o nome de biblioteca, o nome de tabela e ID de registro dos quais ne- cessitam serem indicados. O item "fromAction" indica a ação fonte, que deve ser da tabela: "reserve .dataAction" (Se este item não é dis- ponível, ele será nulo), em outras palavras, este item indica que a ação de fonte é legal somente sob a condição da ação de fonte do flu- xo é conformada à definição pré-definida deste item. O item "curren- tAction" é similar ao item prévio. Somente para a ação atual quando o hospedeiro é atuado como o hospedeiro ou o Guest é atuado como o convidado, isto é, ele é chamado pela interface principal ou outras in- terface.
[0093] Tabela de tipo de fluxo de dado: config.data.flow: system sheet config.data.flow [ identity.table ]( string NO[identity.ID] , String belong [ identity.refTable ] String action[identity.refRecord:reserve.dataAction] String summery [ identity.summery ] ,String[] body[identity.refField:dataSource.name] )
( ( employeeslnsert , employees insert, "adicionar dados na tabela de empregados", ( employees.ID:autoNo, employees .NO:userlnput, employees.name:userlnput, employees .pwd:userlnput, employees .email:userlnput, employees .dt:getDate | ) ( employeesUpdate , employees ,update, " atualizar dados na tabela de empregados", ( employees.name:userlnput, employees .pwd:userlnput, employees .email:userlnput ) | ( employeesDelete , employees ,delete, " deletar dados da tabela de empregados", ( llemployees.ID.autoNo 1 ' )
[0094] Na tabela fluxo de dados "config.data.flow", o item "NO" é o número de série, o item "belong" é a fonte, e o item "action" é o "cur- rent action dictionary item" (se ele não é restrito, ele é nulo), ele deve ser de "reserve.dataAction", o item "summery" é o item de descrição, e o item "body" é o conteúdo específico do fluxo.
[0095] Tabela ou chamada de referência de fluxo de dados ta- ble:config.data.flow.reference: system sheet config.data.flow.reference [ identity.table ](
string belongFlow [ identity .refField:flow.NO ] //fluxo de dados String belongTo [ identity.reference ] //para qual este fluxo de dados é configurado.
String belongFrom [ identity.reference ] //especificar o endereço de fonte de dados dos dados a serem configurados ) ( femployeeslnsert, employees, identity.table.insert) )
[0096] O "belongFlow" na tabela "config.data.flow.reference" vem do item "flow.NO", indicando que fluxo de dados; o item "belongTo" indica para qual este fluxo de dados é configurado; e o item "belong- From" indica o endereço de fonte de dados dos dados a serem confi- gurados. Tomar o registro na tabela como um exemplo: "femployeeslnsert, employees, identity.table.insert)". H. Realização de "Config" tipo de dado de Configuração
[0097] 1. A tabela "config.data.guide" é uma tabela de guia de pa- râmetro de configuração.
[0098] Este item é um item de restrição modelo que é configurado para tipos, ou um item de fonte de um parâmetro de configuração, on- de uma tabela, uma biblioteca, um campo, ou um item de registro pode ser configurado. O item ajustado nesta tabela é um item de restrição modelo, que declara o escopo da configuração. Os detalhes da tabela são como segue: system sheet config.data.guide( string belong [identity.refRecord:reserve.config] String name [identity. name] String range [identity .reference] ,String constraint[identity .refTreeRecord:reserve.constraint] String poser [identity.refTreeRecord:identity .everyone] String vertify [identity.vertify] String summery [identity. summery] ) (
f(database,name,string,must,install (vertify.string.Variable)"O nome na base de dados de terceira parte, este item é configurado pelo usuário como nível de instalação ou acima.") (database, |P,string,must,install (vertify.string.IP),"IP address, este item é configurado pelo usuário como nível de instalação ou acima.") (database, user,string,must,install (vertify.string.Variable) "user - name, este item é configurado pelo usuário como nível de instalação ou acima.") (database, password,string,must,install (vertify.string.password),"password, este item é configurado pelo usuário como nível de instalação ou acima.") /lItem de campo de configuração (field, summery, string option design, fvertify.string.length128), "ltem de descrição") ffield, dbName, string, must, design, (vertify.string.Variable),"Nome de campo na base de dados") (field, dbDataType, string, must, design (vertify.string.Variable), "Tipo — de campo na base de dados") (field, dbDefaultValue,string,option,design,()," Defaults de campo na base de dados") (field, dbPrimaryKey,bool, must ,design,()," Se o campo atual da base de dados é uma chave primária") ffield, UlName, string, must, everyone, (vertify.string.length128)," O nome exibido na interface do usuário") (field, UÚIEditName, string option, everyone, (vertify.string.length128)," O nome exibido na área de edição de interface do usuário") (field, UlViewName, string, option, everyone, (vertify.string.length128)," O nome exibido na área de edição de interface do usuário") (fi eld, UlParameterName, string option, everyone, (vertify.string.length128)," O nome exibido na área de edição de interface do usuário") /Iltem de tabela de configuração ftable, summery, string option, everyone, fvertify.string.length128), "Item de descrição") ftable, UlName, string option, everyone, (vertify.string.length128)," O nome exibido na interface do usuário") )
[0099] Onde, o "belong" é do item de registro tabela "reser-
ve.config", o "name" é o nome de registro atual, e a "range" é o escopo de item. O "Constraint item" é o constraint de "reserve.constraint", indi- cando se é requerido ou é opcional. O "poser" descreve o utem de permissão de configuração, que vem do item "identity.everyone" e seus itens inferiores na tabela de Sistema de identidade. O item "veri- fy "é o item de verificação, vem da tabela tipo "verify" e o item tipo de- talhe do sistema, e o "summery" é o item de descrição do registro.
[00100] 2. Tabela de item de detalhe de configuração. Tomar os itens de campo na tabela de dados "empregados" como um exemplo, a tabela de configuração "config.data" é a tabela de atualização do item de guia de configuração "config.data.guide", conforme segue: system sheet config.data( string name [identity.reference] String belongConfig [identity.refRecord:reserve.config] String belongGuide[identity.refField:config.data.guide ] String value [identity. parameter] ) í /llcampo llexemplo de configuração femployees.ID, field, summery, "auto numeração") femployees.ID, field, dbName, ID) femployees.ID,field dbDataType, (reserve.developer.sqlServer:int)) femployees.ID,field dbDefaultValue, femployees.ID,field dbPrimaryKey,true) femployees.ID,field, UlName,"numeração") femployees.ID,field, UIEditName, "auto numeração") femployees.ID, field, UlViewName, "auto numeração") femployees.ID, field, UlIParameterName,"auto numeração") llcampo /l/Data de entrada femployees.entryDt, field, summery, "data de entrada") femployees.entryDt field, dbName, ID)
femployees.entryDt, field, dbDataType, datetime) femployees.entryDt, field dbDefaultValue, (dateti- me.now().format(reserve."yyyy-MM-dd HH:mm:ss"))) femployees.entryDt, field, dbPrimaryKey, true) femployees.entryDt, field, UlName, "data de entrada") femployees.entryDt, field, UIEditName, "data de entrada") femployees.entryDt, field, UlViewName, "data de entrada") femployees.entryDt,field, UIParameterName, "data de entrada") /llcampo // Data de Inscrição femployees.dt field, summery," Data de Inscrição ") femployees.dt, field, dbName,ID) femployees.dt field dbDataType,datetime) femployees .dt field, dbDefaultValue, freser- ve .developer.sqlServer:getdate())) femployees.dt field dbPrimaryKey,true) femployees.dt, field, UlName," Data de Inscrição ") femployees.dt field, UIEditName," Data de Inscrição ") femployees.dt, field, UlIViewName," Data de Inscrição ") femployees.dt field, UlIParameterName," Data de Inscrição ") IITabela de dados /lExemplo de configuração femployees, table, summery, "forma de informação de empregados") femployees, table, UlName, "informação de empregadostion") )
[00101] Onde, o "name" é o objeto a ser configurado, isto é, para qual ele é configurado, "belongConfig" é do item de registro o palavra chave reservada "reserve.config" que foi pré-ajustada pelo sistema, item "belongGuide" é de "config.data.guide”", "valor" é o item de conte- údo a ser configurado. |. Realização do tipo de dado de verificação
[00102] A realização do tipo de dado de verificação é atualizada por três tabelas, a saber, a tabela "verify", a tabela "verify detail", e a tabe- la "verify detail.identity" (Detalhes de verificação de identidade). A ta-
bela "verify" é usada para armazenar todos os tipos de verificação que podem ser realizados em itens diferentes no sistema. A tabela "veri- fy.detail" mantém o método específico de verificação e os valores de parâmetros/default requeridos. A tabela "vertify.detail.identity" mantém os tipos de verificação para o item de identidade. system sheet vertify [identity.master, role.masterDetailSlavery.master]( string name [item de identidade, item de função], string parent [item de identidade, item de função], string summary [item de identidade] ) í fint, , "inteiro"), (string.IP, string, "IP endereço") )
[00103] Oitem de verificação de sistema (item de verificação) é ar- mazenado em uma folha de sistema (tabela) denominada "verificar". O conteúdo em "[]" é a informação de referência de "item de identidade, item de função". Para a descrição de "item de identidade e item de função", favor ver a seção "ltem de identidade e Item de função" deste documento. O conteúdo em "()" é o cabeçalho de campo de detalhe da tabela de sistema. O primeiro item é o string type "name item", usado para descrever o que o item verificação é usado para detectar. O se- gundo item é o item string type "parent (parent class)", o item parent é usado para descrever qual tipo de verificação esta verificação pertence a (por exemplo, a verificação string type está incluindo se ela é muito longa, se ela encontra as requisições de senha, etc.). O terceiro item é o string type "description item", usado para descrever os conteúdos da verificação na linguagem, similar aos comentários. O conteúdo em "Q'" é uma parte do item de registro nesta tabela. Quando não existe cam- po "parent" em um registro, tal como "fint, "integer"Y", então esta verifi-
cação é apenas para verificar se o tipo é correto. system sheet vertify.detail [item de identidade, item de função]( string belong[item de identidade, item de função], string namelitem de identidade], string defaultValue [item de identidade], string summery [item de identidade] ) í (int, min, -2147483648), ( string.password, min, 6, "entrada mínima") )
[00104] A tabela "verify.detail" é uma tabela subordinada da "verify table", que é usada para armazenar as condições específicas requeri- das para cada verificação. O conteúdo em "[]" é a informação de refe- rência do "item de identidade, item de função". Para a descrição de itens de identidade e itens de função, favor ver a seção "ltem de iden- tidade e Item de função" deste documento. O conteúdo em "()" é o ca- beçalho de campo de detalhe da tabela de sistema. O primeiro item é o item string type "belong", usado para descrever qual tipo de verifica- ção esta verificação pertence a, correspondente ao nome na "verify table". O segundo item é o item string type "name item", usado para descrever qual conteúdo esta verificação está verificando (por exem- plo, "min" é para verificar o valor mínimo, e "notNull" é para verificar se o item está vazio). O terceiro item é o item string type "defaultValue" (default), usado para armazenar os resultados default da verificação, ou os parâmetros requeridos pela verificação. O quarto item é o item string type "summery (description)"; que é usado para descrever o con- teúdo específico da verificação na linguagem, similar ao comentário. O conteúdo em "()" é uma parte do item de registro desta tabela. config sheet vertify.detail.identity( string belong [identity refRecord: identity.field],
string name [identity.refField: vertify.detail.namel], string defaultValue, string poser [identity.config: identity .everyone] ) í (ID, int.min, 1, everyone) (NO, int.min, 1, everyone) )
[00105] A tabela de "verify detail.identity" é uma tabela especifica- mente designada para verificar se os parâmetros de configuração da tabela de identidade são razoáveis. O conteúdo em "[]" é a informação de referência do "item de identidade, item de função". Para a descrição de "item de identidade e item de função", favor ver a seção de "ltem de identidade e Item de função" deste documento. O conteúdo em "()*' é o cabeçalho de campo de detalhe da tabela de sistema. O primeiro item é o item string type "belong", indica que configuração da tabela de identidade é verificada pelo item verificação. O segundo item é o item string type "name", indica qual conteúdo o item verificar especificamen- te verifica (tal como se está vazio, se o número está fora de faixa, etc.). O terceiro item é o item string type "defaultValue" (default), usado para salvar os valores default da verificação, ou os parâmetros reque- ridos para a verificação. O quarto item é o item string type "poser" (pu- blisher), que é usado para descrever qual tipo de usuário pode realizar esta verificação na tabela de identidade. O conteúdo em "(" é uma parte do item de registro desta tabela. J. Realização do novo Tipo de Dado de Controle de Rede de Grad
[00106] O novo tipo de dado de controle de Rede de grad é realiza- do pelo "ctrol.grad" no tipo de dado de controle armazenado na tabela de objeto. Após o tipo de dado de grad ser criado, o usuário pode ge- rar o mesmo como uma interface gráfica para operação. A interface gráfica inclui área de visualização (exibição), área de edição, área de consulta (pesquisa), área de lista (detalhe), e cada área contém os controles adquiridos pelo sistema. ( ctrol.grad , ctrol , inherit, "grid control" , class ) ( ctrol.grad.list , ctorl.grad , include , "área de lista", class ) ( ctrol.grad.edit , ctrol.grad , include "área de edição" , class ) ( ctrol.grad.query, grad , include , "área de consulta" , class ) ( ctrol.grad.view, ctrol.grad , include , "área de visualização" , class )
[00107] O"Ctrol.grad" é o tipo de dado possuído pelo sistema. Para a realização do tipo de dado de sistema, favor ver a seção "Realização de Objeto" deste documento. Seu tipo principal é o tipo de controle, a relação entre "Ctrol.grad" e seu principal é "herdado" e o tipo é uma classe. "Ctrol.grad" inclui quatro componentes: O primeiro componente é o "ctrol.grad.área de lista", seu tipo principal é "ctrol.grad" (tipo de controle de rede), e sua relação com seu principal é "incluindo" ("inclu- de") e é um tipo de classe. A "área de lista" está localizada no centro da interface de grad total, que inclui uma tabela de dado tipo tabela para exibição de dado na forma de tabelas. O segundo componente a "ctrol.grad.área de edição", seu principal é "ctrol.grad" (tipo de controle de rede), e sua relação com seu principal é "incluindo" ("include"), e é um tipo de classe. A "área de edição" está localizada no fundo da "grad interface" total e sob a "área de visualização". A "área de edição" inclui muitas etiquetas (label controls, usadas para exibir o nome do campo a ser editado) e muitas caixas de texto (usadas para admitir valores modificados pelos usuários). Quando o usuário seleciona um registro na "área de visualização", o usuário pode modificar os campos daquele registro selecionado na "área de edição". O terceiro compo- nente é o "ctrol.grad.área de consulta" (área de pesquisa), seu princi- pal é "ctrol.grad" (tipo de controle de rede), e sua relação com seu principal é "incluindo" ("include"), e é um tipo de classe. A "área de consulta" está na extremidade esquerda da "grad interface" total. À "área de consulta" inclui muitas etiquetas (label controls, usadas para exibir o nome do campo a ser editado), e muitas caixas de texto (usa- das para admitir o valor pelos usuários que eles querem consultar), e controle de etiqueta especificamente usado para consultar a data. Os usuários podem ajustar itens de pesquisa na "área de consulta". Após admissão dos itens de pesquisa, os usuários podem pesquisar os campos correspondentes nos registros na "área de exibição" para ob- ter os resultados da pesquisa. O quarto componente é o "ctrol.grad.área de visualização" (área de exibição). A área de detalhe de visualização (exibição) inclui muitas etiquetas (label controls, usa- das para exibir os conteúdos dos registros atualmente selecionados na "área de exibição" na forma de correspondência um para um entre o cabeçalho e o campo). K. Realização de Acesso Global
[00108] A realização de "Acesso global" é atualizada através das tabelas de index. "Acesso global" significa que após um usuário decla- rar uma variável e atribuir um tipo de objeto e identidade à variável, o sistema pode ligar a tabela correspondente do tipo de objeto e identi- dade da variável diretamente para a própria variável, de modo que a variável pode diretamente chamar suas afiliadas tal como seu tipo, seu método de identidade, etc. system sheet index( string namelidentity.ID], string reflidentity.reference] ) ( (long, object.long), (double, object.double)
)
[00109] O índice global do sistema é armazenado em um system sheet denominado "index". O conteúdo em "[]" é a informação de refe- rência de "item de identidade, item de função". Para a descrição de "item de identidade e item de função", favor ver a seção "ltem de iden- tidade e item de função" neste documento. O conteúdo em "()" é o ca- beçalho de campo de detalhes da tabela de sistema. O primeiro item é o string type "name item", usado para armazenar os vários tipos que são possuídos pelo sistema e configuração-identidade de nível de usuários globais. O segundo item é o string type "ref (referência) item", usado para armazenar o índice de objeto/identidade correspondente a cada item de nome. Através do índice, a tabela onde o obje- to/identidade é armazenado pode ser pesquisada e encontrada, e en- tão você pode fazer referência ao parâmetro dos métodos etc no inte- rior da tabela.
[00110] A descrição acima é somente uma das concretizações es- pecíficas preferidas da presente revelação, e não é prevista para limi- tar a presente revelação. Qualquer modificação, substituição e aperfei- çoamento equivalente produzido dentro do espírito e princípios desta revelação devem ser incluídos no escopo de proteção da revelação.
APLICABILIDADE INDUSTRIAL
[00111] A presente invenção é aplicável a todas as indústrias e to- dos os setores da vida que estão se envolvendo com produção de da- dos, manufatura de dados, fluxo de dados, troca de dados, transfor- mação de dados, conversão de dados, transmissão de dados, arma- zenagem de dados, controle de dados, exploração de dados, análise de dados, operação de dados, processo de dados, segurança de da- dos, utilização de dados, serviço de dados, e assim por diante.

Claims (24)

UT REIVINDICAÇÕES
1. Linguagem de programação, no qual o método de cria- ção de objeto nesta linguagem é usar tipo de dado de "tabela" para criar e descrever objeto, caracterizada pelo fato de compreender: nome do objeto, relação de herança/relação de contenção, descrição, etc., são registrados e descritos por uma tabela "object" do sistema; atributo do objeto, compreendendo nome do atributo do ob- jeto, classe, características, etc., são registrados e descritos por uma tabela "object.attribute"; operações de tabela de objeto e operações de tabela "ob- ject.attribute"”, são registradas e descritas por uma tabela "ob- ject.state".
2. Linguagem de programação, de acordo com a reivindica- ção 1, caracterizada pelo fato de que "MÉTODOS" nesta linguagem são registrados e descritos através do tipo de dado de tabela, tabela de MÉTODOS da tabela de sistema nesta linguagem é usada para re- gistrar o objeto que o método pertence a, nome do método, parâmetro do método, tipo de método, corpo do método, descrição do método, etc. no sistema.
3. Linguagem de programação, caracterizada pelo fato de compreender: item de identidade (tipo de identidade), item de relação (tipo de relação), item de função (tipo de função).
4. Linguagem de programação, de acordo com a reivindica- ção 3, caracterizada pelo fato de que o item de identidade (tipo de identidade) e o método de realização do item de identidade (tipo de identidade), compreendem: definição de item de identidade, itens de identidade são de- finidos na tabela de identidade na forma de estrutura em árvore, no qual itens inferiores podem herdar itens principais, usuários podem expandir a tabela de identidade dinamicamente conforme necessário, mas os itens de identidade personalizados devem herdar dos itens de identidade definidos pelo sistema;
métodos de uso de Item de identidade, existem dois méto- dos de uso de itens de identidade: 1. Adicionar um item de identidade a "[]" após nomes de tabela ou nomes de campo, e 2. Configurar itens de identidade diretamente na tabela de configuração de identidade;
construção de item de identidade, itens de construção são definidos na tabela de construção de identidade, no qual todos dos itens de identidade definidos pelo sistema, ou itens de identidade defi- nidos pelo usuário devem ser claramente definidos com itens de cons- trução correspondentes, se o item inferior é definido o mesmo item de construção como o item principal, então o item inferior sobreporá o mesmo item (itens) no item principal, a configuração do item de cons- trução está na tabela de configuração de composição de identidade;
verificar item de identidade, a verificação do item de identi- dade é completada por um script, no qual a relação correspondente entre item de identidade e script é definida na tabela de verificação de identidade, o item de identidade definido pelo sistema será verificado pelo script dentro do sistema, o item de identidade adicionado pelo usuário será verificado pelo script de verificação correspondente que necessita ser escrito pelo usuário;
Instanciação do item de identidade, o processo de instanci- ação do item de identidade compreende três etapas: 1). Verificar fonte: verificar se o item de identidade e seu item principal são definidos na tabela de identidade, em seguida verificar se o item de raiz está cor- reto (O item de raiz de identidade de tabela deve ser um item de tabe- la, o item de raiz de identidade de campo deve ser um item de campo; 2). verificar itens de construção: verificar se todas as opções requeri- das no item de construção que é incluída dentro do item de identidade são configuradas; e 3). verificar script: verificar se cada item de cons- trução encontra as restrições de identidade e restrições de função; qualificar item de identidade, a relação correspondente en- tre o item de identidade e a qualificação é definida na tabela de qualifi- cação de identidade, em adição, também foi definida na tabela que sob cuja ação a qualificação é denominada, e em que identidade (aqui a identidade se refere à identidade principal ou à identidade convida- da), a qualificação é denominada; a criança contém todas as habilida- des dos principais; cenário do item de identidade, item de identidade, cenário, e o significado (descrito na forma de uma expressão, que é interpreta- do pelo sistema) representado pelo item de identidade neste cenário são definidos na tabela de cenário de identidade; a ação do item de identidade, item de ação de identidade é definido na tabela de ação de identidade, no qual o fluxo de dados po- de ser manipulado pelo uso do item de ação de identidade.
5. Linguagem de programação, de acordo com a reivindica- ção 3, caracterizada pelo fato de que o item de relação (tipo de rela- ção) e o método de realização do item de relação (tipo de relação), compreendem: definição e uso de item de relação, itens de relação são de- finidos na tabela de item de relação: que membros são incluídos na relação e a condição de restrições de cada membro, são definidos na tabela de detalhes de relação; uso de item de relação, o método de uso de item de relação é "relation.relationltemName.memberName"; cenário de item de relação, item de relação, cenário, e os significados representados pelo item de identidade neste cenário (des- crito na forma de expressão, interpretados pelo sistema) são definidos na tabela de cenário de relação.
6. Linguagem de programação, de acordo com a reivindica- ção 3, caracterizada pelo fato de que o item de função (tipo de função) e o método de realização de item de função (tipo de função), o item de função necessita de ser estabelecido na base de item de identidade específico e item de relação específico, compreendendo: definição de item de função, itens de função são definidos na tabela de item de função: cujos membros são incluídos na função, e a identidade e relação de cada membro são definidos na tabela de de- talhes de função; uso de item de função, o método de uso de item de função é "role roleltemName .memberName"; habilidade do item de função, a relação correspondente en- tre itens de função e habilidades são definidas na tabela de habilidade de função.
7. Linguagem de programação, no qual métodos de realiza- ção de tipo de dado de verificação, caracterizada pelo fato de compre- ender: nome do item de verificação (verificar), nome do item prin- cipal de verificação (verificar) e descrição do item de verificação (verifi- car) são registrados por uma tabela de verificar; afiliação do item de verificação (verificar), nome do item de verificação (verificar), default/parâmetro do item de verificação (verifi- car) e descrição do item de verificação (verificar), são registrados na verify. detail table; tabela de verificação (verificar) da tabela de identidade, compreendendo: a afiliação de verificar identidade (verificação), o item de nome de verificar identidade (verificação), o item de valor de default de verificar identidade (verificação), o item do editor de verificar identi- dade (verificação).
8. Linguagem de programação, de acordo com a reivindica-
ção 7, caracterizada pelo fato de compreender adicionalmente: Um método de usar tabelas para armazenar os parâmetros e afiliação etc requeridos para verificação de tipo (verificação), e através do campo de nome para indicar qual tipo de verificação (verificação) ele é, e para facilitar as tabelas de correlação.
9. Linguagem de programação, caracterizada pelo fato de que um método de acesso global rápido: Os objetos de tipo armaze- nados em um "index" denominado tabela fixa no sistema desta lingua- gem podem ser globalmente acessados, compreendendo os itens de nome de tipo, itens de referência de tipo.
10. Linguagem de programação, de acordo com a reivindi- cação 9, caracterizada pelo fato de compreender adicionalmente: Co- locar os tipos da tabela de índice e os índices da tabela onde o método de atualização é armazenado em uma tabela, através do qual os usuá- rios podem completar diretamente alguns tipos de acesso global rápi- do.
11. Linguagem de programação, caracterizada pelo fato de que um método de realização de tipo dado de "grad", através do tipo de dado denominado "grad" que tem realizado espaço de rede de vi- sualização, compreendendo: área de exibição; área de edição; área de consulta, área de lista, e área gráfica.
12. Linguagem de programação, de acordo com a reivindi- cação 11, caracterizada pelo fato de compreender adicionalmente: Um método de realização de colaboração que atualizada pela área de exi- bição, área de edição, área de consulta e área de lista no espaço de rede de visualização junto, e através da colaboração dos usuários po- de operar dados por uso de uma interface gráfica.
13. Linguagem de programação, caracterizada pelo fato de que a composição de linguagem compreende várias séries de tipo da- do de tabelas de sistema.
14. Lnguagem de programação, de acordo com a reivindi- cação 13, caracterizada pelo fato de que o tipo de dado de tabela de sistema é modificado pela palavra-chave do sistema, a estrutura de tabela de sistema é composta em sequência por: nome da tabela, es- pecificação suplementar nos colchetes "[]", campo de tabela nos pa- rênteses "( )", item de registro de tabela nas chavetas "(Y".
15. Linguagem de programação, de acordo com a reivindi- cação 13, caracterizada pelo fato de que se os colchetes "[]" seguem após o nome da tabela ou item de campo, então os conteúdos dentro dos colchetes "[]" são o item de identidade (tipo de identidade), item de relação (tipo de relação) e item de função (tipo de função) de tabela ou campo.
16. Linguagem de programação, caracterizada pelo fato de que um método de realização que o tipo de dado de tabelas de siste- ma pode ser convertido em tipo de dado de tabelas de dado e ser adi- cionado à base de dados no tempo de execução.
17. Linguagem de programação, caracterizada pelo fato de que um método de realização que a tabela de cache é usada como uma armazenagem temporária para armazenar dados de outras tabe- las.
18. Linguagem de programação, caracterizada pelo fato de que um método de realização de configuração: a config tabela de con- figuração é implementada para configurar outras tabelas, bibliotecas, campos ou itens de registro.
19. Linguagem de programação, de acordo com a reivindi- cação 18, caracterizada pelo fato de compreender adicionalmente: permissões em tipo de dado de configuração são divididas em cinco níveis de permissão de alto a baixo, compreendendo: permissão de Criador, permissão de Testador, permissão de Instalador, permissão de Usuário, e permissão de Todos.
20. Linguagem de programação, de acordo com a reivindi- cação 18, caracterizada pelo fato de compreender adicionalmente: um método de denominação da tabela de configuração é denominado na forma de estrutura em árvore, através do método de adição do nome de tabela original na tabela de configuração, no qual para tipos diferen- tes de tabelas, bibliotecas, campos, entradas de registro, as tabelas de configuração correspondentes das quais são diferentes.
21. Linguagem de programação, de acordo com a reivindi- cação 18, caracterizada pelo fato de compreender adicionalmente: um método de identificação de tabelas de configuração, no qual através do item "belong" no cabeçalho da tabela, a tabela de configuração po- de identificar esta tabela configurada por cuja tabela.
22. Linguagem de programação, de acordo com a reivindi- cação 18, caracterizada pelo fato de compreender adicionalmente: ca- da tabela de configuração tem seu nome correspondente e campo de descrição, no qual para tabelas de configuração que pertencem a ta- belas diferentes, os outros campos na tabela de configuração podem ser diferentes.
23. Linguagem de programação, caracterizada pelo fato de que um método de realização de tipo de dado de "fluxo de dados", o tipo de dado de fluxo de dados define os paradeiros, traços e fontes de dados.
24. Linguagem de programação, de acordo com a reivindi- cação 23, caracterizada pelo fato de que um método de configuração de tipo de dado de fluxo de dados: o fluxo de dados é configurado para uma tabela de dados através do método de configuração pela tabela de configuração.
BR112020007044-0A 2018-01-26 2019-01-20 linguagem de programação BR112020007044A2 (pt)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201810075131.4 2018-01-26
CN201810075131.4A CN110083339A (zh) 2018-01-26 2018-01-26 一种新型计算机编程语言
PCT/CN2019/072449 WO2019144852A1 (zh) 2018-01-26 2019-01-20 一种新型计算机编程语言

Publications (1)

Publication Number Publication Date
BR112020007044A2 true BR112020007044A2 (pt) 2020-10-13

Family

ID=67395197

Family Applications (1)

Application Number Title Priority Date Filing Date
BR112020007044-0A BR112020007044A2 (pt) 2018-01-26 2019-01-20 linguagem de programação

Country Status (9)

Country Link
US (1) US20200241848A1 (pt)
EP (1) EP3745255A4 (pt)
JP (1) JP7250009B2 (pt)
CN (1) CN110083339A (pt)
AU (1) AU2019211612A1 (pt)
BR (1) BR112020007044A2 (pt)
CA (1) CA3078659A1 (pt)
RU (1) RU2020113119A (pt)
WO (1) WO2019144852A1 (pt)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112394910A (zh) * 2019-08-12 2021-02-23 拜椰特(上海)软件技术有限公司 计算机编程语言类型开新实例方法
CN112783479A (zh) * 2019-11-04 2021-05-11 拜椰特(上海)软件技术有限公司 计算机编程语言访问方法

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4636948A (en) * 1985-01-30 1987-01-13 International Business Machines Corporation Method for controlling execution of application programs written in high level program language
JP2727026B2 (ja) * 1989-06-14 1998-03-11 株式会社エイ・ティ・アール通信システム研究所 プログラム構造自動設計装置
JP3452960B2 (ja) * 1993-12-22 2003-10-06 三菱電機株式会社 オブジェクト型モデル作成システム、および故障診断システム作成システム
JP3427918B2 (ja) * 1996-07-02 2003-07-22 インターナショナル・ビジネス・マシーンズ・コーポレーション プログラム開発支援システム及び支援方法
US6609128B1 (en) * 1999-07-30 2003-08-19 Accenture Llp Codes table framework design in an E-commerce architecture
US6889359B1 (en) * 1999-10-07 2005-05-03 International Business Machines Corporation Method for providing a visual representation of dynamic HTML table attributes
US6915303B2 (en) * 2001-01-26 2005-07-05 International Business Machines Corporation Code generator system for digital libraries
US20030056195A1 (en) * 2001-07-19 2003-03-20 Hunt Joseph R. Code generator
US9965259B2 (en) 2002-11-20 2018-05-08 Purenative Software Corporation System for translating diverse programming languages
CN1307584C (zh) * 2003-11-17 2007-03-28 中兴通讯股份有限公司 一种用二维表实现的树的存储、访问的方法
US7962497B2 (en) * 2005-02-18 2011-06-14 Microsoft Corporation Relationship modeling
US7668608B2 (en) * 2006-09-01 2010-02-23 Fisher-Rosemount Systems, Inc. Graphical programming language object editing and reporting tool
US8756616B2 (en) * 2006-12-29 2014-06-17 Core Wireless Licensing S.A.R.L. System and method for reducing the static footprint of mixed-language JAVA classes
CN101126984A (zh) * 2007-09-30 2008-02-20 北大方正集团有限公司 一种对象属性的描述方法
US8171057B2 (en) * 2008-10-23 2012-05-01 Microsoft Corporation Modeling party identities in computer storage systems
US20110088011A1 (en) * 2009-10-14 2011-04-14 Vermeg Sarl Automated Enterprise Software Development
US8635204B1 (en) 2010-07-30 2014-01-21 Accenture Global Services Limited Mining application repositories
US8713514B2 (en) * 2011-05-06 2014-04-29 Microsoft Corporation Heterogeneous language data typing without executable regeneration
KR101977972B1 (ko) * 2011-12-29 2019-05-14 바이보 랩스, 인크. 보고서 작성용으로 적응된 스프레드시트 기반 프로그래밍 언어
US20140279823A1 (en) 2013-03-15 2014-09-18 Microsoft Corporation Lifecycle product analysis
US9329849B2 (en) * 2013-08-26 2016-05-03 Facebook, Inc. Systems and methods for converting typed code
US9436507B2 (en) * 2014-07-12 2016-09-06 Microsoft Technology Licensing, Llc Composing and executing workflows made up of functional pluggable building blocks
US9038037B1 (en) * 2014-07-22 2015-05-19 Ted J. Biggerstaff Automatically solving simultaneous type equations for type difference transformations that redesign code
US9459848B1 (en) * 2015-05-29 2016-10-04 International Business Machines Corporation Obtaining correct compile results by absorbing mismatches between data types representations
DE102015117111A1 (de) * 2015-10-07 2017-04-13 Gip Ag Verfahren zum Erzeugen von Programmcode
US9652203B1 (en) * 2015-11-24 2017-05-16 Corpa Inc. Application development framework using configurable data types
US10437564B1 (en) * 2016-09-16 2019-10-08 Software Tree, LLC Object mapping and conversion system
US20180189035A1 (en) * 2016-12-29 2018-07-05 TechRev, LLC Application development tool using graphic objects to bind object sets of different distinct divisions of a design pattern
JP7182152B2 (ja) 2017-09-27 2022-12-02 パナソニックIpマネジメント株式会社 駆動装置の組み立て方法
US11567738B2 (en) * 2021-04-15 2023-01-31 Red Hat, Inc. Code generator for creating a unified data model for multiple language specifications

Also Published As

Publication number Publication date
RU2020113119A (ru) 2022-02-28
CA3078659A1 (en) 2019-08-01
RU2020113119A3 (pt) 2022-02-28
AU2019211612A1 (en) 2020-04-30
JP7250009B2 (ja) 2023-03-31
US20200241848A1 (en) 2020-07-30
CN110083339A (zh) 2019-08-02
JP2021505983A (ja) 2021-02-18
WO2019144852A1 (zh) 2019-08-01
EP3745255A1 (en) 2020-12-02
EP3745255A4 (en) 2021-10-27

Similar Documents

Publication Publication Date Title
US10558642B2 (en) Mechanism for deprecating object oriented data
US9465590B2 (en) Code generation framework for application program interface for model
JP5108760B2 (ja) 変更がデータストレージシステムのリレーショナルデータになされたかどうかを判定するコンピュータが実行する方法
US20200167143A1 (en) Systems and methods for automated retrofitting of customized code objects
BR112015011537B1 (pt) Método e dispositivo de armazenamento para associação de metadados com código fonte
US10445675B2 (en) Confirming enforcement of business rules specified in a data access tier of a multi-tier application
US20060031817A1 (en) Integrated dynamic control flow and functionality generation for network computing environments
BR112020007044A2 (pt) linguagem de programação
WO2023151239A1 (zh) 一种创建微服务的方法及相关设备
Malatesta Learning Laravel's Eloquent
US11693652B2 (en) Automated authoring of software solutions from a data model
CN116627448A (zh) 一种创建微服务的方法及相关设备
Predoaia et al. Streamlining the development of hybrid graphical-textual model editors for domain-specific languages
Protic Configuration management for models: Generic methods for model comparison and model co-evolution
Maruna et al. The business process transformation framework implementation through metamodel extension
Bevilacqua Redmine plugin extension and development
Aboulsamh et al. Towards a model-driven approach to information system evolution
WO2019148343A1 (zh) 一种新型计算机编程语言
Kaczmarczyk et al. A Simple and effective ADO. NET-based ORM layer
US10768912B1 (en) Platform class creation
Kumar et al. Python's Role in Accelerating Web Application Development with Django
Mayo C# Cookbook
Rovňák Správa a generování CV
Liljas et al. NHibernate 4. x Cookbook
WO2022221610A1 (en) Automated authoring of software solutions from a data model

Legal Events

Date Code Title Description
B350 Update of information on the portal [chapter 15.35 patent gazette]
B06W Patent application suspended after preliminary examination (for patents with searches from other patent authorities) chapter 6.23 patent gazette]
B15K Others concerning applications: alteration of classification

Free format text: A CLASSIFICACAO ANTERIOR ERA: G06F 8/00

Ipc: G06F 8/30 (2018.01)