Основные части XML-документа Word 2007

У меня есть файл xml, который мне нужно открыть в Microsoft Word 2007. Я написал его самостоятельно. Но когда я пытаюсь открыть, он говорит: «Некоторые части отсутствуют или недействительны». Я думаю, что это происходит, в моем документе не определены все необходимые свойства. Поэтому мне нужно знать, что необходимо для открытия XML-документа в Word 2007. У меня определены следующие свойства.

cp:coreProperties
w:settings
w:body

(В теле есть простая текстовая строка.) Что еще нужно включить? Заранее спасибо.


person harsh    schedule 17.06.2012    source источник
comment
Если создать файл так, как вы это делаете сейчас, слишком сложно, лучшим вариантом может быть использование Microsoft OpenXML SDK. Создать действительные документы довольно просто, просто взгляните на образцы, представленные в интерактивной справке SDK.   -  person Dirk Vollmar    schedule 19.06.2012


Ответы (1)


Выраженный в виде Flat OPC XML, он может быть таким простым, как:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<?mso-application progid="Word.Document"?>
<pkg:package xmlns:pkg="http://schemas.microsoft.com/office/2006/xmlPackage">
  <pkg:part pkg:name="/_rels/.rels" pkg:contentType="application/vnd.openxmlformats-package.relationships+xml" pkg:padding="512">
    <pkg:xmlData>
      <Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships">
        <Relationship Id="rId1" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument" Target="word/document.xml"/>
      </Relationships>
    </pkg:xmlData>
  </pkg:part>
  <pkg:part pkg:name="/word/document.xml" pkg:contentType="application/vnd.openxmlformats-officedocument.wordprocessingml.document.main+xml">
    <pkg:xmlData>
      <w:document mc:Ignorable="w14 wp14" xmlns:wpc="http://schemas.microsoft.com/office/word/2010/wordprocessingCanvas" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:m="http://schemas.openxmlformats.org/officeDocument/2006/math" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:wp14="http://schemas.microsoft.com/office/word/2010/wordprocessingDrawing" xmlns:wp="http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing" xmlns:w10="urn:schemas-microsoft-com:office:word" xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" xmlns:w14="http://schemas.microsoft.com/office/word/2010/wordml" xmlns:wpg="http://schemas.microsoft.com/office/word/2010/wordprocessingGroup" xmlns:wpi="http://schemas.microsoft.com/office/word/2010/wordprocessingInk" xmlns:wne="http://schemas.microsoft.com/office/word/2006/wordml" xmlns:wps="http://schemas.microsoft.com/office/word/2010/wordprocessingShape">
        <w:body>
          <w:p >
            <w:r>
              <w:t>Hello world</w:t>
            </w:r>
          </w:p>
        </w:body>
      </w:document>
    </pkg:xmlData>
  </pkg:part>
</pkg:package>

Вы включаете отношения, но упускаете их целевую часть? Или включить где-то relId, но полностью пропустить отношения?

person JasonPlutext    schedule 18.06.2012
comment
спасибо, а что здесь главное? Чтобы быть более точным, я хочу добавить содержимое zip-файла, который вы получаете из документа, в один документ xml, чтобы я мог снова открыть его из Word 2007. (Файлы xml в _rels, customXml, docProps и папки word нужно поместить в один xml файл и открыть его в Word 2007). Я знаю, что результирующий документ будет большим, но мне нужно это сделать. - person harsh; 18.06.2012
comment
В Word сохраните как XML. Это дает вам Flat OPC XML. Затем вы можете удалить все, что вам не нужно. Просто убедитесь, что если вы удалите часть, вы удалите все отношения, указывающие на нее. И если у него есть собственная часть rels, вы удаляете ее и все зависимые части. Немного утомительно делать вручную, но довольно просто. - person JasonPlutext; 20.06.2012
comment
большое спасибо. Я проверю это и дам вам знать, если это сработает. Большое спасибо за поддержку. - person harsh; 20.06.2012