US20070250767A1
2007-10-25
11/823,047
2007-06-25
A egocentric network including an author, a document created by the author, the document for dissemination over a computer network, a recipient for receiving the document from the author, a first egocentric network monitor for presenting a visual and/or audio representation of a point of view of the author for the document and a point of involvement for the document, a second egocentric network monitor for presenting a visual and/or audio representation of a point of view of the recipient for the document and a point of involvement for the document, and a point of involvement for said document. In addition, methods and apparatuses for sharing and communicating information over a computer network are included.
Get notified when new applications in this technology area are published.
H04L67/104 » CPC main
Network arrangements or protocols for supporting network services or applications; Protocols in which an application is distributed across nodes in the network Peer-to-peer [P2P] networks
H04L63/10 » CPC further
Network architectures or network communication protocols for network security for controlling access to network resources
H04L67/34 » CPC further
Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parametersΒ
H04L69/329 » CPC further
Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass; Definitions, standards or architectural aspects of layered protocol stacks; Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level; Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
H04L51/04 » CPC further
User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail Real-time or near real-time messaging, e.g. instant messaging [IM]
H04L67/02 » CPC further
Network arrangements or protocols for supporting network services or applications; Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
H04L2463/101 » CPC further
Additional details relating to network architectures or network communication protocols for network security covered by applying security measures for digital rights management
G06F15/00 IPC
Digital computers in general ; Data processing equipment in general
This application claims benefit under 35 U.S.C. Β§119(e) of the filing date of U.S. Provisional Application No. 60/276,386 filed Mar. 16, 2001; the entire disclosure of which is incorporated herein by reference.
BACKGROUND OF THE INVENTION1. Field Of The Invention
The invention relates to the field of information networks, information gathering, altering and sharing, and more particularly, the invention relates to techniques for the assembly and arrangement of multiple format information into a work for forwarding to third parties and publishing to on a computer network.
2. Background of Related Prior Art
Electronic Mail (E-mail) and other messaging systems provide a means for sending electronic messages from one computer user to another. E-mail has advantages of convenience, format and storage of messages for later retrieval. As such, E-mail has been accepted and widely used for basic communication. E-mail is typically a text based format, however, and proves to be very limiting for the communication of complex documents, such as reports, articles, advertisements, images, audio and video.
E-mail systems do provide a means for distributing images, audio and video information by appending to a text based E-mail message with an associated file to be downloaded along with the E-mail message. However, such rich media files tend to be too large to be downloaded efficiently. Moreover, most systems that allow the appending of an associated file are designed to allow a single user to send unsecured files to an associate or friend, and neither allow for controlled automated distribution to multiple recipients, nor do they provide advanced accounting, billing or other such features (e.g., receipt notification). E-mail gateways also limit the size and applicability of attachments, and do not solve the problems of security and receipt notation or acknowledgment.
Within the past decade, the Internet, corporate intranets and personal computers have become full of rich media content including pictures, music, animation, and video. If a person wishes to communicate using any combination of this rich media, it is a laborious process. Each piece of information must be integrated into a user's e-mail as a separate attachment. These attachments are usually large files having disparate formats. A recipient of an e-mail message with attached rich media files must download each of these large attachments individually and then hope to have the appropriate applications or plug-ins to view each of the attachments.
SUMMARY OF THE INVENTIONThe present invention includes authoring and communicating methods and apparatuses for disseminating and managing information over a computer network to be viewed on a networked device (e.g., client computer, PDA, cell phone, and the like) via a distribution channel (e.g., email, instant messaging, web page). The information may be presented using a βjust-in-timeβ application or an βapplication on the flyβ. The author composes an authored work to which different information is assembled for viewing and editing, interacting, updating and like. The information may include images, sounds, video, graphics and/or text. The information may be formatted so that when presented, it is displayed in a predetermined manner (e.g., sequenced like a Microsoft Powerpoint presentation) or at the control of the recipient.
After the author has assembled the work, it is compiled, creating a just-in-time application (netomatic application), so that code essential to the creation or invoking of an application for presenting the work (for example: media player, sequencer, audio player), and/or code that is necessary for being presented with the work (i.e., search engine, downstream authoring, instant messaging) is included with the code which details the presentation.
The compiled code includes the essential code for presenting the information (e.g., document) on the recipient's computer. Alternatively, the code may prompt the recipient's computer to download or execute the appropriate application software to present the information. Thus, the presentation preferably includes code elements for creating or invoking an application and for displaying the information to either check to see if the networked device includes a media player (e.g., Windows media, Real media player, etc.), and if so, then invoking the media player to play the information upon the displaying of the presentation (e.g., the opening of an email, the displaying of a banner ad). Alternatively, the networked device may have a netomatic application resident (thus having the particular application elements for presenting a NML document), then all the necessary components will be there to display the presentation.
Any information originating from the authoring computer (video, images, sound) included in the presentation may be uploaded to a server or stored locally at the author's computer, and an external reference to the information is included in the formatted code. Any information which does not originate from the authoring computer will be included by reference in the presentation, and will be included by reference in the compiled code.
The compiled code is then forwarded to a distribution channel for viewing over a networked device. A distribution channel may be a web page, an email, an instant messaging application, a wireless device, or an advertisement banner.
Upon displaying the presentation on a networked device, the information is then retrieved directly from the server from which it resides (either information uploaded to the netomat server or other information stored on other servers of the network). Thus, if the distribution channel is an email, then the essential material in the email is merely the code for creating/invoking the application necessary to display and be presented with the presentation, and code (external reference) for obtaining the information to display during the presentation, resulting in a small file size of the email (e.g., a video presentation email being only 10k in size).
With this idea, aside from including code to create/invoke the application for displaying the presentation, the author may include code for creating/invoking an instant messaging application, a search engine, an annotating tool set (downstream authoring), etc.
Moreover, the present invention is directed to self-managed, and self-created networks (i.e., self-empowered networks) in which popular information is multiplied throughout the network and non-popular information is not. Thus, it is not a problem in determining by a network administrator how much space a document will be entitled to hold on a server, but rather, if the information is popular, its popularity will then determine such space.
The self-empowered, egocentric network thus allows the creator of the information to control access from a single message, to open public access available to web search engines. In effect, a new egocentric network is created for each new document created or edited by an author.
Moreover, the author is always in control of the information which is externally referenced by the NML document. Specifically, another embodiment of the present invention provides for the control of information over a computer network by an author; i.e., an βegocentricβ network. Essentially, in the above authoring embodiment, once the author has uploaded the compiled code and information onto the server (i.e., the netomat server), the compiled code and information includes methods and apparatuses which can control who may access the presentation/information and how it may be accessed. The author may also continually update information contained within his created NML document. Thus, any recipient viewing the NML document to which the author has changed the information contained therein (after the document has been sent) will be presented with the updated information upon viewing the document.
Moreover, the methods and apparatuses according to this embodiment may also tell the author who has accessed the information and how many times the information has been accessed. For example, if a presentation is forwarded through email to a friend of the author, the author can invoke certain rules to limit access to the presentation/information to certain individuals, a certain number of times, etc. The author may also publish the information generally, such that anyone receiving the email (i.e., being forwarded by the original receiving party and subsequent others) can access the information, and that search engines (web crawlers) can find the information for others to access.
In yet another embodiment of the present invention, netomatic markup language (NML), a unique application of extensible markup language (XML) is provided. The code is similar to XML (see the World Wide Web Consortium, Extensible Markup Language (XML) 1.0 specification, 2nd edition 6 Oct. 2000, herein incorporated by reference), but has different, unique semantics. Specifically, the language allows one to create a small file size document that is preferably text based, which contains within the very document itself the information to be communicated, the means of communicating the information (transport), who may create or change the information (authoring), who may view the information (messaging) and how the document may be viewed (presentation). Other computer languages (HTML, XML, SOAP, SMTP) specify solely how the information may look (HTML)< how it is structured (XML), and how it may be transported (SOAP, SMTP). NML allows a single document to specify all of these layers. Accordingly, NML provides a way which allows for the authoring, messaging, and presentation methods and apparatuses briefly described above, as well as the egocentric network.
Accordingly, in a first aspect of the present invention, a method of communicating information includes authoring a document in a code for presenting information contained within the document in a predetermined manner on a networked device. The code comprises specific code for communicating the document over a computer network, code for controlling who may create and/or change the information contained in the document, code for controlling who may view the information contained within the document and code for how the document is presented on a networked device. The method further includes disseminating the document through a computer network, either by uploading the document to a server or by making the document available through peer-to-peer networking, and forwarding the document to a distribution channel for presenting the document on the networked device. When the document arrives at the distribution channel, the code creates or invokes a first application for presenting the document in a predetermined manner.
The above aspect may also include code which also creates or invokes a second application for being presented with the document. Such a second application may be a downstream authoring tool.
In another aspect of the present invention, a method of communicating information includes formatting a document in a code for presenting information contained within the document in a predetermined manner on a networked device and compiling the code into a file of compiled code such that a necessary element for creating or invoking a first application for presenting the document and/or for creating or invoking a second application for being presented with the document is included in the compiled code. The method further includes disseminating the file through a computer network, either by uploading the file to a server or by making the file available through peer to peer networking and forwarding the compiled code of the file to a distribution channel for presenting the document on the networked device. Upon the compiled code arriving at the distribution channel, the necessary element creates or invokes the first application for presenting the document in the predetermined manner and/or creates or invokes the second application for being presented with the document.
The distribution channels may include any one or more of email, published web page, wireless device, banner advertisement and instant messaging application.
The first application may be an audio/video viewer for presenting the information contained within the document. Moreover, the second application may be an authoring tool for allowing a user at the client to annotate the document, may be an internet search engine, and an instant messaging application.
In another aspect of the present invention, a document for disseminating over a computer network having informational content and computer readable code comprising code for communicating the document over the computer network, code for controlling who may create and/or change the informational content, code for controlling who may view the informational content and code for how the document is presented on a networked device.
In yet another aspect of the present invention, an apparatus for communicating information includes formatting means for formatting a document in a code for presenting information contained within the document in a predetermined manner on a networked device, compiling means for compiling the code into a file of compiled code such that a necessary element for creating or invoking a first application for presenting the document and/or for creating or invoking a second application being presented with the document is included in the compiled code, disseminating means for disseminating the file through a computer network, either by uploading the file to a server or by making the file available through peer to peer networking, forwarding means for forwarding the compiled code of the file to a distribution channel for presenting the document on the networked device. Upon the compiled code arriving at the distribution channel, the necessary element creates or invokes the first application for presenting the document in the predetermined manner and/or creates or invokes the second application for being presented with the document.
In yet another aspect of the present invention, a method of communicating and controlling access to information includes formatting a document in a code for presenting information contained within the document in a predetermined manner in an email message upon the opening of the message, where the information is stored on a server and formatting the presentation includes using external references to the information. The method also includes compiling the code into a file of compiled code such that a necessary element for creating or invoking a first application for presenting the document and/or for creating or invoking a second application being presented with the document is included in the compiled code, disseminating the file through a computer network, either by uploading the file to a server or by making the file available through peer-to-peer networking, and forwarding the compiled code to a distribution channel for viewing on a networked device. Rules for accessing the file are specified by an author of the document and upon the compiled code arriving at the distribution channel, the necessary element creates or invokes the first application for presenting the document in the predetermined manner and/or creates or invokes the second application for being presented with the presentation.
In still yet another aspect of the present invention, an egocentric network includes an author, a document created by the author, the document for dissemination over a computer network, a recipient for receiving the document from the author, a first egocentric network monitor for presenting a visual and/or audio representation of a point of view of the author for the document and a point of involvement for the document, a second egocentric network monitor for presenting a visual and/or audio representation of a point of view of the recipient for the document and a point of involvement for the document, and a point of involvement for the document.
Other aspects of the present invention include:
Other aspects of the invention include a computer-readable medium having computer-executable instructions for performing the methods recited in the above aspects.
BRIEF DESCRIPTION OF THE DRAWINGSFIG. 1 illustrates an overview of an egocentric network according to the present invention.
FIG. 2 illustrates a workflow overview of the egocentric network according to the present invention.
FIG. 3 illustrates an authoring workflow of the egocentric network according to the present invention.
FIG. 4 illustrates a control flow display of the decision process used to control persistence within an egocentric network according to the present invention.
FIG. 5 illustrates the workflow of a just-in-time application according to the present invention.
FIG. 6 illustrates an overview of a messaging framework within the egocentric network according to the present invention.
FIG. 7 illustrates a display of message attributes and states within the egocentric network according to the present invention.
FIG. 8 illustrates a display of the editing workflow within the egocentric network according to the present invention.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTSIllustrative embodiments of the present invention described below provide a computer readable language which separates content from the authoring, presentation, messaging, and transport of the content in a document. More particularly, the invention is directed to a computer readable language which contains within a document written with the language, not only the information to be communicated, but also includes information depicting the means (e.g., email, instant messaging) and the protocol of communicating it, information regarding who may create or change the information, information on who may view the information and information on how the information may be viewed. All of this information being contained within a text document which is easily searchable, and which is small in file size for easy dissemination throughout a computer network.
Those skilled in the art will appreciate, however, that embodiments in accordance with the invention are not limited to messaging, but, rather, may also be used in presenting and disseminating any information over a computer network. Those skilled in the art will also recognize that the inventions disclosed herein will also may be used in a variety of systems and architectures. Embodiments of the invention will be described with reference to FIGS. 1-8 which are not intended to limit the scope of the claims.
FIG. 1 illustrates an Egocentric Network according to the present invention. The Egocentric Network generally preferably includes an Author 11, an NML Document 115, a Recipient 19, a Point-of-View 117 of the Author, a Point-of-View 116 of the Recipient and a Point of Involvement 118 of the NML Document. To that end, the Author creates a NML Document using a Networked Device 12, such as (for example) a personal computer on a local area network, via an Audiovisual User Interface 13. The created NML Document includes Meta Information 14 which comprises a Point of View Definition 15 and supports an Egocentric Network Monitor 16.
The Author disseminates (i.e., messages) the NML Document to a Recipient through an Existing Computer Network 119 or a Native netomatic markup language protocol (NMLP) Network 130 (collectively as Network). The dissemination creates the Point of View 117 from the Networked Device 12 of the Author. The Point of View 117 and the Point of View 116 reflect interactions, for each of the Author and Recipient, respectively, with one or more instances by a Recipient, NML Document 115, an Author or other resources in the Network.
An Egocentric Network Monitor 16 presents an audiovisual representation of the egocentric network of Author 11 on Networked Device 12. This representation includes representation of a Point of View 117 and a Point of Involvement 118 for each NML Document the Author 11 has created, edited, forwarded, or replied to. Thus, as recipients interact with the Author's NML Document 115 on the Network, Meta Information 123 pertaining to NML Document 115 is displayed by the Egocentric Network Monitor 16 of the Author.
Correspondingly, an Egocentric Network Monitor 114 of Recipient 19 presents an audiovisual representation of the egocentric network of Recipient 9 on a networked device 110 of the recipient. This representation includes Point of View 116 and Point of Involvement 118 for each NML Document the Recipient 9 has received, edited, forwarded, or replied to.
The Recipient 19 interacts with NML Document 115 using the Networked Device 110 (i.e., a networked personal computer) through an Audiovisual User Interface 111 which makes available certain Meta Information 112, Point of View Definition 113 and the Recipient's Egocentric Network Monitor 114. An intersection of the Author's Point of View 117 and the Recipient's Point of View 116 of NML Document 115 creates a Point of Involvement 118 about NML Document 115. The Point of Involvement 118 of NML Document 115 contains how various instances of Recipient 19 and other nodes in the Network are interacting with NML Document 115. The Point of Involvement 118 is updated for each interaction between an Author 11 and NML Document 115 or Recipient 19 and NML Document 115.
When a NML Document is disseminated through the Network, it is typically stored on a computer Server A 120 with Data 21 (for example). The Computer Server A contains a Meta Document Description 123 which comprises Resources 124 and Meta Information 127 about each NML document uploaded. Dynamic resources of the document are described via Dynamic Resource Descriptor 125 and persistent resources are identified through Persistent Resource Identifier 126. The Meta Information 127 contains a Point of Involvement Definition 128 and Processing Instructions 129 for the NML Document 115.
As shown in FIG. 2, an NML document 23 is created by an Author 21 who messages 24 the document (e.g., via email, instant messaging) to a recipient. The NML Document 23 is stored within the Egocentric Network through a Persist process 22. A recipient of the document may Edit 25 the document and store changes or updates through the Persist process as well. Such changes and updates create an NML Fragment 27. The NML Fragment 27 may then be re-sent to other recipients through the Message process. An example of such an NML fragment is set out below.
| <?xml version=β1.0β encoding=βUTF-8β?> |
| <nml version=β1.0β> |
| ββ<nmlHeader> |
| ββββ<nmlHeaderRef |
| ββββuri=βhttp://www.netomat.net/forbes/frag/header/update?β/> |
| ββ</nmlHeader> |
| ββ<nmlBody> |
| ββββ<nmlFrag id=β780kjgf6754dfgβ> |
| ββββββ<ContextDef path=β/group/β |
| parentRef=βhttp://www.netomat.net/amelie/pop.nmlβ |
| insert=βtrueβ/> |
| ββββββ<group id=β5_pic3β> |
| ββββββββ<image noHighlight=βtrueβ |
| ββββββββhref=β5_pic3_pop.gifβ x=β525β y=β180β |
| permeable=βtrueβ/> |
| ββββββββ<text noHighlight=βtrueβ |
| x=β390β y=β25β color=β#ff6600β font=βCourier:11, sans-serif:11β |
| text=βAmelie Poulain has promised to become a regular |
| do-gooder.β align=βleftβ/> |
| ββββββ</group> |
| ββββ</nmlFrag> |
| ββ</nmlBody> |
| </nml> |
NML documents are created by an Author importing information, which may include other NML Documents or other multimedia data according to FIG. 3. The information 32 may be included in the NML document via an external reference 33 or by inclusion 34. Fragments 35 may be identified by the author, which may be assigned attributes or permissions through a Set Permissions step 36.
An NML document is stored on the egocentric network through the Persist process 37, which causes the NML Document 31 to be saved 310 as a persistent NML Document 314. The persistent NML document includes a NML Header 316, which includes meta-information about the NML persistent document, and a NML Body 317 having the contents (information) of the NML Document 314. Embodied within Persist 37 step is the Distill process 39 which creates a Direct Labeled Graph 313. The Direct Labeled Graph 313 is a representation of NML Document 314 in the Resource Description Framework (RDF) format and contains information about the NML Document as well as its relationship to other documents. Such an NML sample containing an RDF document in the NML header is shown below:
| <?xml version=β1.0β encoding=βUTF-8β?> |
| <nml version=β1.0β> |
| ββ<nmlHeader> |
| ββββ<rdf:RDF xmlns:rdf=βhttp://www.w3.org/1999/02/22-rdf-syntax-ns#β |
| xmlns:nml=βhttp://www.netomat.net/rdf/schema/β> |
| ... |
| β<rdf:Description |
| about=βhttp://www.netomat.net/db/recreation/sports/golf/golfers/men/TigerWoods/β> |
| ββββββββ<nml:Scenegraph> |
| ββββββββββ<nml:NMLObj> |
| about=βhttp://www.netomat.net/db/recreation/sports/golf/golfers/men/TigerWoods/tw2β> |
| ββββββββββββ<nml:PanRight>15.0</nml:PanRight> |
| ββββββββββββ<nml:Zoom>1.053</nml:Zoom> |
| ββββββββββ</nml:NMLObj> |
| ββββββββ</nml:Scenegraph> |
| ββββββ</rdf:Description> |
| ββββββ<!-- ....--> |
| ββββββ<rdf:Description about=βhttp://mycollege.edu/courses/6.001β> |
| ββββββββ<nml:Players> |
| ββββββββββ<rdf:Bag> |
| ββββββββββββ<rdf:li |
| resource=βhttp://www.netomat.net/db/recreation/sports/golf/golfers/men/TigerWoods/tw1β/> |
| ββββββββββββ<rdf:li |
| resource=βhttp://www.netomat.net/db/recreation/sports/golf/golfers/men/TigerWoods/tw3β/> |
| ββββββββββββ<rdf:li |
| resource=βhttp://www.netomat.net/db/recreation/sports/golf/golfers/men/TigerWoods/tw4β/> |
| ββββββββββββ<rdf:li |
| resource=βhttp://www.netomat.net/db/recreation/sports/golf/golfers/men/TigerWoods/tw5β/> |
| ββββββββββββ<rdf:li |
| resource=βhttp://www.netomat.net/db/recreation/sports/golf/golfers/men/TigerWoods/tw6β/> |
| ββββββββββ</rdf:Bag> |
| ββββββββ</nml:Players> |
| ββββββββ<nml:TrackRight |
| resource=βhttp://www.netomat.net/db/recreation/sports/golf/golfers/men/TigerWoods/tw6β/> |
| ββββββ</rdf:Description> |
| ββββββ<!-- ....--> |
| ββββββ<rdf:Description |
| about=βhttp://www.netomat.net/db/recreation/sports/golf/golfers/men/TigerWoods/β> |
| ββββββββ<nml:Camera> |
| ββββββββββ<rdf:Bag> |
| ββββββββββββ<rdf:li |
| resource=βhttp://www.netomat.net/db/recreation/sports/golf/golfers/men/TigerWoods/tw7β/> |
| ββββββββββββ<rdf:li |
| resource=βhttp://www.netomat.net/db/recreation/sports/golf/golfers/men/TigerWoods/tw10β/> |
| ββββββββββββ<rdf:li |
| resource=βhttp://www.netomat.net/db/recreation/sports/golf/golfers/men/TigerWoods/tw11β/> |
| ββββββββββ</rdf:Bag> |
| ββββββββ<nml:Camera> |
| ββββββββ<nml:DollyForward |
| resource=βhttp://www.netomat.net/db/recreation/sports/golf/golfers/men/TigerWoods/tw6β/> |
| ββββββ</rdf:Description> |
| ββββββ<!-- ....--> |
| ββββ</rdf:RDF> |
| ββ</nmlHeader> |
| ββ<nmlBody> |
| ββββ<!-- ....--> |
| ββ</nmlBody> |
| </nml> |
An Optimize NML process 38 occurs after the Persist process and creates an Optimized NML Document 312, optimized for display or use on specific platforms or delivery through specific transport protocols. The Optimize NML process also updates the Direct Labeled Graph 313 with information about, for example, a compression algorithm used to create the Optimize NML Document 312.
The Persist process 37 is also followed by a Compile step 311 which creates a just-in-time application (netomatic) 315, which includes the application code and informational content required to present or display the information contained within NML Document 314.
FIG. 4 illustrates the Persistence process, that is, the determination of how to store an NML Document. Initially, a decision is made whether to persist the NML document locally to the computer originating the information or remotely to the computer network (41). If it is decided to persist the NML document locally (42), then a decision is made whether or not to immediately persist the document (44). If the document is not immediately persisted (46) then a decision is made whether to Forget the document (410). If the document is not forgotten (414) then the document is saved locally after a predetermined period of time passes (422). Accordingly, the NML Document is now in a Persisted state 438.
Alternatively, if it is decided that the NML Document is forgotten (415), then the NML Document is Deleted (431) after a predetermined period of time passes. The direct labeled graph for the document is updated (439). The NML Document is then in an expired state 443.
Continuing with FIG. 4, if it is decided to store the document immediately (47), then a decision is made whether to Forget (411) the NML Document. If the document is not forgotten (416), then the NML document is stored locally (424), and the NML Document is persisted (432). If it is decided to forget (417) the document, then the NML Document is deleted (425) and the direct labeled graph for the document is updated (445). The NML Document is then in a Forgotten state (433).
For remote persistence, a similar process to that of local persistence occurs. Thus, initially it is determined whether the NML document is immediately persisted (45). If the document is not immediately persisted (48), then it is decided whether or not to Forget (412) the NML Document. If the document is not forgotten (418), then the document, and its included assets, is uploaded to a remote server (434), after a predetermined period of time (426). The document is now persisted (440). If the document is forgotten, then the NML document is removed by being deleted (435) after a predetermined period of time, and the direct labeled graph for the document is updated (441). The NML Document is then in the expired state (444).
If the document is immediately persisted (49), and is not forgotten (413, 420), then the process uploads the NML Document and its included assets to a remote server (428). The NML Document is now persisted (436). If the document is forgotten (421) then the NML Document is deleted (429) and the direct labeled graph for the NML Document is updated 437. The NML Document is now in the Forgotten 442 state.
One of the predominant features of the present invention is the ability to create a βjust-in-timeβ application (the βnetomaticβ application), as shown in FIG. 5, which illustrates the process of compiling an NML Document into a netomatic, just-in-time application. Accordingly, an author creates an NML Document 51 through the Authoring and Persistence processes described in FIG. 3 and FIG. 4. The NML Document 51 is processed via Generate xSchema Grammar 52 to create an xSchema Grammar 53 for the NML Document 51. This xSchema Grammar 53 is processed via Generate Source Code 54 which results in Source Code 55 which is compiled via Compile Source Code 56 into Netomatic Object Code 57. The Netomatic Object Code 57 may be combined with object code libraries specified in NML Document 51 through Link Object Code 58 to create the Netomatic Just-In-Time Application 59. Through Decompile Object Code 510 the NML Document 51 is generated from the Netomatic Object Code 57 and Netomatic Just-In-Time Application 59. Accordingly, below is an example of a decompiled NML Object as produced through Decompile Object Code 510.
| <?xml version=β1.0β encoding=βUTF-8β?> |
| <nml version=β1.0β> |
| ββ<nmlHeader> |
| ββββ<!-- ....--> |
| ββββ<NMLObj id=β3β type=βvectorβ name=βnet.netomat.editor.Dispatchβ value=β3, 7, |
| 10, 42, 45, 48, 50, 53, 57, 60, 63, 66, 69, 72, 75, 78, 81, 88, 93, 97, 102, 106, 111, 113, |
| 116, 119, 122, 124, 126, 128, 130, 132, 134, 136, 138, 140, 142, 144, 146, 148, 150, 152, |
| 154, 157, 159, 162, 165, 168β> |
| ββββββ<NMLObj type=βfloatβ name=βnet.netomat.editor.Transformβ |
| value=β0.4824945fβ/> |
| ββββ</NMLObj> |
| ββββ<NMLObj id=β4β type=βURIβ name=βnet.netomat.editor.Linkβ value=β3,5,76,40β |
| from=β2β to=β5β/> |
| ββββ<NMLObj id=β5β type=βstringβ name=βnet.netomat.editor.TextGenβ value=βTiger |
| Woods broke through an imaginary "picket line" this week when he filmed a |
| commercial in Toronto for General Motors as part of his contractual obligation as a Buick |
| spokesman.β> |
| ββββββ<NMLObj name=βjava.awt.Fontβ value=βArial, 18β/> |
| ββββββ<NMLObj name=βjava.awt.geom.AffineTransformβ value=β4.100451741799471d, |
| 0.0d, 0.0d 4.100451741799471d, β1646.7296391909335d, β7965.192829330378dβ/> |
| ββββ</NMLObj> |
| ββββ<NMLObj id=β7β type=βimageβ name=βnet.netomat.editor.Pictureβ |
| url=βhttp://www.golfonline.com/images/tw.gifβ alt=βTiger Woods filming a commercial in |
| Toronto for General Motorsβ altURL=βhttp://www.netomat.net/cache/tw.gifβ> |
| ββββββ<NMLObj name=βjava.awt.geom.AffineTransformβ value=β5.020905480709362d, |
| 0.0d, 0.0d 5.020905480709362d, β27.15499822839189d, β3135.314758270212dβ/> |
| ββββ</NMLObj> |
| ββββ<NMLObj id=β8β type=βURIβ name=βnet.netomat.editor.Linkβ value=β7, 10, 24 88, |
| 93, 97, 102, 106,β from=β10β to=β24β/> |
| ββββ<!-- ....--> |
| ββ</nmlHeader> |
| ββ<nmlBody> |
| ββββ<!-- ....--> |
| ββ</nmlBody> |
| ββ</nml> |
The process for sending an NML document from an author to one or more recipients is illustrated in FIG. 6 (i.e., messaging). The Author 61 authors, sets attributes and permissions 62 on an NML Document 63 and Persists the document to a computer Server A 64. The Author 61 then Sends 65 a reference to the NML Document 63 to a Recipient 66. The mode of communication may be either synchronous (e.g., instant messaging) or asynchronous (e.g., email). When the Recipient 66 opens the NML Document 63 and downloads the related assets 67 an NML Reply 68 is sent to the Author 61 (to be viewed on the Author's egocentric network monitor).
The Recipient 66 may also create an NML Reply 69 by editing or changing the NML Document 63 and storing such changes to computer Server A 64.
The Recipient 66 may also prepare to forward 611 the NML document by copying the NML Document 63 to NML Document 612 on Computer Server B 613. This causes the Direct Labeled Graph corresponding to NML Document 63 to be Updated 610 on computer Server A 64. The Recipient 66 may then Send 614 the NML Document 612 to other Recipients 615 to download 616 the NML Document 612 and related assets from computer Server B 613.
FIG. 7 illustrates the messaging attributes, permissions, and states which may be ascribed to an NML Document. Accordingly, a Recipient 71 with a local or cached copy of an NML Document 72 places the NML Document in the Refresh 73 state by reloading or refreshing the contents of the NML Document 72 from computer Server A 74. This Refresh 73 causes an update 75 to the Direct Labeled Graph corresponding to the NML Document 72 on computer Server A 74.
The Recipient 71 may Copy 76 the NML Document 72 to NML Document 77 on computer Server B 78. This Copy 76 action places the NML Document 77 in the βcopyβ state. The Direct Labeled Graph for NML Document 72 on computer Server A 74 is not updated. A new Direct Labeled Graph is created to represent NML Document 77 on computer Server B 78.
The Recipient 71 may Send the NML Document 77 on to other Recipients 710 causing an update to the Direct Labeled Graph for NML Document 77 on computer Server B 78. Recipients 710 will Download 711 the NML Document 77 and related assets from computer Server B 78.
The Recipient 71 may place the NML Document 77 in the Delete 73 state on the computer Server B 78. This causes the NML Document 77 and its related assets to become unavailable for use by either Recipient 71 or Recipients 710 and causes an update to the Direct Labeled Graph for NML Document 77 on computer Server B 78 to reflect that NML Document 77 is in the Delete 73 state.
Existing NML documents may be edited as shown in FIG. 8. Accordingly, an author or recipient Edits 81 an existing NML Document 82 by Changing 83 existing assets, Importing 84 additional assets and/or by Setting Permissions 85 on the NML Document 82. The NML Document 82 is stored to the egocentric network through the Persist 86 process which causes the changes to the NML Document 82 to be stored through Update 88 to a persistent NML Document Fragment 812. An NML Document Fragment 812 comprises an NML Header 813 and an NML Fragment Body 814, which is preferably comprised solely of those changes to NML Document 82. The NML Header 813 includes meta-information about NML Document 814.
Embodied within Persist 85 step is a Distill 89 process which creates the Direct Labeled Graph 810. The Direct Labeled Graph 810 is a representation of NML Document Fragment 812 in a resource description framework (RDF) format. The Direct Labeled Graph 810 contains information about NML Document Fragment 812, its relationship to the original NML Document 2 as well as the relationship to other documents.
The Optimize NML 87 process occurs after the Persist process 86 and creates an Optimized NML Document Fragment 88. The Optimized NML Document Fragment 88 is optimized for display or use on specific platforms or delivery through specific transport protocols. The Optimize NML 78 process also updates the Direct Labeled Graph 810 with information about the compression algorithm used to create the Optimize NML Document Fragment 88.
The Persist 86 process is also followed by a Compile 815 step which creates a just-in-time application (Netomatic) 816. The Netomatic 816 includes the application code and information content required to present or display the information contained within NML Document 82 and NML Document Fragment 812.
Below are examples of various NML documents according to the present invention for reference.
Sample NML code for a Platform Component Configuration: The header of this document describes a node (i.e. a client computer or networked device) on a network, how the node is configured and describes the services to which this node subscribes.
| <?xml version=β1.0β encoding=βUTF-8β?> |
| <nml version=β1.0β> |
| ββ<nmlHeader> |
| ββββ<Version id=β1000x003β number=β9β/> |
| ββββ<Host hostURL=βhttp://www.netomat.net/data/β hostName=βnetomat.netβ/> |
| ββββ<Name title=βnetomatβ/> |
| ββββ<Author firstname=βmaciejβ lastname=βwisniewskiβ/> |
| ββββ<Date date=βJune 12 1999β/> |
| ββββ<User name=βmaciejβ id=βmzwβ password=βferh%df7sjd9β |
| SMTPserver=βwww.interport.netβ POPserver=βpop.interport.netβ email=βmzw@interport.netβ/> |
| ββββ<OperatingSystem name=βWinβ version=β95β/> |
| ββββ<Java version=βJRE1.2.2β vendor=βSunβ/> |
| ββββ<Proxy type=βsocksβ address=βsocks.netomat.netβ port=β1080β/> |
| ββββ<Speed bps=β128000β/> |
| ββββ<NetworkingEngine name=βnet.netomat.networkβ version=β0.8bxβ/> |
| ββββ<DisplayEngine name=βnet.netomat.layoutβ version=β0.9floatCβ/> |
| ββββ<SoundEngine name=βnet.netomat.media.soundβ version=β0.5bβ/> |
| ββββ<TranslationEngine name=βnet.netomat.tranlaterβ version=β0.3β/> |
| ββββ<EditingEngine name=βnet.netomat.editorβ version=β0.7fgβ/> |
| ββββ<EncodingEngine name=βnet.netomat.encoderβ version=β0.8β/> |
| ββββ<XMLEngine name=βorg.apache.xerces.parsersβ version=β1.2.0β/> |
| ββββ<XMLObjetModel name=βorg.apache.xerces.dom.traversalβ version=β1.2.0β/> |
| ββββ<!-- ....--> |
| ββββ<Service protocol=βhttpβ method=βpostβ uri=βhttp://www.netomat.net/bin/data?β> |
| ββββββ<ServiceCondition timeout=β10β timeLimit=β60β maxSize=β150Kβ/> |
| ββββββ<ServiceFormat type=βjpeg, gif, png, bmp, nml, html, txtβ/> |
| ββββββ<ServiceFailure> |
| ββββββββ<ServiceUnavailableException uri=βhttp://www.thing.net/cgi- |
| bin/redirect?β/> |
| ββββββββ<ServiceBusyException retry=β3β wait=β30β/> |
| ββββββββ<TimeLimitExceededException process=βtrueβ/> |
| ββββββββ<SizeLimitExceededException process=βfalseβ/> |
| ββββββββ<SchemaViolationException process=βfalseβ/> |
| ββββββββ<CommunicationException process=βtrueβ/> |
| ββββββββ<OperationNotSupportedException process=βtrueβ/> |
| ββββββ</ServiceFailure> |
| ββββββ<ServiceQueryString query=βqβ interface=βxpathβ/> |
| ββββββ<ServiceStream starts_with=β<service>β |
| ends_with=β</service>β trim_to=β<service>β trim_from=β</service>β/> |
| ββββββ<ServiceRange start=β0β end=βEOFβ/> |
| ββββ</Service> |
| ββββ<!-- ....--> |
| ββββ<Service protocol=βftpβ uri=βftp://ftp.netomat.net/β> |
| ββββββ<!-- ....--> |
| ββββ</Service> |
| ββββ<!-- ....--> |
| ββ</nmlHeader> |
| ββ<nmlBody> |
| ββββ<group> |
| ββββββ<rect color=β#ffffffβ fillColor=β#ffffffβ height=β450β width=β650β/> |
| ββββββ<image noHighlight=βtrueβ href=β12e_pic.jpgβ/> |
| ββββββ<anchor rollover=βjump(@12b.nml)β> |
| ββββββββ<image noHighlight=βtrueβ href=β12b_thumb.jpgβ x=β400β y=β0β/> |
| ββββββ</anchor> |
| ββββββ<anchor rollover=βjump(@12d.nml)β> |
| ββββββββ<image noHighlight=βtrueβ href=β12d_thumb.jpgβ x=β265β |
| y=β115β/> |
| ββββββ</anchor> |
| ββββββ<anchor rollover=βjump(@12c.nml)β> |
| ββββββββ<image noHighlight=βtrueβ href=β12c_thumb.jpgβ x=β400β |
| y=β276β/> |
| ββββββ</anchor> |
| ββββββ<anchor rollover=βjump(@12a.nml)β> |
| ββββββββ<image noHighlight=βtrueβ href=β12a_thumb.jpgβ x=β45β y=β280β/> |
| ββββββ</anchor> |
| ββββββ<image noHighlight=βtrueβ href=βlogo.gifβ x=β530β y=β120β/> |
| ββββββ<image noHighlight=βtrueβ href=β12_clocktext.gifβ x=β476β y=β178β/> |
| ββββββ<text file=β/netomat/poll?src=12a.nmlβ font=βVerdana:11, sans-serif:11β |
| x=β454β y=β220β color=β#ff6600β/> |
| ββββββ<clock timeZone=βECTβ font=βVerdana:11, sans-serif:11β x=β500β y=β172β |
| color=β#ff6600β/> |
| ββββββ<clock timeZone=βJSTβ font=βVerdana:11, sans-serif:11β x=β524β y=β185β |
| color=β#ff6600β/> |
| ββββββ<clock timeZone=βESTβ font=βVerdana:11, sans-serif:11β x=β500β y=β200β |
| color=β#ff6600β/> |
| ββββββ<clock timeZone=βPSTβ font=βVerdana:11, sans-serif:11β x=β510β y=β212β |
| color=β#ff6600β/> |
| ββββββ<anchor click=βjump(@booth.nml)β> |
| ββββββββ<image href=β12_arrow.gifβ noHighlight=βtrueβ x=β287β y=β26β/> |
| ββββββ</anchor> |
| ββββββ<anchor click=βjump(@4.nml)β> |
| ββββββββ<image href=β12_video.gifβ noHighlight=βtrueβ x=β589β y=β0β/> |
| ββββββ</anchor> |
| ββββββ<anchor click=βjump(@20.nml)β> |
| ββββββββ<image href=β12_letter.gifβ noHighlight=βtrueβ x=β213β |
| y=β337β/> |
| ββββββ</anchor> |
| ββββ</group> |
| ββ</nmlBody> |
| ββ</nml> |
| Sample NML Code for incorporating a web meta-search interface into a document. This example |
| retrieves search results from multiple sources:<?xml version=β1.0β encoding=βUTF-8β?> |
| <nml version=β1.0β> |
| ββ<nmlHeader> |
| ββββ<!--...--> |
| ββββ<Version compatible=β1000x003β description=βContains update to 1000x002β |
| size=β30066β/> |
| ββββ<!--...--> |
| ββββ<Service protocol=βhttpβ method=βpostβ stream=βtext/htmlβ |
| objectModel=βpatternβ> |
| ββββββ<!--...--> |
| ββββββ<TextURI uri=βhttp://www.altavista.com/cgi- |
| bin/query?kl=XX&pg=q&text=yes&q=qβ/> |
| ββββββ<TextQueryString query=βqβ/> |
| ββββββ<TextStream starts_with=β<dd>β ends_with=β</dd>β |
| trim_to=β<dd>β trim_from=β</dd>β/> |
| ββββββ<TextURI uri=βhttp://www.northernlight.com/nlquery.fcg?cb=0&qr=qβ/> |
| ββββββ<TextQueryString query=βqβ/> |
| ββββββ<TextStream starts_with=β<td valign=top><FONT size=2 |
| face=arial,helvetica>β ends_with=β</a><br>β trim_to=β">β |
| trim_from=β</a><br>β/> |
| ββββββ<ImageURI |
| uri=βhttp://arribavista.com/Searching/Search_Results.asp?ss=q&SearchType=pictureβ/> |
| ββββββ<ImageQueryString query=βqβ/> |
| ββββββ<ImageStream starts_with=β<a href="javascript:URLLinker(β |
| ends_with=β</a>β trim_to=β','β trim_from=β')" |
| onmouseover="window.status='click to view on the web'; return true" |
| title=β/> |
| ββββββ<ImageURI uri=βhttp://ston.jsc.nasa.gov/cgi- |
| bin/SFgate?database=edcc2.jsc.nasa.gov%3A210%2FPAO&convert=waistoimg&directget=1& |
| text=q&maxhits=10β/> |
| ββββββ<ImageQueryString query=βqβ/> |
| ββββββββ<ImageStream starts_with=β<A HREF="β |
| ends_with=β</B><BR>β trim_to=β<A HREF="β trim_from=β" > <img |
| align=leftβ/> |
| ββββββ<ImageURI |
| uri=βhttp://scour.net/Search/Search.phtml?protocol=all&index=image&query=qβ/> |
| ββββββ<ImageQueryString query=βqβ/> |
| ββββββ<ImageStream starts_with=β<TR><TD align="center" |
| valign="center">β |
| ends_with=βborder="0"></A></TD></TR>β trim_to=β<A |
| href="β trim_from=β"><IMG src="http://media.scour.netβ/> |
| ββββββ<SoundURI |
| uri=βhttp://scour.net/Search/Search.phtml?protocol=&broadband=&query=q&index=wav& |
| amp;protocol=all&x=11&y=8β/> |
| ββββββ<SoundQueryString query=βqβ/> |
| ββββββ<SoundStream starts_with=β<TD rowspan="2" |
| class="smallFeatureCopy" align="center">β |
| ends_with=βborder="0"></A></TD>β trim_to=β<A href="β |
| trim_from=β" class="normalFeatureLink">β/> |
| ββββββ<!--...--> |
| ββββ</Service> |
| ββββ<!--...--> |
| ββ</nmlHeader> |
| ββ<nmlBody> |
| ββββ<group> |
| ββββββ<image href=βmenu.jpgβ/> |
| ββββββ<anchor click=βlink(http://www.netomat.net)β> |
| ββββββββ<image href=βneto_logo.gifβ x=β200β y=β2β/> |
| ββββββ</anchor> |
| ββββββ<image href=βgnome.jpgβ x=β34β y=β14β/> |
| ββββββ<anchor click=βpopup(menu@pop.nml)β> |
| ββββββββ<image href=βindex_logo.gifβ x=β268β y=β404β/> |
| ββββββ</anchor> |
| ββββββ<image href=βbinoc.gifβ x=β382β y=β263β/> |
| ββββββ<image href=βcafe.gifβ x=β103β y=β345β/> |
| ββββββ<anchor rollover=βpopup(menu_english@pop.nml)β> |
| ββββββββ<image href=βmenu_french.gifβ x=β189β y=β36β/> |
| ββββββ</anchor> |
| ββββββ<anchor click=βjump(@booth.nml)β> |
| ββββββββ<image href=βmenu_photo.gifβ x=β489β y=β35β/> |
| ββββββ</anchor> |
| ββββ</group> |
| ββ</nmlBody> |
| ββ</nml> |
Sample NML Code for Capturing, in an NML document, the search results retrieved from a web search using a web meta-search interface according to the above sample code as well as meta-information about the search such as the original search query, time stamps, categories within which the results were found, etc.:
| <?xml version=β1.0β encoding=βUTF-8β?> |
| <nml version=β1.0β> |
| ββββ<nmlHeader> |
| ββββββ<!-- ....--> |
| ββββββ<Service uri=βhttp://search.yahoo.com/bin/search?p=queryStringβ |
| serviceName=βYahooβ queryString=βTiger Woodsβ retcode=β1β query_id=βtw12β total_nr_pages=β42β |
| act_page=β2β act_hits=β654β timestamp=βSept 12 2000 16:04:32β nethit=β23β/> |
| ββββββ<HIT ranking_order=β1β lc=βenβ cc=βusβ> |
| ββββββββ<CATEGORY name=βRecreation > Sports > Golf > Golfers > Men |
| >β value=βWoods Tigerβ/> |
| ββββββββ<TITLE locator=βhttp://www.tigerwoods.com/β>Tiger Woods</TITLE> |
| ββββββββ<ABSTRACT> |
| ββββ- official site of Tiger from CBS SportsLine complete with video interviews, photos, |
| stats and features. |
| ββ</ABSTRACT> |
| ββββββββ<LASTMOD>null</LASTMOD> |
| ββββββββ<DUP locator=βhttp://pages.prodigy.com/boshk/woods.htmβ |
| ranking_order=β6β/> |
| ββββββ</HIT> |
| ββββββ<HIT ranking_order=β2β lc=βenβ cc=βusβ> |
| ββββββββ<CATEGORY name=βRecreation > Sports > Golf > Golfers > Men |
| >β value=βWoods Tigerβ/> |
| ββββββββ<TITLE locator=βhttp://www.pgatour.com/players/intro/8793.htmlβ>PGA |
| Tour.com: Tiger Woods </TITLE> |
| ββββββββ<ABSTRACT> |
| ββ- biography, photo gallery, and recent news. |
| ββ</ABSTRACT> |
| ββββββββ<LASTMOD>Sept 9 2000</LASTMOD> |
| ββββββ</HIT> |
| ββββββ<!-- ....--> |
| ββββ</nmlHeader> |
| ββββ<nmlBody> |
| ββββββ<!-- ....--> |
| ββββ</nmlBody> |
| ββββ</nml> |
| Sample NML code describing a complete NML Document (e.g., message) containing header |
| information describing the document (DocumentReference information such as document ID, |
| description, state, permissions, etc.), how the document is messaged (MessageHeader info such |
| as βfromβ, βtoβ, modes of delivery, message timestamps, etc.), how the document is routed |
| (RoutingHeader information such as the Sender URI and the Receiver URI) as well as the body |
| of the NML document or message (nmlBody):<?xml version=β1.0β encoding=βUTF-8β?> |
| <nml version=β1.0β> |
| ββββ<nmlHeader> |
| ββββββ<DocumentReference> |
| ββββββββ<DocumentLabel>Forbes</DocumentLabel> |
| ββββββββ<DocumentId>nml:netomat.netWER9015488876</DocumentId> |
| ββββββββ<DocumentDescription lang=βen-usβ>Forbes Media |
| Kit</DocumentDescription> |
| ββββββββ<DocumentState> |
| ββββββββββββ<Copied is=βtrueβ on=β20020224β by=βnaβ from=βforbes.nmlβ |
| to=βmyfirstnml.nmlβ>Copy based on Forbes newsletter</Copied> |
| ββββββββββββ<Refreshed is=βtrueβ on=β2002022313:34:58β |
| synchronized=βfalseβ>Every time</Refreshed> |
| ββββββββββββ<Deleted is=βtrueβ by=βmaciej@netomat.netβ |
| on=β2002022518:34:21β>Can be made active again</Deleted> |
| ββββββββββββ<Optimized is=βtrueβ by=βnmlCompressionAlgorithmβ/> |
| ββββββββββββ<Encoded is=βtrueβ included=βyesβ with=βbase64β/> |
| ββββββββββββ<Encrypted is=βfalseβ using=βnaβ/> |
| ββββββββββββ<Distilled is=βtrueβ |
| from=βhttp://www.netomat.net/forbes/forbes.nmlβ |
| to=βhttp://www.forbes.com/news/forbes.nml;;http://www.netomat.net/forbes/forbes.nmlβ/> |
| ββββββββββββ<Persisted is=βtrueβ by=βmaciej@netomat.netβ> |
| ββββββββββββββββ<Forgotten is=βfalseβ on=βnaβ/> |
| ββββββββββββββββ<Expired is=βfalseβ/> |
| ββββββββββββββββ<Edited is=βfalseβ by=βnobodyβ/> |
| ββββββββββββ</Persisted> |
| ββββββββ</DocumentState> |
| ββββββββ<DocumentPermissions> |
| ββββββββββββ<Send can=βtrueβ who=βmaciej@netomat.netβ/> |
| ββββββββββββ<Reply can=βtrueβ must=βfalseβ |
| who=βmaciej@netomat.net;;kris@netomat.net;;ed@netomat.netβ by=β2002040112:00:00β/> |
| ββββββββββββ<Forward can=βtrueβ must=βfalseβ |
| who=βmaciej@netomat.net;;kris@netomat.net;;ed@netomat.netβ by=β2002040112:00:00β |
| notBefore=βnaβ notAfter=βnaβ/> |
| ββββββββββββ<Publish can=βtrueβ |
| who=βmaciej@netomat.net;;kris@netomat.net;;ed@netomat.netβ notBefore=β2002040112:00:00β |
| notAfter=β2002040112:00:00β/> |
| ββββββββββββ<Copy can=βfalseβ who=βnobodyβ/> |
| ββββββββββββ<Refresh can=βtrueβ must=βfalseβ interval=β10000β how=βautoβ |
| who=βeverybodyβ/> |
| ββββββββββββ<Delete can=βtrueβ must=βfalseβ |
| who=βmaciej@netomat.net;;kris@netomat.net;;ed@netomat.netβ by=β2002040112:00:00β/> |
| ββββββββββββ<Optimize can=βtrueβ must=βfalseβ who=βanybodyβ/> |
| ββββββββββββ<Encode can=βtrueβ must=βfalseβ who=βanybodyβ with=βbase64β/> |
| ββββββββββββββββ<Encrypt can=βtrueβ must=βfalseβ who=βanybodyβ with=βSEAβ/> |
| ββββββββββββββββ<Persist can=βtrueβ must=βfalseβ who=βanybodyβ |
| imediately=βtrueβ forgetBy=βnaβ expireOn=βnaβ/> |
| ββββββββββββββββ<Edit can=βfalseβ who=βnobodyβ/> |
| ββββββββββββ</DocumentPermissions> |
| ββββββββ</DocumentReference> |
| ββββββββ<MessageHeader> |
| ββββββββββββ<From> |
| ββββββββββββββββ<PartyId>6673766frddehds876748</PartyId> |
| ββββββββββββ</From> |
| ββββββββββββ<To> |
| ββββββββββββββββ<PartyId>erwoys5654lk98432</PartyId> |
| ββββββββββββ</To> |
| ββββββββββββ<MessageData> |
| ββββββββββββββββ<MessageId>5665/876767/8989984/</MessageId> |
| ββββββββββββββββ<TimeStamp>20011112192452</TimeStamp> |
| ββββββββββββββββ<Encryption type=βPKEβ>Not encrypted</Encryption> |
| ββββββββββββββββ<Delivery type=βOnceAndOnlyOnceβ/> |
| ββββββββββββ</MessageData> |
| ββββββββββββ<MessageActionStatus wasSent=βyesβ wasReplied=βyesβ |
| wasRepliedNumOfTimes=β3β wasForwarded=βyesβ wasForwardedNumOfTimes=β2β>Updated on Feb 24 |
| 2002</MessageActionStatus> |
| ββββββββββββ<MessageMode prefered=βyesβ mandatory=βnoβ synchronous=βnoβ |
| asynchronous=βyesβ>Communication Mode Information based on last transaction on |
| 2002.02.24</MessageMode> |
| ββββββββ</MessageHeader> |
| ββββββββRoutingHeader> |
| βββββββββββββ<SenderURI>www.forbes.com/netomat</SenderURI> |
| βββββββββββββ<ReceiverURI>www.netomat.net/forbes</ReceiverURI> |
| βββββββββββββ<ErrorURI>mailto:maciejw@netomat.net</ErrorURI> |
| βββββββββββββ<TimeStamp>20011112192452</TimeStamp> |
| βββββββββββββ<SequenceNumber>00001</SequenceNumber> |
| ββββββββ</RoutingHeader> |
| ββββ</nmlHeader> |
| ββββ<nmlBody> |
| ββββββββ<group> |
| βββββββββββββ<rect color=β#ffffffβ fillColor=β#ffffffβ height=β450β width=β650β/> |
| βββββββββββββ<image noHighlight=βtrueβ href=βindex_logo.gifβ x=β515β y=β398β/> |
| βββββββββββββ<image noHighlight=βtrueβ x=β23β y=β37β> |
| ββββββββββββββACEAABAiAAEQXwBEQyJTb3VyY2U6IEhTSSAvV01GLXRvLUNHTSBmaWx0ZXIg |
| ββββββββLyBWZXJzaW9uIDEuMzUgIiAiRGF0ZTogMTk5OS0wMS0xNyIRZgAB//8AARBi |
| ββββββββAAAQpgAAAAkAFxFGAAAA////EYQwIgAQEYogyAAAAAB//3//AAARvwC3C1RJ |
| ββββββββTUVTX1JPTUFODFRJTUVTX0lUQUxJQwpUSU1FU19CT0xEEVRJTUVTX0JPTERf |
| ββββββββSVRBTElDCUhFTFZFVElDQRFIRUxWRVRJQ0FfT0JMSVFVRQ5IRUxWRVRJQ0Ff |
| ββββββββQk9MRBZIRUxWRVRJQ0FfQk9MRF9PQkxJUVVFB0NPVVJJRVIOQ09VUklFUl9J |
| ββββββββVEFMSUMMQ09VUklFUl9CT0xEE0NPVVJJRVJfQk9MRF9JVEFMSUMGU1lNQk9M |
| ββββββββABHOAAABQgABAUEABAMqLToR4gABAGEAACAmAAE9NJ9IIEIAASBiAAAgggAA |
| ββββββββIKIAACDI95D0wAhqCzoAAACAQWj5cAa5/TEJikGGAogCUQGQUGIACEAo+dD/ |
| ββββββββ+v7g+TpRYgACUkwAAQAEAAAAAAAAAABRgBxUggAAABkAGQAAFKCAAJAkAEg/ |
| ββββββββMoAAQlTb21lIFRleHQAoABA |
| ββββββββ--/04w6evG8XlLl3ft |
| ββββββββββββββββ<!-- ... --> |
| βββββββββββββ</image> |
| βββββββββββββ<anchor click=βjump(man.nml)β> |
| ββββββββββββββββ<image noHighlight=βtrueβ href=β15_arrow.jpgβ x=β94β y=β5β/> |
| βββββββββββββ</anchor> |
| ββββββββββββββββ<image noHighlight=βtrueβ href=βbook_man.gifβ x=β178β y=β78β/> |
| βββββββββ<anchor rollover=βpopup(book_move@pop.nml)β> |
| ββββββββββββββββ<image noHighlight=βtrueβ href=βbook_move.gifβ x=β96β y=β214β/> |
| βββββββββββββ</anchor> |
| ββββββββββββββ<anchor rollover=βpopup(book_woman@pop.nml)β> |
| ββββββββββββββββ<image noHighlight=βtrueβ href=βbook_woman.jpgβ x=β354β |
| y=β60β/> |
| βββββββββββββ</anchor> |
| βββββββββββββ<anchor rollover=βpopup(book_amelie@pop.nml)β> |
| ββββββββββββββββ<image noHighlight=βtrueβ href=βbook_amelie.jpgβ x=β415β |
| y=β61β/> |
| βββββββββββββ</anchor> |
| βββββββββββββ<anchor click=βjump(@4.nml)β> |
| ββββββββββββββββ<image noHighlight=βtrueβ href=β15_video.gifβ x=β8β y=β367β/> |
| βββββββββββββ</anchor> |
| βββββββββββββ<anchor click=βjump(@8.nml)β> |
| ββββββββββββββββ<image noHighlight=βtrueβ href=βbook_gnome.jpgβ x=β301β |
| y=β272β/> |
| βββββββββββββ</anchor> |
| ββββββββ</group> |
| ββββ</nmlBody> |
</nml> Sample NML code of a complete NML Document which may be edited by a recipient. The ability for a recipient to edit this document is determined by the document state and the document permissions in the nmlHeader and the <edit> tag in nmlBody of the document:
| <?xml version=β1.0β encoding=βUTF-8β?> |
| <nml version=β1.0β> |
| ββ<nmlHeader> |
| ββββ<DocumentReference> |
| ββββββ<DocumentLabel>Forbes</DocumentLabel> |
| ββββββ<DocumentId>nml:netomat.netWER9015488876</DocumentId> |
| ββββββ<DocumentDescription lang=βen-usβ>Forbes Media |
| Kit</DocumentDescription> |
| ββββββ<DocumentState> |
| ββββββββ<Copied is=βtrueβ on=β20020224β by=βnaβ from=βforbes.nmlβ |
| to=βmyfirstnml.nmlβ>Copy based on Forbes newsletter</Copied> |
| ββββββββ<Refreshed is=βtrueβ on=β2002022313:34:58β |
| synchronized=βfalseβ>Every time</Refreshed> |
| ββββββββ<Deleted is=βtrueβ by=βmaciej@netomat.netβ |
| on=β2002022518:34:21β>Can be made active again</Deleted> |
| ββββββββ<Optimized is=βtrueβ by=βnmlCompressionAlgorithnβ/> |
| ββββββββ<Encoded is=βtrueβ included=βyesβ with=βUUEβ/> |
| ββββββββ<Encrypted is=βfalseβ using=βnaβ/> |
| ββββββββ<Distilled is=βtrueβ |
| from=βhttp://www.netomat.net/forbes/forbes.nmlβ |
| to=βhttp://www.forbes.com/news/forbes.nml;;http://www.netomat.net/forbes/forbes.nmlβ/> |
| ββββββββ<Persisted is=βtrueβ by=βmaciej@netomat.netβ> |
| ββββββββββ<Forgotten is=βfalseβ on=βnaβ/> |
| ββββββββββ<Expired is=βfalseβ/> |
| ββββββββββ<Edited is=βfalseβ by=βnobodyβ/> |
| ββββββββ</Persisted> |
| ββββββ</DocumentState> |
| ββββββ<DocumentPermissions> |
| ββββββββ<Send can=βtrueβ who=βmaciej@netomat.netβ/> |
| ββββββββ<Reply can=βtrueβ must=βfalseβ |
| who=βmaciej@netomat.net;;kris@netomat.net;;ed@netomat.netβ by=β2002040112:00:00β/> |
| ββββββββ<Forward can=βtrueβ must=βfalseβ |
| who=βmaciej@netomat.net;;kris@netomat.net;;ed@netomat.netβ by=β2002040112:00:00β |
| notBefore=βnaβ notAfter=βnaβ/> |
| ββββββββ<Publish can=βtrueβ |
| who=βmaciej@netomat.net;;kris@netomat.net;;ed@netomat.netβ notBefore=β2002040112:00:00β |
| notAfter=β2002040112:00:00β/> |
| ββββββββ<Copy can=βfalseβ who=βnobodyβ/> |
| ββββββββ<Refresh can=βtrueβ must=βfalseβ interval=β10000β how=βautoβ |
| who=βeverybodyβ/> |
| ββββββββ<Delete can=βtrueβ must=βfalseβ |
| who=βmaciej@netomat.net;;kris@netomat.net;;ed@netomat.netβ by=β2002040112:00:00β/> |
| ββββββββ<Optimize can=βtrueβ must=βfalseβ who=βanybodyβ/> |
| ββββββββ<Encode can=βtrueβ must=βfalseβ who=βanybodyβ with=βbase64β/> |
| ββββββββ<Encrypt can=βtrueβ must=βfalseβ who=βanybodyβ with=βSEAβ/> |
| ββββββββ<Persist can=βtrueβ must=βfalseβ who=βanybodyβ |
| imediately=βtrueβ forgetBy=βnaβ expireOn=βnaβ/> |
| ββββββββ<Edit can=βtrueβ who=βanybodyβ/> |
| ββββββ</DocumentPermissions> |
| ββββ</DocumentReference> |
| ββββ<MessageHeader> |
| ββββββ<From> |
| ββββββββ<PartyId>6673766frddehds876748</PartyId> |
| ββββββ</From> |
| ββββββ<To> |
| ββββββββ<PartyId>erwoys5654lk98432</PartyId> |
| ββββββ</To> |
| ββββββ<MessageData> |
| ββββββββ<MessageId>5665/876767/8989984/</MessageId> |
| ββββββββ<TimeStamp>20011112192452</TimeStamp> |
| ββββββββ<Encryption type=βPKEβ>Not encrypted</Encryption> |
| ββββββββ<Delivery type=βOnceAndOnlyOnceβ/> |
| ββββββ</MessageData> |
| ββββββ<MessageActionStatus wasSent=βyesβ wasRepliedTo=βyesβ |
| wasRepliedToNumOfTimes=β3β wasForwarded=βyesβ wasForwardedNumOfTimes=β2β>Updated on Feb 24 |
| 2002</MessageActionStatus> |
| ββββββ<MessageMode prefered=βyesβ mandatory=βnoβ synchronous=βnoβ |
| asynchronous=βyesβ>Communication Mode Information based on last transaction on |
| 2002.02.24</MessageMode> |
| ββββ</MessageHeader> |
| ββββ<RoutingHeader> |
| ββββββ<SenderURI>www.forbes.com/netomat</SenderURI> |
| ββββββ<ReceiverURI>www.netomat.net/forbes</ReceiverURI> |
| ββββββ<ErrorURI>mailto:maciejw@netomat.net</ErrorURI> |
| ββββββ<TimeStamp>20011112192452</TimeStamp> |
| ββββββ<SequenceNumber>00001</SequenceNumber> |
| ββββ</RoutingHeader> |
| ββ</nmlHeader> |
| ββ<nmlBody> |
| ββββ<group> |
| ββββββ<image href=βkodak_top2.gifβ x=β0β y=β0β/> |
| ββββββ<rect height=β26β width=β265β x=β7β y=β26β color=β#FDB400β/> |
| ββββββ<text font=βarial:14:bold, sansserif:14:boldβ color=β#000000β x=β14β |
| y=β33β>Welcome, David.</text> |
| ββββββ<text font=βarial:18:bold, sansserif:16:boldβ color=β#000000β x=β23β |
| y=β92β>Kids</text> |
| ββββββ<!--tabs--> |
| ββββββ<anchor click=βjump(@index.nml)β> |
| ββββββββ<image href=βmanage_h.gifβ x=β241β y=β55β/> |
| ββββββββ<text font=βarial:14:bold, sansserif:14:boldβ color=β#CC3300β |
| x=β261β y=β65β highlightColor=β#FDB400β>Manage</text> |
| ββββββ</anchor> |
| ββββββ<anchor click=βjump(@create.nml)β> |
| ββββββββ<image href=βcreate.gifβ x=β343β y=β55β/> |
| ββββββββ<text font=βarial:14:bold, sansserif:14:boldβ color=β#666666β |
| x=β363β y=β65β highlightColor=β#ffffffβ>Create</text> |
| ββββββ</anchor> |
| ββββββ<anchor click=βjump(@shop.nml)β> |
| ββββββββ<image href=βshop.gifβ x=β437β y=β55β/> |
| ββββββββ<text font=βarial:14:bold, sansserif:14:boldβ color=β#666666β |
| x=β461β y=β65β highlightColor=β#ffffffβ>Shop</text> |
| ββββββ</anchor> |
| ββββββ<anchor click=βjump(@send.nml)β> |
| ββββββββ<image href=βsend.gifβ x=β525β y=β55β/> |
| ββββββββ<text font=βarial:14:bold, sansserif:14:boldβ color=β#666666β |
| x=β546β y=β65β highlightColor=β#ffffffβ>Send</text> |
| ββββββ</anchor> |
| ββββββ<anchor click=βjump(@orderprints.nml)β> |
| ββββββββ<image href=βorderprints.gifβ x=β610β y=β55β/> |
| ββββββββ<text font=βarial:14:bold, sansserif:14:boldβ color=β#666666β |
| x=β624β y=β65β highlightColor=β#ffffffβ>Order Prints</text> |
| ββββββ</anchor> |
| ββββββ<!--end tabs--> |
| ββββββ<rect height=β1β width=β727β color=β#ccccccβ x=β5β y=β252β/> |
| ββββββ<rect height=β1β width=β727β color=β#ccccccβ x=β5β y=β277β/> |
| ββββββ<!--big bg grey rect--> |
| ββββββ<rect height=β173β width=β727β x=β5β y=β278β color=β#666666β/> |
| ββββββ<edit who=βallβ start=βnaβ end=βnaβ> |
| ββββββββ<drag> |
| ββββββββββ<image href=βkid1.gifβ x=β26β y=β130β/> |
| ββββββββ</drag> |
| ββββββββ<drag> |
| ββββββββββ<image href=βkid2.gifβ x=β159β y=β130β/> |
| ββββββββ</drag> |
| ββββββ</edit> |
| ββββββ<image href=β4.gifβ x=β295β y=β116β/> |
| ββββββ<text font=βarial:14, sansserif:14β color=β#333333β x=β25β |
| y=β257β>organize your photos via drag and drop</text> |
| ββββββ<text font=βarial:14, sansserif:14β color=β#333333β x=β613β |
| y=β257β>view 6 - 12</text> |
| ββββββ<image href=βarrow_right.gifβ x=β697β y=β258β/> |
| ββββββ<!--big cover grey rect--> |
| ββββββ<rect height=β173β width=β727β x=β5β y=β328β color=β#666666β/> |
| ββββββ<anchor click=βjump(@kids.nml)β> |
| ββββββββ<image href=βalbum.gifβ x=β70β y=β328β/> |
| ββββββββ<text font=βarial:14, sansserif:14β color=β#ffffffβ x=β90β |
| y=β396β highlightColor=β#000000β>Kids</text> |
| ββββββ</anchor> |
| ββββββ<text font=βarial:14, sansserif:14β color=β#ffffffβ x=β200β |
| y=β396β>Trip to</text> |
| ββββββ<anchor click=βjump(@trip.nml)β> |
| ββββββββ<image href=βalbum.gifβ x=β185β y=β328β/> |
| ββββββββ<text font=βarial:14, sansserif:14β color=β#ffffffβ x=β200β |
| y=β409β highlightColor=β#000000β>Disney</text> |
| ββββββ</anchor> |
| ββββββ<image href=βalbum.gifβ x=β299β y=β328β/> |
| ββββββ<text font=βarial:14, sansserif:14β color=β#ffffffβ x=β310β |
| y=β396β>send to</text> |
| ββββββ<text font=βarial:14, sansserif:14β color=β#ffffffβ x=β293β y=β409β>Mom |
| n Dad</text> |
| ββββββ<image href=βalbum.gifβ x=β410β y=β328β/> |
| ββββββ<text font=βarial:14, sansserif:14β color=β#ffffffβ x=β420β |
| y=β396β>houses</text> |
| ββββββ<image href=βalbum.gifβ x=β524β y=β328β/> |
| ββββββ<text font=βarial:14, sansserif:14β color=β#FFCC00β x=β521β |
| y=β396β>create new</text> |
| ββββββ<image href=βtrash.gifβ x=β662β y=β323β/> |
| ββββββ<text font=βarial:14, sansserif:14β color=β#ffffffβ x=β668β |
| y=β396β>trash</text> |
| ββββββ<rect height=β393β width=β5β color=βblackβ x=β0β y=β57β/> |
| ββββββ<rect height=β393β width=β4β color=βblackβ x=β732β y=β57β/> |
| ββββββ<image href=βkodak_bottom2.gifβ x=β0β y=β450β/> |
| ββββββ<anchor click=βlink(http://www.netomat.net)β> |
| ββββββββ<image href=βnetomat_grey.gifβ x=β5β y=β358β/> |
| ββββββ</anchor> |
| ββββ</group> |
| ββ</nmlBody> |
| ββ</nml> |
Sample NML code of an NML Document describing how Document Actions (<DocumentActions>), which are typically carried at the nml protocol level, can be contained within the header of the NML Document and still be processed when using other protocols to transport the document such as HTTP or SMTP::
| <?xml version=β1.0β encoding=βUTF-8β?> |
| <nml version=β1.0β> |
| ββ<nmlHeader> |
| ββββ<DocumentReference> |
| ββββββ<DocumentLabel>Forbes</DocumentLabel> |
| ββββββ<DocumentId>nml:netomat.netWER9015488876</DocumentId> |
| ββββββ<DocumentDescription lang=βen-usβ>Forbes Media |
| Kit</DocumentDescription> |
| ββββββ<DocumentState> |
| ββββββββ<Copied is=βtrueβ on=β20020224β by=βnaβ from=βforbes.nmlβ |
| to=βmyfirstnml.nmlβ>Copy based on Forbes newsletter</Copied> |
| ββββββββ<Refreshed is=βtrueβ on=β2002022313:34:58β |
| synchronized=βfalseβ>Every time</Refreshed> |
| ββββββββ<Deleted is=βtrueβ by=βmaciej@netomat.netβ |
| on=β2002022518:34:21β>Can be made active again</Deleted> |
| ββββββββ<Optimized is=βtrueβ by=βnmlCompressionAlgorithnβ/> |
| ββββββββ<Encoded is=βtrueβ included=βyesβ with=βUUEβ/> |
| ββββββββ<Encrypted is=βfalseβ using=βnaβ/> |
| ββββββββ<Distilled is=βtrueβ |
| from=βhttp://www.netomat.net/forbes/forbes.nmlβ |
| to=βhttp://www.forbes.com/news/forbes.nml;;http://www.netomat.net/forbes/forbes.nmlβ/> |
| ββββββββ<Persisted is=βtrueβ by=βmaciej@netomat.netβ> |
| ββββββββββ<Forgotten is=βfalseβ on=βnaβ/> |
| ββββββββββ<Expired is=βfalseβ/> |
| ββββββββββ<Edited is=βfalseβ by=βnobodyβ/> |
| ββββββββ</Persisted> |
| ββββββ</DocumentState> |
| ββββββ<DocumentPermissions> |
| ββββββββ<Send can=βtrueβ who=βmaciej@netomat.netβ/> |
| ββββββββ<Reply can=βtrueβ must=βfalseβ |
| who=βmaciej@netomat.net;;kris@netomat.net;;ed@netomat.netβ by=β2002040112:00:00β/> |
| ββββββββ<Forward can=βtrueβ must=βfalseβ |
| who=βmaciej@netomat.net;;kris@netomat.net;;ed@netomat.netβ by=β2002040112:00:00β |
| notBefore=βnaβ notAfter=βnaβ/> |
| ββββββββ<Publish can=βtrueβ |
| who=βmaciej@netomat.net;;kris@netomat.net;;ed@netomat.netβ notBefore=β2002040112:00:00β |
| notAfter=β2002040112:00:00β/> |
| ββββββββ<Copy can=βfalseβ who=βnobodyβ/> |
| ββββββββ<Refresh can=βtrueβ must=βfalseβ interval=β10000β how=βautoβ |
| who=βeverybodyβ/> |
| ββββββββ<Delete can=βtrueβ must=βfalseβ |
| who=βmaciej@netomat.net;;kris@netomat.net;;ed@netomat.netβ by=β2002040112:00:00β/> |
| ββββββββ<Optimize can=βtrueβ must=βfalseβ who=βanybodyβ/> |
| ββββββββ<Encode can=βtrueβ must=βfalseβ who=βanybodyβ with=βbase64β/> |
| ββββββββ<Encrypt can=βtrueβ must=βfalseβ who=βanybodyβ with=βSEAβ/> |
| ββββββββ<Persist can=βtrueβ must=βfalseβ who=βanybodyβ |
| imediately=βtrueβ forgetBy=βnaβ expireOn=βnaβ/> |
| ββββββββ<Edit can=βfalseβ who=βnobodyβ/> |
| ββββββ</DocumentPermissions> |
| ββββββ<DocumentStatus> |
| ββββββββ<Lock exclusive=βtrueβ sharedBy=βnaβ universal=βfalseβ |
| active=βtrueβ href=βhttp://www.netomat.net/locks/lock.nmlβ/> |
| ββββββ</DocumentStatus> |
| ββββββ<DocumentAction> |
| ββββββββ<GetName/> |
| ββββββββ<SetName/> |
| ββββββββ<GetContentLanguage/> |
| ββββββββ<GetContentLength/> |
| ββββββββ<GetContentType/> |
| ββββββββ<GetElement/> |
| ββββββββ<GetAttribute/> |
| ββββββββ<PutElement/> |
| ββββββββ<PutAttribute/> |
| ββββββββ<GetLastModified/> |
| ββββββββ<GetLock/> |
| ββββββββ<SetLock/> |
| ββββββββ<GetResourceType/> |
| ββββββββ<GetSource/> |
| ββββββββ<getCreationdate/> |
| ββββββ</DocumentAction> |
| ββββ</DocumentReference> |
| ββββ<MessageHeader> |
| ββββββ<From> |
| ββββββββ<PartyId>6673766frddehds876748</PartyId> |
| ββββββ</From> |
| ββββββ<To> |
| ββββββββ<PartyId>erwoys56541k98432</PartyId> |
| ββββββ</To> |
| ββββββ<MessageData> |
| ββββββββ<MessageId>5665/876767/8989984/</MessageId> |
| ββββββββ<TimeStamp>20011112192452</TimeStamp> |
| ββββββββ<Encryption type=βPKEβ>Not encrypted</Encryption> |
| ββββββββ<Delivery type=βOnceAndOnlyOnceβ/> |
| ββββββ</MessageData> |
| ββββββ<MessageActionStatus wasSent=βyesβ wasRepliedTo=βyesβ |
| wasRepliedToNumOfTimes=β3β wasForwarded=βyesβ wasForwardedNumOfTimes=β2β>Updated on Feb 24 |
| 2002</MessageActionStatus> |
| ββββββ<MessageMode prefered=βyesβ mandatory=βnoβ synchronous=βnoβ |
| asynchronous=βyesβ>Communication Mode Information based on last transaction on |
| 2002.02.24</MessageMode> |
| ββββ</MessageHeader> |
| ββββ<RoutingHeader> |
| ββββββ<SenderURI>www.forbes.com/netomat</SenderURI> |
| ββββββ<ReceiverURI>www.netomat.net/forbes</ReceiverURI> |
| ββββββ<ErrorURI>mailto:maciejw@netomat.net</ErrorURI> |
| ββββββ<TimeStamp>20011112192452</TimeStamp> |
| ββββββ<SequenceNumber>00001</SequenceNumber> |
| ββββ</RoutingHeader> |
| ββ</nmlHeader> |
| ββ<nmlBody> |
| ββββ<group> |
| ββββββ<rect color=β#ffffffβ fillColor=β#ffffffβ height=β450β width=β650β/> |
| ββββββ<image noHighlight=βtrueβ href=β17_pic.jpgβ y=β56β/> |
| ββββββ<anchor click=βjump(@18.nml)β> |
| ββββββββ<image noHighlight=βtrueβ href=β17_arrow.gifβ x=β239β y=β359β/> |
| ββββββ</anchor> |
| ββββββ<anchor click=βjump(@8.nml)β> |
| ββββββββ<image noHighlight=βtrueβ href=β17_gnome.jpgβ x=β16β y=β304β/> |
| ββββββ</anchor> |
| ββββββ<anchor click=βjump(@4.nml)β> |
| ββββββββ<image noHighlight=βtrueβ href=β17_video.jpgβ x=β563β y=β86β/> |
| ββββββ</anchor> |
| ββββββ<image noHighlight=βtrueβ href=βlogo.gifβ x=β286β y=β11β/> |
| ββββββ<anchor click=βjump(@17b.nml)β> |
| ββββββββ<text noHighlight=βtrueβ>alt</text> |
| ββββββ</anchor> |
| ββββ</group> |
| ββ</nmlBody> |
| ββ</NML> |
The above-identified embodiments and aspects of the present invention are made possible (for example) via a new computer readable language (code) called netomatic markup language (NML). This language presents a unique application or βdialectβ of extensible markup language (XML). The code, as shown in the above examples, is similar to XML, but includes unique semantics which allow the egocentric network, authoring application as well as the information controlling application to embody the present invention.
Accordingly, grammatical definitions for the NML language are set out below:
bounce CDATA #REQUIRED
minx CDATA #REQUIRED
miny CDATA #REQUIRED
maxy CDATA #REQUIRED
wander CDATA #REQUIRED >
Accordingly, having presented the present invention in view of the above described embodiments, various alterations, modifications and improvements are intended to be within the scope and spirit of the invention. The foregoing description is by way of example only and is not intended as limiting. The invention's limit is defined only in the following claims and the equivalents thereto.
1.-36. (canceled)
37. An egocentric network comprising:
a first egocentric network monitor for presenting a visual and/or audio representation of at least one of a point of view of the author for a document and a point of involvement for the document; and
a second egocentric network monitor for presenting a visual and/or audio representation of at least one of a point of view of a recipient for the document and a point of involvement for the document.
38. The egocentric network according to claim 37, wherein the document includes meta information comprising a point of view definition.
39. The egocentric network according to claim 37, wherein the point of view for each of the author and the recipient are created by dissemination of the document over the computer network.
40. The egocentric network according to claim 37, wherein the author's point of view and the recipient's point of view reflect interactions with the document in one or more instances by at least one of the group consisting of: the author, the recipient, and other resources in the computer network.
41. The egocentric network according to claim 37, wherein the point of involvement for the document comprises an intersection of the author's point of view and the recipient's point of view of the document.
42. An egocentric network comprising a first egocentric network monitor for presenting a visual and/or audio representation of at least one of a point of view of an author of a document and a point of involvement of the author for the document.
43. The egocentric network according to claim 42, further comprising a second egocentric network monitor for presenting a visual and/or audio representation of at least one of a point of view of a recipient for the document and a point of involvement of the recipient for the document.
44. The egocentric network according to claim 42, wherein the document includes meta information comprising a point of view definition.
45. The egocentric network according to claim 42, wherein the point of view for the author is created by dissemination of the document.
46. The egocentric network according to claim 43, wherein the point of view for each of the author and the recipient are created by dissemination of the document.
47. The egocentric network according to claim 42, wherein the author's point of view reflect interactions with the document in one or more instances by at least one of the group consisting of: the author, a recipient, and other resources in the computer network.
48. The egocentric network according to claim 43, wherein the author's point of view and the recipient's point of view reflect interactions with the document in one or more instances by at least one of the group consisting of: the author, the recipient, and other resources in the computer network.
49. The egocentric network according to claim 42, wherein the point of involvement for the document comprises an intersection of the author's point of view and a recipient's point of view of the document.
50. The egocentric network according to claim 43, wherein the point of involvement for the document comprises an intersection of the author's point of view and the recipient's point of view of the document.
51. A method for establishing an egocentric network comprising presenting a visual and/or audio representation of at least one of a point of view for an author for a document created by the author and a point of involvement for the document.
52. The method according to claim 51, further comprising presenting a visual and/or audio representation of at least one of a point of view of a recipient for the document and a point of involvement for the document.
53. The method according to claim 51, wherein the document includes meta information comprising a point of view definition.
54. The method according to claim 51, wherein the point of view for the author is created by dissemination of the document.
55. The method according to claim 52, wherein the point of view for each of the author and the recipient are created by dissemination of the document.
56. The method according to claim 51, wherein the author's point of view reflect interactions with the document in one or more instances by at least one of the group consisting of: the author, a recipient, and other resources in the computer network.
57. The method according to claim 52, wherein the author's point of view and the recipient's point of view reflect interactions with the document in one or more instances by at least one of the group consisting of: the author, the recipient, and other resources in the computer network.
58. The method according to claim 51, wherein the point of involvement for the document comprises an intersection of the author's point of view and a recipient's point of view of the document.
59. The method according to claim 52, wherein the point of involvement for the document comprises an intersection of the author's point of view and the recipient's point of view of the document.