Java API for XML Processingリリース・ノート

仕様バージョン: 1.4
リファレンス実装バージョン: 1.4.0

このドキュメントには、インストール手順と、このソフトウェア・ライブラリをより効果的に使用するために役立つ可能性のあるその他のメモが含まれています。

目次

機能変更

JAXP 1.4での技術的に重要な変更点は、Streaming API for XML (StAX)(JSR 173)からjavax.xml.stream.*パッケージが追加されたことです。この追加により、JAXP 1.4は、ストリーミングAPIを使用してドキュメントの検証および変換をサポートするようになりました。JAXP 1.4はJava SEに統合されているため、StAXサポートは最新のJavaプラットフォームを実行しているシステムで透過的です。

gMonth

JAXP 1.4では、XML Schema 1.0 Specification Errata: E2-12 Errorで行われた変更を反映するために、gMonth用のXMLスキーマ検証ロジックが変更されています。具体的には、字句表現「--MM--」を使ったgMonthを無効だとして拒否します。

JAXP 1.3以後の仕様変更

次のセクションには、JAXP 1.4で行われた重要な変更点がまとめられています。詳細は、該当するJavaDocを参照してください。

1.  パッケージjavax.xml.datatype

1.1.  クラスDatatypeFactory

  • DATATYPEFACTORY_IMPLEMENTATION_CLASScom.sun.org.apache.xerces.internal.jaxp.datatype.DatatypeFactoryImplに変更されました。

  • newInstance(String, ClassLoader)メソッドが追加されました。

1.2.  クラスDuration

  • equals()の引数がnullの場合、NullPointerExceptionをスローする代わりにfalseを返します。

1.3.  クラスXMLGregorianCalendar

  • equals()の引数がnullの場合、NullPointerExceptionをスローする代わりにfalseを返します。

2.  パッケージjavax.xml.parsers

2.1.  クラスDocumentBuilderFactory

  • newInstance(String, ClassLoader)メソッドが追加されました。

2.2.  クラスSAXParserFactory

  • newInstance(String, ClassLoader)メソッドが追加されました。

3.  パッケージjavax.xml.stream

      StAXをサポートするためにjavax.xml.streamパッケージを追加しました。このパッケージは、次のインタフェースで構成されています。

  • EventFilter

  • Location

  • StreamFilter

  • XMLEventReader

  • XMLEventWriter

  • XMLReporter

  • XMLResolver

  • XMLStreamConstants

  • XMLStreamReader

  • XMLStreamWriter

      クラス:

  • XMLEventFactory

  • XMLInputFactory

  • XMLOutputFactory

      例外:

  • XMLStreamException

      エラー:

  • FactoryConfigurationError

4.  パッケージjavax.xml.stream.events

      StAXをサポートするためにjavax.xml.stream.eventsパッケージを追加しました。このパッケージは、次のインタフェースで構成されています。

  • Attribute

  • Characters

  • Comment

  • DTD

  • EndDocument

  • EndElement

  • EntityDeclaration

  • EntityReference

  • Namespace

  • NotationDeclaration

  • ProcessingInstruction

  • StartDocument

  • StartElement

  • XMLEvent

4.1.  パッケージjavax.xml.stream.util

      StAXをサポートするためにjavax.xml.stream.utilパッケージを追加しました。このパッケージは、次のインタフェースで構成されています。

  • XMLEventAllocator

  • XMLEventConsumer

      クラス:

  • EventReaderDelegate

  • StreamReaderDelegate

5.  パッケージjavax.xml.transform

5.1.  クラスErrorListener

  • fatalError()のセマンティックスを明示しました。

5.2.  クラスTransformer

  • スタイル・シートでsetOutputProperty()またはxsl:outputで明示的に設定されていなかったプロパティについて、getOutputProperty()のセマンティックスを明示しました。

5.3.  クラスTransformerFactory

  • newInstance(String, ClassLoader)メソッドが追加されました。

5.4.  パッケージjavax.xml.transform.stax

      StAXをサポートするためにjavax.xml.transform.staxパッケージを追加しました。このパッケージは、次のインタフェースで構成されています。

  • TemplatesHandler

  • TransformerHandler

      クラス:

  • StAXResult

  • StAXSource

6.  パッケージjavax.xml.validation

6.1.  クラス・スキーマ

  • SchemaFactory上で設定される機能はnewValidator()で作成されたValidatorに渡されるべきであることを明示しました。

  • SchemaFactory上で設定される機能はnewValidatorHandler()で作成されたValidatorHandlerに渡されるべきであることを明示しました。

6.2.  クラスSchemaFactory

  • newInstance(String, ClassLoader)メソッドが追加されました。

  • SchemaFactory上で設定される機能はnewSchema()で作成されたSchemaに渡されるべきであることを明示しました。このコンテキストのnewSchema()に関連する微細な点について、実装者と開発者へのメモを含めました。

  • newSchema(Source[])への入力がXMLドキュメントまたは要素であることが想定されていることを明示しました。

  • SchemaFactory上で設定される機能はこのファクトリで作成されたSchemaに渡されるべきであり、さらにそのSchemaから作成されたValidatorValidatorHandlerに渡されるべきであることを明示するために、setFeature()のドキュメントを更新しました。

6.3.  クラスSchemaFactoryLoader

SchemaFactoryLoaderクラスは、JAXP 1.3開発プロセス中に作成されました。JAXP 1.3が完了する直前に、検証に関連するファクトリ・メカニズムが変更され、このクラスは削除されました。残念なことに、ファイルはリポジトリに残り、Java Platform, Standard Edition 5.0のAPI仕様に記載されました。

このクラスは、下位互換性問題のためJAXP 1.3に追加することもできず、またJava 5.0 API仕様から削除することもできないため、JAXP 1.4に追加されました。このクラスは効果がないため、使用しないでください。このクラスが追加されたのは、このクラスがプラットフォームに定義されているがJAXPには定義されていないことに開発者が気づいたときに発生する混乱を避けるためです。

このクラスは使用しないでください。

6.4.  クラスTypeInfoProvider

  • getElementTypeInfo()のセマンティックスが拡張され、startElementイベントまたは endElementイベントのいずれからも呼び出せるようになりました。これにより、APIがW3C XMLスキーマ共用体型をより効率的にサポートできます。

    W3C XMLスキーマ検証が実行されているときに、要素に共用体型が含まれている場合、startElementイベントからのgetElementTypeInfo()呼出しによって返されるTypeInfoは共用体型になります。endElementイベントからの呼出しによって返されたTypeInfoは、要素を検証するために使用される実際のメンバー型になります。

6.5.  クラスValidator

  • Validatorは、DOMSourceSAXSource以外のSource (StAXSourceなど)を受け入れることができます。

  • validate()への入力がXMLドキュメントまたは要素であることが想定されていることを明示しました。

7.  パッケージjavax.xml.xpath

7.1.  クラスXPath

  • 表現内の変数を解決するために使用されるのは、コンパイル時に有効なXPathVariableResolverであることを明示しました。

7.2.  クラスXPathFactory

  • newInstance(String, ClassLoader)メソッドが追加されました。


Copyright © 1993, 2020, Oracle and/or its affiliates. All rights reserved.