Machine learning-based universal software component identification
US-12175241-B1 · Dec 24, 2024 · US
US9460224B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9460224-B2 |
| Application number | US-201113161559-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jun 16, 2011 |
| Priority date | Jun 16, 2011 |
| Publication date | Oct 4, 2016 |
| Grant date | Oct 4, 2016 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
An element in a fetched file (a file received from the web server in response to an HTTP request) can be mapped to the source code that generated it and vice versa. When code is compiled at the web server, calls can be executed that emit HTML that includes metadata that maps a snippet of code back to a particular source file and to a particular location in the source file. The HTML can include injected symbols that specify that the information from a particular start position for a particular character length in the HTML comes from a particular start position to a particular end position in the source file.
Opening claim text (preview).
What is claimed: 1. A system comprising: at least one processor of a computing device comprising a web server; a memory of the computing device; and at least one module loaded into the memory causing the at least one processor to: in response to receiving an HyperText Transfer Protocol (HTTP) request for an HyperText Markup Language (HTML) file, compile at least one source file to generate the HTML file, the HTML file including a plurality of output elements, the source file having at least one of literal content and non-literal content, generate metadata mapping for at least one output element of the plurality of output elements in the HTML file to a particular location in a particular source file responsible for generating the at least one output element, the metadata for the at least one output element of the plurality of output elements comprising a path to the particular source file and a start position in the particular source file at which the code that generates the at least one output element is found, and generate an HTTP response including the requested HTML file, the requested HTML file including the metadata, the metadata used by a device initiating the HTTP request to map the at least one output element of the plurality of output elements in the requested HTML file to source code in the particular source file responsible for generating the at least one output element. 2. The system of claim 1 , wherein the at least one module generates an annotated HTML file, wherein annotations in the annotated HTML file delimit sections of the HTML in the annotated HTML file. 3. The system of claim 1 , wherein the metadata provides additional information associated with the start position and an end position of the at least one output element. 4. The system of claim 1 , wherein the metadata for the at least one output element comprises an indicator that signifies that data in the particular source file is literally identical to data in the HTML file. 5. The system of claim 1 , wherein the metadata for the at least one output element comprises an indicator that signifies that data in the particular source file is not literally identical to the data in the HTML file. 6. The system of claim 1 , wherein a web framework generates the metadata. 7. The system of claim 1 , wherein the metadata for the at least one output element comprises an end position or a length of the output element. 8. A method comprising: receiving from a web server, in response to a HyperText Transfer Protocol (HTTP) request for an HTML file, by a module executing on a processor of a software development computer comprising a client, metadata comprising mapping data for at least one output element in an annotated HyperText Media Language (HTML) file to a corresponding location in a source file generating the at least one output element, the source file having at least one of literal content and non-literal content; generating a mapping table that maps the at least one output element in the annotated HTML to the corresponding location in the source file from which the at least one output element in the annotated HTML was generated; and displaying source code that generated the at least one output element using the mapping table, wherein the source code resides in the source file on the software development computer. 9. The method of claim 8 , further comprising: mapping particular character position in a source file to particular character position in the annotated HTML file. 10. The method of claim 8 , further comprising: removing the metadata and annotations from the annotated HTML file to create a dynamic browser file for a browser. 11. The method of claim 10 , comprising: wherein an Integrated Development Environment (IDE) comprising the browser and a source code editor displays concurrently a web page derived from the dynamic browser file and corresponding source code for a selection in the browser. 12. The method of claim 11 , wherein a pair of start and end tokens are identified by a unique identifier. 13. The method of claim 12 , wherein the mapping table is created by mapping matching start and end tokens identified by the unique identifier to enable mapping between locations in the HTML file and locations in a particular source file from which an HTML output element was generated, by matching unique identifiers. 14. The method of claim 10 , wherein one location in the source file maps to multiple location ranges in the dynamic browser file. 15. A computing device, comprising: at least one processor and a memory; the memory including at least one module configured to: receive an annotated HyperText Media Language (HTML) file in response to a request for an HTML file, the annotated HTML file comprising metadata for use in mapping an element in the HTML file to a corresponding location in a source file generating the element, wherein the metadata comprises a path to the source file and a start position for the code generating the element in the source file, the source file having at least one of literal content and non-literal content; generate a mapping table that maps the element in the annotated HTML file to the corresponding location in the source file from which the element in the annotated HTML file was generated; and display source code that generated the element using the mapping table, wherein the source file resides in the computing device. 16. The computing device of claim 15 , wherein the at least one module is further configured to: map character position in a source file to character position in a dynamic browser file created by removing annotations from the annotated HTML file. 17. The computing device of claim 16 , wherein the at least one module is further configured to: map a single location in the dynamic browser file to multiple source files. 18. The computing device of claim 15 , wherein the at least one module is further configured to: map one location in a source file to multiple location ranges in the dynamic browser file. 19. The computing device of claim 15 , wherein the at least one module is further configured to: display a selection in a browser and concurrently in a source code editor display a corresponding location in a source file that generated the selection displayed in the browser. 20. The computing device of claim 15 , wherein the at least one module is further configured to: map between source code and dynamic browser file by matching unique identifiers.
Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking · CPC title
based on web technology, e.g. hypertext transfer protocol [HTTP] · CPC title
Structural analysis for program understanding · CPC title
specially adapted for file transfer, e.g. file transfer protocol [FTP] · CPC title
Physics · mapped topic
Related publications grouped by family.
Answers are generated from the same data shown on this page.