From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp2.migadu.com ([2001:41d0:303:e224::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms8.migadu.com with LMTPS id UPMCKHdOqWWqZAAAe85BDQ:P1 (envelope-from ) for ; Thu, 18 Jan 2024 17:14:47 +0100 Received: from aspmx1.migadu.com ([2001:41d0:303:e224::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp2.migadu.com with LMTPS id UPMCKHdOqWWqZAAAe85BDQ (envelope-from ) for ; Thu, 18 Jan 2024 17:14:47 +0100 X-Envelope-To: larch@yhetil.org Authentication-Results: aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=christianmoe.com header.s=x header.b=EbAys3Jz; dmarc=fail reason="SPF not aligned (relaxed)" header.from=christianmoe.com (policy=none); spf=pass (aspmx1.migadu.com: domain of "emacs-orgmode-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="emacs-orgmode-bounces+larch=yhetil.org@gnu.org" ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1705594487; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type:in-reply-to:in-reply-to: references:references:list-id:list-help:list-unsubscribe: list-subscribe:list-post:dkim-signature; bh=P/modGG5o0KGoj2OOpbxN4pBLKwkK7KwzDxCTWUlKCg=; b=XNrQjcizvCzxZ6ZEAk9zhdz9h6hc1ZHl+q5YMcLJDAOlwdIbEkXE73+2UsLeWq4cGK6MFK jA9tcaTB6A72E/HxAqI+qo8sfG1Sq1FOptzquXP0U0s6NhNGTOccajykRyV0+tzek/7X/L ot+Bv3PuFmh3skMSV0kDCHIkUCv2XLxngikvkWEWqWEa4Lu042/mhzPT8Qq35DvDqIbSEj 6JBDtYVdA5wWfuvobiO9zAnO6WJZrEpK5jqOmgdffVSBRbEe7iyKPRinu8Pb+d1EyN5TRr yUWVoiZ0n1IHmEXFHjUg4sy9F3yOjCb9W/VtSAiC3B5SwIi5/SfeaAI01b7dIQ== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=christianmoe.com header.s=x header.b=EbAys3Jz; dmarc=fail reason="SPF not aligned (relaxed)" header.from=christianmoe.com (policy=none); spf=pass (aspmx1.migadu.com: domain of "emacs-orgmode-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="emacs-orgmode-bounces+larch=yhetil.org@gnu.org" ARC-Seal: i=1; s=key1; d=yhetil.org; t=1705594487; a=rsa-sha256; cv=none; b=AJbpRwA0NmKjyZbc/JDWKtV4fBDdh99JU1puibVJXql/8RIto0St3oETs5F+DV0aOS9wbO w78o1LtmrY32cyDLHCTYWwtgO2n/xwo2HSnNpMR9FEbcfC1QyApmfn4Qzj0k4Ihq/aldao Yu5hX4QIppDigFW7+hu5YJ32ILeejI+H/k9jCJP7/t9s3z2ST8ZZgup2y+dxWaxCOpDlcj 8H/zgkf35GhGcbkJiA7KKwnkphjiCJNUg49ASdkCfSXyFphpHuG2Jgs6D7MTDvcvJ7+EvB HW8pJArzgEHFogb15UnCyYkIdzKUFdlAJPpVOjJpnS2tEqxLVhMpWQkB3toEoQ== Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 5743F30D9E for ; Thu, 18 Jan 2024 17:14:47 +0100 (CET) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1rQUBL-00052i-T1; Thu, 18 Jan 2024 10:19:51 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1rQUBJ-00051Q-Fz for emacs-orgmode@gnu.org; Thu, 18 Jan 2024 10:19:49 -0500 Received: from mailer-211-145.hitrost.net ([91.185.211.145]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1rQUBH-0005Sp-KN for emacs-orgmode@gnu.org; Thu, 18 Jan 2024 10:19:49 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=christianmoe.com; s=x; h=Content-Type:MIME-Version:Message-ID:Date: In-reply-to:Subject:To:From:References:Sender:Reply-To:Cc: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id: List-Help:List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=P/modGG5o0KGoj2OOpbxN4pBLKwkK7KwzDxCTWUlKCg=; b=EbAys3JzPyvWZWr+p1pd3emW/s u2AUfHPdUF3EtSUnsEtmqx8cL0YbBM8MT/KpZR1WYL+B5925jPjHcinfF4XatSNRLUWVJUUiXg1GA LqFgLEXJRU4gSYzLQdWBl/6kkcozL/AqnBj0ysHifiChazsmEh2012rtULTaUYJmyKT/YMZsk1pux A5kKMvJculOibxouBPeJmkXehv8fffdiPdSnyUSDIpPhkdhaT08Pu6uAzAzkdt6uJzr0WdexsY4rL aMHUKCKuO2FMlWlOChs7PFtLTWq+OrhmtVgoMonZHlm2qCwGcKCBqUNOuTnj6wQH2MZB1fmwZd1LX VxUnigRA==; Received: from 92-63-16-127.dynamic.telemach.net ([92.63.16.127] helo=Tauriel) by b1.hitrost.net with esmtpsa (TLS1.3) tls TLS_AES_256_GCM_SHA384 (Exim 4.96-58-g4e9ed49f8) (envelope-from ) id 1rQTlS-006ivo-0x; Thu, 18 Jan 2024 15:53:06 +0100 References: User-agent: mu4e 1.2.0; emacs 27.2 From: Christian Moe To: emacs-orgmode@gnu.org Subject: Re: Developing Moodle resources/sites with Org Mode In-reply-to: Date: Thu, 18 Jan 2024 15:53:05 +0100 Message-ID: <87y1cmpub2.fsf@christianmoe.com> MIME-Version: 1.0 Content-Type: text/plain X-GeoIP-SMTP-IP: Country [IP], SI [92.63.16.127] X-Authenticated-Id: mail@christianmoe.com Received-SPF: pass client-ip=91.185.211.145; envelope-from=mail@christianmoe.com; helo=mailer-211-145.hitrost.net X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-orgmode@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+larch=yhetil.org@gnu.org Sender: emacs-orgmode-bounces+larch=yhetil.org@gnu.org X-Migadu-Flow: FLOW_IN X-Migadu-Country: US X-Migadu-Spam-Score: 5.31 X-Spam-Score: 5.31 X-Migadu-Queue-Id: 5743F30D9E X-Migadu-Scanner: mx12.migadu.com X-TUID: zJ5TM15baJw9 Hi, Edward Edward Doolittle writes: > 2) Development of Moodle glossaries. Glossaries can be uploaded to a > Moodle site using an appropriate XML file. Glossaries could be > developed in Org mode, including JSXgraph diagrams and graphs, PNG > images, and so on, and then Org mode converted to XML and the XML > transformed to Moodle Glossary XML using XSLT. (I don't really know > those tools at all, so I don't know if that would be a good way to go > about the process; exporting directly to Moodle Glossary was my first > thought, but it is not a general export that is necessary or > appropriate, rather an export of a specifically designed Org file. > XSLT seems old fashioned but there are tools around, and there is a > project for exporting Org mode to XML.) I'm a Moodle noob and rusty on the tools, but this is interesting to think about. You may not need any additional library for the XML export bit. The builtin Org HTML exporter does XHTML export by default, and XHTML is an XML, so one could just apply XSLT to that. There may be advantages to using a library like om-to-xml (cleaner, more semantic XML; access to more properties than what gets exported). But it looks like Moodle only uses XML to wrap the glossary entries and their properties; any markup inside the glossary definitions appears to be in HTML (with the html tags entity-escaped), not defined by the Moodle glossary XML format. So if you're going to have some markup in the definitions, you may be better off leaving the (X)HTML part to Org instead of reimplementing it in XSLT. Another option might be to dispense with XSLT entirely and just write elisp code to map the entries of an Org glossary and generate Moodle XML from that. How would you format the glossary on the Org side? Would you use Org entries (** term) or Org description lists (- term :: definition)? On the Moodle side, do you want keywords and attachments? Yours, Christian