daisy / pipeline-tasks

Used for project management of the DAISY Pipeline 2
Apache License 2.0
1 stars 0 forks source link

Update all XSLTs to XSLT 3.0 #119

Open bertfrees opened 6 years ago

bertfrees commented 6 years ago

The new packages feature allows us to have better encapsulation and a clearer API definition (which makes for better documentation and allows us to do semantic versioning). Updating to XSLT 3.0 in itself shouldn't be a big deal. We just need to update Saxon and Calabash (https://github.com/daisy/pipeline-tasks/issues/117) and all 2.0 stylesheets should already be forward compatible with 3.0 (I assume). Adding packages (and other 3.0 features) can be done ad hoc.

josteinaj commented 6 years ago

Updating to version 3.0 would make the XSLTs less reusable by other systems though, wouldn't it?

bertfrees commented 6 years ago

But reusability is exactly one of the goals of the packaging feature. Are our XSLTs currently used in other systems?

josteinaj commented 6 years ago

I haven't looked at the packaging feature. And I don't use the modules the way we package them now.

But I've sometimes reused (i.e. copy-pasted) some bits from here and there in other projects. I'm worried that might not always be possible if we start using too many XSLT 3.0 features, but maybe it's not really a problem. You probably don't intent to rewrite all XSLTs using non-backwards-compatible features :)

All-in-all it's probably good to update to 3.0 :+1:

bertfrees commented 6 years ago

You probably don't intent to rewrite all XSLTs using non-backwards-compatible features

Not immediately no.