[ 
https://issues.apache.org/jira/browse/TIKA-5017?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18135524#comment-18135524
 ] 

ASF GitHub Bot commented on TIKA-5017:
--------------------------------------

tballison opened a new pull request, #3468:
URL: https://github.com/apache/tika/pull/3468

     Read p:sldIdLst from presentation.xml instead of iterating slide
     relationships in rId string order (rId10 before rId2). Embedded-resource
     page numbers follow the same order. Related slides missing from the list
     are extracted last and counted in msoffice:ppt:num-unlisted-slides.
   
     Co-Authored-By: Claude Opus 5.5 <[email protected]>
   
   <!--
     Licensed to the Apache Software Foundation (ASF) under one
     or more contributor license agreements.  See the NOTICE file
     distributed with this work for additional information
     regarding copyright ownership.  The ASF licenses this file
     to you under the Apache License, Version 2.0 (the
     "License"); you may not use this file except in compliance
     with the License.  You may obtain a copy of the License at
   
       http://www.apache.org/licenses/LICENSE-2.0
   
     Unless required by applicable law or agreed to in writing,
     software distributed under the License is distributed on an
     "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
     KIND, either express or implied.  See the License for the
     specific language governing permissions and limitations
     under the License.
   -->
   
   Thanks for your contribution to [Apache Tika](https://tika.apache.org/)! 
Your help is appreciated!
   
   Before opening the pull request, please verify that
   * there is an open issue on the [Tika issue 
tracker](https://issues.apache.org/jira/projects/TIKA) which describes the 
problem or the improvement. We cannot accept pull requests without an issue 
because the change wouldn't be listed in the release notes.
   * the issue ID (`TIKA-XXXX`)
     - is referenced in the title of the pull request
     - and placed in front of your commit messages surrounded by square 
brackets (`[TIKA-XXXX] Issue or pull request title`)
   * commits are squashed into a single one (or few commits for larger changes)
   * Tika builds and unit tests pass with `./mvnw clean install` (`clean test` 
alone cannot resolve the pipes plugin zips)
   * if you used a generative AI tool: follow the [ASF Generative Tooling 
Guidance](https://www.apache.org/legal/generative-tooling.html) (`Generated-by: 
<tool>` in the commit message), and consider running the pre-flight in 
`.skills/devs/pr-review/SKILL.md` — fix what it finds; don't paste its report 
here
   * there should be no conflicts when merging the pull request branch into the 
*recent* `main` branch. If there are conflicts, please try to rebase the pull 
request branch on top of a freshly pulled `main` branch
   * if you add new module that downstream users will depend upon add it to 
relevant group in `tika-bom/pom.xml`.
   
   We will be able to faster integrate your pull request if these conditions 
are met. If you have any questions how to fix your problem or about using Tika 
in general, please sign up for the [Tika mailing 
list](http://tika.apache.org/mail-lists.html). Thanks!
   




> PPTX SAX extractor iterates slides in "lexographic relationship id" order 
> instead "presentation" order
> ------------------------------------------------------------------------------------------------------
>
>                 Key: TIKA-5017
>                 URL: https://issues.apache.org/jira/browse/TIKA-5017
>             Project: Tika
>          Issue Type: Bug
>          Components: parser
>    Affects Versions: 4.0.0
>            Reporter: Ken Reese
>            Priority: Minor
>         Attachments: libreoffice-twelve-slides.pptx
>
>
> This seems like a regression in behavior between the how the old PPTX DOM 
> extractor worked and how the newer PPTX SAX extractor works.
> The current PPTX SAX extractor is iterating slides in lexographic order of 
> their relationship id instead of actual presentation order. This doesn't 
> always make sense - you can have `rId10` show up before `rId4` for example.
> Tika is currently just using POI to iterate `ppt/_rels/presentation.xml.rels` 
> and returning the slides in whichever order POI returns in - which is just 
> using the relationship id as a key in a `TreeMap`. So we really shouldn't be 
> relying on the POI iteration order to give us the actual slide order back 
> here.
> I think we should instead be looking at `ppt/presentation.xml` to get the 
> slide ordering, which is how Tika used to work when it used the DOM extractor 
> by default. As of 4.0.0, the DOM extractor implementation has been completely 
> remove  from Tika, so there is no longer an easy workaround.



--
This message was sent by Atlassian Jira
(v10.3.26#10030026)

Reply via email to