WO2005111829A1 - Methods and systems for building packages that contain pre-paginated documents - Google Patents
Methods and systems for building packages that contain pre-paginated documents Download PDFInfo
- Publication number
- WO2005111829A1 WO2005111829A1 PCT/US2004/023489 US2004023489W WO2005111829A1 WO 2005111829 A1 WO2005111829 A1 WO 2005111829A1 US 2004023489 W US2004023489 W US 2004023489W WO 2005111829 A1 WO2005111829 A1 WO 2005111829A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- parts
- package
- document
- computer
- xml
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/93—Document management systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/103—Formatting, i.e. changing of presentation of documents
- G06F40/114—Pagination
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/123—Storage facilities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/131—Fragmentation of text files, e.g. creating reusable text-blocks; Linking to fragments, e.g. using XInclude; Namespaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/14—Tree-structured documents
- G06F40/143—Markup, e.g. Standard Generalized Markup Language [SGML] or Document Type Definition [DTD]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/197—Version control
Definitions
- This invention relates to a content framework, document format and related methods and systems that can utilize both.
- the described framework and format define a set of building blocks for composing, packaging, distributing, and rendering document-centered content. These building blocks define a platform-independent framework for document formats that enable software and hardware systems to generate, exchange, and display documents reliably and consistently.
- the framework and format have been designed in a flexible and extensible fashion.
- a particular format known as the reach package format, is defined using the general framework.
- the reach package format is a format for storing paginated documents. The contents of a reach package can be displayed or printed with full fidelity among devices and applications in a wide range of environments and across a wide range of scenarios.
- Fig. 1 is a block diagram of components of an exemplary framework and format in accordance with one embodiment.
- Fig. 2 is a block diagram of an exemplary package holding a document comprising a number of parts in accordance with one embodiment.
- Fig. 3 is a block diagram that illustrates an exemplary writer that produces a package, and a reader that reads the package, in accordance with one embodiment.
- Fig. 4 illustrates an example part that binds together three separate pages.
- Fig. 5 is a diagram that illustrates an exemplary selector and sequences arranged to produce a financial report containing both an English representation and a French representation of the report, in accordance with one embodiment.
- Fig. 6 illustrates some examples of writers and readers working together to communicate about a package, in accordance with one embodiment.
- Fig. 7 illustrates an example of interleaving multiple parts of a document.
- Figs. 8 and 9 illustrate different examples of packaging the multiple parts of the document shown in Fig. 7.
- Fig. 10 illustrates an exemplary reach package and each of the valid types of parts that can make up or be found in a package, in accordance with one embodiment.
- Fig. 11 illustrates an exemplary mapping of Common Language Runtime concepts to XML in accordance with one embodiment.
- Fig. 12 illustrates both upright and sideways glyph metrics in accordance with one embodiment.
- Fig. 13 illustrates a one-to-one cluster map in accordance with one embodiment.
- Fig. 14 illustrates a many-to-one cluster map in accordance with one embodiment.
- Fig. 15 illustrates a one-to-many cluster map in accordance with one embodiment.
- Fig. 16 illustrates a many-to-many cluster map in accordance with one embodiment.
- the framework and format define a set of building blocks for composing, packaging, distributing, and rendering document-centered content. These building blocks define a platform-independent framework for document formats that enable software and hardware systems to generate, exchange, and display documents reliably and consistently.
- the framework and format have been designed in a flexible and extensible fashion. In various embodiments, there is no restriction to the type of content that can be included, how the content is presented, or the platform on which to build clients for handling the content.
- a particular format is defined using the general framework. This format is referred to as the reach package format in this document, and is a format for storing paginated or pre-paginated documents.
- the contents of a reach package can be displayed or printed with full fidelity among devices and applications in a wide range of environments and across a wide range of scenarios.
- One of the goals of the framework described below is to ensure the interoperability of independently- written software and hardware systems reading or writing content produced in accordance with the framework and format described below.
- the described format defines formal requirements that systems that read or write content must satisfy.
- the discussion below is organized along the following lines and presented in two main sections — one entitled “The Framework” and one entitled “The Reach Package Format”.
- the section entitled “The Framework” presents an illustrative packaging model and describes the various parts and relationships that make up framework packages.
- the section entitled "The Reach Package Format” explores the structure of one particular type of framework-built package referred to as the reach package.
- Fig. 1 illustrates aspects of the inventive framework and format generally at 100.
- Certain exemplary components of the framework are illustrated at 102, and certain components of the reach package format are illustrated at 104.
- Framework 102 comprises exemplary components which include, without limitation, a relationship component, a pluggable containers component, an interleaving/streaming component and a versioning/extensibility component, each of which is explored in more detail below.
- Reach package format 104 comprises components which include a selector/sequencer component and a package markup definition component.
- periodic reference will be made back to Fig. 1 so that the reader can maintain perspective as to where the described components fit in the framework and package format.
- the Package Model This section describes the package model and includes sub-headings that describe packages and parts, drivers, relationships, package relationships and the start part.
- a package is a logical entity that holds a collection of related parts.
- the package's purpose is to gather up all of the pieces of a document (or other types of content) into one object that is easy for programmers and end-users to work with.
- Fig. 2 which illustrates an exemplary package 200 holding a document comprising a number of parts including an XML markup part 202 representing the document, a font part 204 describing a font that is used in the document, a number of page parts 206 describing pages of the document, and a picture part representing a picture within the document.
- the XML markup part 202 that represents a document is advantageous in that it can permit easy searchability and referencing without requiring the entire content of a package to be parsed. This will become more apparent below.
- readers also referred to as consumers
- writers also referred to as producers
- a reader refers to an entity that reads modular content format-based files or packages.
- a writer refers to an entity that writes modular content format-based files or packages.
- Fig. 3 which shows a writer that produces a package and a reader that reads a package.
- the writer and reader will be embodied as software.
- a single package contains one or more representations of the content held in the package.
- a package will be a single file, referred to in this application as a container. This gives end-users, for example, a convenient way to distribute their documents with all of the component pieces of the document (images, fonts, data, etc.). While packages often correspond directly to a single file, this is not necessarily always so.
- a package is a logical entity that may be represented physically in a variety of ways (e.g., without limitation, in a single file, a collection of loose files, in a database, ephemerally in transit over a network connection, etc.). Thus containers hold packages, but not all packages are stored in containers.
- An abstract model describes packages independently of any physical storage mechanism. For example, the abstract model does not refer to "files", "streams", or other physical terms related to the physical world in which the package is located. As discussed below, the abstract model allows users to create drivers for various physical formats, communication protocols, and the like. By analogy, when an application wants to print an image, it uses an abstraction of a printer (presented by the driver that understands the specific kind of printer).
- a container provides many benefits over what might otherwise be a collection of loose, disconnected files. For example, similar components may be aggregated and content may be indexed and compressed. In addition, relationships between components n ay be identified and rights management, digital signatures, encryption and metadata may be applied to components. Of course, containers can be used for and can embody other features which are not specifically enumerated above.
- a part comprises common properties (e.g., name) and a stream of bytes. This is analogous to a file in a file system or a resource on an HTTP server.
- each part has some common part properties. These include a name - which is the name of the part, and a content type - which is the type of content stored in the part. Parts may also have one or more associated relationships, as discussed below. Part names are used whenever it is necessary to refer in some way to a part. In the illustrated and described embodiment, names are organized into a hierarchy, similar to paths on a file system or paths in U Is. Below are examples of part names:
- part names have the following characteristics:
- Part names are similar to file names in a traditional file system. Part names begin with a forward slash (V). Like paths in a file-system or paths in a URI, part names can be organized into a hierarchy by a set of directory-like names (tickets, images/march and pages in the above examples). This hierarchy is composed of segments delineated by slashes. The last segment of the name is similar to a filename a traditional file- system.
- V forward slash
- the rules for naming parts are specific to the framework described in this document. These part name rules are based on internet-standard URI naming rules.
- the grammar used for specifying part names in this embodiment exactly matches abs_path syntax defined in Sections 3.3 (Path Component) and 5 (Relative URI References) of RFC2396, (Uniform Resource Identifiers (URI: Generic Syntax) specification.
- abs_path syntax defined in Sections 3.3 (Path Component) and 5 (Relative URI References) of RFC2396, (Uniform Resource Identifiers (URI: Generic Syntax) specification.
- URI Uniform Resource Identifiers
- the following additional restrictions are applied to abs jpath as a valid part name: • Query Component, as it is defined in Sections 3 (URI Syntactic Components) and 3.4 (Query Component), is not applicable to a part name.
- Fragment identifier as it is described in Section 4.1 (Fragment Identifier), is not applicable to a part name. • It is illegal to have any part with a name created by appending * ( "/" segment ) to the part name of an existing part. Grammar for part names is shown below:
- a media type e.g., text
- subtype e.g., plain
- multiple parameters are separated by semicolons.
- Part Addressing Often parts will contain references to other parts. As a simple example, imagine a container with two parts: a markup file and an image. The markup file will want to hold a reference to the image so that when the markup file is processed, the associated image can be identified and located.
- Designers of content types and XML schemas may use URIs to represent these references.
- a mapping between the world of part names and world of URIs needs to be defined.
- a special URI interpretation rule must be used when evaluating URIs in package-based content: the package itself should be treated as the "authority" for URI references and the path component of the URI is used to navigate the part name hierarchy in the package. For example, given a package URI of http://www.example.com/foo/something.package, a reference to /abc/bar.xml is interpreted to mean the part called /abc/bar.xml, not the URI http://www.example.com abc/bar.xml.
- Relative URIs should be used when it is necessary to have a reference from one part to another in a container. Using relative references allows the contents of the container to be moved together into a different container (or into the container from, for example, the file system) without modifying the cross-part references. Relative references from a part are interpreted relative to the "base URI" of the part containing the reference. By default, the base URI of a part is the part's name.
- the "/markup/page.xml" part contains a URI reference to "../images/picture .jpeg", then this reference must be interpreted as referring to the part name "/images/picture.jpeg", according to the rules above.
- Some content types provide a way to override the default base URI by specifying a different base in the content. In the presence of one of these overrides, the explicitly specified base URI should be used instead of the default. Sometimes it is useful to "address" a portion or specific point in a part. In the URI world, a fragment identifier is used [see, e.g. RFC2396]. In a container, the mechanism works the same way.
- the fragment is a string that contains additional information that is understood in the context of the content type of the addressed part. For example, in a video file a fragment might identify a frame, in an XML file it might identify a portion of the XML file via an xpath.
- a fragment identifier is used in conjunction with a URI that addresses a part to identify fragments of the addressed part.
- the fragment identifier is optional and is separated from the URI by a Crosshatch ("#") character. As such, it is not part of a URI, but is often used in conjunction with a URI.
- # Crosshatch
- the following discussion provides some guidance for part naming, as the package and part naming model is quite flexible. This flexibility allows for a wide range of applications of a framework package.
- drivers The file format described herein can be used by different applications, different document types, etc. - many of which have conflicting uses, conflicting formats, and the like.
- One or more drivers are used to resolve various conflicts, such as differences in file formats, differences in communication protocols, and the like.
- different file formats include loose files and compound files
- different communication protocols include http, network, and wireless protocols.
- a group of drivers abstract various file formats and communication protocols into a single model. Multiple drivers can be provided for different scenarios, different customer requirements, different physical configurations, etc.
- Parts in a package may contain references to other parts in that package.
- these references are represented inside the referring part in ways that are specific to the content type of the part; that is, in arbitrary markup or an application-specific encoding. This effectively hides the internal linkages between parts from readers that don't understand the content types of the parts containing such references.
- Even for common content types such as the Fixed Payload markup described in the Reach Package section, a reader would need to parse all of the content in a part to discover and resolve the references to other parts. For example, when implementing a print system that prints documents one page at a time, it may be desirable to identify pictures and fonts contained in the particular page.
- Relationships element is defined to allow it to hold zero or more "relationship” elements and serves simply to collect these "relationship” elements together in a unit.
- the systems and methods described herein introduce a higher-level mechanism to solve these problems called “relationships”.
- Relationships provide an additional way to represent the kind of connection between a source part and a target part in a package. Relationships make the connections between parts directly “discoverable” without looking at the content in the parts, so they are independent of content-specific schema and faster to resolve. Additionally, these relationships are protocol independent. A variety of different relationships may be associated with a particular part. Relationships provide a second important function: allowing parts to be related without modifying them.
- this information serves as a form of "annotation" where the content type of the "annotated” part does not define a way to attach the given information.
- Potential examples include attached descriptive metadata, print tickets and true annotations.
- some scenarios require information to be attached to an existing part specifically without modifying that part - for example, when the part is encrypted and can not be decrypted or when the part is digitally signed and changing it would invalidate the signature.
- a user may want to attach an annotation to a JPEG image file.
- the JPEG image format does not currently provide support for identifying annotations. Changing the JPEG format to accommodate this user's desire is not practical.
- relationships are represented using XML in relationship parts. Each part in the container that is the source of one or more relationships has an associated relationship part. This relationship part holds (expressed in XML using the content type application/PLACEHOLDEK) the list of relationships for that source part.
- Fig. 4 shows an environment 400 in which a "spine" part 402 (similar to a FixedPanel) binds together three pages 406, 408 and 410. The set of pages bound together by the spine has an associated "print ticket" 404. Additionally, page 2 has its own print ticket 412.
- connection from the spine part 402 to its print ticket 404 and from page 2 to its print ticket 412 are represented using relationships.
- the spine part 402 would have an associated relationship part which contained a relationship that connects the spine to ticket 1, as shown in the example below.
- Relationships are represented using ⁇ Relationship> elements nested in a single ⁇ Relationships> element. These elements are defined in the http://mmcfrels (PLACEHOLDER) namespace. See the example schema above, and related discussion, for example relationships.
- the relationship element has the following additional attributes:
- the Name attribute is not necessarily an actual address.
- Different types of relationships are identified by their Names. These names are defined in the same way that namespaces are defined for XML namespaces. Specifically, by using names patterned after the Internet domain name space, non-coordinating parties can safely create non-conflicting relationship names - just as they can for XML namespaces.
- the relationships part is not permitted to participate in other relationships. However, it is a first class part in all other senses (e.g., it is URI addressable, it can be opened, read, deleted, etc.). Relationships do not typically point at things outside the package. URIs used to identify relationship targets do not generally include a URI scheme. A part and its associated relationship part are connected by a naming convention.
- relationship part for the spine would be stored in /content/jrels/spine.xml.rels and the relationships for page 2 would be stored in /content/_rels/p2.xml.rels.
- the relationship part for some (other) part in a given "folder” in the name hierarchy is stored in a "sub-folder” called jrels (to identify relationships).
- the name of this relationship-holding part is formed by appending the .rels extension to the name of the original part.
- relationship parts are of the content type application/xml+relationshipsPLACEHOLDER.
- a relationship represents a directed connection between two parts.
- Package Relationships are used to find well-known parts in a package.
- Package relationships are special relationships whose target is a part, but whose source is not: the source is the package as a whole. To have a "well-known" part is really to have a "well-known” relationship name that helps you find that part. This works because there is a well-defined mechanism to allow relationships to be named by non-coordinating parties, while certain embodiments contain no such mechanism for part name - those embodiments are limited to a set of guidelines.
- the package relationships are found in the package relationships part and is named using the standard naming conventions for relationship parts. Thus: it's named "/_rels/.rels" Relationships in this package relationships part are useful in finding well- known parts.
- the Start Part One example of a package-level, well-known part is the package "start" part. This is the part that is typically processed when a package is opened. It represents the logical root of the document content stored in the package.
- the start part of a package is located by following a well-known package relationship. In one example, this relationship has the following name: http://mmcf-start- ⁇ art- PLACEHOLDER.
- composition Parts comprising two mechanisms for building higher-order structures from parts: selectors and sequences.
- a selector is a part which "selects" between a number of other parts.
- a selector part might "select” between a part representing the English version of a document and a part representing the French version of a document.
- a sequence is a part which "sequences" a number of other parts.
- a sequence part might combine (into a linear sequence) two parts, one of which represents a five-page document and one of which represents a ten-page document.
- These two types of composition parts (sequence and selector) and the rules for assembling them comprise a composition model.
- Composition parts can compose other composition parts, so one could have, for example, a selector that selects between two compositions. As an example, consider Fig. 5, which shows and example of a financial report containing both an English representation and a
- Each of these representations is further composed of an introduction (a cover page) followed by the financials (a spreadsheet).
- a selector 500 selects between the English and French representation of the report. If the English representation is selected, sequence 502 sequences the
- sequence 504 sequences the French introduction part 510 with the French financial part 512.
- composition parts are described using a small number of XML elements, all drawn from a common composition namespace.
- XML ⁇ selection> ⁇ item target— "EnglishRoUup.xml” /> ⁇ item target "FrencKR.ollup.xml” /> ⁇ /selection> Engl i shRo 1 lup .
- XML ⁇ sequence> ⁇ item target "Englishlntroduction.xml” /> ⁇ item target- "EnglishFinancials.xml” /> ⁇ /sequence>
- MainDocument.xml represents an entire part in the package and indicates, by virtue of the "selection” tag, that a selection is to be made between different items encapsulated by the "item” tag, i.e., the "EnglishRoUup.xml” and the “FrenchRollup.xml".
- the EnglishRoUup.xml and FrenchRollup.xml are, by virtue of the "sequence” tags, sequences that sequence together the respective items encapsulated by their respective "item” tags.
- a simple XML grammar is provided for describing selectors and sequences. Each part in this composition block is built and performs one operation — either selecting or sequencing. By using a hierarchy of parts, different robust collections of selections and sequences can be built.
- composition block of a package comprises the set of all composition parts (selector or sequence) that are reachable from the starting part of the package. If the starting part of the package is neither a selector nor a sequence, then the composition block is considered empty. If the starting part is a composition part, then the child ⁇ item>s in those composition parts are recursively traversed to produce a directed, acyclic graph of the composition parts (stopping traversal when a non-composition part is encountered). This graph is the composition block (and it must, in accordance with this embodiment, be acyclic for the package to be valid).
- the following discussion describes a way to represent the information such that selections can be made based on content type. That is, the XML described above provides enough information to allow readers to locate the parts that are assembled together into a composition, but does not provide enough information to help a reader know more about the nature of the composition. For example, given a selection that composes two parts, how does a reader know on what basis (e.g., language, paper size, etc.) to make the selection? The answer is that these rules are associated with the content type of the composition part. Thus, a selector part that is used for picking between representations based on language will have a different associated content type from a selector part that picks between representations based on paper sizes.
- the general framework defines the general form for these content types:
- the SOMETHING in these content types is replaced by a word that indicates the nature of the selection or sequence, e.g. page size, color, language, resident software on a reader device and the like.
- this framework then, one can invent all kinds of selectors and sequences and each can have very different semantics.
- the described framework also defines the following well-known content types for selectors and sequences that all readers or reading devices must understand.
- a package contains a document that has a page, and in the middle of the page there is an area in which a video is to appear.
- a video part of the page might comprise video in the form of a Quicktime video.
- Quicktime videos are not universally understood.
- JPEG reach package format
- the producer might, in addition to defining the video as a part of the package, define a JPEG image for the page and interpose a SupportedContentType selector so that if the user's computer has software that understands the Quicktime video, the Quicktime video is selected, otherwise the JPEG image is selected.
- the framework-level selector and sequence components allow a robust hierarchy to be built which, in this example, is defined in XML.
- the general framework comprises one particular content type that is predefined and which allows processing and utilization of packages based on what a consumer (e.g. a reader or reading device) does and does not understand.
- Other composition part content types can be defined using similar rules, examples of which are discussed below.
- descriptive metadata parts provide writers or producers of packages with a way in which to store values of properties that enable readers of the packages to reliably discover the values. These properties are typically used to record additional information about the package as a whole, as well as individual parts within the container.
- a descriptive metadata part in a package might hold information such as the author of the package, keywords, a summary, and the like.
- the descriptive metadata is expressed in XML, is stored in parts with well-known content types, and can be found using well-known relationship types.
- Descriptive metadata holds metadata properties. Metadata properties are represented by a property name and one or many property values. Property values have simple data types, so each data type is described by a single XML qname.
- Metadata Format In accordance with one embodiment, descriptive metadata parts have a content type and are targeted by relationships according to the following rules:
- the following XML pattern is used to represent descriptive metadata in accordance with one embodiment. Details about each component of the markup are given in the table after the sample.
- Document Core Properties The following is a table of document core properties that includes the name of the property, the property type and a description.
- the physical model defines various ways in which a package is used by writers and readers. This model is based on three components: a writer, a reader and a pipe between them.
- Fig. 6 shows some examples of writers and readers working together to communicate about a package.
- the pipe carries data from the writer to the reader.
- the pipe can simply comprise the API calls that the reader makes to read the package from the local file system. This is referred to as direct access.
- the reader and the writer must communicate with each other over some type of protocol. This communication happens, for example, across a process boundary or between a server and a desktop computer. This is referred to as networked access and is important because of the communications characteristics of the pipe (specifically, the speed and request latency).
- networked access is important because of the communications characteristics of the pipe (specifically, the speed and request latency).
- physical package designs must consider support in three important areas: access style, layout style and communication style.
- Access Style Streaming Consumption Because communication between the writer and the reader using networked access is not instantaneous, it is important to allow for progressive creation and consumption of packages. In particular, it is recommended, in accordance with this embodiment, that any physical package format be designed to allow a reader to begin interpreting and processing the data it receives the data (e.g., parts), before all of the bits of the package have been delivered through the pipe. This capability is called streaming consumption.
- Streaming Creation When a writer begins to create a package, it does not always know what it will be putting in the package. As an example, when an application begins to build a print spool file package, it may not know how many pages will need to be put into the package. As another example, a program on a server that is dynamically generating a report may not realize how long the report will be or how many pictures the report will have - until it has completely generated the report. In order to allow writers like this, physical packages should allow writers to dynamically add parts after other parts have already been added (for example, a writer must not be required to state up front how many parts it will be creating when it starts writing). Additionally, physical packages should allow a writer to begin writing the contents of a part without knowing the ultimate length of that part. Together, these requirements enable streaming creation.
- streaming creation and streaming consumption can occur simultaneously for a specific package.
- supporting streaming creation and supporting streaming consumption can push a design in opposite directions.
- Layout Styles Physical packages hold a collection of parts. These parts can be laid out in one of two styles: simple ordering and interleaved. With simple ordering, the parts in the package are laid out with a defined ordering. When such a package is delivered in a pure linear fashion, starting with the first byte in the package through to the last, all of the bytes for the first part arrive first, then all of the bytes for the second part, and so on. With interleaved layout, the bytes of the multiple parts are interleaved, allowing for improved performance in certain scenarios.
- Fig. 7 illustrates a simple example involving two parts: content.xml 702 and image.jpeg 704.
- the first part, content.xml describes the contents of a page and in the middle of that page is a reference to an image (image.jpeg) that should appear on the page.
- image.jpeg an image that should appear on the page.
- a reader that is processing this package (and is receiving bytes sequentially) will be unable to display the picture until it has received all of the content.xml part as well as the image.jpeg. In some circumstances (e.g., small or simple packages, or fast communications links) this may not be a problem.
- interleaving is an optimization that occurs at the physical level and a part that is broken into multiple pieces in the physical file is still one logical part; the pieces themselves aren't parts.
- Communication Styles Communication between writer and reader can be based on sequential delivery of parts or by random-access to parts, allowing them to be accessed out of order. Which of these communication styles is utilized depends on the capabilities of both the pipe and the physical package format. Generally, all pipes will support sequential delivery. Physical packages must support sequential delivery. To support random-access scenarios, both the pipe in use and the physical package must support random-access. Some pipes are based on protocols that can enable random access (e.g., HTTP 1.1 with byte-range support). In order to allow maximum performance when these pipes are in use, it is recommended that physical packages support random-access. In the absence of this support, readers will simply wait until the parts they need are delivered sequentially.
- the logical packaging model defines a package abstraction; an actual instance of a package is based on some particular physical representation of a package.
- the packaging model may be mapped to physical persistence formats, as well as to various transports (e.g., network-based protocols).
- a physical package format can be described as a mapping from the components of the abstract packaging model to the features of a particular physical format.
- the packaging model does not specify which physical package formats should be used for archiving, distributing, or spooling packages. In one embodiment, only the logical structure is specified.
- a package may be "physically" embodied by a collection of loose files, a .ZIP file archive, a compound file, or some other format. The format chosen is supported by the targeted consuming device, or by a driver for the device.
- Each physical package format defines a mapping for the following components. Some components are optional and a specific physical package format may not support these optional components.
- Acc ess There exist many physical storage formats whose features partially match the packaging-model components. In defining mappings from the packaging model to such storage formats, it may be desirable to take advantage of any similarities in capabilities between the packaging model and the physical storage medium, while using layers of mapping to provide additional capabilities not inherently present in the physical storage medium.
- some physical package formats may store individual parts as individual files in a file system. In such a physical format, it would be natural to map many part names directly to identical physical file names. Part names using characters which are not valid file system file names may require some kind of escaping mechanism.
- Physical package format mappings define a mechanism for storing a content type for each part.
- Some physical package formats have a native mechanism for representing content types (for example, the "Content-Type" header in MIME). For such physical packages, it is recommended that the mapping use the native mechanism to represent content types for parts.
- some other mechanism is used to represent content types.
- the recommended mechanism for representing content types in these packages is by including a specially-named XML stream in the package, known as the types stream. This stream is not a part, and is therefore not itself URI-addressable. However, it can be interleaved in the physical package using the same mechanisms used for interleaving parts.
- the types stream contains XML with a top level “Types” element, and one or more "Default” and “Override” sub-elements.
- the "Default” elements define default mappings from part name extensions to content types. This takes advantage of the fact that file extensions often correspond to content type.
- "Override” elements are used to specify content types on parts that are not covered by, or are not consistent with, the default mappings. Package writers may use “Default” elements to reduce the number of per-part "Override” elements, but are not required to do so.
- the "Default” element has the following attributes:
- the "Override” element has the following attributes:
- the types stream contains either (a) one matching "Default” element, (b) one matching “Override” element, or (c) both a matching "Default” element and a matching “Override” element (in which case the "Override” element takes precedence).
- “Default” element for any given extension
- “Override” element for any given part name.
- the order of "Default” and “Override” elements in the types stream is not significant. However, in interleaved packages, "Default” and “Override” elements appear in the physical package before the part(s) they correspond to.
- a mapping to any such physical package uses the general mechanism described in this section to allow interleaving of parts.
- the general mechanism works by breaking the data stream of a part into multiple pieces that can then be interleaved with pieces of other parts, or whole parts.
- the individual pieces of a part exist in the physical mapping and are not addressable in the logical packaging model. Pieces may have a zero size.
- the following unique mapping from a part name to the names for the individual pieces of a part is defined, such that a reader can stitch together the pieces in their original order to form the data stream of the part.
- Grammar for deriving piece names for a given part name: piece_name part__name "/" " [" l* igit "] " [ “ . last” ] " .piece”
- the piece numbers start with 0, and are positive, consecutive integer numbers. Piece numbers can be left-zero-padded. • The last piece of the set of pieces of a part contains the ".last" in the piece name before ".piece”. • The piece name is generated from the name of the logical part before mapping to names in the physical package.
- the part names are translated into valid Windows file names, as illustrated by the table below. Given below are two character sets that are valid for logical part name segments (URI segments) and for Windows filenames. This table reveals two important things:
- the part name /a:b/c/d*.xaml becomes the following file name a A 25b ⁇ c ⁇ d A 2a.xaml.
- the design of the first edition of this specification includes plans for the future interchange of documents between software systems written based on the first edition, and software systems written for future editions.
- this specification allows for third-parties to create extensions to the specification. Such an extension might, for example, allow for the construction of a document which exploits a feature of some specific printer, while still retaining compatibility with other readers that are unaware of that printer's existence.
- Documents using new versions of the Fixed Payload markup, or third-party extensions to the markup require readers to make appropriate decisions about behavior (e.g., how to render something visually).
- Versioning Namespace XML markup recognition is based on namespace URIs. For any XML- namespace, a reader is expected to recognize either all or none of the XML- elements and XML-attributes defined in that namespace. If the reader does not recognize the new namespace, the reader will need to perform fallback rendering operations as specified within the document.
- the XML namespace URI 'http://PLACEHOLDER/version-contror includes the XML elements and attributes used to construct Fixed payload markup that is version-adaptive and extensions-adaptive. Fixed Payloads are not required to have versioning elements within them.
- compatibility is indicated by the ability of clients to parse and display documents that were authored using previous versions of the specification, or unknown extensions or versions of the specification.
- Various versioning mechanisms address "backward compatibility," allowing future implementations of clients to be able to support documents based on down-level versions of the specification, as illustrated below.
- an implemented client such as a printer
- receives a document built using a future version of the markup language the client will be able to parse and understand the available rendering options.
- extension is presumed to be fundamental to understanding the content.
- the rendering failure will be captured and reported to the user.
- new and extended versions of the markup language should logically group related extensions in namespaces. In this way, document authors will be able to take advantage of extended features using a minimum number of namespaces.
- the XML vocabulary for supporting extension-adaptive behavior includes the following elements:
- Rules> Controls how the parser reacts to an unknown element or attribute.
- ⁇ AlternateContent> • In markup that exploits versioning/extension features, the ⁇ AlternateContent> element associates substitute "fallback" markup to be used by reader applications that are not able to handle the markup specified as Preferred.
- the ⁇ Compatibility.Rules> element controls how the parser reacts to unknown elements or attributes. Normally such items are reported as errors. Adding an Ignorable element to a Compatibilitiy. Rules property informs the compiler that items from certain namespaces can be ignored.
- Compatibility.Rules can contain the elements Ignorable and MustUnderstand. By default, all elements and attributes are assumed to be MustUnderstand. Elements and attributes can be made Ignorable by adding an Ignorable element into its container's Compatibility.Rules property.
- An element or property can be made MustUnderstand again by adding a MustUnderstand element to one of the nested containers.
- One Ignorable or MustUnderstand refers to a particular namespace URI within the same Compatibility.Rules element.
- the ⁇ Compatibility.Rules> element affects the contents of a container, not the container's own tag or attributes. To affect a container's tag or attributes, its container must contain the compatibility rules.
- the Xaml root element can be used to specify compatibility rules for elements that would otherwise be root elements, such as Canvas.
- the Compatibility.Rules compound attribute is the first element in a container.
- the ⁇ Ignorable> Element declares that the enclosed namespace URI is ignorable. An item can be considered ignorable if an ⁇ Ignorable> tag is declared ahead of the item in the current block or a container block, and the namespace URI is unknown to the parser. If the URI is known, the Ignorable tag is disregarded and all items are understood. In one embodiment, all items not explicitly declared as Ignorable must be understood.
- the Ignorable element can contain ⁇ ProcessContent> and ⁇ CarryAlong> elements, which are used to modify how an element is ignored as well as give guidance to document editing tools how such content should be preserved in edited documents.
- the ⁇ Process Content> Element The ⁇ ProcessContent> element declares that if an element is ignored, the contents of the element will be processed as if it was contained by the container of the ignored element. ⁇ ProcessContent> Attributes
- Elements • A space delimited list of element names for which to process the contents, or "*" indicating the contents of all elements should be processed.
- the Elements attribute defaults to "*" if it is not specified.
- the ⁇ CarryAlong> Element The optional ⁇ CarryAlong> element indicates to the document editing tools whether ignorable content should be preserved when the document is modified. The method by which an editing tool preserves or discards the ignorable content is in the domain of the editing tool. If multiple ⁇ CarryAlong> elements refer to the same element or attribute in a namespace, the last ⁇ CarryAlong> specified has precedence.
- Elements A space delimited list of element names that are requested to be carried along when the document is edited, or "*" indicating the contents of all elements in the namespace should be carried along.
- the Elements attribute defaults to "*" if it is not specified.
- Attributes A space delimited list of attribute names within the elements that are to be carried along, or a "*" indicating that all attributes of the elements should be carried along. When an element is ignored and carried along, all attributes are carried along regardless of the contents of this attribute. This attribute only has an effect if the attribute specified is used in an element that is not ignored, as in the example below. By default, Attributes is "*".
- the ⁇ MustUnderstand> Element ⁇ MustUnderstand> is an element that reverses the effects of an Ignorable element. This technique is useful, for example, when combined with alternate content. Outside the scope defined by the ⁇ MustUnderstand> element, the element remains Ignorable.
- NamespaceU The URI of the namespace whose ri items must be understood.
- the ⁇ AlternateContent> Element allows alternate content to be provided if any part of the specified content is not understood.
- An AlternateContent block uses both a ⁇ Prefer> and a ⁇ Fallback> block. If anything in the ⁇ Prefer> block is not understood, then the contents of the ⁇ Fallback> block are used.
- a namespace is declared ⁇ MustUnderstand> in order to indicate that the fallback is to be used. If a namespace is declared ignorable and that namespace is used within a ⁇ Prefer> block, the content in the ⁇ Fallback> block will not be used.
- ⁇ MustUnderstand> element causes the references to v3:Luminance to be in error, even though it was declared to Ignorable in the root element. This technique is useful if combined with alternate content that uses, for example, the Luminance property of Canvas added in Version 2 instead (see below). Outside the scope of the Canvas element, Circle's Luminance property is ignorable again.
- a single package may contain multiple payloads, each acting as a different representation of a document.
- a payload is a collection of parts, including an identifiable "root" part and all the parts required for valid processing of that root part.
- a payload could be a fixed representation of a document, a reflowable representation, or any arbitrary representation.
- the description that follows defines a particular representation called the fixed payload.
- a fixed payload has a root part that contains a FixedPanel markup which, in turn, references FixedPage parts. Together, these describe a precise rendering of a multi-page document.
- a package which holds at least one fixed payload, and follows other rules described below, is known referred to as a reach package. Readers and writers of reach packages can implement their own parsers and rendering engines, based on the specification of the reach package format.
- Reach Packages address the requirements that information workers have for distributing, archiving, and rendering documents. Using known rendering rules, reach packages can be unambiguously and exactly reproduced or printed from the format in which they are saved, without tying client devices or applications to specific operating systems or service libraries.
- a fixed payload has a fixed number of pages and page breaks are always the same.
- the layout of all the elements on a page in a fixed payload is predetermined. Each page has a fixed size and orientation. As such, no layout calculations have to be performed on the consuming side and content can simply be rendered. This applies not just to graphics, but to text as well, which is represented in the fixed payload with precise typographic placement.
- reach packages support a specific kind of sequence called a FixedPanel sequence that can be used, for example, to glue together a set of FixedPanels into a single, larger "document.”
- a FixedPanel sequence that can be used, for example, to glue together a set of FixedPanels into a single, larger "document.”
- Reach packages support a number of specific selectors that can be used when building document packages containing alternate representations of the "same" content.
- reach packages allow selection based on language, color capability, and page size.
- a bi-lingual document that uses a selector to pick between the English representation and the French representation of the document.
- selectors and sequences can also refer to further selectors and sequences thus allowing for powerful aggregate hierarchies to be built.
- the exact rules for what can and cannot be done, in accordance with this embodiment, are specified below in the section entitled "The Reach Package Structure".
- a reach package can contain additional payloads that are not fixed payloads, but instead are richer and perhaps editable representations of the document. This allows a package to contain a rich, editable document that works well in an editor application as well as a representation that is visually accurate and can be viewed without the editing application.
- reach packages support what is known as ⁇ print ticket.
- the print ticket provides settings that should be used when the package is printed. These print tickets can be attached in a variety of ways to achieve substantial flexibility. For example, a print ticket can be "attached" to an entire package and its settings will affect the whole package. Print tickets can be further attached at lower levels in the structure (e.g., to individual pages) and these print tickets will provide override settings to be used when printing the part to which they are attached.
- a reach package supports a set of features including "fixed” pages, FixedPanels, composition, print tickets, and the like. These features are represented in a package using the core components of the package model: parts and relationships. In this section and its related sub-sections, a complete definition of a "reach package” is provided, including descriptions of how all these parts and relationships must be assembled, related, etc.
- Fig. 10 illustrates an exemplary reach package and, in this embodiment, each of the valid types of parts that can make up or be found in a package.
- the table provided just below lists each valid part type and provides a description of each:
- a reach package must contain at least one FixedPanel that is "discoverable" by traversing the composition block from the starting part of the package.
- the discovery process follows the following algorithm:
- a fixed payload is a payload whose root part is a FixedPanel part.
- each of the fixed payloads in Fig. 10 has as its root part an associated FixedPanel part.
- the payload includes the full closure of all of the parts required for valid processing of the FixedPanel. These include:
- a reach package must have a starting part defined using the standard mechanism of a package relationship as described above; • The starting part of a reach package must be either a selector or a sequence; • A reach package must have at least one reach payload root that is a FixedPanel; • PrintTicket parts may be attached to any of the composition parts, FixedPanel parts or any of the FixedPage parts identified in the FixedPanel(s).
- reach composition parts While a reach package may contain many types of composition part, only a well-defined set of types of composition parts have well-defined behavior according to this document. These composition parts with well-defined behavior are called reach composition parts. Parts other than these are not relevant when determining validity of a reach package.
- the following types of composition parts are defined as reach composition parts:
- reach selectors Those selector composition parts defined as reach composition parts are called reach selectors.
- a language selector picks between representations based on their natural language, such as English or French. To discover this language, the selector inspects each of its items. Only those that are XML are considered. For those, the root element of each one is inspected to determine its language. If the xmklang attribute is not present, the part is ignored. The selector then considers each of these parts in turn, selecting the first one whose language matches the system's default language.
- a color selector chooses between representations based on whether they are monochromatic or color.
- the page size selector chooses between representations based on their page size.
- a content type selector chooses between representations based on whether their content types can be understood by the system.
- reach sequences Those sequence composition parts defined as reach composition parts are called reach sequences.
- a fixed sequence combines children that are fixed content into a sequence.
- the fixed payload can contain the following kinds of parts: a FixedPanel part, a FixedPage part, Image parts, Font parts, Print Ticket parts, and Descriptive Metadata parts, each of which is discussed below under its own sub-heading.
- the document structure of the Fixed-Payload identifies FixedPages as part of a spine, as shown below.
- the relationships between the spine part and the page parts are defined within the relationships stream for the spine.
- the FixedPanel part is of content type application/xml+PLACEHOLDER.
- the spine of the Fixed-Payload content is specified in markup by including a ⁇ FixedPanel> element within a ⁇ Document> element.
- the ⁇ Document> element has no attributes and must have only one child: ⁇ FixedPanel>.
- the ⁇ FixedPanel> element is the document spine, logically binding an ordered sequence of pages together into a single multi-page document. Pages always specify their own width and height, but a ⁇ FixedPanel> element may also optionally specify a height and width. This information can be used for a variety of purposes including, for example, selecting between alternate representations based on page size. If a ⁇ FixedPanel> element specifies a height and width, it will usually be aligned with the width and height of the pages within the ⁇ FixedPanel>, but these dimensions do not specify the height and width of individual pages.
- the following table summarizes FixedPanel attributes in accordance with the described embodiment.
- the ⁇ PageContent> element is the only allowable child element of the ⁇ FixedPanel> element.
- the ⁇ PageContent> elements are in sequential markup order matching the page order of the document.
- Each ⁇ PageContent> element refers to the source of the content for a single page. To determine the number of pages in the document, one would count the number of ⁇ PageContent> children contained within the ⁇ FixedPanel>.
- the ⁇ PageContent> element has no allowable children, and has a single required attribute, Source, which refers to the FixedPage part for the contents of a page.
- the ⁇ PageContent> element may optionally include a PageHeight and PageWidth attribute, here reflecting the size of , the single page.
- the required page size is specified in the FixedPage part; the optional size on ⁇ PageContent> is advisory only.
- the ⁇ PageContent> size attributes allow applications such as document viewers to make visual layout estimates for a document quickly, without loading and parsing all of the individual FixedPage parts.
- the table provided just below summarizes ⁇ PageContent> attributes and provides a description of the attributes.
- the URI string of the page content must reference the part location of the content relative to the package.
- Each ⁇ PageContent> element in the ⁇ FixedPanel> references by name (URI) a FixedPage part.
- Each FixedPage part contains FixedPage markup describing the rendering of a single page of content.
- the FixedPage part is of Content Type application/xml+PLACEHOLDER-FixedPage.
- the markup order of the Glyphs child elements contained within a FixedPage must be the same as the desired reading order of the text content of the page.
- This reading order may be used both for interactive selection/copy of sequential text from a FixedPage in a viewer, and for enabling access to sequential text by accessibility technology. It is the responsibility of the application generating the FixedPage markup to ensure this correspondence between markup order and reading order.
- image parts used by FixedPages in a reach package can be in a fixed number of formats, e.g., PNG or JPEG, although other formats can be used.
- reach packages support a limited number of font formats.
- the supported font format include the TrueType format and the OpenType format.
- the OpenType font format is an extension of the TrueType font format, adding support for PostScript font data and complex typographical layout.
- An OpenType font file contains data, in table format, that comprises either a TrueType outline font or a PostScript outline font.
- the following font formats are not supported in reach packages: Adobe type 1, Bitmap font, Font with hidden attribute (use system Flag to decide whether to enumerate it or not), Vector fonts, and EUDC font (whose font family name is EUDC).
- Subsetting Fonts Fixed payloads represent all text using the Glyphs element described in detail below. Since, in this embodiment, the format is fixed, it is possible to subset fonts to contain only the glyphs required by FixedPayloads. Therefore, fonts in reach packages may be subsetted based on glyph usage. Though a subsetted font will not contain all the glyphs in the original font, the subsetted font must be a valid OpenType font file.
- Print ticket parts provide settings that can be used when the package is printed. These print tickets can be attached in a variety of ways to achieve substantial flexibility. For example, a print ticket can be "attached" to an entire package and its settings will affect the whole package. Print tickets can be further attached at lower levels in the structure (e.g., to individual pages) and these print tickets will provide override settings to be used when printing the part to which they are attached.
- Descriptive Metadata As noted above, descriptive metadata parts provide writers or producers of packages with a way in which to store values of properties that enable readers of the packages to reliably discover the values. These properties are typically used to record additional information about the package as a whole, as well as individual parts within the container.
- the FixedPanel and FixedPage markup for the Fixed Payload in a reach package is a subset from Windows® Longhorn's Avalon XAML markup. That is, while the Fixed Payload markup stands alone as an independent XML markup format (as documented in this document), it loads in the same way as in Longhorn systems, and renders a WYSIWYG reproduction of the original multi-page document.
- XAML markup is a mechanism that allows a user to specify a hierarchy of objects and the programming logic behind the objects as an XML-based markup language. This provides the ability for an object model to be described in XML.
- CLR Common Language Runtime
- XAML can be employed in the context of the embodiments described in this i document.
- Fig. 11 illustrates an exemplary mapping of CLR concepts (left side components) to X]V ⁇ L
- CLR concept called reflection.
- Classes map directly to XML tags.
- Properties a d events map directly to attributes.
- a user can specify a hierarchy tree of any CLR objects in XML markup files.
- Xaml files are xml files 1 with a .xaml extension and a mediatype of application/xaml+xml. Xaml files have
- Definition tags may also be defined within another tag as an xmlns attribute.
- markup typically by a writer
- the markup can be parsed and processed (typically by a reader).
- a suitably configured parser determines from the root tag which CLR assemblies and namespaces should be searched to find a tag. In many instances, the parser looks for and will find a namespace definition file in a URL specified by the xmlns attribute.
- the namespace definition file provides the name of assemblies and their install path and a list of CLR namespaces.
- the parser determines which CLR class the tag refers to using the xmlns of the tag and the xmlns definition file for that xmlns.
- the parser searches in the order that the assemblies and namespaces are specified in the definition file. When it finds a match, the parser instantiates an object of the class.
- the Fixed Payload markup is a very minimal, nearly completely parsimonious subset of Avalon XAML rendering primitives. It represents visually anything that can be represented in Avalon, with full fidelity.
- the Fixed Payload markup is a subset of Avalon XAML elements and properties — plus additional conventions, canonical forms, or restrictions in usage compared to Avalon XAML.
- the radically-minimal Fixed Payload markup set defined reduces the cost associated with implementation and testing of reach package readers, such as printer RIPs or interactive viewer applications — as well as reducing the complexity and memory footprint of the associated parser.
- the parsimonious markup set also minimizes the opportunities for subsetting, errors, or inconsistencies among reach package writers and readers, making the format and its ecosystem inherently more robust.
- the reach package will specify markup for additional semantic information to support viewers or presentations of reach package documents with features such as hyperlinks, section/outline structure and navigation, text selection, and document accessibility.
- a FixedPage part is expressed in an XML-based markup language, based on XML-Elements, XML-Attributes, and XML-Namespaces.
- Three XML-Namespaces are defined in this document for inclusion in FixedPage markup.
- One such namespace references the Version- control elements and attributes defined elsewhere in this specification.
- the principle namespace used for elements and attributes in the FixedPage markup is "http://schemas.microsoft.com/MMCF-PLACEHOLDER-FixedPage”.
- FixedPage markup introduces a concept of "Resources" which requires a third namespace, described below.
- FixedPage markup is expressed using XML-Elements and XML- Attributes, its specification is based upon a higher-level abstract model of "Contents" and "Properties".
- the FixedPage elements are all expressed as XML- elements. Only a handful of FixedPage elements can hold "Contents", expressed as child XML-elements. But a property-value may be expressed using an XML- Attribute or using a child XML-element.
- FixedPage Markup also depends upon the twin concepts of a Resource- Dictionary and Resource-Reference. The combination of a Resource-Dictionary and multiple Resource-References allows for a single property-value to be shared by multiple properties of multiple FixedPage-markup elements.
- non-resource-reference property-values can be expressed as simple-text strings. Although all such property- values may be expressed using Compound-Property Syntax, they may also be expressed using simple XML- attribute syntax For any given element, any property may be set no more than once, regardless of the syntax used for specifying a value.
- XML-attribute-syntax may be used to specify a property-value.
- XML-attribute-syntax may be used to specify a property-value.
- SolidColorBrush FixedPage- markup element
- Color the property called "Color”
- the following syntax can be used to specify a property value:
- Any property value which is itself a FixedPage-markup element may be held in a Resource Dictionary.
- Each resource in a Resource Dictionary carries a name. The resource's name can be used to reference the resource from a property's XML-attribute.
- the ⁇ Canvas> and ⁇ FixedPage> elements can carry a Resource Dictionary.
- a Resource Dictionary is expressed in markup as a property of the ⁇ Canvas> and ⁇ FixedPage> elements in a property called "Resources".
- individual resource-values are embedded directly within the ⁇ FixedPage.Resources> or ⁇ Canvas.Resources> XML-element. Syntactically, the markup for ⁇ Canvas.Resources> and ⁇ FixedPage.Resource> resembles that for markup elements with "Contents".
- ⁇ FixedPage.Resources> must precede any compound-property-syntax property values of the ⁇ Canvas> or ⁇ FixedPage>. They similarly must precede any "Contents" of the ⁇ Canvas> or ⁇ FixedPage>.
- Any ⁇ FixedPage> or ⁇ Canvas> can carry a Resource Dictionary, expressed using the ⁇ Canvas.Resources> XML-element.
- Each element within a single resource dictionary is given a unique name, identified by using an XML-attribute associated with the element.
- the Name attribute is taken from a namespace other than that of the FixedFormat elements.
- the URI for that XML- namespace is "http://schemas.microsoft.com/PLACEHOLDER-for-resources".
- two geometries are defined: one for a rectangle and the other for a circle.
- ⁇ Rectangle ⁇ will denote the geometry to be used.
- the rectangular region defined by the geometry objects in the dictionary will be filled by the
- a resource reference must not occur within the definition of a resource in a Resource Dictionary.
- the same name may be used in two different Resource Dictionaries within a single FixedPage part.
- the Resource Dictionary of an inner ⁇ Canvas> may re-use a Name defined in the Resource Dictionary of some outer ⁇ Canvas> or ⁇ FixedPage>.
- Resource Dictionaries are searched for a resource of the given name. If the element bearing the property is a ⁇ Canvas>, then the Resource Dictionary (if present) of that
- ⁇ Canvas> is searched for a resource of the desired name. If the element is not a ⁇ Canvas> then search begins with the nearest containing ⁇ Canvas> or
- the FixedPage (or a nested Canvas child) element is the element on which other elements are rendered.
- the arrangement of content is controlled by properties specified for the FixedPage (or Canvas), the properties specified for elements on the FixedPage (or Canvas), and by compositional rales defined for the Fixed- Payload namespace.
- the coordinate system is initially set up so that one unit in that coordinate system is equal to l/96 th of an inch, expressed as a floating point value, the origin (0,0) of the coordinate system is the left top corner of the FixedPage element.
- a RenderTransform attribute can be specified on any child element to apply an affine transform to the current coordinate system.
- Page Dimensions The page dimensions are specified by the "PageWidth" and “PageHeight” parameters on the FixedPage element.
- composition Rules use the painter's model with alpha channel.
- composition must occur according to these rules, and in the following order:
- the FixedPage (or any nested Canvas) is thought of as a unbounded surface to which child elements are drawn in the order they appear in the markup.
- the alpha channel of this surface is initialized to "0.0" (all transparent).
- the ideal unbounded surface can be thought of as a bitmap buffer large enough to hold all marks produced by rendering all the child elements.
- the contents of the surface are transformed using the affine transform specified by the RenderTransform property of the FixedPage (or Canvas).
- the contents of the FixedPage are rendered onto its containing element.
- the containing element is the physical imaging surface.
- the Fixed Payload includes a small set of XML elements used in markup to represent pages and their contents.
- the markup in a FixedPanel part brings the pages of a document together to a common, easily-indexed root, using ⁇ Document>, ⁇ FixedPanel>, and ⁇ PageContent> elements.
- Each FixedPage part represents a page's contents in a ⁇ FixedPage> element with only ⁇ Path> and ⁇ Glyphs> elements (which together do all of the drawing), and the ⁇ Canvas> element to group them.
- the Fixed-Payload markup's element hierarchy is summarized in following sections entitled “Top-level elements”, “Geometry for Path, Clip”, “Brashes used to fill a Path, Glyphs, or OpacityMask”, “Resource dictionaries for FixedPage or Canvas”, “Opacity masks for alpha transparency”, “Clipping paths” and “Transforms”.
- Each FixedPage part represents a page's contents in XML markup rooted in a ⁇ FixedPage> element.
- This FixedPage markup provides WYSIWYG fidelity of a document between writers and readers, with only a small set of elements and properties: ⁇ Path> and ⁇ Glyphs> elements (which together do all of the drawing), and the ⁇ Canvas> element to group them.
- Opacity Attribute Opacity is used to transparently blend the two elements when rendering (Alpha Blending).
- the Opacity attribute ranges from 0 (fully transparent) to 1 (fully opaque). Values outside of this inclusive range are clamped to this range during markup parsing. So, effectively, [-co...0] is transparent and [1... oo] is opaque.
- the Opacity Attribute is applied through the following computations (assuming non-premultiplied source and destination colors, both specified as scRGB): 0 E : Opacity attribute of element or alpha value at corresponding position in OpacityMask
- a s Alpha value present in source surface
- R s Red value present in source surface
- Gg Green value present in source surface
- B s Blue value present in source surface
- a ⁇ Alpha value already present in destination surface
- R D Red value already present in destination surface G D : Green value already present in destination surface B D : Blue value already present in destination surface
- All values designated with a T subscript are temporary values (e.g. Rn).
- the Clip property is specified as one of the geometric elements ⁇ GeometryCollection> or ⁇ PathGeometry> (see Path.Data for details).
- the Clip property is applied in the following way: • All rendered contents that fall inside the geometric element described by the Clip child element are visible.
- MatrixTransform Child Element MatrixTransform is the only transformation attribute available to elements. It expresses an affine transformation. The syntax follows:
- X represents the element to which the transform is applied.
- the six numbers specified in the Matrix attribute are mOO, mOl, mlO, ml 1, dx, dy.
- the full matrix looks like: mOO mOl 0 mlO mi l 0 dx dy 1
- a given coordinate X,Y is transformed with a RenderTransform to yield the resulting coordinate X',Y' by applying these computations:
- OpacityMask Child Element The OpacityMask specifies a Brush, but in contrast to a Fill Brash, only the alpha channel (see Opacity attribute above) of the brash is used as an additional parameter for rendering the element. Each alpha value for each pixel of the element is then additionally multiplied with the alpha value at the corresponding position in the OpacityMask Brash.
- the ⁇ Canvas> Element The ⁇ Canvas> element is used to group elements together. Typically, FixedPage elements are grouped together in a ⁇ Canvas> when they share a composed common attribute (i.e., Opacity, Clip, RenderTransform, or OpacityMask). By grouping these elements together on a Canvas, common attributes can often be applied to the canvas instead of to the individual elements.
- the ⁇ Canvas> element has only the common attributes described earlier: Opacity, Clip, RenderTransform, and OpacityMask. They are used with the ⁇ Canvas> element as described in the table below:
- the markup order of the Glyphs child elements contained within a Canvas must be the same as the desired reading order of the text content. This reading order may be used both for interactive selection/copy of sequential text from a FixedPage in a viewer, and for enabling access to sequential text by accessibility technology. It is the responsibility of the application generating the FixedPage markup to ensure this correspondence between markup order and reading order.
- Child Glyphs elements contained within nested Canvas elements are ordered in-line between sibling Glyphs elements occurring before and after the Canvas. Example:
- the Path Element is an XML-based element that describes a geometric region.
- the geometric region is a shape which may be filled, or used as a clipping path.
- Common geometry types such as rectangle and ellipse, can be represented using Path geometries.
- a path is described by specifying the required Geometry .Data child element and the rendering attributes, such as Fill or Opacity.
- a path's geometry is specified as a series of nested child elements of ⁇ Path.Data>, as shown below.
- the geometry may be represented with either a ⁇ GeometryCollection> containing a set of ⁇ PathGeometry> child elements, or a single ⁇ PathGeometry> child element containing ⁇ Path Figures>.
- ⁇ Path> The same ⁇ GeometryCollection> or ⁇ PathGeometry> elements define the geometry for a clipping path used in the Clip property of Canvas, Path, or Glyphs.
- the following table introduces the hierarchy of child elements defining Path geometries.
- GeometryCoUection is a set of geometric objects that are combined together for rendering according to Boolean CombineMode options.
- the GeometryCollection element is the mechanism in FixedPage markup for building visual combinations of geometric shapes.
- the CombmeMode attribute specifies the Boolean operation used to combine the set of geometric shapes in a GeometryCollection. Depending on the mode, different regions will be included or excluded.
- CombineModes are handled as follows: Not Commutative Complement and Exclude are not commutative and therefore are defined between the first geometry in the GeometryCollection and each individual remaining geometries. For example, for the set ⁇ gl, g2, g3 ⁇ a CombineMode of Exclude would be applied as ((gl exclude g2) and (gl exclude g3)).
- PathGeometry element contains a set of Path Figure elements. The union of the Path Figures defines the interior of the PathGeometry.
- the filled area of PathGeometry is defined by taking all of the contained Path Figure that have their Filled attribute set to true and applying the FillRule to determine the enclosed area.
- FillRule options specify how the intersecting areas of Figure elements contained in a Geometry are combined to form the resulting area of the Geometry.
- EvenOdd Fill and NonZero Fill algorithms are provided.
- the EvenOdd Fill algorithm determines the "insideness" of a point on the canvas by drawing a ray from that point to infinity in any direction and then examining the places where a segment of the shape crosses the ray.
- the NonZero Fill algorithm determines the "insideness" of a point on the canvas by drawing a ray from that point to infinity in any direction and counting the number of path Segments from the given shape that the ray crosses. If this number is odd, the point is inside; if even, the point is outside.
- Path Figure A Path Figure element is composed of a set of one or more line or curve segments.
- the segment elements define the shape of the Path Figure.
- the Path Figure must always define a closed shape.
- a figure requires a starting point, after which each line or curve segment continues from the last point added.
- the first segment in the Path Figure set must be a StartSegment, and CloseSegment must be the last segment.
- StartSegment has a Point attribute.
- CloseSegment has no attributes.
- the following markup describes drawing a cubic Bezier curve. That is, in addition to the PolyLineSegment, Fixed-Payload markup includes the PolyBezierSegment for drawing cubic Bezier curves.
- a brush is used to paint the interior of geometric shapes defined by the ⁇ Path> element, and to fill the character bitmaps rendered with a ⁇ Glyphs> element.
- a brash is also used in defining the alpha-transparency mask in ⁇ Canvas.OpacityMask>, ⁇ Path.OpacityMask>, and ⁇ Glyphs.OpacityMask>.
- the FixedPage markup includes the following brashes:
- the Horizontal Alignment attribute specifies how the brash is aligned horizontally within the area it fills out.
- the Vertical Alignment attribute specifies how the brush is aligned vertically within the area it fills out.
- the ViewBox attribute has a default value of (0,0,0,0), interpreted as unset. When unset, no adjustment is made and the Stretch attribute is ignored.
- the viewbox specifies a new coordinate system for the contents, i.e. redefines the extent and origin of the viewport.
- the Stretch attribute helps to specify how those contents map into the viewport.
- the value of the viewBox attribute is a list of four "unitless" numbers ⁇ min-x>, ⁇ min-y>, ⁇ width> and ⁇ height>, separated by whitespace and/or a comma, and is of type Rect.
- the Viewbox rect specifies the rectangle in user space that maps to the bounding box. It works the same as inserting a scaleX and scaleY.
- the Stretch attribute (in case the option is other than none) provides additional control for preserving the aspect ratio of the graphics. An additional transformation is applied to all descendants of the given element to achieve the specified effect. If there is a transform on the Brush, it is applied "above" the mapping to ViewBox.
- the Stretch attribute has the following modes: None, Fill, Uniform, UniformToFill.
- SolidColorBrush fills defined geometric regions with a solid color. If there is an alpha component of the color, it is combined in a multiplicative way with the corresponding opacity attribute in the Brash.
- ImageBrash can be used to fill a space with an image.
- the markup for ImageBrash allows a URI to be specified. If all other attributes are set to their default values, the image will be stretched to fill the bounding box of the region.
- DrawingBrash can be used to fill a space with a vector drawing.
- DrawingBrush has a Drawing Child Element, whose use in markup is shown below.
- Gradient Brushes and their Attributes are drawn by specifying a set of gradient stops as XML Child Elements of the gradient brashes. These gradient stops specify the colors along some sort of progression. There are two types of gradient brashes supported in this framework: linear and radial. The gradient is by drawn by doing interpolations between the gradient stops in the specified color space. LinearGradientBrash and GradientBrash share the following common attributes:
- SpreadMethod options specify how the space is filled.
- the default value is Pad.
- the LinearGradientBrash specifies a linear gradient brash along a vector.
- This example shows a page with a rectangular path that is filled with a linear gradient.
- the Path also has a clip property in the shape of an octagon which clips it.
- the RadialGradient is similar in programming model to the linear gradient. However, whereas the linear gradient has a start and end point to define the gradient vector, the radial gradient has a circle along with a focal point to define the gradient behavior.
- the circle defines the end point of the gradient - in other words, a gradient stop at 1.0 defines the color at the circle's circumference.
- the focal point defines center of the gradient.
- a gradient stop at 0.0 defines the color at the focal point.
- each pixel of each element carries an alpha value ranging from 0.0 (completely transparent) to 1.0 (fully opaque).
- the alpha value is used when blending elements to achieve the visual effect of transparency.
- Each element can have an Opacity attribute with which the alpha value of each pixel of the element will be multiplied uniformly.
- the OpacityMask allow the specification of per-pixel opacity which will control how rendered content will be blended into its destination. The opacity specified by OpacityMask is combined multiplicatively with any opacity which may already happen to be present in the alpha channel of the contents.
- the per-pixel Opacity specified by the OpacityMask is determined by looking at the alpha channel of each pixel in the mask - the color data is ignored.
- the type of OpacityMask is Brash. This allows the specification of how the Brush's content is mapped to the extent of the content in a variety of different ways. Just as when used to fill geometry, the Brushes default to filling the entire content space, stretching or replicating its content as appropriate. This means that an ImageBrash will stretch its ImageSource to completely cover the contents, a GradientBrash will extend from edge to edge.
- the required computations for alpha blending are described in the earlier section "Opacity Attribute".
- the following example illustrates how an OpacityMask is used to create a "fade effect" on a Glyphs element.
- the OpacityMask in the example is a linear gradient that fades from opaque black to transparent black.
- a region must first be specified on the page.
- the region is defined by the geometry of a Path element.
- the Fill property of the Path element specifies the fill contents for the described region.
- Images are one type of fill, drawn into a region by the ImageBrush. All brushes have default behavior that will fill an entire region by either stretching or repeating (tiling) the brash content as appropriate. In the case of ImageBrash, the content specified by the ImageSource property will be stretched to completely cover the region.
- the markup below demonstrates how to place an image onto a Canvas.
- ⁇ Canvas> ⁇ Path> ⁇ Path.Data> ⁇ GeometryCollection> ⁇ /GeometryCollection> ⁇ /Path.Data> ⁇ Path.Fill> ⁇ ImageBrush ImageSource "/images/dog. jpg" /> ⁇ /Path.Fill> ⁇ /Path> ⁇ /Canvas>
- Color Mapping Currently, consideration is being given to the tagging of colored elements with metadata specifying color context. Such metadata could contain an ICC color profile, or other color definition data.
- the ⁇ Glyphs> Element Text is represented in Fixed Payloads using a Glyphs element.
- the element is designed to meet requirements for printing and reach documents.
- Glyphs elements may have combinations of the following properties.
- FontRenderingEmSize (default 96ths of an inch) Length units.
- ClusterMap UnicodeString property. See Each value gives the offset of the first below for glyph in Glyphlndices that represents representation. the corresponding character in UnicodeString. Where multiple characters map to a single glyph, or where a single character maps to multiple glyphs, or where multiple characters map to multiple glyphs indivisibly, the character or character(s) and glyph or glyph(s) are called a cluster. All entries in the ClusterMap for a multi-character cluster map to the offset in the Glyphlndices array of the first glyph of the cluster.
- glyphs within a font are either base glyphs or combining marks that may be attached to base glyphs.
- Base glyphs usually have an advance width that is non-zero, and a 0,0 offset vector.
- Combining marks usually have a zero advance width. The offset vector may be used to adjust the position of a combining mark and so may have a non 0,0 value for combining marks.
- Each glyph in the glyph ran has three values controlling its position.
- Origin Each glyph is assumed to be given a nominal origin, for the first glyph in the ran this is the origin of the ran.
- Advance Width The advance width for each glyph provides the origin of the next glyph relative to this glyphs origin.
- the advance vector is always drawn in the direction of the ran progression.
- Glyph Offset (Base or Mark): The glyph offset vector adjusts this glyphs position relative to its nominal origin.
- Characters, Glyphs, and the Cluster Map Cluster maps contain one entry per Unicode codepoint.
- the value in the entry is the offset of the first glyph in the Glyphlndices array that represents this codepoint.
- the codepoint is part of a group of codepoints representing an indivisible character cluster
- the first glyph in the Glyphlndices array represents the offset of the first glyph that represents that cluster.
- the cluster map can represent codepoint-to-glyph mappings that are one-to- one, many-to-one, one-to-many, or many-to-many.
- One-to-one mappings are when each codepoint is represented by exactly one glyph
- the cluster map entries in Fig. 13 are 0, 1, 2, ....
- Many-to-one mappings are when two or more codepoints map to a single glyph.
- the entries for those codepoints specify the offset of that glyph in the glpyh index buffer.
- the and characters have been replaced by a ligature, as is common typesetting practice in many serif fonts.
- Cluster specifications precede the glyph specification for the first glyph of a non 1:1 cluster (mappings are more complex than one-character-to-one-glyph).
- Each cluster specification has the following form:
- Glyphs element specifies a font as a URI, a face index and a set of other attributes described above. For example:
- Glyphlndex Index of glyph in the rendering physical font As defined by the fonts character map table for the corresponding Unicode codepoint in the inner text.
- Advance Placement for next glyph relative to origin of this glyph As defined by Measured in direction of advance as defined by the fonts HMTX sideways and BidiLevel attributes. or VMTX font Measured in lOOths of the font em size. metric tables. Advance must be calculated such that rounding errors do not accumulate. See note below on how to achieve this requirement.
- Each advance value must be calculated as the exact unrounded origin of the subsequent glyph minus the sum of the calculated (i.e. rounded) advance widths of the preceding glyphs. In this way each glyph is positioned to within 0.5% of an em of its exact position.
- Glyph indices may be omitted from markup where there is a one-to-one mapping between the positions of characters in the Unicode string and the positions of glyphs in the glyph string, and the glyph index is the value in the CMAP
- Glyph indices should be provided in markup where a rendering engine might substitute a different glyph than that in the CMAP (character mapping) table in the font. Glyph indices should be provided where the desired glyph representation is not that in the CMAP table of the font.
- Optimizing Markup of Glyph Positions Glyph advance width may be omitted from the markup where the advance width required is exactly that for the glyph in the HMTX (horizontal metrics) or VMTX (vertical metrics) tables of the font. Glyph vertical offset may be omitted from the markup where it is zero. This is almost always true for base characters, and commonly true for combining marks in simpler scripts. However, this is often false for combining marks in more complex scripts such as Arabic and Indie.
- Glyph flags may be omitted for base glyphs with normal justification priority.
- the above-described modular content framework and document format methods and systems provide a set of building blocks for composing, packaging, distributing, and rendering document-centered content. These building blocks define a platform-independent framework for document formats that enable software and hardware systems to generate, exchange, and display documents reliably and consistently.
- the illustrated and described reach package format provides a format for storing paginated or pre-paginated documents in a manner in which contents of a reach package can be displayed or printed with full fidelity among devices and applications in a wide range of environments and across a wide range of scenarios.
Abstract
Description
Claims
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP04757184A EP1631913A4 (en) | 2004-04-30 | 2004-07-22 | Methods and systems for building packages that contain pre-paginated documents |
KR1020117008229A KR101137082B1 (en) | 2004-04-30 | 2004-07-22 | Methods and systems for building packages that contain pre-paginated documents |
KR1020057008114A KR101109338B1 (en) | 2004-04-30 | 2004-07-22 | Methods and systems for building packages that contain pre-paginated documents |
CN2004800013311A CN1781089B (en) | 2004-04-30 | 2004-07-22 | Methods and systems for building packages that contain pre-paginated documents |
JP2007510684A JP2007535750A (en) | 2004-04-30 | 2004-07-22 | Method and system for building packages containing pre-paged documents |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/837,040 | 2004-04-30 | ||
US10/837,040 US7383500B2 (en) | 2004-04-30 | 2004-04-30 | Methods and systems for building packages that contain pre-paginated documents |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2005111829A1 true WO2005111829A1 (en) | 2005-11-24 |
Family
ID=35240756
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/US2004/023489 WO2005111829A1 (en) | 2004-04-30 | 2004-07-22 | Methods and systems for building packages that contain pre-paginated documents |
Country Status (6)
Country | Link |
---|---|
US (4) | US7383500B2 (en) |
EP (1) | EP1631913A4 (en) |
JP (1) | JP2007535750A (en) |
KR (2) | KR101109338B1 (en) |
CN (1) | CN1781089B (en) |
WO (1) | WO2005111829A1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8246453B2 (en) | 2005-04-28 | 2012-08-21 | Wms Gaming Inc. | Wagering game device having ubiquitous character set |
Families Citing this family (98)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7464330B2 (en) * | 2003-12-09 | 2008-12-09 | Microsoft Corporation | Context-free document portions with alternate formats |
US8661332B2 (en) * | 2004-04-30 | 2014-02-25 | Microsoft Corporation | Method and apparatus for document processing |
US7617450B2 (en) | 2004-09-30 | 2009-11-10 | Microsoft Corporation | Method, system, and computer-readable medium for creating, inserting, and reusing document parts in an electronic document |
US7310771B2 (en) * | 2004-12-20 | 2007-12-18 | Microsoft Corporation | Method and computer-readable medium for providing page and table formatting services |
US7617451B2 (en) * | 2004-12-20 | 2009-11-10 | Microsoft Corporation | Structuring data for word processing documents |
US7617229B2 (en) * | 2004-12-20 | 2009-11-10 | Microsoft Corporation | Management and use of data in a computer-generated document |
US20060136816A1 (en) * | 2004-12-20 | 2006-06-22 | Microsoft Corporation | File formats, methods, and computer program products for representing documents |
US7770180B2 (en) | 2004-12-21 | 2010-08-03 | Microsoft Corporation | Exposing embedded data in a computer-generated document |
US7752632B2 (en) | 2004-12-21 | 2010-07-06 | Microsoft Corporation | Method and system for exposing nested data in a computer-generated document in a transparent manner |
US20070022128A1 (en) * | 2005-06-03 | 2007-01-25 | Microsoft Corporation | Structuring data for spreadsheet documents |
US20060277452A1 (en) * | 2005-06-03 | 2006-12-07 | Microsoft Corporation | Structuring data for presentation documents |
JP5395434B2 (en) | 2005-09-09 | 2014-01-22 | セールスフォース ドット コム インコーポレイティッド | System and method for exporting, publishing, browsing and installing on-demand applications in a multi-tenant database environment |
US20070079238A1 (en) * | 2005-10-05 | 2007-04-05 | Sbc Knowledge Ventures, L.P. | Computer executable graphical user interface engine, system, and method therefor |
US8438476B2 (en) * | 2005-10-14 | 2013-05-07 | Uhlig Llc | Dynamic variable-content publishing |
US8018440B2 (en) | 2005-12-30 | 2011-09-13 | Microsoft Corporation | Unintentional touch rejection |
US7921358B2 (en) * | 2006-01-17 | 2011-04-05 | Microsoft Corporation | Automatic package conformance validation |
US20070180370A1 (en) * | 2006-02-02 | 2007-08-02 | Kabushiki Kaisha Toshiba | System and method for sequencing pages in a document processing device |
US7451120B1 (en) | 2006-03-20 | 2008-11-11 | Google Inc. | Detecting novel document content |
US7627600B2 (en) * | 2006-06-20 | 2009-12-01 | Microsoft Corporation | Automatic layout of unpredictable content from multiple sources |
CN100452024C (en) * | 2006-07-06 | 2009-01-14 | 北京北大方正电子有限公司 | Method for processing mixed editorial document and automatically adding page number information |
US7954048B2 (en) * | 2006-09-21 | 2011-05-31 | International Business Machines Corporation | Content management via configuration set relationships in a content management system |
US20080104203A1 (en) * | 2006-10-31 | 2008-05-01 | Microsoft Corporation | Viewing Digital Information Over a Network |
US20080120538A1 (en) * | 2006-11-22 | 2008-05-22 | University Of New Brunswick | Visual web page authoring tool for multi-context web pages |
US7855799B2 (en) | 2007-01-16 | 2010-12-21 | Shah Pradip K | Print workflow automation |
US8745486B2 (en) * | 2007-01-25 | 2014-06-03 | Microsoft Corporation | Streamable interactive rendering-independent page layout |
US8375073B1 (en) | 2007-11-12 | 2013-02-12 | Google Inc. | Identification and ranking of news stories of interest |
US7996379B1 (en) | 2008-02-01 | 2011-08-09 | Google Inc. | Document ranking using word relationships |
US8214736B2 (en) | 2008-08-15 | 2012-07-03 | Screenplay Systems, Inc. | Method and system of identifying textual passages that affect document length |
US8314951B2 (en) * | 2008-09-26 | 2012-11-20 | Kyocera Document Solutions Inc. | Image processing apparatus, and computer-readable recording medium |
US10943030B2 (en) | 2008-12-15 | 2021-03-09 | Ibailbonding.Com | Securable independent electronic document |
US8339641B2 (en) * | 2008-12-30 | 2012-12-25 | Konica Minolta Laboratory U.S.A., Inc. | Systems and methods for processing packaged print data streams |
US8578259B2 (en) * | 2008-12-31 | 2013-11-05 | Microsoft Corporation | Media portability and compatibility for different destination platforms |
US20100254388A1 (en) * | 2009-04-04 | 2010-10-07 | Oracle International Corporation | Method and system for applying expressions on message payloads for a resequencer |
US9124448B2 (en) * | 2009-04-04 | 2015-09-01 | Oracle International Corporation | Method and system for implementing a best efforts resequencer |
US8836648B2 (en) * | 2009-05-27 | 2014-09-16 | Microsoft Corporation | Touch pull-in gesture |
US9319444B2 (en) * | 2009-06-22 | 2016-04-19 | Monotype Imaging Inc. | Font data streaming |
US9411504B2 (en) | 2010-01-28 | 2016-08-09 | Microsoft Technology Licensing, Llc | Copy and staple gestures |
US8261213B2 (en) * | 2010-01-28 | 2012-09-04 | Microsoft Corporation | Brush, carbon-copy, and fill gestures |
US20110185299A1 (en) * | 2010-01-28 | 2011-07-28 | Microsoft Corporation | Stamp Gestures |
US20110185320A1 (en) * | 2010-01-28 | 2011-07-28 | Microsoft Corporation | Cross-reference Gestures |
US9519356B2 (en) * | 2010-02-04 | 2016-12-13 | Microsoft Technology Licensing, Llc | Link gestures |
US20110191704A1 (en) * | 2010-02-04 | 2011-08-04 | Microsoft Corporation | Contextual multiplexing gestures |
TW201128566A (en) * | 2010-02-06 | 2011-08-16 | Chi Mei Comm Systems Inc | Image processing system and method |
US9367205B2 (en) * | 2010-02-19 | 2016-06-14 | Microsoft Technolgoy Licensing, Llc | Radial menus with bezel gestures |
US8799827B2 (en) | 2010-02-19 | 2014-08-05 | Microsoft Corporation | Page manipulations using on and off-screen gestures |
US9965165B2 (en) * | 2010-02-19 | 2018-05-08 | Microsoft Technology Licensing, Llc | Multi-finger gestures |
US9274682B2 (en) * | 2010-02-19 | 2016-03-01 | Microsoft Technology Licensing, Llc | Off-screen gestures to create on-screen input |
US9310994B2 (en) * | 2010-02-19 | 2016-04-12 | Microsoft Technology Licensing, Llc | Use of bezel as an input mechanism |
US8707174B2 (en) * | 2010-02-25 | 2014-04-22 | Microsoft Corporation | Multi-screen hold and page-flip gesture |
US20110209058A1 (en) * | 2010-02-25 | 2011-08-25 | Microsoft Corporation | Multi-screen hold and tap gesture |
US9454304B2 (en) * | 2010-02-25 | 2016-09-27 | Microsoft Technology Licensing, Llc | Multi-screen dual tap gesture |
US20110209089A1 (en) * | 2010-02-25 | 2011-08-25 | Hinckley Kenneth P | Multi-screen object-hold and page-change gesture |
US8473870B2 (en) * | 2010-02-25 | 2013-06-25 | Microsoft Corporation | Multi-screen hold and drag gesture |
US8539384B2 (en) * | 2010-02-25 | 2013-09-17 | Microsoft Corporation | Multi-screen pinch and expand gestures |
US8751970B2 (en) * | 2010-02-25 | 2014-06-10 | Microsoft Corporation | Multi-screen synchronous slide gesture |
US9075522B2 (en) * | 2010-02-25 | 2015-07-07 | Microsoft Technology Licensing, Llc | Multi-screen bookmark hold gesture |
US8615709B2 (en) | 2010-04-29 | 2013-12-24 | Monotype Imaging Inc. | Initiating font subsets |
US8625165B2 (en) | 2010-06-22 | 2014-01-07 | Microsoft Corporation | Optimized font subsetting for a print path |
US20120079374A1 (en) * | 2010-09-29 | 2012-03-29 | Apple Inc. | Rendering web page text in a non-native font |
US8875008B2 (en) * | 2010-11-11 | 2014-10-28 | Microsoft Corporation | Presentation progress as context for presenter and audience |
US20120159395A1 (en) | 2010-12-20 | 2012-06-21 | Microsoft Corporation | Application-launching interface for multiple modes |
US8689123B2 (en) | 2010-12-23 | 2014-04-01 | Microsoft Corporation | Application reporting in an application-selectable user interface |
US8612874B2 (en) | 2010-12-23 | 2013-12-17 | Microsoft Corporation | Presenting an application change through a tile |
US9658766B2 (en) | 2011-05-27 | 2017-05-23 | Microsoft Technology Licensing, Llc | Edge gesture |
US9104307B2 (en) | 2011-05-27 | 2015-08-11 | Microsoft Technology Licensing, Llc | Multi-application environment |
US9104440B2 (en) | 2011-05-27 | 2015-08-11 | Microsoft Technology Licensing, Llc | Multi-application environment |
US9158445B2 (en) | 2011-05-27 | 2015-10-13 | Microsoft Technology Licensing, Llc | Managing an immersive interface in a multi-application immersive environment |
US8893033B2 (en) | 2011-05-27 | 2014-11-18 | Microsoft Corporation | Application notifications |
US20130057587A1 (en) | 2011-09-01 | 2013-03-07 | Microsoft Corporation | Arranging tiles |
US9146670B2 (en) | 2011-09-10 | 2015-09-29 | Microsoft Technology Licensing, Llc | Progressively indicating new content in an application-selectable user interface |
US9240073B2 (en) * | 2011-11-15 | 2016-01-19 | Pixar | File format for representing a scene |
US20130322759A1 (en) * | 2011-12-01 | 2013-12-05 | Peking University Founder Group Co., Ltd. | Method and device for identifying font |
CN103164388B (en) * | 2011-12-09 | 2016-07-06 | 北大方正集团有限公司 | In a kind of layout files structured message obtain method and device |
CN103377182B (en) * | 2012-04-27 | 2016-12-14 | 北大方正集团有限公司 | The method and apparatus of the streaming typesetting page number |
US9582122B2 (en) | 2012-11-12 | 2017-02-28 | Microsoft Technology Licensing, Llc | Touch-sensitive bezel techniques |
US9817615B2 (en) | 2012-12-03 | 2017-11-14 | Monotype Imaging Inc. | Network based font management for imaging devices |
US9569865B2 (en) | 2012-12-21 | 2017-02-14 | Monotype Imaging Inc. | Supporting color fonts |
EP2943894A2 (en) | 2013-01-09 | 2015-11-18 | Monotype Imaging Inc. | Advanced text editor |
US9317777B2 (en) | 2013-10-04 | 2016-04-19 | Monotype Imaging Inc. | Analyzing font similarity for presentation |
JP5974024B2 (en) * | 2014-01-18 | 2016-08-23 | 株式会社モリサワ | Font distribution system and font distribution method |
KR102063566B1 (en) * | 2014-02-23 | 2020-01-09 | 삼성전자주식회사 | Operating Method For Text Message and Electronic Device supporting the same |
US9477337B2 (en) | 2014-03-14 | 2016-10-25 | Microsoft Technology Licensing, Llc | Conductive trace routing for display and bezel sensors |
US9691169B2 (en) | 2014-05-29 | 2017-06-27 | Monotype Imaging Inc. | Compact font hinting |
US10115215B2 (en) | 2015-04-17 | 2018-10-30 | Monotype Imaging Inc. | Pairing fonts for presentation |
US11537262B1 (en) | 2015-07-21 | 2022-12-27 | Monotype Imaging Inc. | Using attributes for font recommendations |
CN108984071B (en) * | 2017-06-01 | 2022-09-30 | 腾讯科技(深圳)有限公司 | Text recombination method and device, terminal equipment and computer readable storage medium |
US11334750B2 (en) | 2017-09-07 | 2022-05-17 | Monotype Imaging Inc. | Using attributes for predicting imagery performance |
US10909429B2 (en) | 2017-09-27 | 2021-02-02 | Monotype Imaging Inc. | Using attributes for identifying imagery for selection |
US10802766B2 (en) * | 2017-09-29 | 2020-10-13 | Oracle International Corporation | Database with NVDIMM as persistent storage |
US11657602B2 (en) | 2017-10-30 | 2023-05-23 | Monotype Imaging Inc. | Font identification from imagery |
CN108664254A (en) * | 2018-05-09 | 2018-10-16 | 中山市博美科研技术服务有限公司 | A kind of Software package method and device |
CN109254773B (en) * | 2018-09-19 | 2022-04-05 | 广州视源电子科技股份有限公司 | Skeleton page generation method, device, equipment and storage medium |
KR102187554B1 (en) * | 2019-08-27 | 2020-12-07 | 주식회사 한글과컴퓨터 | Electronic device capable of measuring the similarity between two areas specified on a spreadsheet and operating method thereof |
US11494588B2 (en) | 2020-03-06 | 2022-11-08 | International Business Machines Corporation | Ground truth generation for image segmentation |
US11361146B2 (en) * | 2020-03-06 | 2022-06-14 | International Business Machines Corporation | Memory-efficient document processing |
US11495038B2 (en) | 2020-03-06 | 2022-11-08 | International Business Machines Corporation | Digital image processing |
US11556852B2 (en) | 2020-03-06 | 2023-01-17 | International Business Machines Corporation | Efficient ground truth annotation |
CN114444439B (en) * | 2022-04-08 | 2022-08-26 | 深圳市壹箭教育科技有限公司 | Test question set file generation method and device, electronic equipment and storage medium |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6418448B1 (en) * | 1999-12-06 | 2002-07-09 | Shyam Sundar Sarkar | Method and apparatus for processing markup language specifications for data and metadata used inside multiple related internet documents to navigate, query and manipulate information from a plurality of object relational databases over the web |
US6480206B2 (en) * | 1998-02-24 | 2002-11-12 | Sun Microsystems, Inc. | Method and apparatus for an extensible editor |
US6763343B1 (en) * | 1999-09-20 | 2004-07-13 | David M. Brooke | Preventing duplication of the data in reference resource for XML page generation |
US6789229B1 (en) * | 2000-04-19 | 2004-09-07 | Microsoft Corporation | Document pagination based on hard breaks and active formatting tags |
Family Cites Families (432)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US522202A (en) * | 1894-07-03 | Hand-truck | ||
US4410286A (en) | 1981-06-16 | 1983-10-18 | International Business Machines Corporation | Printing complex characters |
US4594674A (en) | 1983-02-18 | 1986-06-10 | International Business Machines Corporation | Generating and storing electronic fonts |
US4870611A (en) | 1983-11-15 | 1989-09-26 | International Business Machines Corporation | Apparatus and method for system printing mode control |
US4649513A (en) | 1983-11-15 | 1987-03-10 | International Business Machines Corporation | Apparatus and method for processing system printing data records on a page printer |
US5148366A (en) | 1989-10-16 | 1992-09-15 | Medical Documenting Systems, Inc. | Computer-assisted documentation system for enhancing or replacing the process of dictating and transcribing |
US5179702A (en) | 1989-12-29 | 1993-01-12 | Supercomputer Systems Limited Partnership | System and method for controlling a highly parallel multiprocessor using an anarchy based scheduler for parallel execution thread scheduling |
US5579519A (en) | 1990-03-05 | 1996-11-26 | Interleaf, Inc. | Extensible electronic document processing system for creating new classes of active documents |
US5222205A (en) | 1990-03-16 | 1993-06-22 | Hewlett-Packard Company | Method for generating addresses to textured graphics primitives stored in rip maps |
US5504818A (en) | 1991-04-19 | 1996-04-02 | Okano; Hirokazu | Information processing system using error-correcting codes and cryptography |
US6484189B1 (en) | 1991-04-26 | 2002-11-19 | Amiga Development Llc | Methods and apparatus for a multimedia authoring and presentation system |
US6005574A (en) | 1991-07-05 | 1999-12-21 | International Business Machines Corporation | Data processing system including method and apparatus for performing graphics clipping operations |
US5437008A (en) | 1992-06-23 | 1995-07-25 | Adobe Systems Incorporated | Method of establishing constraints and links in a distribution frame between graphical elements and resolving the constaints |
US5469533A (en) | 1992-07-10 | 1995-11-21 | Microsoft Corporation | Resource-oriented printer system and method of operation |
US5638498A (en) | 1992-11-10 | 1997-06-10 | Adobe Systems Incorporated | Method and apparatus for reducing storage requirements for display data |
US5469532A (en) | 1992-11-16 | 1995-11-21 | Microsoft Corporation | System and method for font wrapping printer data |
EP0746926B1 (en) | 1992-12-14 | 2003-10-29 | The Commonwealth Of Australia | Complex document security |
US5745910A (en) | 1993-05-10 | 1998-04-28 | Apple Computer, Inc. | Frame structure which provides an interface between parts of a compound document |
US5911138A (en) | 1993-06-04 | 1999-06-08 | International Business Machines Corporation | Database search facility having improved user interface |
US5487138A (en) | 1993-09-02 | 1996-01-23 | Hewlett-Packard Company | Method to reduce memory requirements in Asian printers while improving performance |
US5369702A (en) | 1993-10-18 | 1994-11-29 | Tecsec Incorporated | Distributed cryptographic object method |
US5537526A (en) * | 1993-11-12 | 1996-07-16 | Taugent, Inc. | Method and apparatus for processing a display document utilizing a system level document framework |
US5752056A (en) | 1994-03-02 | 1998-05-12 | Apple Computer, Inc. | System for binding document parts and handlers by fidelity of parts or by automatic translation of parts |
US5608909A (en) | 1994-04-15 | 1997-03-04 | Microsoft Corporation | Method and system for caching presentation data of a source object in a presentation cache |
US5649083A (en) | 1994-04-15 | 1997-07-15 | Hewlett-Packard Company | System and method for dithering and quantizing image data to optimize visual quality of a color recovered image |
US5806078A (en) | 1994-06-09 | 1998-09-08 | Softool Corporation | Version management system |
AUPM704594A0 (en) | 1994-07-25 | 1994-08-18 | Canon Information Systems Research Australia Pty Ltd | Efficient methods for the compositing of graphical elements |
US5579466A (en) | 1994-09-01 | 1996-11-26 | Microsoft Corporation | Method and system for editing and formatting data in a dialog window |
US5602974A (en) | 1994-10-05 | 1997-02-11 | Microsoft Corporation | Device independent spooling in a print architecture |
US5881213A (en) | 1994-10-05 | 1999-03-09 | Microsoft Corporation | Deferred printing |
US6571279B1 (en) | 1997-12-05 | 2003-05-27 | Pinpoint Incorporated | Location enhanced information delivery system |
JPH08297669A (en) | 1994-12-27 | 1996-11-12 | Internatl Business Mach Corp <Ibm> | System and method for automatic link of plurality of parts at inside of composite document |
JPH08212205A (en) | 1995-02-07 | 1996-08-20 | Nec Corp | Composite document management system |
EP0811193B1 (en) | 1995-02-22 | 1998-10-14 | Agust S. Egilsson | Graphical environment for managing and developing applications |
US5734883A (en) * | 1995-04-27 | 1998-03-31 | Michael Umen & Co., Inc. | Drug document production system |
US5929852A (en) | 1995-05-05 | 1999-07-27 | Apple Computer, Inc. | Encapsulated network entity reference of a network component system |
US6952801B2 (en) | 1995-06-07 | 2005-10-04 | R.R. Donnelley | Book assembly process and apparatus for variable imaging system |
US5699493A (en) | 1995-06-23 | 1997-12-16 | Lexmark International, Inc. | Method and apparatus for providing job accounting information to a host computer from a printer |
US6199082B1 (en) | 1995-07-17 | 2001-03-06 | Microsoft Corporation | Method for delivering separate design and content in a multimedia publishing system |
US5675788A (en) | 1995-09-15 | 1997-10-07 | Infonautics Corp. | Method and apparatus for generating a composite document on a selected topic from a plurality of information sources |
JPH09128380A (en) * | 1995-10-30 | 1997-05-16 | Matsushita Electric Ind Co Ltd | Document storing and managing system |
JPH09128379A (en) | 1995-11-06 | 1997-05-16 | Hitachi Ltd | Information processing method |
US5727220A (en) | 1995-11-29 | 1998-03-10 | International Business Machines Corporation | Method and system for caching and referencing cached document pages utilizing a presentation data stream |
US5893109A (en) * | 1996-03-15 | 1999-04-06 | Inso Providence Corporation | Generation of chunks of a long document for an electronic book system |
US5940581A (en) | 1996-03-21 | 1999-08-17 | Apple Computer, Inc. | Dynamic font management for large character sets |
US5903903A (en) * | 1996-04-25 | 1999-05-11 | Microsoft Corporation | System for determining the sequence and placement of pages for a multiple-page document |
US5903905A (en) * | 1996-04-30 | 1999-05-11 | Microsoft Corporation | Method for simultaneously constructing and displaying a dynamic preview of a document that provides an accurate customized document |
EP0979458A4 (en) | 1996-05-14 | 2000-05-03 | Ricoh Corp Ltd | Java printer |
US6457017B2 (en) * | 1996-05-17 | 2002-09-24 | Softscape, Inc. | Computing system for information management |
US5933841A (en) * | 1996-05-17 | 1999-08-03 | Ameritech Corporation | Structured document browser |
US6026416A (en) | 1996-05-30 | 2000-02-15 | Microsoft Corp. | System and method for storing, viewing, editing, and processing ordered sections having different file formats |
GB2314957A (en) | 1996-07-05 | 1998-01-14 | Esselte Nv | Label printer |
US5974548A (en) | 1996-07-12 | 1999-10-26 | Novell, Inc. | Media-independent document security method and apparatus |
US20040139049A1 (en) | 1996-08-22 | 2004-07-15 | Wgrs Licensing Company, Llc | Unified geographic database and method of creating, maintaining and using the same |
US6144974A (en) * | 1996-12-13 | 2000-11-07 | Adobe Systems Incorporated | Automated layout of content in a page framework |
KR20000069550A (en) | 1996-12-20 | 2000-11-25 | 챨스 에이치. 셀라 | Method and system for processing electronic documents |
US6138162A (en) | 1997-02-11 | 2000-10-24 | Pointcast, Inc. | Method and apparatus for configuring a client to redirect requests to a caching proxy server based on a category ID with the request |
US6449653B2 (en) | 1997-03-25 | 2002-09-10 | Microsoft Corporation | Interleaved multiple multimedia stream for synchronized transmission over a computer network |
US6023714A (en) * | 1997-04-24 | 2000-02-08 | Microsoft Corporation | Method and system for dynamically adapting the layout of a document to an output device |
US6269403B1 (en) | 1997-06-30 | 2001-07-31 | Microsoft Corporation | Browser and publisher for multimedia object storage, retrieval and transfer |
US6604144B1 (en) | 1997-06-30 | 2003-08-05 | Microsoft Corporation | Data format for multimedia object storage, retrieval and transfer |
US6078934A (en) * | 1997-07-09 | 2000-06-20 | International Business Machines Corporation | Management of a document database for page retrieval |
US8386912B2 (en) | 1997-07-28 | 2013-02-26 | Ca, Inc. | Hypermedia document publishing including hypermedia document parsing |
JP4054444B2 (en) | 1997-07-30 | 2008-02-27 | キヤノン株式会社 | Print control apparatus, print control method, and storage medium |
US6447184B2 (en) | 1997-07-30 | 2002-09-10 | Canon Kabushiki Kaisha | Method and apparatus for controlling a printing operation |
US6938203B1 (en) * | 1997-08-11 | 2005-08-30 | Chrysanne Dimarco | Method and apparatus for authoring of customizable multimedia documents |
US6070175A (en) | 1997-08-26 | 2000-05-30 | The United States As Represented By The Director The National Security Agency | Method of file editing using framemaker enhanced by application programming interface clients |
US6182080B1 (en) * | 1997-09-12 | 2001-01-30 | Netvoyage Corporation | System, method and computer program product for storage of a plurality of documents within a single file |
US6173295B1 (en) | 1997-09-15 | 2001-01-09 | International Business Machines Corporation | Method, system, and program for creating a job ticket inlcuding information on components and print attributes of a print job |
US6094665A (en) | 1997-09-18 | 2000-07-25 | Hewlett-Packard Company | Method and apparatus for correcting a uniform resource identifier |
US6134552A (en) * | 1997-10-07 | 2000-10-17 | Sap Aktiengesellschaft | Knowledge provider with logical hyperlinks |
US6594682B2 (en) | 1997-10-28 | 2003-07-15 | Microsoft Corporation | Client-side system for scheduling delivery of web content and locally managing the web content |
GB9800100D0 (en) * | 1998-01-06 | 1998-03-04 | Ibm | A method and component for presentation of information |
US6088702A (en) * | 1998-02-25 | 2000-07-11 | Plantz; Scott H. | Group publishing system |
US20010013043A1 (en) * | 1998-03-12 | 2001-08-09 | Richard J. Wagner | System and method for determining browser package and version compatibility of a web document |
JP4817474B2 (en) | 1998-03-17 | 2011-11-16 | キヤノン株式会社 | Data processing apparatus, data processing method, and storage medium storing computer-readable program |
US6281896B1 (en) | 1998-03-31 | 2001-08-28 | International Business Machines Corporation | Data processor controlled interface with multiple tree of elements views expandable into individual detail views |
US6115044A (en) | 1998-03-31 | 2000-09-05 | International Business Machines Corporation | Data processor controlled display with a tree of items with modification of child item properties designated at parent level without modification of parent item properties |
US6247018B1 (en) | 1998-04-16 | 2001-06-12 | Platinum Technology Ip, Inc. | Method for processing a file to generate a database |
US6393442B1 (en) | 1998-05-08 | 2002-05-21 | International Business Machines Corporation | Document format transforations for converting plurality of documents which are consistent with each other |
US6212530B1 (en) * | 1998-05-12 | 2001-04-03 | Compaq Computer Corporation | Method and apparatus based on relational database design techniques supporting modeling, analysis and automatic hypertext generation for structured document collections |
US6298446B1 (en) | 1998-06-14 | 2001-10-02 | Alchemedia Ltd. | Method and system for copyright protection of digital images transmitted over networks |
JP4206515B2 (en) | 1998-06-15 | 2009-01-14 | パナソニック株式会社 | E-mail terminal |
US6496206B1 (en) | 1998-06-29 | 2002-12-17 | Scansoft, Inc. | Displaying thumbnail images of document pages in an electronic folder |
US6182096B1 (en) * | 1998-06-30 | 2001-01-30 | International Business Machines Corporation | Method and apparatus of creating highly portable output files by combining pages from multiple input files |
US6654147B1 (en) | 1998-07-06 | 2003-11-25 | Creo Il Ltd. | Anti-aliasing for digital printing |
US6891632B2 (en) | 1998-07-17 | 2005-05-10 | Peerless Systems, Inc. | Method and apparatus for selecting print strategy for optimal performance |
US6067531A (en) * | 1998-07-21 | 2000-05-23 | Mci Communications Corporation | Automated contract negotiator/generation system and method |
US6538760B1 (en) | 1998-09-08 | 2003-03-25 | International Business Machines Corp. | Method and apparatus for generating a production print stream from files optimized for viewing |
US6407821B1 (en) | 1998-09-08 | 2002-06-18 | International Business Machines Corporation | Method and apparatus for printing documents including embedded print objects with an intelligent printing system |
US6715126B1 (en) | 1998-09-16 | 2004-03-30 | International Business Machines Corporation | Efficient streaming of synchronized web content from multiple sources |
US6549918B1 (en) | 1998-09-21 | 2003-04-15 | Microsoft Corporation | Dynamic information format conversion |
US6020483A (en) | 1998-09-25 | 2000-02-01 | Nexstar Pharmaceuticals, Inc. | Nucleoside modifications by palladium catalyzed methods |
US6385727B1 (en) | 1998-09-25 | 2002-05-07 | Hughes Electronics Corporation | Apparatus for providing a secure processing environment |
US5993088A (en) | 1998-09-30 | 1999-11-30 | International Business Machines Corporation | Method for improving print performance and quality by accumulating, storing and using resource accounting information with a print job |
US20020174145A1 (en) * | 1998-10-16 | 2002-11-21 | Brady Duga | Automatic data formatting using a hypertext language |
US6362870B2 (en) | 1998-10-26 | 2002-03-26 | Hewlett-Packard Company | Image copier having enhanced duplex capabilities; method of printing a copy of a document to produce a duplex copy product |
US6427230B1 (en) | 1998-11-09 | 2002-07-30 | Unisys Corporation | System and method for defining and managing reusable groups software constructs within an object management system |
JP3869135B2 (en) | 1998-11-10 | 2007-01-17 | ソフトバンクモバイル株式会社 | Information service system using digital wireless telephone |
JP2000163356A (en) | 1998-11-25 | 2000-06-16 | Canon Inc | Peripheral device device and its control method, and storage medium |
JP3767721B2 (en) | 1998-11-27 | 2006-04-19 | セイコーエプソン株式会社 | PRINTER, PRINTER CONTROL METHOD, AND RECORDING MEDIUM CONTAINING PROGRAM FOR CONTROLLING PRINTER |
US6583789B1 (en) | 1998-12-03 | 2003-06-24 | International Business Machines Corporation | Method and system for processing glyph-based quality variability requests |
US6342904B1 (en) | 1998-12-17 | 2002-01-29 | Newstakes, Inc. | Creating a slide presentation from full motion video |
US6993527B1 (en) | 1998-12-21 | 2006-01-31 | Adobe Systems Incorporated | Describing documents and expressing document structure |
US7043688B1 (en) | 1998-12-22 | 2006-05-09 | Casio Computer Co., Ltd. | Document processing apparatus capable of increasing printing efficiency by forming virtual document and storage medium |
US6675356B1 (en) * | 1998-12-22 | 2004-01-06 | Xerox Corporation | Distributed document-based calendaring system |
US7031002B1 (en) | 1998-12-31 | 2006-04-18 | International Business Machines Corporation | System and method for using character set matching to enhance print quality |
US7274483B2 (en) | 1999-01-19 | 2007-09-25 | Canon Kabushiki Kaisha | Processing of print data received over a network, and image formation using the processed data |
US6505219B1 (en) | 1999-01-27 | 2003-01-07 | Xerox Corporation | Process management system wherein process descriptions provide indices to document histories |
US6952831B1 (en) | 1999-02-26 | 2005-10-04 | Microsoft Corporation | Driverless printing |
US6426798B1 (en) | 1999-03-04 | 2002-07-30 | Canon Kabushiki Kaisha | Data structure for printer description file |
JP2000259484A (en) | 1999-03-05 | 2000-09-22 | Sharp Corp | Information processing system and storage medium storing information processing program |
US6498657B1 (en) | 1999-03-17 | 2002-12-24 | Prout Ag | Programmable data extractor, data analyzer, and printer report generator |
US6608693B1 (en) | 1999-04-30 | 2003-08-19 | Hewlett-Packard Development Company, L.P. | Apparatus and method for generating a print job from a command stream describing multiple copies of a document |
US7000186B1 (en) | 1999-05-03 | 2006-02-14 | Amicas, Inc. | Method and structure for electronically transmitting a text document and linked information |
US6661526B1 (en) | 1999-05-04 | 2003-12-09 | Hewlett-Packard Development Company, L.P. | Printer drivers using filters that are operating system-independent and printer-independent |
US6369830B1 (en) | 1999-05-10 | 2002-04-09 | Apple Computer, Inc. | Rendering translucent layers in a display system |
US6658477B1 (en) | 1999-05-12 | 2003-12-02 | Microsoft Corporation | Improving the control of streaming data through multiple processing modules |
US6674540B1 (en) | 1999-05-24 | 2004-01-06 | Hewlett-Packard Development Company, L.P. | Assembling and printing compound documents |
US6466935B1 (en) | 1999-06-04 | 2002-10-15 | International Business Machines Corporation | Applying relational database technology to process control in manufacturing processes |
DE19964198A1 (en) * | 1999-07-15 | 2001-04-12 | Erland Wittkoetter | Data processing device |
US6587128B2 (en) | 1999-07-15 | 2003-07-01 | International Business Machines Corporation | Method for displaying hidden objects by varying the transparency of overlapping objects |
US6675353B1 (en) | 1999-07-26 | 2004-01-06 | Microsoft Corporation | Methods and systems for generating XML documents |
US6694485B1 (en) * | 1999-07-27 | 2004-02-17 | International Business Machines Corporation | Enhanced viewing of hypertext markup language file |
US6560620B1 (en) | 1999-08-03 | 2003-05-06 | Aplix Research, Inc. | Hierarchical document comparison system and method |
US6598161B1 (en) | 1999-08-09 | 2003-07-22 | International Business Machines Corporation | Methods, systems and computer program products for multi-level encryption |
US7640318B1 (en) * | 1999-09-17 | 2009-12-29 | Ricoh Co., Ltd. | Method and apparatus for publishing documents over a network |
EP1087306A3 (en) * | 1999-09-24 | 2004-11-10 | Xerox Corporation | Meta-documents and method of managing them |
WO2001025894A1 (en) | 1999-10-05 | 2001-04-12 | Ejasent Inc. | Snapshot virtual-templating |
JP3937666B2 (en) | 1999-11-02 | 2007-06-27 | キヤノン株式会社 | Printing control method and apparatus |
US6812941B1 (en) | 1999-12-09 | 2004-11-02 | International Business Machines Corp. | User interface management through view depth |
AU1405000A (en) * | 1999-12-15 | 2001-06-25 | Sun Microsystems, Inc. | Preparation of a software configuration using an xml type programming language |
AU2597401A (en) | 1999-12-22 | 2001-07-03 | Ubicom, Inc. | System and method for instruction level multithreading in an embedded processor using zero-time context switching |
EP1132808A1 (en) | 2000-01-04 | 2001-09-12 | Océ-Technologies B.V. | Method and system for submitting jobs to a reproduction center |
US6559966B1 (en) | 2000-01-10 | 2003-05-06 | Imagex, Inc. | Trapping of graphic image files |
US20010044813A1 (en) | 2000-01-10 | 2001-11-22 | Frank Kenneth B. | Document production platform |
US6981207B1 (en) | 2000-01-11 | 2005-12-27 | Ecora Software Corporation | Automatic documentation of configurable systems by outputting explanatory information of configuration parameters in a narrative format and configuration parameters differences |
US6643652B2 (en) * | 2000-01-14 | 2003-11-04 | Saba Software, Inc. | Method and apparatus for managing data exchange among systems in a network |
US20020038348A1 (en) | 2000-01-14 | 2002-03-28 | Malone Michael K. | Distributed globally accessible information network |
US6701314B1 (en) * | 2000-01-21 | 2004-03-02 | Science Applications International Corporation | System and method for cataloguing digital information for searching and retrieval |
JP3879350B2 (en) | 2000-01-25 | 2007-02-14 | 富士ゼロックス株式会社 | Structured document processing system and structured document processing method |
US20010039552A1 (en) | 2000-02-04 | 2001-11-08 | Killi Tom E. | Method of reducing the size of a file and a data processing system readable medium for performing the method |
US7149964B1 (en) * | 2000-02-09 | 2006-12-12 | Microsoft Corporation | Creation and delivery of customized content |
US6785673B1 (en) | 2000-02-09 | 2004-08-31 | At&T Corp. | Method for converting relational data into XML |
US6992785B1 (en) | 2000-02-09 | 2006-01-31 | International Business Machines Corporation | Method, data structure and apparatus for identifying resources prior to printing |
EP1269307A4 (en) * | 2000-03-01 | 2006-05-31 | Celltrex Ltd | System and method for rapid document conversion |
US6591278B1 (en) | 2000-03-03 | 2003-07-08 | R-Objects, Inc. | Project data management system and method |
WO2001067362A2 (en) | 2000-03-07 | 2001-09-13 | Broadcom Corporation | An interactive system for and method of automating the generation of legal documents |
DE10109365A1 (en) | 2000-03-17 | 2001-09-20 | Heidelberger Druckmasch Ag | Device for identifying functional units detects change in characteristics of functional unit from change in corresponding function data of function entry in function register of functional unit |
JP2001282603A (en) | 2000-03-29 | 2001-10-12 | Toshihiro Wakayama | Association management system for information contents |
US7284199B2 (en) | 2000-03-29 | 2007-10-16 | Microsoft Corporation | Process of localizing objects in markup language documents |
JP2004514192A (en) | 2000-04-03 | 2004-05-13 | スターク ジュールゲン | Method and system for performing content-controlled electronic message processing |
US7007232B1 (en) * | 2000-04-07 | 2006-02-28 | Neoplasia Press, Inc. | System and method for facilitating the pre-publication peer review process |
US7055095B1 (en) | 2000-04-14 | 2006-05-30 | Picsel Research Limited | Systems and methods for digital document processing |
US20040049737A1 (en) | 2000-04-26 | 2004-03-11 | Novarra, Inc. | System and method for displaying information content with selective horizontal scrolling |
US6615281B1 (en) | 2000-05-05 | 2003-09-02 | International Business Machines Corporation | Multi-node synchronization using global timing source and interrupts following anticipatory wait state |
US6917976B1 (en) | 2000-05-09 | 2005-07-12 | Sun Microsystems, Inc. | Message-based leasing of resources in a distributed computing environment |
US6781609B1 (en) * | 2000-05-09 | 2004-08-24 | International Business Machines Corporation | Technique for flexible inclusion of information items and various media types in a user interface |
GB0011426D0 (en) * | 2000-05-11 | 2000-06-28 | Charteris Limited | A method for transforming documents written in different XML-based languages |
US7864346B2 (en) | 2000-05-16 | 2011-01-04 | Xerox Corporation | Apparatus and method for describing, planning and automatically programming complex finishing tasks |
US7003723B1 (en) | 2000-05-17 | 2006-02-21 | Eastman Kodak Company | System and method for representing and managing pages in a production printing workflow |
FR2828307B1 (en) * | 2000-05-18 | 2004-10-22 | Il System | PROCESS FOR THE ESTABLISHMENT OF A DATABASE RELATING TO THE INFORMATION CONTAINED IN A DOCUMENT |
US6968332B1 (en) * | 2000-05-25 | 2005-11-22 | Microsoft Corporation | Facility for highlighting documents accessed through search or browsing |
US7747611B1 (en) * | 2000-05-25 | 2010-06-29 | Microsoft Corporation | Systems and methods for enhancing search query results |
US20020019827A1 (en) * | 2000-06-05 | 2002-02-14 | Shiman Leon G. | Method and apparatus for managing documents in a centralized document repository system |
US6999101B1 (en) | 2000-06-06 | 2006-02-14 | Microsoft Corporation | System and method for providing vector editing of bitmap images |
US6519557B1 (en) | 2000-06-06 | 2003-02-11 | International Business Machines Corporation | Software and method for recognizing similarity of documents written in different languages based on a quantitative measure of similarity |
US6941510B1 (en) | 2000-06-06 | 2005-09-06 | Groove Networks, Inc. | Method and apparatus for efficient management of XML documents |
US6771291B1 (en) * | 2000-06-07 | 2004-08-03 | The Perfect Web Corporation | Method for developing electronic documents employing multiple display regions |
US20010051962A1 (en) * | 2000-06-08 | 2001-12-13 | Robert Plotkin | Presentation customization |
GB2364141A (en) * | 2000-06-28 | 2002-01-16 | Peter David Hudson | System for producing a patent specification and application |
JP2002024211A (en) * | 2000-06-30 | 2002-01-25 | Hitachi Ltd | Method and system for document management and storage medium having processing program stored thereon |
GB0018042D0 (en) | 2000-07-21 | 2000-09-13 | Monsell Edm Ltd | Method of and software for recordal and validation of changes to markup language files |
US6826626B1 (en) | 2000-07-21 | 2004-11-30 | Clear Blue Technologies Management, Inc. | Method of and apparatus for rapid retrieval of data in a content distribution network |
US6681223B1 (en) * | 2000-07-27 | 2004-01-20 | International Business Machines Corporation | System and method of performing profile matching with a structured document |
WO2002010970A2 (en) * | 2000-07-28 | 2002-02-07 | Glaxo Group Limited | Document management and publication using reusable packages and components |
US20020049790A1 (en) * | 2000-08-08 | 2002-04-25 | Ricker Jeffrey M | Data interchange format transformation method and data dictionary used therefor |
US20020116416A1 (en) | 2000-08-11 | 2002-08-22 | Falko Tesch | Methods and systems for processing embedded objects |
AU2001287421A1 (en) * | 2000-08-21 | 2002-03-04 | Thoughtslinger Corporation | Simultaneous multi-user document editing system |
US6941511B1 (en) | 2000-08-31 | 2005-09-06 | International Business Machines Corporation | High-performance extensible document transformation |
US7209921B2 (en) | 2000-09-01 | 2007-04-24 | Op40, Inc. | Method and system for deploying an asset over a multi-tiered network |
US20030018694A1 (en) | 2000-09-01 | 2003-01-23 | Shuang Chen | System, method, uses, products, program products, and business methods for distributed internet and distributed network services over multi-tiered networks |
US20030154266A1 (en) | 2000-09-01 | 2003-08-14 | Mark Bobick | Server system and method for discovering digital assets in enterprise information systems |
JP2002091958A (en) * | 2000-09-12 | 2002-03-29 | Canon Inc | Information processor, information processing method and computer readable memory |
US7584413B2 (en) | 2000-09-12 | 2009-09-01 | Canon Kabuhsiki Kaisha | Electronic document binder builder |
US7386790B2 (en) * | 2000-09-12 | 2008-06-10 | Canon Kabushiki Kaisha | Image processing apparatus, server apparatus, image processing method and memory medium |
US7694218B2 (en) * | 2000-09-13 | 2010-04-06 | Canon Kabushiki Kaisha | Information processing apparatus, method therefor, and computer-readable memory |
AU2001294555A1 (en) | 2000-09-14 | 2002-03-26 | Bea Systems Inc. | Xml-based graphical user interface application development toolkit |
US6657647B1 (en) | 2000-09-25 | 2003-12-02 | Xoucin, Inc. | Controlling the order in which content is displayed in a browser |
JP3494292B2 (en) * | 2000-09-27 | 2004-02-09 | インターナショナル・ビジネス・マシーンズ・コーポレーション | Error correction support method for application data, computer device, application data providing system, and storage medium |
US7051276B1 (en) * | 2000-09-27 | 2006-05-23 | Microsoft Corporation | View templates for HTML source documents |
US7131060B1 (en) | 2000-09-29 | 2006-10-31 | Raytheon Company | System and method for automatic placement of labels for interactive graphics applications |
US20020065857A1 (en) * | 2000-10-04 | 2002-05-30 | Zbigniew Michalewicz | System and method for analysis and clustering of documents for search engine |
US7162538B1 (en) | 2000-10-04 | 2007-01-09 | Intel Corporation | Peer to peer software distribution system |
US7246348B1 (en) | 2000-10-13 | 2007-07-17 | International Business Machines Corp. | Method and apparatus for using print jobs for downloading and executing printer controller code |
JP3212983B1 (en) | 2000-10-31 | 2001-09-25 | 株式会社シイエム・シイ | Component description creation support method, component description creation support system, and computer-readable recording medium |
US7051330B1 (en) | 2000-11-21 | 2006-05-23 | Microsoft Corporation | Generic application server and method of operation therefor |
US20020090934A1 (en) | 2000-11-22 | 2002-07-11 | Mitchelmore Eliott R.D. | Content and application delivery and management platform system and method |
US7089490B1 (en) * | 2000-11-30 | 2006-08-08 | Google, Inc. | Identifying navigation bars and objectionable navigation bars |
US6925631B2 (en) | 2000-12-08 | 2005-08-02 | Hewlett-Packard Development Company, L.P. | Method, computer system and computer program product for processing extensible markup language streams |
US6968557B1 (en) | 2000-12-18 | 2005-11-22 | Stratum8 Corporation | Reducing stack memory resources in a threaded computer system |
FR2818409B1 (en) * | 2000-12-18 | 2003-03-14 | Expaway | METHOD FOR DIVIDING STRUCTURED DOCUMENTS INTO MULTIPLE PARTS |
WO2002052480A1 (en) | 2000-12-22 | 2002-07-04 | Trac Medical Solutions, Inc. | Dynamic electronic chain-of-trust document with audit trail |
US8411298B2 (en) | 2001-01-11 | 2013-04-02 | Sharp Laboratories Of America, Inc. | Methods and systems for printing device load-balancing |
US7120868B2 (en) | 2002-05-30 | 2006-10-10 | Microsoft Corp. | System and method for adaptive document layout via manifold content |
US6907457B2 (en) | 2001-01-25 | 2005-06-14 | Dell Inc. | Architecture for access to embedded files using a SAN intermediate device |
US7210096B2 (en) * | 2001-01-30 | 2007-04-24 | International Business Machines Corporation | Methods and apparatus for constructing semantic models for document authoring |
EP1229641B1 (en) * | 2001-02-01 | 2013-11-06 | Alcatel Lucent | Self oscillating power amplifier |
JP2004192017A (en) * | 2001-02-06 | 2004-07-08 | Dainippon Printing Co Ltd | Remote control system of home information appliances terminal using mobile communication terminal equipped with ic card, and mobile communication terminal and ic card used therefor |
US20020107886A1 (en) * | 2001-02-07 | 2002-08-08 | Gentner Donald R. | Method and apparatus for automatic document electronic versioning system |
US6978420B2 (en) * | 2001-02-12 | 2005-12-20 | Aplix Research, Inc. | Hierarchical document cross-reference system and method |
US7084998B2 (en) | 2001-02-13 | 2006-08-01 | Ariba, Inc. | Method and system for processing files using a printer driver |
US20020116421A1 (en) * | 2001-02-17 | 2002-08-22 | Fox Harold L. | Method and system for page-like display, formating and processing of computer generated information on networked computers |
US6925632B2 (en) | 2001-03-08 | 2005-08-02 | Martin Shiu | System for configuration programming |
US7302634B2 (en) | 2001-03-14 | 2007-11-27 | Microsoft Corporation | Schema-based services for identity-based data access |
US20020143523A1 (en) | 2001-03-30 | 2002-10-03 | Lakshmi Balaji | System and method for providing a file in multiple languages |
CA2343494A1 (en) | 2001-04-03 | 2002-10-03 | Ibm Canada Limited - Ibm Canada Limitee | Method and device for semantic reconciling of complex data models |
US7500017B2 (en) | 2001-04-19 | 2009-03-03 | Microsoft Corporation | Method and system for providing an XML binary format |
US7216290B2 (en) | 2001-04-25 | 2007-05-08 | Amplify, Llc | System, method and apparatus for selecting, displaying, managing, tracking and transferring access to content of web pages and other sources |
US20020169738A1 (en) * | 2001-05-10 | 2002-11-14 | Giel Peter Van | Method and system for auditing an enterprise configuration |
US7512879B2 (en) * | 2001-05-11 | 2009-03-31 | Microsoft Corporation | Intelligent virtual paging paradigm |
US20040015890A1 (en) | 2001-05-11 | 2004-01-22 | Windriver Systems, Inc. | System and method for adapting files for backward compatibility |
US7302440B2 (en) * | 2001-07-27 | 2007-11-27 | Metatomix, Inc. | Methods and apparatus for statistical data analysis and reduction for an enterprise application |
US7325193B2 (en) * | 2001-06-01 | 2008-01-29 | International Business Machines Corporation | Automated management of internet and/or web site content |
RU2202825C2 (en) | 2001-06-04 | 2003-04-20 | Арсен Ревазов | Method for visualizing object of advertising-andinformational character |
US20020184350A1 (en) | 2001-06-05 | 2002-12-05 | Ko-Meng Chen | Method for updating firmware by e-mail |
US20020188638A1 (en) * | 2001-06-08 | 2002-12-12 | Walter Hamscher | Document negotiation |
EP1410258A4 (en) * | 2001-06-22 | 2007-07-11 | Inc Nervana | System and method for knowledge retrieval, management, delivery and presentation |
US8001465B2 (en) | 2001-06-26 | 2011-08-16 | Kudrollis Software Inventions Pvt. Ltd. | Compacting an information array display to cope with two dimensional display space constraint |
US6968504B2 (en) * | 2001-06-29 | 2005-11-22 | Microsoft Corporation | Automated document formatting tool |
US7017162B2 (en) | 2001-07-10 | 2006-03-21 | Microsoft Corporation | Application program interface for network software platform |
WO2003007115A2 (en) * | 2001-07-10 | 2003-01-23 | Cyneta Networks, Inc. | System, method, and apparatus for measuring application performance management |
AU2002345270B2 (en) | 2001-07-11 | 2007-11-29 | Ecole Polytechnique Federale De Lausanne | Images incorporating microstructures |
US20030020948A1 (en) | 2001-07-27 | 2003-01-30 | Jarvis Daniel Cook | Dynamically loaded applications in a printer |
US7133862B2 (en) * | 2001-08-13 | 2006-11-07 | Xerox Corporation | System with user directed enrichment and import/export control |
US7240120B2 (en) | 2001-08-13 | 2007-07-03 | Texas Instruments Incorporated | Universal decoder for use in a network media player |
US6732090B2 (en) * | 2001-08-13 | 2004-05-04 | Xerox Corporation | Meta-document management system with user definable personalities |
EP1421501B1 (en) | 2001-08-24 | 2006-08-02 | Intel Corporation | A general intput/output architecture, protocol and related methods to implement flow control |
US9460414B2 (en) * | 2001-08-28 | 2016-10-04 | Eugene M. Lee | Computer assisted and/or implemented process and system for annotating and/or linking documents and data, optionally in an intellectual property management system |
CA2357087C (en) * | 2001-09-06 | 2009-07-21 | Cognos Incorporated | Deployment manager for organizing and deploying an application in a distributed computing environment |
US20040205539A1 (en) | 2001-09-07 | 2004-10-14 | Mak Mingchi Stephen | Method and apparatus for iterative merging of documents |
US6959437B2 (en) | 2001-09-07 | 2005-10-25 | Sharp Laboratories Of America, Inc. | System and method for installing printer driver software |
US20070179957A1 (en) * | 2001-09-19 | 2007-08-02 | Gibson Jerry T | System and Method for Disseminating Drug Information |
GB2380016A (en) * | 2001-09-21 | 2003-03-26 | Hewlett Packard Co | Generating a contract |
US7054841B1 (en) * | 2001-09-27 | 2006-05-30 | I2 Technologies Us, Inc. | Document storage and classification |
EP1442387A4 (en) | 2001-09-28 | 2008-01-23 | Commvault Systems Inc | System and method for archiving objects in an information store |
US20030065946A1 (en) * | 2001-10-01 | 2003-04-03 | Holliday John F. | Paragraph management software system |
WO2003032151A2 (en) * | 2001-10-04 | 2003-04-17 | Koninklijke Philips Electronics N.V. | Method of styling a user interface and device with adaptive user interface |
US7590554B2 (en) | 2001-10-11 | 2009-09-15 | Hewlett-Packard Development Company, L.P. | System and method for forecasting uncertain events with adjustments for participants characteristics |
JP3480844B2 (en) | 2001-10-26 | 2003-12-22 | 株式会社リコー | Document management apparatus, document management control method, and document management control program |
GB2381424B (en) | 2001-10-26 | 2005-01-05 | Roke Manor Research | A method of controlling the amount of data transferred between a terminal and a server |
US20030090705A1 (en) | 2001-11-13 | 2003-05-15 | Ferlitsch Andrew R. | Providing print job accounting in a computer system configuration |
US7328261B2 (en) | 2001-11-21 | 2008-02-05 | Clearcube Technology, Inc. | Distributed resource manager |
JP2003223440A (en) * | 2001-11-21 | 2003-08-08 | Ricoh Co Ltd | Document processing apparatus |
US6910843B2 (en) * | 2001-11-26 | 2005-06-28 | Hewlett-Packard Development Company, L.P. | Cover authoring systems and methods and bookbinding systems incorporating the same |
US6785654B2 (en) | 2001-11-30 | 2004-08-31 | Dictaphone Corporation | Distributed speech recognition system with speech recognition engines offering multiple functionalities |
US8274719B2 (en) | 2001-11-30 | 2012-09-25 | Canon Kabushiki Kaisha | Printing system, print preview method, and preview method using a printer driver |
KR100426307B1 (en) | 2001-12-12 | 2004-04-08 | 한국전자통신연구원 | Apparatus and method accessing data by using single object access protocol-extended markup language |
US7496841B2 (en) * | 2001-12-17 | 2009-02-24 | Workshare Technology, Ltd. | Method and system for document collaboration |
WO2003056449A2 (en) * | 2001-12-21 | 2003-07-10 | Xmlcities, Inc. | Extensible stylesheet designs using meta-tag and/or associated meta-tag information |
US6912555B2 (en) * | 2002-01-18 | 2005-06-28 | Hewlett-Packard Development Company, L.P. | Method for content mining of semi-structured documents |
US7155670B2 (en) * | 2002-01-18 | 2006-12-26 | Internet Disclosure Co., Ltd. | Document authoring system and authoring management program |
JP4291999B2 (en) * | 2002-01-18 | 2009-07-08 | 株式会社インターネットディスクロージャー | Document creation system and creation management program |
US7307745B2 (en) * | 2002-01-21 | 2007-12-11 | Canon Kabushiki Kaisha | Web-based print server and client |
US20030142128A1 (en) | 2002-01-30 | 2003-07-31 | Benefitnation | User interface for a document component management and publishing system |
US20040205656A1 (en) | 2002-01-30 | 2004-10-14 | Benefitnation | Document rules data structure and method of document publication therefrom |
US7239412B2 (en) | 2002-01-31 | 2007-07-03 | Sharp Laboratories Of America, Inc. | True print preview method and apparatus |
US6836808B2 (en) | 2002-02-25 | 2004-12-28 | International Business Machines Corporation | Pipelined packet processing |
US7451236B2 (en) | 2002-02-26 | 2008-11-11 | Ricoh Company, Ltd. | Document distribution and storage system |
US7200668B2 (en) * | 2002-03-05 | 2007-04-03 | Sun Microsystems, Inc. | Document conversion with merging |
US7478170B2 (en) * | 2002-03-05 | 2009-01-13 | Sun Microsystems, Inc. | Generic infrastructure for converting documents between formats with merge capabilities |
US7689899B2 (en) | 2002-03-06 | 2010-03-30 | Ge Corporate Financial Services, Inc. | Methods and systems for generating documents |
US7992088B2 (en) | 2002-03-12 | 2011-08-02 | International Business Machines Corporation | Method and system for copy and paste technology for stylesheet editing |
US6765584B1 (en) | 2002-03-14 | 2004-07-20 | Nvidia Corporation | System and method for creating a vector map in a hardware graphics pipeline |
JP2003281197A (en) | 2002-03-25 | 2003-10-03 | Honda Motor Co Ltd | Electronic part list system |
JP2003281198A (en) | 2002-03-25 | 2003-10-03 | Honda Motor Co Ltd | Electronic part list system and creation method for electronic part list |
US7669116B2 (en) | 2002-03-26 | 2010-02-23 | Accenture Global Services, Gmbh | Single access point for filing of converted electronic forms to multiple processing entities |
JP3824153B2 (en) | 2002-03-26 | 2006-09-20 | 本田技研工業株式会社 | Electronic parts list system |
JP3824152B2 (en) | 2002-03-26 | 2006-09-20 | 本田技研工業株式会社 | Comprehensive inspection system and comprehensive inspection method |
JP2003288237A (en) | 2002-03-27 | 2003-10-10 | Hitachi Ltd | Device and method for measuring execution time in controller |
JP2003288334A (en) | 2002-03-28 | 2003-10-10 | Toshiba Corp | Document processor and document processing method |
US20030195784A1 (en) | 2002-04-11 | 2003-10-16 | United Parcel Service Of America, Inc. | Intelligent authorized return systems and methods |
US7769639B2 (en) | 2002-04-15 | 2010-08-03 | Arnaud Delenda | Method and system for real-time allocation of a resource among several entities |
US20030196176A1 (en) | 2002-04-16 | 2003-10-16 | Abu-Ghazalah Maad H. | Method for composing documents |
US7370032B2 (en) | 2002-04-30 | 2008-05-06 | Sap Ag | Data gathering |
US20040030987A1 (en) * | 2002-04-30 | 2004-02-12 | Manelli Donald D. | Method for generating customized patient education documents |
US20030222890A1 (en) | 2002-05-31 | 2003-12-04 | David Salesin | System and method for adaptable presentations |
US7212297B2 (en) | 2002-06-05 | 2007-05-01 | Transdimension Inc. | Universal printing system |
US7281245B2 (en) | 2002-06-05 | 2007-10-09 | Microsoft Corporation | Mechanism for downloading software components from a remote source for use by a local software application |
US20050177784A1 (en) * | 2002-06-19 | 2005-08-11 | Andrews Richard L. | Creating an html document from a source document |
US7669120B2 (en) * | 2002-06-21 | 2010-02-23 | Microsoft Corporation | Method and system for encoding a mark-up language document |
US7149966B2 (en) | 2002-06-24 | 2006-12-12 | Microsoft Corporation | Word processor for freestyle editing of well-formed XML documents |
US7716676B2 (en) | 2002-06-25 | 2010-05-11 | Microsoft Corporation | System and method for issuing a message to a program |
US7392479B2 (en) | 2002-06-27 | 2008-06-24 | Microsoft Corporation | System and method for providing namespace related information |
US7458018B2 (en) | 2002-06-27 | 2008-11-25 | Microsoft Corporation | System and method for obtaining and using namespace related information for opening XML documents |
US7523394B2 (en) | 2002-06-28 | 2009-04-21 | Microsoft Corporation | Word-processing document stored in a single XML file that may be manipulated by applications that understand XML |
US6839910B2 (en) | 2002-07-05 | 2005-01-11 | David Morrow | Protective athletic equipment |
US20040015782A1 (en) * | 2002-07-17 | 2004-01-22 | Day Young Francis | Templating method for automated generation of print product catalogs |
US20040021905A1 (en) | 2002-08-01 | 2004-02-05 | Holmstead Stanley Bruce | System and method for managing printable assets |
US20040031029A1 (en) | 2002-08-06 | 2004-02-12 | Kyu-Woong Lee | Methods and systems for automatically updating software components in a network |
US7605930B2 (en) | 2002-08-09 | 2009-10-20 | Brother Kogyo Kabushiki Kaisha | Image processing device |
JP2004070868A (en) | 2002-08-09 | 2004-03-04 | Seiko Epson Corp | Image data sending device and image data sending/receiving system |
AU2003259744A1 (en) * | 2002-08-09 | 2004-02-25 | Corticon Technologies, Inc. | Rule engine |
US7171471B1 (en) | 2002-08-15 | 2007-01-30 | Cisco Technology, Inc. | Methods and apparatus for directing a resource request |
US20060155529A1 (en) * | 2002-08-16 | 2006-07-13 | Teamware Group Oy | System and method for a context-independent framework for management and execution of xml processing tasks |
DE60218304D1 (en) * | 2002-08-29 | 2007-04-05 | Hewlett Packard Co | Method and device for data distribution in a network |
US6865354B2 (en) | 2002-08-30 | 2005-03-08 | Eastman Kodak Company | Method for using a user interface to resolve mismatches between printer resources and print job requirements |
FR2844370B1 (en) * | 2002-09-05 | 2008-05-09 | Canon Kk | ELECTRONIC DOCUMENT FOR DESCRIPTION OF A COMPUTER SERVICE |
US7418661B2 (en) * | 2002-09-17 | 2008-08-26 | Hewlett-Packard Development Company, L.P. | Published web page version tracking |
EP1403778A1 (en) * | 2002-09-27 | 2004-03-31 | Sony International (Europe) GmbH | Adaptive multimedia integration language (AMIL) for adaptive multimedia applications and presentations |
US20040061729A1 (en) | 2002-09-30 | 2004-04-01 | Brett Green | System and method for a dynamically modifiable driver interface |
US20040066527A1 (en) * | 2002-10-02 | 2004-04-08 | Nexpress Solutions Llc | Finish verification in printing |
US7249067B2 (en) * | 2002-10-04 | 2007-07-24 | Vpi Color, Llc | System and method for creating customized catalogues |
US6925599B2 (en) * | 2002-10-04 | 2005-08-02 | Clinisys, Inc. | Methodology for performing validated clinical studies of pharmeceutical related products |
US7327482B2 (en) | 2002-10-15 | 2008-02-05 | Sharp Laboratories Of America, Inc. | Integrated printer monitoring |
JP2004139484A (en) * | 2002-10-21 | 2004-05-13 | Hitachi Ltd | Form processing device, program for implementing it, and program for creating form format |
WO2004038546A2 (en) | 2002-10-21 | 2004-05-06 | Bitfone Corporation | System with required enhancements to syncml dm environment to support firmware updates |
US6857647B2 (en) * | 2002-10-29 | 2005-02-22 | International Truck Intellectual Property Company, Llc | Vehicle suspension system |
US20040083430A1 (en) | 2002-10-29 | 2004-04-29 | Boonen Paul J. J. | Method and apparatus to process portable document format data containing transparency |
US7319542B2 (en) | 2002-10-29 | 2008-01-15 | Hewlett-Packard Development Company, L.P. | Document rehabilitation |
US20040085551A1 (en) | 2002-10-31 | 2004-05-06 | David Serisky | Methods and systems for estimating print imaging material usage |
KR100636909B1 (en) * | 2002-11-14 | 2006-10-19 | 엘지전자 주식회사 | Electronic document versioning method and updated information supply method using version number based on XML |
US20040103073A1 (en) * | 2002-11-21 | 2004-05-27 | Blake M. Brian | System for and method of using component-based development and web tools to support a distributed data management system |
US7136941B2 (en) | 2002-12-04 | 2006-11-14 | Microsoft Corporation | Print management architecture for computing devices having a set of filters functions wherein the functions are prevented from conflicting with one another |
US7441116B2 (en) * | 2002-12-30 | 2008-10-21 | International Business Machines Corporation | Secure resource distribution through encrypted pointers |
US7319533B2 (en) | 2003-01-06 | 2008-01-15 | Sharp Laboratories Of America, Inc. | System for face-up printing from a duplex printer |
EP1452956A3 (en) | 2003-02-12 | 2010-03-17 | Canon Kabushiki Kaisha | print control system |
US20040172584A1 (en) | 2003-02-28 | 2004-09-02 | Microsoft Corporation | Method and system for enhancing paste functionality of a computer software application |
US7017112B2 (en) | 2003-02-28 | 2006-03-21 | Microsoft Corporation | Importing and exporting markup language data in a spreadsheet application document |
US20040181753A1 (en) | 2003-03-10 | 2004-09-16 | Michaelides Phyllis J. | Generic software adapter |
US7461337B2 (en) * | 2003-03-12 | 2008-12-02 | International Business Machines Corporation | Exception markup documents |
JP2004280488A (en) * | 2003-03-17 | 2004-10-07 | Hitachi Ltd | Documents management method, and documents management device |
US7493614B2 (en) | 2003-03-31 | 2009-02-17 | Microsoft Corporation | System architecture and related methods for dynamically adding software components to extend functionality of system processes |
US8014013B2 (en) | 2004-06-24 | 2011-09-06 | Sharp Laboratories Of America, Inc. | Systems and methods for segmenting pages and changing settings for graphical elements in printing |
US8290958B2 (en) | 2003-05-30 | 2012-10-16 | Dictaphone Corporation | Method, system, and apparatus for data reuse |
US20040221233A1 (en) | 2003-04-29 | 2004-11-04 | David Thielen | Systems and methods for report design and generation |
US7496853B2 (en) | 2003-05-08 | 2009-02-24 | International Business Machines Corporation | Method of managing items on a clipboard |
US20040225960A1 (en) | 2003-05-09 | 2004-11-11 | Microsoft Corporation | System for hosting graphical layout/presentation objects |
US20040230896A1 (en) * | 2003-05-16 | 2004-11-18 | Dethe Elza | Method and system for enabling collaborative authoring of hierarchical documents with unique node identifications |
US7213035B2 (en) | 2003-05-17 | 2007-05-01 | Microsoft Corporation | System and method for providing multiple renditions of document content |
BR0307046A (en) | 2003-05-17 | 2005-03-08 | Microsoft Corp | System and method for providing multiple interpretations of document content |
US7168035B1 (en) | 2003-06-11 | 2007-01-23 | Microsoft Corporation | Building a view on markup language data through a set of components |
US7409673B2 (en) * | 2003-06-24 | 2008-08-05 | Academia Sinica | XML document editor |
US20040267553A1 (en) | 2003-06-25 | 2004-12-30 | Brunton Greg M. | Evaluating storage options |
US20050015767A1 (en) | 2003-07-01 | 2005-01-20 | Brian Nash | Operating system configuration tool |
US7299410B2 (en) * | 2003-07-01 | 2007-11-20 | Microsoft Corporation | System and method for reporting hierarchically arranged data in markup language formats |
US7484213B2 (en) * | 2003-07-11 | 2009-01-27 | Boban Mathew | Agent architecture employed within an integrated message, document and communication system |
US20050022113A1 (en) * | 2003-07-24 | 2005-01-27 | Hanlon Robert Eliot | System and method to efficiently switch between paper, electronic and audio versions of documents |
US7171618B2 (en) * | 2003-07-30 | 2007-01-30 | Xerox Corporation | Multi-versioned documents and method for creation and use thereof |
US7426525B2 (en) | 2003-08-08 | 2008-09-16 | Hewlett-Packard Development Company, L.P. | Method and apparatus for identifying an object using an object description language |
US20050066335A1 (en) * | 2003-09-23 | 2005-03-24 | Robert Aarts | System and method for exposing local clipboard functionality towards external applications |
US20050063010A1 (en) * | 2003-09-24 | 2005-03-24 | Hewlett-Packard Development Company, L.P. | Multiple flow rendering using dynamic content |
WO2005031570A1 (en) * | 2003-09-26 | 2005-04-07 | Bitfone Corporation | Update package catalog for update package transfer between generator and content server in a network |
US20050068558A1 (en) | 2003-09-30 | 2005-03-31 | Jianxin Wang | Method and system to automatically update in real-time a printer driver configuration |
US7525684B2 (en) | 2003-10-14 | 2009-04-28 | Hewlett-Packard Development Company, L.P. | Color calibration |
US7882488B2 (en) | 2003-10-20 | 2011-02-01 | Robert Zeidman | Software tool for synthesizing a real-time operating system |
US7721254B2 (en) * | 2003-10-24 | 2010-05-18 | Microsoft Corporation | Programming interface for a computer platform |
US8065616B2 (en) * | 2003-10-27 | 2011-11-22 | Nokia Corporation | Multimedia presentation editor for a small-display communication terminal or computing device |
CN100481005C (en) | 2003-10-27 | 2009-04-22 | 美国能量变换公司 | System and method for updating a software program |
US8627489B2 (en) | 2003-10-31 | 2014-01-07 | Adobe Systems Incorporated | Distributed document version control |
US8074184B2 (en) * | 2003-11-07 | 2011-12-06 | Mocrosoft Corporation | Modifying electronic documents with recognized content or other associated data |
JP4194476B2 (en) * | 2003-11-13 | 2008-12-10 | キヤノン株式会社 | Document processing apparatus and document processing method |
US7650512B2 (en) * | 2003-11-18 | 2010-01-19 | Oracle International Corporation | Method of and system for searching unstructured data stored in a database |
US7543286B2 (en) * | 2003-11-18 | 2009-06-02 | Microsoft Corporation | Method and system for mapping tags to classes using namespaces |
US7383289B2 (en) * | 2003-12-02 | 2008-06-03 | Sap Aktiengesellschaft | Updating and maintaining data in a multi-system network using asynchronous message transfer |
US7434160B2 (en) * | 2003-12-03 | 2008-10-07 | Hewlett-Packard Development Company, L.P. | PDF document to PPML template translation |
US7617447B1 (en) | 2003-12-09 | 2009-11-10 | Microsoft Corporation | Context free document portions |
US7464330B2 (en) | 2003-12-09 | 2008-12-09 | Microsoft Corporation | Context-free document portions with alternate formats |
US7434157B2 (en) * | 2003-12-09 | 2008-10-07 | Microsoft Corporation | Programmable object model for namespace or schema library support in a software application |
US7290222B2 (en) | 2003-12-15 | 2007-10-30 | International Business Machines Corporation | Methods, systems and computer program products for providing tree diagram graphical user interfaces having secondary expansion capabilities |
US20050138540A1 (en) | 2003-12-22 | 2005-06-23 | Xerox Corporation | Systems and methods for user-specific document change highlighting |
GB2409541A (en) | 2003-12-23 | 2005-06-29 | Mandorla Technology Ltd | Editable information management system and method |
US20050144556A1 (en) * | 2003-12-31 | 2005-06-30 | Petersen Peter H. | XML schema token extension for XML document compression |
US7647281B2 (en) | 2004-02-19 | 2010-01-12 | Microsoft Corporation | Systems and methods for modeling approximate market equilibria |
US7242415B1 (en) | 2004-02-25 | 2007-07-10 | Adobe Systems Incorporated | Processing illustrations using stored information |
US7161598B2 (en) | 2004-02-26 | 2007-01-09 | Research In Motion Limited | Method of rendering text on an output device |
US20050198561A1 (en) * | 2004-03-03 | 2005-09-08 | Bottomline Technologies (De) Inc. | System and method for dynamically linking data within a portable document file with related data content stored in a database |
US20050204016A1 (en) * | 2004-03-03 | 2005-09-15 | Bottomline Technologies (De) Inc. | Thin client system and method for dynamically retrieving data and data processing systems related to data content within a portable document file |
US20050198069A1 (en) | 2004-03-05 | 2005-09-08 | Cherry Darrel D. | Meta-data association |
US7992145B2 (en) | 2004-03-05 | 2011-08-02 | Microsoft Corporation | Multilevel ticket-based job management architecture for computing devices |
US7296038B2 (en) | 2004-04-01 | 2007-11-13 | Sap Aktiengesellschaft | Context resolution |
US20050223373A1 (en) | 2004-04-05 | 2005-10-06 | Dell Products L.P. | Method for updating the firmware of a device |
US7739679B2 (en) | 2004-04-06 | 2010-06-15 | Hewlett-Packard Development Company, L.P. | Object ordering tool for facilitating generation of firmware update friendly binary image |
US7512878B2 (en) | 2004-04-30 | 2009-03-31 | Microsoft Corporation | Modular document format |
US7418652B2 (en) | 2004-04-30 | 2008-08-26 | Microsoft Corporation | Method and apparatus for interleaving parts of a document |
US7487448B2 (en) | 2004-04-30 | 2009-02-03 | Microsoft Corporation | Document mark up methods and systems |
US7359902B2 (en) * | 2004-04-30 | 2008-04-15 | Microsoft Corporation | Method and apparatus for maintaining relationships between parts in a package |
US8661332B2 (en) | 2004-04-30 | 2014-02-25 | Microsoft Corporation | Method and apparatus for document processing |
US7549118B2 (en) | 2004-04-30 | 2009-06-16 | Microsoft Corporation | Methods and systems for defining documents with selectable and/or sequenceable parts |
US7607141B2 (en) * | 2004-05-03 | 2009-10-20 | Microsoft Corporation | Systems and methods for support of various processing capabilities |
US8363232B2 (en) * | 2004-05-03 | 2013-01-29 | Microsoft Corporation | Strategies for simultaneous peripheral operations on-line using hierarchically structured job information |
US7755786B2 (en) * | 2004-05-03 | 2010-07-13 | Microsoft Corporation | Systems and methods for support of various processing capabilities |
US8243317B2 (en) * | 2004-05-03 | 2012-08-14 | Microsoft Corporation | Hierarchical arrangement for spooling job data |
US7580948B2 (en) | 2004-05-03 | 2009-08-25 | Microsoft Corporation | Spooling strategies using structured job information |
US7802182B2 (en) * | 2004-05-21 | 2010-09-21 | Bea Systems Inc. | System and method for performing visual property updates |
US7769904B2 (en) | 2004-06-09 | 2010-08-03 | L-3 Communications Integrated Systems L.P. | Extensible binary mark-up language for efficient XML-based data communications and related systems and methods |
US7475341B2 (en) | 2004-06-15 | 2009-01-06 | At&T Intellectual Property I, L.P. | Converting the format of a portion of an electronic document |
US7290205B2 (en) | 2004-06-23 | 2007-10-30 | Sas Institute Inc. | System and method for management of document cross-reference links |
US7788662B2 (en) * | 2004-07-28 | 2010-08-31 | Microsoft Corporation | Automatic upgrade of pluggable components |
EP1782180A4 (en) * | 2004-08-02 | 2007-10-31 | Justsystems Corp | Document processing and management approach for creating a tag or an attribute in a markup language document, and method thereof |
US20060025091A1 (en) * | 2004-08-02 | 2006-02-02 | Matsushita Electric Industrial Co., Ltd | Method for creating and using phrase history for accelerating instant messaging input on mobile devices |
US20060031760A1 (en) * | 2004-08-05 | 2006-02-09 | Microsoft Corporation | Adaptive document layout server/client system and process |
JP4144883B2 (en) * | 2004-08-06 | 2008-09-03 | キヤノン株式会社 | Information processing apparatus, control method therefor, and program |
US9286275B2 (en) * | 2004-08-23 | 2016-03-15 | Oracle America, Inc. | System and method for automatically generating XML schema for validating XML input documents |
US7712027B2 (en) * | 2004-08-31 | 2010-05-04 | Research In Motion Limited | Method for document page delivery to a mobile communication device |
US7636891B2 (en) * | 2004-08-31 | 2009-12-22 | Research In Motion Limited | Method for paginating a document structure of a document for viewing on a mobile communication device |
US7617450B2 (en) * | 2004-09-30 | 2009-11-10 | Microsoft Corporation | Method, system, and computer-readable medium for creating, inserting, and reusing document parts in an electronic document |
US20060080316A1 (en) * | 2004-10-08 | 2006-04-13 | Meridio Ltd | Multiple indexing of an electronic document to selectively permit access to the content and metadata thereof |
US20060117268A1 (en) | 2004-11-30 | 2006-06-01 | Micheal Talley | System and method for graphical element selection for region of interest compression |
US7277890B2 (en) * | 2004-12-01 | 2007-10-02 | Research In Motion Limited | Method of finding a search string in a document for viewing on a mobile communication device |
US8108773B2 (en) * | 2004-12-17 | 2012-01-31 | Xerox Corporation | Method and apparatus for generating instances of documents |
US7614000B2 (en) * | 2004-12-20 | 2009-11-03 | Microsoft Corporation | File formats, methods, and computer program products for representing presentations |
US20060136816A1 (en) * | 2004-12-20 | 2006-06-22 | Microsoft Corporation | File formats, methods, and computer program products for representing documents |
US7620889B2 (en) * | 2004-12-20 | 2009-11-17 | Microsoft Corporation | Method and system for linking data ranges of a computer-generated document with associated extensible markup language elements |
US7617229B2 (en) * | 2004-12-20 | 2009-11-10 | Microsoft Corporation | Management and use of data in a computer-generated document |
US7617451B2 (en) | 2004-12-20 | 2009-11-10 | Microsoft Corporation | Structuring data for word processing documents |
US7617444B2 (en) * | 2004-12-20 | 2009-11-10 | Microsoft Corporation | File formats, methods, and computer program products for representing workbooks |
US7752632B2 (en) * | 2004-12-21 | 2010-07-06 | Microsoft Corporation | Method and system for exposing nested data in a computer-generated document in a transparent manner |
US7770180B2 (en) | 2004-12-21 | 2010-08-03 | Microsoft Corporation | Exposing embedded data in a computer-generated document |
US20060146353A1 (en) | 2004-12-30 | 2006-07-06 | Microsoft Corporation | Strategies for rendering job information using a multi-personality driver device |
US7412649B2 (en) | 2005-01-24 | 2008-08-12 | International Business Machines Corporation | Viewing and editing markup language files with complex semantics |
US7412647B2 (en) * | 2005-03-04 | 2008-08-12 | Microsoft Corporation | Method and system for laying out paginated content for viewing |
US7154503B2 (en) * | 2005-03-31 | 2006-12-26 | Microsoft Corporation | Methods and systems for brush composition |
US20060259854A1 (en) | 2005-05-10 | 2006-11-16 | Microsoft Corporation | Structuring an electronic document for efficient identification and use of document parts |
US20070022128A1 (en) * | 2005-06-03 | 2007-01-25 | Microsoft Corporation | Structuring data for spreadsheet documents |
US20060277452A1 (en) | 2005-06-03 | 2006-12-07 | Microsoft Corporation | Structuring data for presentation documents |
US7512265B1 (en) | 2005-07-11 | 2009-03-31 | Adobe Systems Incorporated | Merge and removal in a planar map of a raster image |
GB2430060A (en) * | 2005-09-08 | 2007-03-14 | Hewlett Packard Development Co | Flows for variable data printing |
US7725530B2 (en) * | 2005-12-12 | 2010-05-25 | Google Inc. | Proxy server collection of data for module incorporation into a container document |
US7676741B2 (en) * | 2006-01-31 | 2010-03-09 | Microsoft Corporation | Structural context for fixed layout markup documents |
US7271935B2 (en) | 2006-02-10 | 2007-09-18 | Eastman Kodak Company | Self-calibrating printer and printer calibration method |
US7487464B2 (en) | 2006-02-16 | 2009-02-03 | International Business Machines Corporation | Enhanced visualization and selection of multi-layered elements in a containment hierarchy |
-
2004
- 2004-04-30 US US10/837,040 patent/US7383500B2/en not_active Expired - Fee Related
- 2004-07-22 EP EP04757184A patent/EP1631913A4/en not_active Withdrawn
- 2004-07-22 KR KR1020057008114A patent/KR101109338B1/en active IP Right Grant
- 2004-07-22 WO PCT/US2004/023489 patent/WO2005111829A1/en not_active Application Discontinuation
- 2004-07-22 CN CN2004800013311A patent/CN1781089B/en not_active Expired - Fee Related
- 2004-07-22 JP JP2007510684A patent/JP2007535750A/en active Pending
- 2004-07-22 KR KR1020117008229A patent/KR101137082B1/en active IP Right Grant
-
2005
- 2005-09-07 US US11/222,442 patent/US7366982B2/en not_active Expired - Fee Related
- 2005-09-07 US US11/222,344 patent/US7383502B2/en not_active Expired - Fee Related
-
2008
- 2008-03-21 US US12/053,392 patent/US8122350B2/en not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6480206B2 (en) * | 1998-02-24 | 2002-11-12 | Sun Microsystems, Inc. | Method and apparatus for an extensible editor |
US6763343B1 (en) * | 1999-09-20 | 2004-07-13 | David M. Brooke | Preventing duplication of the data in reference resource for XML page generation |
US6418448B1 (en) * | 1999-12-06 | 2002-07-09 | Shyam Sundar Sarkar | Method and apparatus for processing markup language specifications for data and metadata used inside multiple related internet documents to navigate, query and manipulate information from a plurality of object relational databases over the web |
US6789229B1 (en) * | 2000-04-19 | 2004-09-07 | Microsoft Corporation | Document pagination based on hard breaks and active formatting tags |
Non-Patent Citations (1)
Title |
---|
See also references of EP1631913A4 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8246453B2 (en) | 2005-04-28 | 2012-08-21 | Wms Gaming Inc. | Wagering game device having ubiquitous character set |
Also Published As
Publication number | Publication date |
---|---|
CN1781089B (en) | 2012-01-18 |
US20050251740A1 (en) | 2005-11-10 |
US7383502B2 (en) | 2008-06-03 |
US8122350B2 (en) | 2012-02-21 |
KR101109338B1 (en) | 2012-04-13 |
KR20110057224A (en) | 2011-05-31 |
US20060031758A1 (en) | 2006-02-09 |
EP1631913A4 (en) | 2006-12-13 |
EP1631913A1 (en) | 2006-03-08 |
CN1781089A (en) | 2006-05-31 |
KR20070011057A (en) | 2007-01-24 |
US7366982B2 (en) | 2008-04-29 |
US20080168342A1 (en) | 2008-07-10 |
JP2007535750A (en) | 2007-12-06 |
US7383500B2 (en) | 2008-06-03 |
US20060010371A1 (en) | 2006-01-12 |
KR101137082B1 (en) | 2012-04-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7383500B2 (en) | Methods and systems for building packages that contain pre-paginated documents | |
CA2560106C (en) | Document mark up methods and systems | |
US8661332B2 (en) | Method and apparatus for document processing | |
US7418652B2 (en) | Method and apparatus for interleaving parts of a document | |
US7359902B2 (en) | Method and apparatus for maintaining relationships between parts in a package | |
US7512878B2 (en) | Modular document format | |
US7549118B2 (en) | Methods and systems for defining documents with selectable and/or sequenceable parts |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WWE | Wipo information: entry into national phase |
Ref document number: 1850/DELNP/2005 Country of ref document: IN |
|
WWE | Wipo information: entry into national phase |
Ref document number: 1020057008114 Country of ref document: KR |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2007510684 Country of ref document: JP |
|
WWE | Wipo information: entry into national phase |
Ref document number: 20048013311 Country of ref document: CN |
|
REEP | Request for entry into the european phase |
Ref document number: 2004757184 Country of ref document: EP |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2004757184 Country of ref document: EP |
|
AK | Designated states |
Kind code of ref document: A1 Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NA NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW |
|
AL | Designated countries for regional patents |
Kind code of ref document: A1 Designated state(s): BW GH GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LU MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
WWP | Wipo information: published in national office |
Ref document number: 2004757184 Country of ref document: EP |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
WWW | Wipo information: withdrawn in national office |
Ref document number: DE |
|
WWP | Wipo information: published in national office |
Ref document number: 1020057008114 Country of ref document: KR |