O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.

XSLT: Conceitos iniciais

2.337 visualizações

Publicada em

Introdução
XPath
Elementos essenciais (mais comuns)
Funções nativas
Funções não-nativas

Publicada em: Tecnologia
  • Seja o primeiro a comentar

XSLT: Conceitos iniciais

  1. 1. XSLT Conceitos iniciais Fabrício Silva Assumpção fabricioassumpcao.com | assumpcao.f@gmail.com Marília, 13 de outubro de 2015
  2. 2. Conteúdo  Introdução  XPath  Elementos essenciais (mais comuns)  Funções nativas  Funções não-nativas  Exercícios
  3. 3. Regras da XML<?xml version="1.0" encoding="UTF-8"?> <agenda> <contato> <nome>Fabrício Silva Assumpção</nome> <email>assumpcao.f@gmail.com</email> <endereco tipo="residencial"> <rua>Brasil</rua> <numero>150</numero> <bloco/> <cep>17526-000</cep> <cidade>Marília</cidade> </endereco> </contato> <!-- Fim do documento --> </agenda>  Declaração XML  Elementos: tags de início e fim; elemento vazio; sobreposição proibida; nomeação das tags; case sensitive  Atributos: valor entre aspas ou apóstrofos; não repetíveis; nomeação dos atributos  <!-- Comentários -->  Caracteres especiais
  4. 4. Transformação com XSLT Documento de origem Folha de estilo Documento de destino
  5. 5. Estratégia inicial do Repositório XML da Web of Science Folha de estilo Web of Science - CSV CSV do DSpace
  6. 6. Estratégia atual do Repositório XML da Web of Science Folha de estilo Web of Science – DSpace XML XML do DSpace Folha de estilo DSpace XML – DSpace CSV CSV do DSpace XML da SciELO Folha de estilo SciELO – DSpace XML XML da Scopus Folha de estilo Scopus – DSpace XML
  7. 7. XML da PUBMED Origem
  8. 8. XML do DSpace Destino
  9. 9. /PubmedArticle/MedlineCitation/Article/Journal/JournalIssue/PubDate/Year /PubmedArticle/MedlineCitation/Article/Journal/ISSN ISSN XPath/PubmedArticle
  10. 10. XPath AuthorList/Author[1] Author[1]/AffiliationInfo[2]/Affiliation AuthorList/Author[2]AuthorList/Author[last()-1] AuthorList/Author[last()] XPath
  11. 11. XPath ArticleIdList/ArticleId[@IdType="pubmed"] ArticleIdList/ArticleId[@IdType="doi"] DADOS-BASICOS-DO-ARTIGO/@ANO-DO-ARTIGO XPath Valor do atributo Elemento que contem o atributo com determinado valor
  12. 12. marc:datafield[@tag=100]/marc:subfield[@code='c'] XPath
  13. 13. Operadores  and  or  =  !=  Diferente  &lt;  <  &gt;  >  not()  http://www.w3schools.com/xsl/xpath_intro.asp
  14. 14. Elementos da XSLT  xsl:stylesheet  xsl:output  xsl:template  xsl:text  xsl:value-of  xsl:if  xsl:choose  xsl:for-each  xsl:variable  xsl:element  xsl:attribute w3schools.com/xsl
  15. 15. xsl:stylesheet
  16. 16. xsl:stylesheet
  17. 17. xsl:output
  18. 18. xsl:template
  19. 19. xsl:element e xsl:attribute
  20. 20. xsl:for-each
  21. 21. xsl:for-each
  22. 22. Exercício 1  1.1 Criar uma folha de estilo.  1.2 Criar um template para processar cada <artigo>.
  23. 23. xsl:text
  24. 24. xsl:value-of
  25. 25. xsl:for-each
  26. 26. Exercício 2  2.1 Criar elementos <dcvalue element=" " qualifier=" "> a partir do arquivo XML de exemplo. xsl:text xsl:value-of select=" " xsl:for-each select=" "
  27. 27. xsl:if Resultado: True ou False
  28. 28. Exercício 3  3.1 Criar o dc.identifier a partir do DOI.  3.2 Criar o dc.format.extent.
  29. 29. xsl:choose
  30. 30. Exercício 4  4.1 Criar o dc.language.iso.  4.2 Criar o dc.type.  4.3 Criar o dc.title com o atributo language.
  31. 31. xsl:variable
  32. 32. Funções Funções mais frequentes:  concat  contains  replace  substring  string-length  substring-before  substring-after  ends-with  starts-with  upper-case  lower-case xsltfunctions.com
  33. 33. Funções
  34. 34. Funções
  35. 35. Funções
  36. 36. Exercício 5  5.1 Criar o dc.identifier.issn com hifens nos ISSNs.  5.2 Incluir “[UNESP]” após o nome do autor se constar “UNESP” na instituição.  5.3 Criar o dc.description.abstract sem “Resumo” e “Abstract” no início.
  37. 37. Funções não-nativas Funções mais frequentes:  functx:contains-any-of  functx:replace-first  functx:replace-multi  functx:capitalize-first xsltfunctions.com
  38. 38. Funções não-nativas Incluir o código da função na folha de estilo
  39. 39. Exercício 6  6.1 Criar o dc.subject apenas com a inicial maiúscula.  6.2 Incluir “[UNESP]” após o nome do autor se constar “UNESP”, “Universidade Estadual Paulista” ou “São Paulo State Univ” na instituição.
  40. 40. xsl:template “CamelCase”
  41. 41. Exercício 7  7.1 Criar o dc.relation.ispartof.  7.2 Criar o dc.identifier.citation.
  42. 42. Referências ALMEIDA, M. B. Uma introdução ao XML, sua utilização na Internet e alguns conceitos complementares. Ciência da Informação, Brasília, v. 31, n. 2, p. 5-13, maio/ago. 2002. ALVES, R. C. V. Metadados como elementos do processo de catalogação. 2010. 132 f. Tese (Doutorado em Ciência da Informação) – Faculdade de Filosofia e Ciências, Universidade Estadual Paulista, Marília, 2010. ASSUMPÇÃO, F. S. Conversão de registros em XML para MARC 21: um modelo baseado em folhas de estilo XSLT. 135 f. Dissertação (Mestrado em Ciência da Informação) – Faculdade de Filosofia e Ciências, UNESP, Marília, 2013. ASSUMPÇÃO, F. S.; SANTOS, P. L. V. A. C. Metadata Authority Description Schema (MADS): uma alternativa à utilização do formato MARC 21 para dados de autoridade. Informação & Informação, v. 18, n. 1, p. 106-126, 2013. BRADLEY, N. The XML Companion. 3rd ed. Boston: Addison-Wesley Professional, 2001. EITO BRUN, R. Lenguajes de marcas para la gestión de recursos digitales: aproximación técnica, especificaciones y referencia. Gijón: Trea, 2008. FLAMINO, A. N. MARCXML: um padrão de descrição para recursos informacionais em Open Archives. 2006. 164 f. Dissertação (Mestrado em Ciência da Informação) - Faculdade de Filosofia e Ciências, Universidade Estadual Paulista - UNESP, Marília. 2006. KEITH, C. Using XSLT to manipulate MARC metadata. Library Hi Tech, v. 22, n. 2, p. 122-130, 2004. LIBRARY OF CONGRESS. MARC 21 Format for Bibliographic Data. Washington, D.C., 2012. 1999 Edition. Update No. 1 (October 2001) through Update No. 15 (September 2012). LIBRARY OF CONGRESS. MARC 21 XML Schema: official web site. Washington, D.C., 2011.
  43. 43. Referências LIBRARY OF CONGRESS. MARC XML Design Considerations. Washington, D.C., 2004. LIBRARY OF CONGRESS. Metadata Object Description Schema. Washington, 2013. LIBRARY OF CONGRESS. Schema MARC21slim.xsd. Washington, D.C., 2009. MILLER, D. R.; CLARKE, K. S. Putting XML to work in the library: tools for improving access and management. Chicago: American Library Association, 2004. PICCO, P.; ORTIZ REPISO, V. RDA, el nuevo código de catalogación: cambios y desafíos para su aplicación. Revista Española de Documentación Científica, v. 35, n. 1, p. 145-173, enero-marzo 2012. RAY, E. T. Aprendendo XML. Rio de Janeiro: Campus, 2001. SIQUEIRA, M. A. XML na Ciência da Informação: uma análise do MARC 21. 2003. 133 f. Dissertação (Mestrado em Ciência da Informação) – Faculdade de Filosofia e Ciências, Universidade Estadual Paulista, Marília, 2003. TIDWELL, D. XSLT. 2nd ed. Beijing: O'Reilly, 2008. W3C. XML Schema. Revision 1.153, date: 2012/06/22. Cambridge, 2012a. W3C. XML. Last modified: 2012/01/24. Cambridge, 2012b. W3C. XSL Transformations (XSLT) Version 2.0: W3C Recommendation 23 January 2007. Cambridge, 2007. WALMSLEY, P. FunctX XSLT Functions. Traverse City: Datypic, 2007.
  44. 44. Obrigado! Fabrício Silva Assumpção fabricioassumpcao.com | assumpcao.f@gmail.com Marília, 13 de outubro de 2015

×