Je travaille avec un CMS piloté par XML, et avant de m'écrire et d'écrire ou d'implémenter un module qui analyse le format iCal, je me demandais s'il était possible de l'analyser en utilisant juste XSLT ou idéalement juste une expression XPath, car il s'agit d'une fonction intégrée au CMS.Analyse des données iCalendar avec XPath/XSLT
Répondre
Eh bien, votre problème initial serait que ce n'est pas un format XML. fichiers iCalendar sont marqués du texte:
BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//hacksw/handcal//NONSGML v1.0//EN
BEGIN:VEVENT
DTSTART:19970714T170000Z
DTEND:19970715T035959Z
SUMMARY;LANGUAGE="en_US":Bastille Day Party
END:VEVENT
END:VCALENDAR
Ainsi, l'analyse syntaxique qui avec XPath et XSLT pourrait être difficile. Cependant, il existe une représentation XML de iCalendar. Vous pouvez trouver des informations sur la spécification xCal Basic. L'exemple ci-dessus (à partir de cette spécification) ressemble à:
<?xml version="1.0" TODO_NAMESPACE="foo"?>
<iCalendar xmlns:xCal="urn:ietf:params:xml:ns:xcal">
<vcalendar>
<version>2.0</version>
<prodid>-//hacksw/handcal//NONSGML v1.0//EN</prodid>
<vevent>
<dtstart>19970714T170000Z</dtstart>
<dtendt>19970715T035959Z</dtend>
<summary xml:lang="en_US">Bastille Day Party</summary>
</vevent>
</vcaledar>
</iCalendar
(j'ai copié du projet, d'où l'espace de noms impair). Il y a plus d'informations sur le site OASIS Coverpages et sur le CalConnect blog (c'est le plus à jour).
Si vous pouvez convertir de l'un à l'autre, alors oui, vous pouvez l'analyser en utilisant des instructions XPath. Si non, alors vous pouvez analyser le texte. Je ne suis au courant d'aucune implémentation, j'en ai peur.
- 1. expansion des données de récurrence de iCalendar
- 2. analyse la date iCalendar à l'aide de C#
- 3. Analyse des données XFN avec Jquery
- 4. Analyse des données dans Silverlight
- 5. Analyse des données dans l'iphone
- 6. Analyse des données de chemin
- 7. Analyse des données de l'accéléromètre
- 8. Liste iCalendar "Field" (pour un schéma de base de données basé sur la norme iCalendar)
- 9. iCalendar ATTENDEE
- 10. Importation d'événements iCalendar avec des alarmes dans Outlook 2007
- 11. Analyse d'un fichier avec des données de colonne en Python
- 12. Analyse des données XFN avec Jquery, tour 2
- 13. appel ajax avec jquery - analyse des données de retour entrantes
- 14. Analyse des données pour les tableaux bruyants
- 15. Extraction et analyse de données avec soapUI
- 16. vcalendar vs icalendar
- 17. Analyse des données d'objet stdClass dans php
- 18. Intégrer iCalendar dans Moodle
- 19. Lecteur iCalendar pour Python?
- 20. PHP - preg_match_all - iCalendar - REGEX
- 21. Analyse de données XML avec Cocoa
- 22. Tri/analyse automatique des données dans Excel
- 23. Analyse des données retournées par l'API Twitpic
- 24. analyse des données en réponse JSON
- 25. analyse syntaxique des données xml iphone
- 26. Format iCalendar (Outlook 2007)
- 27. Analyse XML avec des guillemets simples?
- 28. analyse xml Données
- 29. analyse JSON données
- 30. analyse json avec rhomobile
Merci pour la réponse, il semble que je suis coincé avec juste la mise en œuvre normale d'iCal j'ai peur. J'ai creusé un peu plus et j'ai trouvé cet exemple http://designadmin.com/journal/2007/07/29/xslt-transformation-of-ics-to-xml/ Dans lequel l'auteur semble convertir iCal en XML, mais je ne suis pas sûr de savoir comment l'implémenter car il n'y a pas d'élément XML racine pour le XSL. –
Si j'ai un peu de temps, je vais jeter un oeil à cela, semble intéressant –
@Graham - qui ressemble à un bon endroit pour commencer. Lorsque vous exécutez la feuille de style, transmettez la valeur de chaîne de l'iCal dans le paramètre 'ical-data-raw'. Vous pouvez exécuter ce XSLT sur n'importe quel fichier XML, même le XSLT lui-même. Les modèles fonctionnent sur le paramètre 'ical-data-raw' et ne font rien avec le document XML source. –