Spectrum Miner Versão 8.0
Conteúdo 1 - Introdução Objetivo 4 Quem deve ler este manual 4 Documentação relacionada 4 2 - Formatos de Quadstone Metadata Markup Language (QMML) Formatos XML 6 Definição do esquema QMML 6 Tipos de elementos principais 6 Metadados de documento 7 Variantes QMML 9 3 - Exemplos QMML Exemplos de variante QMML 13
1 - Introdução Nesta seção Objetivo 4 Quem deve ler este manual 4 Documentação relacionada 4
Introdução Objetivo Este documento fornece informações adicionais de referência sobre Quadstone Metadata Markup Language (QMML). Quem deve ler este manual Esse manual é indicado para Administradores do Spectrum Miner e fornece informação adicional de definição de esquema XML do Spectrum Miner. Documentação relacionada Documento Local Guia de administração do Spectrum http://www.pbinsight.com/support/product-documentation/details/portrait-miner Miner 8.0 4
2 - Formatos de Quadstone Metadata Markup Language (QMML) Nesta seção Formatos XML 6 Definição do esquema QMML 6 Tipos de elementos principais 6 Metadados de documento 7 Variantes QMML 9
Formatos de (QMML) Formatos XML O Quadstone fornece um esquema XML único para descrever a representação de metadados para o Sistema Quadstone. Esse é o formato, ou QMML. Na presente versão do Sistema Quadstone, somente um subconjunto de arquivos e formatos de intercâmbio Quadstone são representados como documentos XML, mas a QMML fornece uma estrutura geral para permitir extensão para cobrir representações XML Quadstone futuras, à medida que forem disponibilizadas em versões futuras. A estrutura QMML descreve como compilar documentos para agirem como representações do estado de metadados Quadstone. Esses documentos podem conter muita informação detalhada (histórico da auditoria de rastreamento, manter descrições de relacionamentos entre componentes diferentes, entre outras). Definição do esquema QMML A definição de esquema QMML é disponibilizada como parte do produto de extensão qmml e é possível encontrá-la no arquivo <smhome>\server\qs8.0\integration\schemas\qmmlcore.xsd. A versão atual da definição de esquema QMML é DRAFT3, por isso, o URI necessário do esquema é "http://www.quadstone.com/xml/". Note que a QMML é definida por essa definição de esquema XML isoladamente. Não existe uma descrição equivalente fornecida como DTD. O esquema define um namespace XML qmml, no qual vários tipos de elementos principais são definidos. Um documento QMML válido precisa conter uma dessas etiquetas QMML de nível superior, no namespace QMML. Tipos de elementos principais Todos os documentos QMML tomam a forma de uma etiqueta de elemento de nível superior geral, do namespace QMML definido no esquema QMML. A QMML define, assim, uma família de tipos de documentos relacionados. 6
Formatos de (QMML) Os tipos de elementos de nível superior descritos abaixo estão disponíveis na versão atual da definição de esquema QMML. Versões futuras serão expandidas para incluir elementos adicionais, para permitir representações mais extensas de metadados em geral do Sistema Quadstone. A etiqueta do elemento <qmml:rules> é usada para documentos QMML que descrevem regras. Esses documentos são usados pela estrutura RealTime. A etiqueta do elemento <qmml:x-fdl> é usada para documentos QMML que fornecem um fácil intercâmbio com arquivos de Linguagem de Campo Derivado Quadstone (FDL). A etiqueta do elemento <qmml:expressions> é usada como uma forma intermediária para representar a estrutura implícita em expressões de Linguagem de Campo Derivado Quadstone. É um bloco de compilação útil para converter de FDL para linguagens de consulta usadas por produtos externos de terceiros. Metadados de documento Os formatos QMML fornecem mecanismos para rastrear a origem e histórico da versão de documentos, e de componentes individuais em documentos. A especificação detalhada sobre exatamente quais componentes conseguem transportar metadados da trilha de auditoria de documentos está presente na definição do esquema QMML. Os componentes que suportam metadados de documentos podem conter elementos <info> para manter essa informação. Esses elementos assumem a seguinte forma, com os metadados detalhados codificados de acordo com o padrão Dublin Core através de RFC2731. <info> <description> optional textual description </description> <comment> optional textual comment </comment> <history> <metadata type="creation modification state-change" <meta name="dc.element" content="content"/>... <meta name="qc.element" content="content"/>... </metadata> </history> </info> 7
Formatos de (QMML) Etiquetas de metadados O elemento de metadados de criação é usado para descrever a criação inicial de um documento (ou elementos em um documento). O elemento de metadados de modificação é usado para rastrear modificações subsequentes ao documento (ou para elementos que existam nesse documento). O elemento de metadados de alteração de estado é usado para rastrear alterações de estado, parecidas com uma modificação geral, mas onde a alteração assume a forma de uma alteração para uma propriedade de nome único. Um elemento de alteração de estado requer um atributo de propriedade adicional, para especificar o nome da propriedade cujo estado foi alterado, (juntamente com os elementos meta QC.State.Previous e QC.State.Value). Isso é usado em casos como o de rastreamento do estado dinâmico de um conjunto de regras em um documento qmml:rules. Etiquetas meta É possível usar as seguintes codificações da etiqueta <meta> Dublin Core padrão: A DC.Creator é usada em um elemento de metadados de criação para dar o nome (nome real, ou nome de conta de logon) do criador de um documento ou componente QMML. A DC.Description é usada para descrições de resumo curtas de documentos QMML, em qualquer um dos elementos de metadados. É possível usar uma descrição textual mais longa no elemento <description> adicional. A DC.Date.Created é usada para registrar a data de criação de um documento ou componente. A norma ISO8601 é usada na formatação de datas. A DC.Date é usada para registrar datas adicionais (para o histórico de mesclagem ou de modificação), também formatado de acordo com a norma ISO8601. A DC.Source é usada, em alguns casos, para registrar a fonte de informação original. Além disso, são usadas algumas etiquetas <meta> de extensão específica de QMML: A QC.User é usada em qualquer um dos elementos de metadados para registrar o nome (nome real ou nome de conta lógica) do usuário responsável por um evento de criação, mesclagem ou modificação. Ela consegue duplicar a informação já fornecida através do uso da etiqueta DC.Creator Dubin Core padrão. A QC.Host é usada em qualquer um dos elementos de metadados para registrar o nome do host do computador onde o documento foi criado ou modificado. A QC.Application é usada em qualquer um dos elementos de metadados para registrar o nome do aplicativo do Sistema Quadstone usado para criar ou modificar um elemento. Os documentos QMML criados através de outros aplicativos podem omitir isso. A QC.Application.Operation é usada (opcionalmente) para especificar uma operação em particular que foi aplicada. É usada para desambiguar em casos onde o elemento QC.Application não 8
Formatos de (QMML) fornece por si só detalhes suficientes (como com o utilitário qsqmmledit, que é possível usar em muitas operações de manipulação de QMML). A QC.Application.Version é usada (opcionalmente) para especificar a versão do aplicativo usado para modificar o documento. A QC.State.Value é usada para descrever o estado atual (novo) de uma propriedade em um elemento de metadados de alteração de estado. A QC.State.Previous é usada para descrever o estado anterior (antigo) de uma propriedade em um elemento de metadados de alteração de estado. Note que todos os metadados (exceto a descrição detalhada e informação de alteração de estado), estão codificados na forma HTML Dublin Core RFC2731 de elementos <meta>, envolvidos nos blocos <history> e <metadata> da QMML. As codificações Dublin Core RDF/XML (Estrutura de Descrição de Recursos usando XML) não estão sendo usadas atualmente. Variantes QMML As variantes QMML individuais constroem estruturas a partir do conjunto de elementos disponíveis na definição de esquema QMML. Cada variante é projetada para ser alvo de um objetivo em particular e irá usar elementos apropriados para representar a informação necessária para esse objetivo. Alguma estrutura subjacente global (como o suporte a metadados do documento) é compartilhada por todas as variantes. A especificação total sobre quais os documentos fornecidos, onde podem ocorrer, o que podem conter e quais atributos estão presentes no arquivo de definição de esquema QMML. A variante é definida pela sua etiqueta de nível superior. As variantes seguintes são atualmente suportadas: O tipo de documento qmml:rules Os documentos QMML para representar regras podem conter as seguintes etiquetas internas principais: O elemento <info> é usado para transportar metadados gerais do documento. Esse é somente um caso especial de uso desse tipo de elemento em vários componentes diferentes, de forma a transportar a informação de rastreamento. Esse elemento é descrito com algum detalhe na seção acima. O elemento <focus> é usado para descrever origens de dados (normalmente para um modelo) em termos de uma descrição de um arquivo de focus do Sistema Quadstone em particular. Inclui informação específica como o nome de caminho do arquivo.ftr, a TML usada para gerar esse 9
Formatos de (QMML) focus (se compilada usando TML) e informação de rastreamento da pista de auditoria. Não inclui quaisquer informações "internas" (como as listas de campos). O elemento <fields> é usado para descrever listas de campos em uma tabela (e, normalmente, uma tabela que corresponde a um focus). Não inclui quaisquer metadados analíticos detalhados somente o nome e tipo para cada campo e a expressão de derivação FDL para esses campos que estão derivados. O elemento <functions> é usado para descrever o estado da função FDL "global" (correspondendo a funções FDL que foram carregadas em uma sessão do Decisionhouse de um arquivo da biblioteca de funções). Esse é o estado da função "de fundo" com a qual quaisquer expressões FDL compiladas durante a sessão são definidas. O elemento <rulesets> é usado para descrever conjuntos de regras. Cada conjunto de regras consiste de um conjunto de regras nomeado. Uma regra é definida nos termos de um "campo de resultado", que corresponde exatamente a um campo derivado (como referência a uma entrada no elemento <fields>). O tipo de documento qmml:x-fdl Os documentos QMML para intercâmbio FDL podem conter as seguintes etiquetas internas principais: O elemento <fdl-function> é usado para definir uma expressão de função FDL única. É usado em documentos QMML que representam FDL. Isso pode surgir várias vezes. O elemento <fdl-derivation> é usado para definir uma expressão de derivação de campo FDL única. Isso pode surgir várias vezes. O tipo de documento qmml:expressions Os documentos QMML para intercâmbio de representação de estruturas FDL podem conter as seguintes etiquetas internas principais: O elemento <functions> é usado para descrever o estado de função FDL "global", exatamente da mesma forma que um documento <qmml:rules>. O elemento <variables> é usado para declarar a lista de nomes de campos usados na derivação (incluindo os campos de entrada e campos de resultados). O elemento <expression> contém apenas uma árvore de expressão ou uma lista de árvores de expressão, dependendo se o documento representa diversas derivações nomeadas ou apenas uma derivação não nomeada. É fornecida uma lista por um subelemento <expressionlist>, que pode, por sua vez, conter subelementos <assign>. A descrição total sobre como a estrutura FDL é representada é fornecida no arquivo de definição do esquema QMML. É possível à estrutura em um elemento <expression> conter elementos correspondentes a todos os itens sintáticos na linguagens FDL, como valores literais, condicionais, listas de expressão, 10
Formatos de (QMML) atribuições variáveis, entre outras. Essa estrutura é idêntica ao formato "analisado" que é possível adicionar a um documento qmml:rules usando o utilitário qsqmmledit -parse. 11
3 - Exemplos QMML Nesta seção Exemplos de variante QMML 13
Exemplos QMML Exemplos de variante QMML Aqui estão alguns exemplos simples para cada um dos formatos de variante QMML. Para facilitar a leitura, a instrução de processamento XML padrão inicial: <?xml version="1.0" encoding="utf-8"?> foi omitida. Da mesma forma, os atributos de declaração namespace QMML foram omitidos. Um documento QMML totalmente válido inclui o seguinte na etiqueta do elemento principal: <qmml:elementname xmlns="http://www.quadstone.com/draft3/qmml" xmlns:xsi="http://www.w3.org/2001/xmlschema-instance" xsi:schemalocation="http://www.quadstone.com/draft3/qmml qmml.xsd"> qmml:rules Aqui está um exemplo de um documento QMML para representar regras: <qmml:rules> <info> <history> <metadata type="creation"> <meta name="qc.application" content="none"/> <meta name="qc.application.version" content="none"/> <meta name="dc.date.created" content="2001-12-11t10:36:17"/> <meta name="qc.host" content="demohost"/> <meta name="qc.user" content="demouser"/> <meta name="dc.creator" content="demouser"/> </metadata> </history> </info> <focus name="finance_10000" platform="win32"> <focuspath>f:/quadstone/foci/finance_10000</focuspath> </focus> <fields> <field dhtype="string(6)" id="_1" name="gender" type="string"> <info> <history> <metadata type="creation"> <meta name="qc.application" content="decisionhouse"/> 13
Exemplos QMML <meta name="qc.application.version" content="4.0c"/> <meta name="dc.date.created" content="2001-12-11t10:36:17"/> </metadata> </history> </info> <fdl> <text> case Sex_MF eq "M": "Male"; Sex_MF eq "F": "Female"; default: null </text> </fdl> </field> <field dhtype="string(1)" id="_2" name="sex_mf" type="string"/> <field dhtype="real" id="_3" name="income" type="real"/> </fields> <rulesets> <ruleset id="_0" live="false" name="default"> <info> <history> <metadata type="creation"> <meta name="qc.application" content="none"/> <meta name="qc.application.version" content="none"/> <meta name="dc.date.created" content="2001-12-11t10:36:17"/> <meta name="qc.host" content="demohost"/> <meta name="qc.user" content="demouser"/> <meta name="dc.creator" content="demouser"/> </metadata> </history> </info> <fieldlist> <fieldref idref="_1" name="gender" type="string"/> </fieldlist> </ruleset> </rulesets> </qmml:rules> qmml:x-fdl Aqui está o mesmo exemplo, fornecido como uma expressão FDL não nomeada para o campo derivado: <qmml:x-fdl> <fdl-derivation> case Sex_MF eq "M": "Male"; 14
Exemplos QMML Sex_MF eq "F": "Female"; default: null </fdl-derivation> </qmml:x-fdl> qmml:expressions Aqui está o mesmo exemplo, fornecido como uma árvore de expressão FDL: <qmml:expressions> <variables> <variable id="_1" name="sexmf" type="string"/> </variables> <expression type="string"> <choose source="case" type="string"> <when type="string"> <condition type="integer"> <binaryop op="eq" type="integer"> <expression type="string"> <fieldref idref="_1" name="sexmf" type="string"/> </expression> <expression type="string"> <stringliteral type="string"><![cdata[m]]></stringliteral> </expression> </binaryop> </condition> <expression type="string"> <stringliteral type="string"><![cdata[male]]></stringliteral> </expression> </when> <when type="string"> <condition type="integer"> <binaryop op="eq" type="integer"> <expression type="string"> <fieldref idref="_1" name="sexmf" type="string"/> </expression> <expression type="string"> <stringliteral type="string"><![cdata[f]]></stringliteral> </expression> </binaryop> </condition> <expression type="string"> <stringliteral type="string"><![cdata[female]]></stringliteral> </expression> </when> 15
Exemplos QMML <otherwise type="string"> <nullliteral type="string"/> </otherwise> </choose> </expression> </qmml:expressions> 16
3001 Summer Street Stamford CT 06926-0700 USA www.pitneybowes.com 2017 Pitney Bowes Software Inc. Todos os direitos reservados