US20030105778A1 - File generation apparatus and method - Google Patents
File generation apparatus and method Download PDFInfo
- Publication number
- US20030105778A1 US20030105778A1 US09/999,280 US99928001A US2003105778A1 US 20030105778 A1 US20030105778 A1 US 20030105778A1 US 99928001 A US99928001 A US 99928001A US 2003105778 A1 US2003105778 A1 US 2003105778A1
- Authority
- US
- United States
- Prior art keywords
- file
- template
- generating
- data
- service
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/2803—Home automation networks
- H04L12/2807—Exchanging configuration information on appliance services in a home automation network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/2803—Home automation networks
- H04L12/2805—Home Audio Video Interoperability [HAVI] networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/2803—Home automation networks
- H04L12/2807—Exchanging configuration information on appliance services in a home automation network
- H04L12/2809—Exchanging configuration information on appliance services in a home automation network indicating that an appliance service is present in a home automation network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/2803—Home automation networks
- H04L12/2807—Exchanging configuration information on appliance services in a home automation network
- H04L12/2814—Exchanging control software or macros for controlling appliance services in a home automation network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/51—Discovery or management thereof, e.g. service location protocol [SLP] or web services
Definitions
- the present invention relates generally to apparatus and methods used for data processing and file generation. More particularly, the present invention relates to combining user-entered data with templates for the automated generation of descriptive files.
- a UPnP device is a container of services and nested devices.
- a VCR device may include a tape transport service, a tuner service, and a clock service.
- a TV/VCR combination device would include not just of services, but a nested television receiver device as well.
- Different categories of UPnP devices are associated with different sets of services and embedded devices. However, for the most part, the set of services a particular generic device type provides have been standardized. The information is typically captured in an eXtensible Markup Language (XML) device description document, which lists the properties (such as the device name and icons) associated with the device, in addition to the set of services provided.
- XML eXtensible Markup Language
- a service exposes actions and models its state with state variables.
- a clock service may be modeled as having a state variable, current_time, which defines the state of the clock, and two actions, set_time and get_time, which allow the service to be controlled.
- service information is typically made part of an XML service description.
- a pointer e.g., a Universal Resource Locator, or URL
- URL Universal Resource Locator
- the Universal Plug and Play Forum defines UPnP Device and Service Descriptions according to a common device architecture, known as the UPnP Device Architecture, as specified in the “Universal Plug and Play Device Architecture” document, Ver. 1.0.
- the Forum is an association of more than 200 vendors in the areas of consumer electronics, computing, home automation and security, home appliances, computer networking, and mobile devices.
- the Forum's web site, http://www.UPnP.org/ is the central repository for schema that have been developed and standardized by the Forum.
- the Device Architecture document, templates for device and service descriptions, and guidelines for device and service description design are also published at the site.
- DDF Device Description File
- SDFs Service Description Files
- FIG. 1 is an illustration of a prior art audio jukebox device control panel display
- FIG. 2 is a prior art XML DDF for the audio jukebox device shown in FIG. 1;
- FIG. 3 is a portion of a prior art XML SDF referenced by the DDF shown in FIG. 2;
- FIG. 4 is a block diagram of an apparatus, an article including a machine-accessible medium, and a system according to various embodiments of the present invention.
- FIG. 5 is a method of generating files according to an embodiment of the present invention.
- UPnP vendors and manufacturers, UPnP Forum Working Committees, and the UPnP Device Architecture document define the highest layer protocols used to implement UPnP. Based on the Device Architecture document, the working committees define information global to generic device types such as VCRs, HVAC systems, dishwashers, and other appliances. Subsequently, UPnP Device vendors and manufacturers define the data specific to their devices such as the model name, URL, etc.
- FIG. 1 is an exemplary computer screen control panel display for a prior art UPnP device: an audio jukebox.
- the control panel 100 includes buttons which can be used to control or manipulate several of the actions (i.e., part of the services) offered by the device.
- the buttons may correspond to transport service actions (e.g., Stop 102 , Play 104 , Pause 106 ), connector service actions (e.g. source connect, source disconnect), and audio service actions (e.g., volume up 110 , volume down 112 , balance left 114 , balance right 116 ).
- transport service actions e.g., Stop 102 , Play 104 , Pause 106
- connector service actions e.g. source connect, source disconnect
- audio service actions e.g., volume up 110 , volume down 112 , balance left 114 , balance right 116 .
- the Simple Service Discovery Protocol (SSDP) is used as the mechanism by which a device newly added to a network advertises its services to control points (which ultimately control individual devices) on the network.
- SSDP Simple Service Discovery Protocol
- control points which ultimately control individual devices
- the SSDP allows that control point to search for devices of interest.
- the fundamental exchange in both cases is a discovery message containing essential information about the device or one of its services, for example the device type, its identifier, and a pointer to its XML DDF.
- control point After a control point has discovered a device, the control point still knows very little about the device. For the control point to learn more about the device and its capabilities, or to interact with the device, the control point must retrieve the device's DDF from the URL provided by the device in the discovery message.
- the UPnP DDF for a device includes vendor-specific information including the model name and number, serial number, manufacturer name, URLs to vendor-specific Web sites, and so forth.
- the description also includes a list of any embedded devices or services, as well as URLs for the UPnP processes of control, eventing, and presentation.
- FIG. 2 is a prior art XML DDF for the audio jukebox device shown in FIG. 1.
- the version 222 of the UPnP specification is designated as 1.0.
- the device type 224 is designated as “playerdevice”, which is generic for an audio player device.
- Manufacturer specific information 226 such as the name of the manufacturer, the make and model of the device, as well as various pointers (URLs) are also included.
- a list of services 227 is referenced.
- the services correspond to transport 228 , connection 230 , and audio 232 functions.
- Each XML SDF is specifically called out.
- the transport SDF is contained in “TransportSCPD.xml” 234
- the connector SDF is contained in “ConnectorSCPD.xml” 236
- the audio SDF is contained in “AudioControlSCPD.xml” 238 .
- control point After a control point has retrieved a description of the device, the control point has the essentials for device control. To learn more about services offered by the device, the control point must retrieve a detailed UPnP description for each service. As noted above, service descriptions are also expressed in the form of XML files. These SDFs include a list of the commands, or actions, to which a particular service responds, as well as parameters or arguments for each action. Each SDF also includes a list of variables; these variables model the state of the service at run time, and are described in terms of their data type, range, and event characteristics.
- a control point sends an action request to one of the services provide by the selected device.
- a control point sends a suitable control message to the control URL for the service (provided in the DDF).
- the service returns action specific values or fault codes.
- Other typical UPnP activities include eventing and presentation, which will not be discussed further herein. For more information, please see the Forum web site: http://www.UPnP.org/.
- FIG. 3 An example of a portion of a prior art XML SDF referenced by the juke box DDF is shown in FIG. 3.
- major portions of the transport service SDF have been excerpted.
- the version 342 of the UPnP specification is called out as “1.0”.
- One or more actions available under the transport service are also specified.
- the “Play” 344 and “SetPlaySpeed” 346 actions have been designated. Each action may have one or more arguments, along with related state variables.
- Examples include the “connectionID” argument 348 and the variable “A_ARG_TYPE_ConnectionID” 350 , as well as the “newPlaySpeed” argument 352 , with its related state variable “TransportPlaySpeed” 354 .
- the state variables themselves are defined.
- the state variable “TransportPlaySpeed” 356 may be defined in terms of its data type, allowed range, and default value.
- the invention provides a semi-automated environment for the creation of hardware description files, such as DDFs and their corresponding SDFs.
- the apparatus, system, article, and method of the invention provide an efficient mechanism for generating files related to devices providing one or more services according to preselected formats.
- Use of the invention in its various embodiments provides an opportunity to reduce human error with regard to data entry and program file construction, with the inherent advantage of decreasing device development cost, and increasing consumer satisfaction.
- FIG. 4 is a block diagram of an apparatus, an article including a machine-accessible medium, and a system according to various embodiments of the present invention.
- a file generation apparatus 460 may include a Template Generation Module (TGM) 462 and a File Generation Module (FGM) 464 capable of being communicatively coupled together.
- TGM Template Generation Module
- FGM File Generation Module
- the TGM 462 is capable of receiving identification data 463 , such as a file format specification identification, which may take the form of a specification name and version (e.g., the MicrosoftTM “Universal Plug and Play Device Architecture” document, Ver.
- the TGM 462 is also capable of receiving identification data 463 , such as a device identification for which related template files (or “templates”) will be generated.
- the device identification may be that of a generic device, such as a Compact Disc (CD) player (e.g. the UPnP device CDPlayer:1, which is a CD player that can hold one or more CDs internally, play a CD, control volume, tone, spatial balance, and provide an output signal via external, analog connectors).
- CD Compact Disc
- a list, or at least the number, of services provided by the device will also typically be received by the TGM 462 as part of the identification data 463 .
- enabled functions actions under the services might include adding and removing discs; manually playing, pausing, and stopping play; automatically playing a disc when inserted; playing tracks and discs in order; and playing tracks and discs randomly.
- the TGM 462 may then automatically generate one or more template files 466 , such as a Device Description Template (DDT) file 468 , related to the device identification.
- DDT Device Description Template
- SDT Service Description Template
- the TGM 462 will generate the various template files 466 according to the requirements of a commercial standard. For example, in the case of the CDPlayer:1 UPnP device, the standard might be the UPnP Device Architecture specification described above.
- the FGM 464 typically receives additional template data 472 which is specific to the developer or manufacturer of the identified device, as well as the device itself. For example, referring back to FIG. 2, the developer will typically enter data into various fields corresponding to data in the template files 466 , such as the manufacturer specific information 226 in the DDF of FIG. 2, or manufacturer-specific actions which may be defined in an SDF for services offered by the device (e.g., see actions 344 , 346 shown in FIG. 3).
- the FGM 464 is capable of automatically generating a Device Description File (DDF) 474 containing the additional template data 472 associated with the device, as specified by the template 468 and formatted in accordance with the file format specification identification.
- DDF Device Description File
- the standard might be the UPnP Device Architecture specification, which directs the use of XML files.
- the additional template data 472 along with the identification data 463 , may be received by way of a Data Reception Module 476 capable of being communicatively coupled to the FGM 464 .
- the file generation apparatus 460 is also capable of automatically generating one or more Service Description Files (SDFs) 477 associated with the provided service(s) and the generated SDTs 470 .
- SDFs Service Description Files
- each SDT 470 will typically be formatted in accordance with the file format specification identification 463 , such as the XML files described in the UPnP Device Architecture specification.
- the file generation apparatus 460 may include a template Data Validation Module (DVM) 478 capable of being communicatively coupled to the FGM 464 .
- the function of the DVM 478 is to compare the additional template data 472 with standard template data 480 , and to prevent generation of the DDF 474 if the additional template data 472 that has been received is not in accordance with preselected data types, values, and/or limits. Such type, values, and limits may be imposed by a commercial standard, by the device developer, or by any of the modules contained within the apparatus 460 .
- receipt of improper additional template data 472 is accompanied by publication of an alert message from the DVM 478 to a human operator so that alternative template data may be entered, received, and processed by the DVM 478 , enabling generation of the DDF 474 .
- a file generation system 480 may include a processor 482 coupled to a local memory 484 .
- the memory 484 may include a FGM 464 and a TGM 462 , operating as described above, and therefore capable of generating UPnP DDF 474 and SDF 477 files, or similar files, containing additional template data 472 (as specified by the template files 466 generated by the TGM 462 ).
- the file generation system 480 may also include a Data Entry Device (DED) 486 capable of being communicatively coupled to the processor 482 .
- the DED 486 may generate the additional template data 472 as provided by a manufacturer or developer of the identified device.
- the DED 486 may be a keyboard, a microphone, a touch screen, a data repository, a memory, a combination of these, or any other device capable of providing the additional template data 472 required by the FGM 464 for rendering the DDF 474 and SDFs 477 .
- the system 480 may also include a remote memory 488 , such as a disk drive, floppy disk, or some other storage mechanism capable of being communicatively coupled to the processor 482 .
- the remote memory 488 may be used to store the templates 466 and/or files 474 , 477 described previously, such as UPnP DDF and SDF files.
- modules may include hardware circuitry, such as a microprocessor and/or memory circuits, software program modules, and/or firmware, and combinations thereof, as directed by the architect of the apparatus 460 and system 480 , and appropriate for particular implementations of the invention.
- file generation apparatus and system of the present invention can be used in applications other than desktop computers and systems which include networked servers or devices, and thus, the invention is not to be so limited.
- the illustrations of a file generation apparatus 460 and a file generation system 480 are intended to provide a general understanding of the structure of the present invention, and are not intended to serve as a complete description of all the elements and features of file generation apparatus and systems which might make use of the structures described herein.
- Applications which may include the novel file generation apparatus and system of the present invention include electronic circuitry used in high-speed computers, communications and signal processing circuitry, processor modules, embedded processors, and application-specific modules, including multilayer, multi-chip modules.
- Such file generation apparatus and systems may further be included as sub-components within a variety of electronic systems, such as televisions, cellular telephones, personal computers, radios, vehicles, and others.
- FIG. 5 is a flow diagram illustrating a method of generating files according to an embodiment of the present invention
- the method 505 may include receiving a specification identification at block 515 , and receiving a device identification for a device providing one or more services, such as a UPnP device, at block 525 .
- the method 505 may continue with generating one or more template files related to the specification identification and the device identification, such as a UPnP DDT and one or more UPnP SDTs, each corresponding to the services provided by the identified UPnP device, at block 535 .
- additional template data specified by the template file(s) may be received at block 545 , as provided by the device developer or manufacturer.
- the additional template data may be entered using a DED similar to, or identical to that described above, and may be validated at block 555 by comparing the additional template data with standard template data, including the data types, values, and/or limits included in the generated template files, and/or in various standards, such as the UPnP Device Architecture document.
- the additional template data may continue to be received at block 545 , and validated at block 555 .
- An example of additional template data limits, default values, and data types may be found in the definition of the state variable “TransportPlaySpeed” 356 shown in FIG. 3.
- the method 505 may then continue with generating a DDF at block 565 , and one or more SDFs at block 575 , using the additional template data.
- the number of SDFs generated will typically correspond to the number of SDT files, which in turn typically correspond to the number of services provided by the identified device.
- the method may conclude with storing the template files (e.g., DDT and SDT files) and/or the description files (e.g., DDF and SDFs) in a remote memory, such as a server, a disk drive, or some other storage device, at block 585 .
- a software program can be launched from a computer readable medium in a computer based system to execute the functions defined in the software program.
- One of ordinary skill in the art will further understand the various programming languages which may be employed to create a software program designed to implement and perform the methods of the present invention.
- the programs can be structured in an object-orientated format using an object-oriented language such as Java, Smalltalk, or C++.
- the programs can be structured in a procedural-orientated format using a procedural language, such as COBOL or C.
- the software components may communicate using any of a number of mechanisms that are well-known to those skilled in the art, such as application program interfaces (API) or interprocess communication techniques such as the Remote Procedure Call (RPC), Common Object Request Broker Architecture (CORBA), Component Object Model (COM), Distributed Component Object Model (DCOM), Distributed System Object Model (DSOM) and Remote Method Invocation (RMI).
- API application program interfaces
- CORBA Common Object Request Broker Architecture
- COM Component Object Model
- DCOM Distributed Component Object Model
- DSOM Distributed System Object Model
- RMI Remote Method Invocation
- the processor 482 typically accesses at least some form of computer-readable media, such as the memory 484 .
- computer-readable and/or accessible media may be any available media that can be accessed by the apparatus 460 .
- computer-readable media may compromise computer storage media and communications media.
- Computer storage media includes volatile and non-volatile, removable and non-removable media implemented in any method or technology for storage of information such as computer-readable instructions, data structures, program modules or other data.
- Communication media specifically embodies computer-readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave, coded information signal, and/or other transport mechanism, which includes any information delivery media.
- modulated data signal means a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal.
- communications media also includes wired media such as a wired network or direct-wired connections, and wireless media such as acoustic, optical, radio frequency, infrared and other wireless media. Combinations of any of the above are also be included within the scope of computer-readable and/or accessible media.
- another embodiment of the invention may include an article 490 comprising a machine-accessible medium having associated data, wherein the data, when accessed, results in a machine (e.g. a processor or computer) performing activities such as receiving a specification identification and/or a device identification for a device providing at least one service (such as a UPnP device), and generating at least one template file related to the device identification (such as a SDT and/or a DDT). Other activities may include receiving additional template data specified by the template file, and generating a DDF and/or SDFs using the additional template data.
- a machine e.g. a processor or computer
- activities such as receiving a specification identification and/or a device identification for a device providing at least one service (such as a UPnP device), and generating at least one template file related to the device identification (such as a SDT and/or a DDT).
- Other activities may include receiving additional template data specified by the template file, and generating a DDF and/or SDF
Landscapes
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Stored Programmes (AREA)
Abstract
A file generation apparatus, system, and article including a machine-accessible medium, along with a method of generating files, are disclosed. The apparatus may include a Template Generation Module (TGM) coupled to a File Generation Module (FGM). The apparatus is capable of generating templates, which in turn specify additional template data that can be used to automatically generate device and service description files, according to received file format specification and device identification data. The system may include a processor coupled to a local memory which includes a file generation program module and a template generation program module. The method may include receiving a specification and device identification for a device providing at least one service, generating one or more template files related to the specification identification and the device identification, receiving additional template data specified by the template file(s), generating a device description file using the additional template data, and generating at least one service description file.
Description
- The present invention relates generally to apparatus and methods used for data processing and file generation. More particularly, the present invention relates to combining user-entered data with templates for the automated generation of descriptive files.
- The addition of device Plug and Play (PnP) capabilities to operating systems makes it very easy to set up, configure, and add peripherals to a personal computer (PC). The concept of Universal Plug and Play (UPnP) extends this simplicity to include enabling discovery and control of various devices within a network. However, UPnP is more than just a simple extension of the Plug and Play peripheral model. UPnP enables a device to dynamically join a network, obtain an IP address, convey its capabilities, and learn about the presence and capabilities of other devices in an automated fashion.
- The basic building blocks of a UPnP network are devices, services and control points. A UPnP device is a container of services and nested devices. For instance, a VCR device may include a tape transport service, a tuner service, and a clock service. A TV/VCR combination device would include not just of services, but a nested television receiver device as well. Different categories of UPnP devices are associated with different sets of services and embedded devices. However, for the most part, the set of services a particular generic device type provides have been standardized. The information is typically captured in an eXtensible Markup Language (XML) device description document, which lists the properties (such as the device name and icons) associated with the device, in addition to the set of services provided.
- The smallest unit of control in a UPnP network is a service. A service exposes actions and models its state with state variables. For instance, a clock service may be modeled as having a state variable, current_time, which defines the state of the clock, and two actions, set_time and get_time, which allow the service to be controlled. In a fashion similar to that of the device description, service information is typically made part of an XML service description. A pointer (e.g., a Universal Resource Locator, or URL) to applicable service descriptions is contained within the device description.
- The Universal Plug and Play Forum (the “Forum”) defines UPnP Device and Service Descriptions according to a common device architecture, known as the UPnP Device Architecture, as specified in the “Universal Plug and Play Device Architecture” document, Ver. 1.0. The Forum is an association of more than 200 vendors in the areas of consumer electronics, computing, home automation and security, home appliances, computer networking, and mobile devices. The Forum's web site, http://www.UPnP.org/, is the central repository for schema that have been developed and standardized by the Forum. The Device Architecture document, templates for device and service descriptions, and guidelines for device and service description design are also published at the site.
- Thus, while file formats may be ultimately defined by the Forum, device developers are required to individually implement two types of XML files for each device: a Device Description File (DDF), and one or more Service Description Files (SDFs). This typically occurs as part of a manual process, depending on a human operator to have knowledge of the intricacies XML, as well as the required/optional fields and tags. The process of creating description files also relies on the human operator to enter accurate data. As is the case with most other human-dependent endeavors, manual construction of lengthy XML files according to non-intuitive language rules and structured templates, along with embedded data entry, often results in errors which propagate throughout the device development, testing, and production environments. Such errors lead to increased costs throughout the product life cycle, including those incurred via consumer dissatisfaction with “faulty” products (which may simply be handicapped by an erroneous SDF entry).
- Therefore, there is a need in the art for an apparatus, an article including a machine-accessible medium, a system, and a method of generating accurate DDFs and SDFs in a more rigorous and dependable manner. Solutions should take into account the need to reduce opportunities for human participation in the process, minimizing the number of data entry errors, and ultimately leading to decreased product life-cycle cost and increased consumer satisfaction.
- FIG. 1 is an illustration of a prior art audio jukebox device control panel display;
- FIG. 2 is a prior art XML DDF for the audio jukebox device shown in FIG. 1;
- FIG. 3 is a portion of a prior art XML SDF referenced by the DDF shown in FIG. 2;
- FIG. 4 is a block diagram of an apparatus, an article including a machine-accessible medium, and a system according to various embodiments of the present invention; and
- FIG. 5 is a method of generating files according to an embodiment of the present invention.
- In the following detailed description of the invention, reference is made to the accompanying drawings which form a part hereof, and in which are shown by way of illustration, and not of limitation, specific embodiments in which the invention may be practiced. In the drawings, like numerals describe substantially similar components throughout the several views. The embodiments illustrated are described in sufficient detail to enable those skilled in the art to practice the invention. Other embodiments may be utilized and derived therefrom, such that structural and logical substitutions and changes may be made without departing from the scope of the invention. The following detailed description, therefore, is not to be taken in a limiting sense, and the scope of the invention is defined only by the appended claims, along with the full range of equivalents to which such claims are entitled.
- UPnP vendors and manufacturers, UPnP Forum Working Committees, and the UPnP Device Architecture document define the highest layer protocols used to implement UPnP. Based on the Device Architecture document, the working committees define information global to generic device types such as VCRs, HVAC systems, dishwashers, and other appliances. Subsequently, UPnP Device vendors and manufacturers define the data specific to their devices such as the model name, URL, etc.
- FIG. 1 is an exemplary computer screen control panel display for a prior art UPnP device: an audio jukebox. The
control panel 100 includes buttons which can be used to control or manipulate several of the actions (i.e., part of the services) offered by the device. In this case, the buttons may correspond to transport service actions (e.g.,Stop 102, Play 104, Pause 106), connector service actions (e.g. source connect, source disconnect), and audio service actions (e.g., volume up 110, volume down 112, balance left 114, balance right 116). - Once a device is attached to a network and addressed appropriately, the first step in the UPnP networking process, discovery, can take place. The Simple Service Discovery Protocol (SSDP) is used as the mechanism by which a device newly added to a network advertises its services to control points (which ultimately control individual devices) on the network. When a control point is added to the network, the SSDP allows that control point to search for devices of interest. The fundamental exchange in both cases is a discovery message containing essential information about the device or one of its services, for example the device type, its identifier, and a pointer to its XML DDF.
- The next step in UPnP networking is description. After a control point has discovered a device, the control point still knows very little about the device. For the control point to learn more about the device and its capabilities, or to interact with the device, the control point must retrieve the device's DDF from the URL provided by the device in the discovery message.
- The UPnP DDF for a device includes vendor-specific information including the model name and number, serial number, manufacturer name, URLs to vendor-specific Web sites, and so forth. The description also includes a list of any embedded devices or services, as well as URLs for the UPnP processes of control, eventing, and presentation.
- For example, FIG. 2 is a prior art XML DDF for the audio jukebox device shown in FIG. 1. In this
DDF 220, theversion 222 of the UPnP specification is designated as 1.0. Thedevice type 224 is designated as “playerdevice”, which is generic for an audio player device. Manufacturerspecific information 226, such as the name of the manufacturer, the make and model of the device, as well as various pointers (URLs) are also included. - After the manufacturer's information, a list of services227 is referenced. In this case, as noted above, the services correspond to
transport 228,connection 230, andaudio 232 functions. Each XML SDF is specifically called out. Thus, the transport SDF is contained in “TransportSCPD.xml” 234, the connector SDF is contained in “ConnectorSCPD.xml” 236, and the audio SDF is contained in “AudioControlSCPD.xml” 238. - After a control point has retrieved a description of the device, the control point has the essentials for device control. To learn more about services offered by the device, the control point must retrieve a detailed UPnP description for each service. As noted above, service descriptions are also expressed in the form of XML files. These SDFs include a list of the commands, or actions, to which a particular service responds, as well as parameters or arguments for each action. Each SDF also includes a list of variables; these variables model the state of the service at run time, and are described in terms of their data type, range, and event characteristics.
- To control a device, a control point sends an action request to one of the services provide by the selected device. To do this, a control point sends a suitable control message to the control URL for the service (provided in the DDF). In response to the control message, the service returns action specific values or fault codes. Other typical UPnP activities include eventing and presentation, which will not be discussed further herein. For more information, please see the Forum web site: http://www.UPnP.org/.
- An example of a portion of a prior art XML SDF referenced by the juke box DDF is shown in FIG. 3. In this case, major portions of the transport service SDF have been excerpted. As is the case with the DDF in FIG. 2, the
version 342 of the UPnP specification is called out as “1.0”. One or more actions available under the transport service are also specified. In this case, the “Play” 344 and “SetPlaySpeed” 346 actions have been designated. Each action may have one or more arguments, along with related state variables. Examples include the “connectionID”argument 348 and the variable “A_ARG_TYPE_ConnectionID” 350, as well as the “newPlaySpeed”argument 352, with its related state variable “TransportPlaySpeed” 354. After all of the actions are defined in terms of their arguments and state variables, the state variables themselves are defined. Thus, for example, the state variable “TransportPlaySpeed” 356 may be defined in terms of its data type, allowed range, and default value. - The invention provides a semi-automated environment for the creation of hardware description files, such as DDFs and their corresponding SDFs. In particular, the apparatus, system, article, and method of the invention provide an efficient mechanism for generating files related to devices providing one or more services according to preselected formats. Use of the invention in its various embodiments provides an opportunity to reduce human error with regard to data entry and program file construction, with the inherent advantage of decreasing device development cost, and increasing consumer satisfaction.
- FIG. 4 is a block diagram of an apparatus, an article including a machine-accessible medium, and a system according to various embodiments of the present invention. In one embodiment of the invention, a
file generation apparatus 460 may include a Template Generation Module (TGM) 462 and a File Generation Module (FGM) 464 capable of being communicatively coupled together. TheTGM 462 is capable of receivingidentification data 463, such as a file format specification identification, which may take the form of a specification name and version (e.g., the Microsoft™ “Universal Plug and Play Device Architecture” document, Ver. 1.0), or possibly just the version of a particular file specification format (e.g., 1.0) if theTGM 462 is dedicated to operating under a particular named specification file format. TheTGM 462 is also capable of receivingidentification data 463, such as a device identification for which related template files (or “templates”) will be generated. For example, the device identification may be that of a generic device, such as a Compact Disc (CD) player (e.g. the UPnP device CDPlayer:1, which is a CD player that can hold one or more CDs internally, play a CD, control volume, tone, spatial balance, and provide an output signal via external, analog connectors). - A list, or at least the number, of services provided by the device will also typically be received by the
TGM 462 as part of theidentification data 463. In the case of a generic CD player device, enabled functions (actions under the services) might include adding and removing discs; manually playing, pausing, and stopping play; automatically playing a disc when inserted; playing tracks and discs in order; and playing tracks and discs randomly. - After receiving the
identification data 463, theTGM 462 may then automatically generate one or more template files 466, such as a Device Description Template (DDT)file 468, related to the device identification. One or more Service Description Template (SDT) files 470 may also be automatically generated, each related to one or more of the provided service(s). Typically, theTGM 462 will generate thevarious template files 466 according to the requirements of a commercial standard. For example, in the case of the CDPlayer:1 UPnP device, the standard might be the UPnP Device Architecture specification described above. - At this point, the
FGM 464 typically receivesadditional template data 472 which is specific to the developer or manufacturer of the identified device, as well as the device itself. For example, referring back to FIG. 2, the developer will typically enter data into various fields corresponding to data in the template files 466, such as the manufacturerspecific information 226 in the DDF of FIG. 2, or manufacturer-specific actions which may be defined in an SDF for services offered by the device (e.g., seeactions - The
FGM 464 is capable of automatically generating a Device Description File (DDF) 474 containing theadditional template data 472 associated with the device, as specified by thetemplate 468 and formatted in accordance with the file format specification identification. Again, for example, in the case of a UPnP device, the standard might be the UPnP Device Architecture specification, which directs the use of XML files. Theadditional template data 472, along with theidentification data 463, may be received by way of aData Reception Module 476 capable of being communicatively coupled to theFGM 464. - The
file generation apparatus 460 is also capable of automatically generating one or more Service Description Files (SDFs) 477 associated with the provided service(s) and the generatedSDTs 470. As is the case for theDDF 474, eachSDT 470 will typically be formatted in accordance with the fileformat specification identification 463, such as the XML files described in the UPnP Device Architecture specification. - The
file generation apparatus 460 may include a template Data Validation Module (DVM) 478 capable of being communicatively coupled to theFGM 464. The function of theDVM 478 is to compare theadditional template data 472 withstandard template data 480, and to prevent generation of theDDF 474 if theadditional template data 472 that has been received is not in accordance with preselected data types, values, and/or limits. Such type, values, and limits may be imposed by a commercial standard, by the device developer, or by any of the modules contained within theapparatus 460. Typically, receipt of improperadditional template data 472 is accompanied by publication of an alert message from theDVM 478 to a human operator so that alternative template data may be entered, received, and processed by theDVM 478, enabling generation of theDDF 474. - In another embodiment, it can be seen that a
file generation system 480 according to the present invention may include aprocessor 482 coupled to alocal memory 484. Thememory 484 may include aFGM 464 and aTGM 462, operating as described above, and therefore capable of generatingUPnP DDF 474 andSDF 477 files, or similar files, containing additional template data 472 (as specified by the template files 466 generated by the TGM 462). - The
file generation system 480 may also include a Data Entry Device (DED) 486 capable of being communicatively coupled to theprocessor 482. TheDED 486 may generate theadditional template data 472 as provided by a manufacturer or developer of the identified device. TheDED 486 may be a keyboard, a microphone, a touch screen, a data repository, a memory, a combination of these, or any other device capable of providing theadditional template data 472 required by theFGM 464 for rendering theDDF 474 andSDFs 477. Thesystem 480 may also include aremote memory 488, such as a disk drive, floppy disk, or some other storage mechanism capable of being communicatively coupled to theprocessor 482. Theremote memory 488 may be used to store thetemplates 466 and/orfiles - It should be noted that the
TGM 462,FGM 464,DRM 476,DVM 478,DED 486, andmemories apparatus 460 andsystem 480, and appropriate for particular implementations of the invention. - One of ordinary skill in the art will understand that the file generation apparatus and system of the present invention can be used in applications other than desktop computers and systems which include networked servers or devices, and thus, the invention is not to be so limited. The illustrations of a
file generation apparatus 460 and afile generation system 480 are intended to provide a general understanding of the structure of the present invention, and are not intended to serve as a complete description of all the elements and features of file generation apparatus and systems which might make use of the structures described herein. - Applications which may include the novel file generation apparatus and system of the present invention include electronic circuitry used in high-speed computers, communications and signal processing circuitry, processor modules, embedded processors, and application-specific modules, including multilayer, multi-chip modules. Such file generation apparatus and systems may further be included as sub-components within a variety of electronic systems, such as televisions, cellular telephones, personal computers, radios, vehicles, and others.
- FIG. 5 is a flow diagram illustrating a method of generating files according to an embodiment of the present invention The
method 505 may include receiving a specification identification atblock 515, and receiving a device identification for a device providing one or more services, such as a UPnP device, atblock 525. Themethod 505 may continue with generating one or more template files related to the specification identification and the device identification, such as a UPnP DDT and one or more UPnP SDTs, each corresponding to the services provided by the identified UPnP device, atblock 535. - At this point, additional template data specified by the template file(s) may be received at
block 545, as provided by the device developer or manufacturer. The additional template data may be entered using a DED similar to, or identical to that described above, and may be validated atblock 555 by comparing the additional template data with standard template data, including the data types, values, and/or limits included in the generated template files, and/or in various standards, such as the UPnP Device Architecture document. As needed, the additional template data may continue to be received atblock 545, and validated atblock 555. An example of additional template data limits, default values, and data types may be found in the definition of the state variable “TransportPlaySpeed” 356 shown in FIG. 3. - The
method 505 may then continue with generating a DDF atblock 565, and one or more SDFs atblock 575, using the additional template data. As discussed previously, the number of SDFs generated will typically correspond to the number of SDT files, which in turn typically correspond to the number of services provided by the identified device. The method may conclude with storing the template files (e.g., DDT and SDT files) and/or the description files (e.g., DDF and SDFs) in a remote memory, such as a server, a disk drive, or some other storage device, atblock 585. - It should be noted that while UPnP templates, files, and standards set forth by the UPnP Forum have been used as examples herein, other templates, files and standards may also be used according to the apparatus, systems, and methods of the invention, and therefore, the invention is not to be so limited. Therefore, it should be clear that the present invention may also be described in the context of computer-executable instructions, such as program modules, being executed by a computer. Generally, program modules may include routines, programs, objects, components, data structures, etc. that perform particular tasks or implement particular abstract data types. As such, the
memory 484 of the present invention may include software operative on aprocessor 482 to perform methods according to the teachings of the present invention. - One of ordinary skill in the art will understand, upon reading and comprehending this disclosure, the manner in which a software program can be launched from a computer readable medium in a computer based system to execute the functions defined in the software program. One of ordinary skill in the art will further understand the various programming languages which may be employed to create a software program designed to implement and perform the methods of the present invention. The programs can be structured in an object-orientated format using an object-oriented language such as Java, Smalltalk, or C++. Alternatively, the programs can be structured in a procedural-orientated format using a procedural language, such as COBOL or C. The software components may communicate using any of a number of mechanisms that are well-known to those skilled in the art, such as application program interfaces (API) or interprocess communication techniques such as the Remote Procedure Call (RPC), Common Object Request Broker Architecture (CORBA), Component Object Model (COM), Distributed Component Object Model (DCOM), Distributed System Object Model (DSOM) and Remote Method Invocation (RMI). However, as will be appreciated by one of ordinary skill in the art upon reading this disclosure, the teachings of the present invention are not limited to any particular programming language or environment, including XML.
- As is evident from the preceding description, the
processor 482 typically accesses at least some form of computer-readable media, such as thememory 484. However, computer-readable and/or accessible media may be any available media that can be accessed by theapparatus 460. By way of example and not limitation, computer-readable media may compromise computer storage media and communications media. Computer storage media includes volatile and non-volatile, removable and non-removable media implemented in any method or technology for storage of information such as computer-readable instructions, data structures, program modules or other data. Communication media specifically embodies computer-readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave, coded information signal, and/or other transport mechanism, which includes any information delivery media. The term “modulated data signal” means a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal. By way of example and not limitation, communications media also includes wired media such as a wired network or direct-wired connections, and wireless media such as acoustic, optical, radio frequency, infrared and other wireless media. Combinations of any of the above are also be included within the scope of computer-readable and/or accessible media. - Thus, referring back to FIG. 4, it is now easily understood that another embodiment of the invention may include an
article 490 comprising a machine-accessible medium having associated data, wherein the data, when accessed, results in a machine (e.g. a processor or computer) performing activities such as receiving a specification identification and/or a device identification for a device providing at least one service (such as a UPnP device), and generating at least one template file related to the device identification (such as a SDT and/or a DDT). Other activities may include receiving additional template data specified by the template file, and generating a DDF and/or SDFs using the additional template data. - Although specific embodiments have been illustrated and described herein, those of ordinary skill in the art will appreciate that any arrangement which is calculated to achieve the same purpose may be substituted for the specific embodiment shown. This disclosure is intended to cover any and all adaptations or variations of the present invention. It is to be understood that the above description has been made in an illustrative fashion, and not a restrictive one. Combinations of the above embodiments, and other embodiments not specifically described herein will be apparent to those of skill in the art upon reviewing the above description. The scope of the invention includes any other applications in which the above structures and methods are used. The scope of the invention should be determined with reference to the appended claims, along with the full range of equivalents to which such claims are entitled.
Claims (21)
1. A file generation apparatus, comprising:
a template generation module capable of receiving a file format specification identification and a device identification for a device providing at least one service, and generating a template related to the device identification; and
a file generation module capable of being communicatively coupled to the template generation module and capable of generating a device description file containing additional template data associated with the device as specified by the template and formatted in accordance with the file format specification identification.
2. The file generation apparatus of claim 1 , further comprising:
a data reception module capable of being communicatively coupled to the file generation module and receiving the additional template data associated with the device.
3. The file generation apparatus of claim 1 , further comprising:
a template data validation module capable of being communicatively coupled to the file generation module and preventing generation of the device description file.
4. The file generation apparatus of claim 3 , wherein the template validation module is capable of comparing the additional template data with standard template data.
5. The file generation apparatus of claim 1 , wherein the device is a universal plug and play device.
6. The file generation apparatus of claim 1 , wherein generating a template related to the device identification includes generating a service description template file related to the at least one service.
7. The file generation apparatus of claim 1 , wherein the file generation module is capable of generating a service description file associated with the at least one service and formatted in accordance with the file format specification identification.
8. A file generation system, comprising:
a processor; and
a local memory coupled to the processor, the local memory including a file generation program module and a template generation program module, the file generation program module capable of being communicatively coupled to the template generation module and generating a universal plug and play device description file containing additional template data received in the local memory as specified by a template file generated by the template generation program module.
9. The file generation system of claim 8 , further comprising:
a data entry device capable of being communicatively coupled to the processor and generating the additional template data.
10. The file generation system of claim 8 , wherein the file generation program module is capable of generating a universal plug and play service description file containing the additional template data received in the memory as specified by a template file generated by the template generation program module.
11. The file generation system of claim 8 , further comprising:
a remote memory capable of being communicatively coupled to the processor and storing the universal plug and play device description file.
12. A method of generating files, comprising:
receiving a specification identification;
receiving a device identification for a device providing at least one service;
generating at least one template file related to the specification identification and the device identification;
receiving additional template data specified by the template file;
generating a device description file using the additional template data; and
generating at least one service description file related to the at least one service using the additional template data.
13. The method of claim 12 , further comprising:
generating a plurality of service description files related to a corresponding plurality of services provided by the device.
14. The method of claim 12 , further comprising:
validating the additional template data.
15. The method of claim 12 , wherein generating at least one template file related to the specification identification and the device identification further comprises:
generating a device description template file; and
generating a service description template file.
16. The method of claim 12 , wherein the device identification identifies a universal plug and play device.
17. The method of claim 12 , further comprising:
storing the device description file and the at least one service description file in a remote memory.
18. An article comprising a machine-accessible medium having associated data, wherein the data, when accessed, results in a machine performing:
receiving a device identification for a device providing at least one service;
generating at least one template file related to the device identification;
receiving additional template data specified by the template file; and
generating a device description file using the additional template data.
19. The article of claim 18 , wherein the machine-accessible medium further includes data, which when accessed by the machine, results in the machine performing:
receiving a specification identification.
20. The article of claim 19 , wherein the machine-accessible medium further includes data, which when accessed by the machine, results in the machine performing:
generating at least one template file related to the specification identification and the device identification.
21. The article of claim 20 , wherein the machine-accessible medium further includes data, which when accessed by the machine, results in the machine performing:
generating at least one service description file related to the at least one service using the additional template data.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/999,280 US20030105778A1 (en) | 2001-11-30 | 2001-11-30 | File generation apparatus and method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/999,280 US20030105778A1 (en) | 2001-11-30 | 2001-11-30 | File generation apparatus and method |
Publications (1)
Publication Number | Publication Date |
---|---|
US20030105778A1 true US20030105778A1 (en) | 2003-06-05 |
Family
ID=25546134
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/999,280 Abandoned US20030105778A1 (en) | 2001-11-30 | 2001-11-30 | File generation apparatus and method |
Country Status (1)
Country | Link |
---|---|
US (1) | US20030105778A1 (en) |
Cited By (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040193609A1 (en) * | 2003-03-26 | 2004-09-30 | Sony Corporation | Master content directory service server for providing a consolidated network-wide content directory |
US20040243700A1 (en) * | 2003-05-29 | 2004-12-02 | Weast John C. | Visibility of media contents of UPnP media servers and initiating rendering via file system user interface |
US20050015365A1 (en) * | 2003-07-16 | 2005-01-20 | Kavacheri Sathyanarayanan N. | Hierarchical configuration attribute storage and retrieval |
EP1505515A2 (en) * | 2003-07-08 | 2005-02-09 | Kazutomo Co., Ltd. | Automatic file generation |
US20050160172A1 (en) * | 2004-01-16 | 2005-07-21 | Sony Corporation | Method of and apparatus for bridging a UPnP network and a rendezvous network |
US20050197108A1 (en) * | 2004-03-04 | 2005-09-08 | Sergio Salvatore | Mobile transcoding architecture |
US20050198693A1 (en) * | 2004-03-02 | 2005-09-08 | Samsung Electronics Co., Ltd. | Apparatus and method for reporting operation state of digital rights management |
US20060080329A1 (en) * | 2004-10-08 | 2006-04-13 | Microsoft Corporation | Systems and methods for creating a template from an existing file |
US20060218180A1 (en) * | 2003-04-07 | 2006-09-28 | Koninklijke Phillips Electronics N.V. | Content directory service import container |
US20060288015A1 (en) * | 2005-06-15 | 2006-12-21 | Schirripa Steven R | Electronic content classification |
EP2063608A1 (en) * | 2007-11-26 | 2009-05-27 | Gemplus | Method for supplying a descriptor of services of an object, method for installing the services of said object and associated object |
US7552418B2 (en) | 2005-01-14 | 2009-06-23 | Microsoft Corporation | Systems and methods for creating and providing templates in a single file |
US7581206B2 (en) | 2005-01-14 | 2009-08-25 | Microsoft Corporation | Systems and methods for creating and providing templates in a single file |
US20090327998A1 (en) * | 2008-06-03 | 2009-12-31 | Whirlpool Corporation | Constrained appliance development toolkit |
US20130007377A1 (en) * | 2011-06-30 | 2013-01-03 | International Business Machines Corporation | Message oriented middleware with integrated rules engine |
US20130332472A1 (en) * | 2012-06-11 | 2013-12-12 | Sap Ag | Deploying information reporting applications |
US9294441B2 (en) | 2003-09-17 | 2016-03-22 | Sony Corporation | Middleware filter agent between server and PDA |
CN110083354A (en) * | 2019-04-26 | 2019-08-02 | 浙江中控技术股份有限公司 | A kind of graphical interfaces document generating method and device |
CN110164529A (en) * | 2019-05-22 | 2019-08-23 | 上海联影医疗科技有限公司 | A kind of information processing method, device, electronic equipment and storage medium |
US10419295B1 (en) * | 2014-10-03 | 2019-09-17 | Amdocs Development Limited | System, method, and computer program for automatically generating communication device metadata definitions |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020029256A1 (en) * | 1999-06-11 | 2002-03-07 | Zintel William M. | XML-based template language for devices and services |
US20030083910A1 (en) * | 2001-08-29 | 2003-05-01 | Mehmet Sayal | Method and system for integrating workflow management systems with business-to-business interaction standards |
US20030093769A1 (en) * | 2001-07-10 | 2003-05-15 | Murari Kumar | Apparatus and method for UPnP device code generation using XML |
US20030117433A1 (en) * | 2001-11-09 | 2003-06-26 | Microsoft Corporation | Tunable information presentation appliance using an extensible markup language |
US20030140107A1 (en) * | 2000-09-06 | 2003-07-24 | Babak Rezvani | Systems and methods for virtually representing devices at remote sites |
-
2001
- 2001-11-30 US US09/999,280 patent/US20030105778A1/en not_active Abandoned
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020029256A1 (en) * | 1999-06-11 | 2002-03-07 | Zintel William M. | XML-based template language for devices and services |
US20030140107A1 (en) * | 2000-09-06 | 2003-07-24 | Babak Rezvani | Systems and methods for virtually representing devices at remote sites |
US20030093769A1 (en) * | 2001-07-10 | 2003-05-15 | Murari Kumar | Apparatus and method for UPnP device code generation using XML |
US20030083910A1 (en) * | 2001-08-29 | 2003-05-01 | Mehmet Sayal | Method and system for integrating workflow management systems with business-to-business interaction standards |
US20030117433A1 (en) * | 2001-11-09 | 2003-06-26 | Microsoft Corporation | Tunable information presentation appliance using an extensible markup language |
Cited By (30)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040193609A1 (en) * | 2003-03-26 | 2004-09-30 | Sony Corporation | Master content directory service server for providing a consolidated network-wide content directory |
US20060218180A1 (en) * | 2003-04-07 | 2006-09-28 | Koninklijke Phillips Electronics N.V. | Content directory service import container |
US20040243700A1 (en) * | 2003-05-29 | 2004-12-02 | Weast John C. | Visibility of media contents of UPnP media servers and initiating rendering via file system user interface |
US7308489B2 (en) * | 2003-05-29 | 2007-12-11 | Intel Corporation | Visibility of media contents of UPnP media servers and initiating rendering via file system user interface |
EP1505515A2 (en) * | 2003-07-08 | 2005-02-09 | Kazutomo Co., Ltd. | Automatic file generation |
EP1505515A3 (en) * | 2003-07-08 | 2005-11-23 | Kazutomo Co., Ltd. | Automatic file generation |
US20050015365A1 (en) * | 2003-07-16 | 2005-01-20 | Kavacheri Sathyanarayanan N. | Hierarchical configuration attribute storage and retrieval |
US9294441B2 (en) | 2003-09-17 | 2016-03-22 | Sony Corporation | Middleware filter agent between server and PDA |
US20050160172A1 (en) * | 2004-01-16 | 2005-07-21 | Sony Corporation | Method of and apparatus for bridging a UPnP network and a rendezvous network |
US7844738B2 (en) * | 2004-01-16 | 2010-11-30 | Sony Corporation | Method of and apparatus for bridging a UPnP network and a rendezvous network |
US7707644B2 (en) * | 2004-03-02 | 2010-04-27 | Samsung Electronics Co., Ltd. | Apparatus and method for reporting operation state of digital rights management |
US20050198693A1 (en) * | 2004-03-02 | 2005-09-08 | Samsung Electronics Co., Ltd. | Apparatus and method for reporting operation state of digital rights management |
US8285403B2 (en) * | 2004-03-04 | 2012-10-09 | Sony Corporation | Mobile transcoding architecture |
US20050197108A1 (en) * | 2004-03-04 | 2005-09-08 | Sergio Salvatore | Mobile transcoding architecture |
US20060080329A1 (en) * | 2004-10-08 | 2006-04-13 | Microsoft Corporation | Systems and methods for creating a template from an existing file |
US7631004B2 (en) * | 2004-10-08 | 2009-12-08 | Microsoft Corporation | Systems and methods for creating a template from an existing file |
US7581206B2 (en) | 2005-01-14 | 2009-08-25 | Microsoft Corporation | Systems and methods for creating and providing templates in a single file |
US7552418B2 (en) | 2005-01-14 | 2009-06-23 | Microsoft Corporation | Systems and methods for creating and providing templates in a single file |
US20060288015A1 (en) * | 2005-06-15 | 2006-12-21 | Schirripa Steven R | Electronic content classification |
WO2006138473A3 (en) * | 2005-06-15 | 2009-04-30 | Google Inc | Electronic content classification |
EP2063608A1 (en) * | 2007-11-26 | 2009-05-27 | Gemplus | Method for supplying a descriptor of services of an object, method for installing the services of said object and associated object |
WO2009068536A1 (en) * | 2007-11-26 | 2009-06-04 | Gemalto Sa | Method for delivering a service descriptor of an object, method for installing services of said object, and related object |
US20090327998A1 (en) * | 2008-06-03 | 2009-12-31 | Whirlpool Corporation | Constrained appliance development toolkit |
US20130007377A1 (en) * | 2011-06-30 | 2013-01-03 | International Business Machines Corporation | Message oriented middleware with integrated rules engine |
US10216553B2 (en) * | 2011-06-30 | 2019-02-26 | International Business Machines Corporation | Message oriented middleware with integrated rules engine |
US10789111B2 (en) | 2011-06-30 | 2020-09-29 | International Business Machines Corporation | Message oriented middleware with integrated rules engine |
US20130332472A1 (en) * | 2012-06-11 | 2013-12-12 | Sap Ag | Deploying information reporting applications |
US10419295B1 (en) * | 2014-10-03 | 2019-09-17 | Amdocs Development Limited | System, method, and computer program for automatically generating communication device metadata definitions |
CN110083354A (en) * | 2019-04-26 | 2019-08-02 | 浙江中控技术股份有限公司 | A kind of graphical interfaces document generating method and device |
CN110164529A (en) * | 2019-05-22 | 2019-08-23 | 上海联影医疗科技有限公司 | A kind of information processing method, device, electronic equipment and storage medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20030105778A1 (en) | File generation apparatus and method | |
US7707606B2 (en) | Content and application download based on a home network system configuration profile | |
US7555528B2 (en) | Systems and methods for virtually representing devices at remote sites | |
JP4686026B2 (en) | Mapping of control characteristics to GUI elements compatible with mode | |
US7260597B1 (en) | Remote manual, maintenance, and diagnostic services for networked electronic devices | |
US8230048B2 (en) | Client device configuration with hooks | |
TW201826869A (en) | Method, system and device for connecting devices | |
US6591279B1 (en) | System and method for computer-based notifications of real-world events using digital images | |
US9022279B2 (en) | Method and system for locating an accessory and an application for use with a user device | |
US7603266B2 (en) | Generic emulator of devices in a device communications protocol | |
US20070258718A1 (en) | Method and system for extending internet protocol remote control to non-internet protocol devices | |
US20040063405A1 (en) | Method and apparatus for displaying positions of home network appliances | |
KR20010073003A (en) | Bridging multiple home network software architectures | |
WO2006126355A1 (en) | Gateway device and control device | |
WO2010107576A1 (en) | Mobile computing device capabilities for accessories | |
KR20030024806A (en) | Information processing apparatus | |
US20040133896A1 (en) | Network device application interface | |
US9418539B2 (en) | Remote control apparatus and electronic device remotely controlled by the same | |
US20010047431A1 (en) | HAVi-VHN bridge solution | |
CN101510885B (en) | The server of home network and equipment and control method thereof | |
US8176343B2 (en) | Method for providing information for power management of devices on a network | |
CN112667301A (en) | Docking station implementation method and system of vehicle-mounted operating system and electronic equipment | |
US20060129700A1 (en) | Bridging a local bus with a data network | |
JP2005528830A (en) | Streaming audio / video guidance in home appliances | |
US9948748B2 (en) | Method of receiving/transmitting event message, controlled device, and control point |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: INTEL CORPORATION, CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:ANDANI, BABITA H.;REEL/FRAME:012342/0948 Effective date: 20011129 |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |