US20190227676A1 - Generation and display of linkage between elements of a file - Google Patents
Generation and display of linkage between elements of a file Download PDFInfo
- Publication number
- US20190227676A1 US20190227676A1 US16/186,082 US201816186082A US2019227676A1 US 20190227676 A1 US20190227676 A1 US 20190227676A1 US 201816186082 A US201816186082 A US 201816186082A US 2019227676 A1 US2019227676 A1 US 2019227676A1
- Authority
- US
- United States
- Prior art keywords
- file
- package
- elements
- gui
- attribute
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 claims abstract description 65
- 230000004044 response Effects 0.000 description 75
- 238000010586 diagram Methods 0.000 description 42
- 230000006870 function Effects 0.000 description 11
- 238000004590 computer program Methods 0.000 description 10
- 230000008569 process Effects 0.000 description 8
- 230000003287 optical effect Effects 0.000 description 6
- 230000006854 communication Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 3
- 238000010276 construction Methods 0.000 description 3
- 238000010200 validation analysis Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000013523 data management Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F3/0482—Interaction with lists of selectable items, e.g. menus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/80—Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/907—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
-
- G06F17/30908—
-
- G06F17/30997—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/38—Creation or generation of source code for implementing user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0633—Lists, e.g. purchase orders, compilation or processing
Definitions
- the present disclosure relates to systems and methods of generating and displaying linkage between elements of a file.
- the files may comply with a format (e.g., an industry standard).
- the format may not be designed to support indication of linkage between multiple elements of a file.
- a user who is interested in linking multiple elements of a first file is unable to include an indication of the linkage in the first file while maintaining compliance of the first file with the format.
- the first file complies with an inventory availability format and indicates available inventory.
- the first file may indicate availability of a first item at a first seller and a second item at a second seller.
- a broker e.g., the user
- the broker is unable to indicate a link between the first item and the second item in the first file and maintain compliance of the first file with the inventory availability format.
- the first file complies with a construction parts format.
- a user may be interested in indicating that a first hardware part and a second hardware part indicated by the first file form a package.
- the first hardware part may be compatible with the second hardware part. Because the construction parts format does not include linkage information, the user is unable to indicate a link between the first hardware part and the second hardware part in the first file.
- a first file is in compliance with a format (e.g., an industry standard format) that does not provide for indicating linkage between file elements.
- a package file generator of a first device generates a package file indicating linkage between multiple elements of the first file. For example, the package file generator generates a GUI (e.g., a configuration GUI) to enable selection of elements of the first file. The GUI indicates the elements of the first file.
- the package file generator provides the GUI to a display.
- the package file generator generates the package file in response to receiving a user input indicating that a first element is to be linked to a second element.
- the package file indicates that a first identifier of the first element is linked to a second identifier of the second element.
- the first device provides the first file and the package file to a second device.
- a file analyzer of the second device generates a GUI (e.g., a package GUI) based on the first file and the package file.
- the package GUI indicates that the first element is linked to the second element.
- the first device is thus able to provide the first file that complies with the format (e.g., the industry standard format) along with the package file that indicates linkage between elements of the first file.
- the first device is able to provide the linkage information in the package file without duplicating all of the information that is included in the first file while maintaining backward compatibility with a recipient device (e.g., a legacy device) that is not configured to process the package file.
- a legacy device may generate a GUI based on the first file.
- the GUI generated by the legacy device may indicate the elements of the first file without indicating linkage between the elements of the first file.
- a non-legacy device generates a GUI based on the first file and the package file. The GUI generated by the non-legacy device indicates the elements of the first file and indicates linkage between the elements of the first file.
- a method in a particular aspect, includes receiving, at a device, a first file including a plurality of elements.
- the first file is represented in a markup language and complies with an inventory availability format.
- the method also includes receiving, at the device, a second file that indicates linkage between multiple elements of the first file.
- the method further includes generating, at the device, a graphical user interface (GUI) indicating the linkage between the multiple elements.
- GUI graphical user interface
- the GUI includes at least one option that is selectable to initiate performance of an aggregate operation on the multiple elements.
- the method also includes providing the GUI from the device to a display.
- a method in another particular aspect, includes receiving, at a first device from a second device, a first file including a plurality of elements.
- the first file is represented in a markup language and complying with an inventory availability format.
- the method also includes receiving user input at the first device.
- the method further includes generating, based on the user input, a second file that indicates linkage between multiple elements of the first file.
- the method also includes providing, from the first device to a third device, the first file and the second file.
- FIG. 1 is a block diagram of a particular illustrative aspect of a system that is operable to generate and display linkage between elements of a file;
- FIG. 2 is a diagram to illustrate aspects of graphical user interfaces generated by the system of FIG. 1 ;
- FIG. 3 is a diagram to illustrate aspects of graphical user interfaces generated by the system of FIG. 1 ;
- FIG. 4 is a diagram to illustrate an aspect of a graphical user interface generated by the system of FIG. 1 ;
- FIG. 5 is a diagram to illustrate aspects of graphical user interfaces generated by the system of FIG. 1 ;
- FIG. 6 is a diagram to illustrate an aspect of a graphical user interface generated by the system of FIG. 1 ;
- FIG. 7 is a diagram to illustrate aspects of graphical user interfaces generated by the system of FIG. 1 ;
- FIG. 8 is a diagram to illustrate an aspect of a package file generated by the system of FIG. 1 ;
- FIG. 9 is a diagram to illustrate an aspect of a graphical user interface generated by the system of FIG. 1 ;
- FIG. 10 is a flowchart to illustrate an aspect of a method of generating a second file that indicates linkage between elements of a first file that may be performed by the system of FIG. 1 ;
- FIG. 11 is a flow chart to illustrate an aspect of a method of displaying linkage between elements of a first file that may be performed by the system of FIG. 1 ;
- FIG. 12 is a block diagram of a device operable to generate a second file indicating linkage between elements of a first file and/or display the linkage between the elements of the first file in accordance with the systems, devices, and methods of FIGS. 1-11 .
- the system 100 includes a first device 102 .
- the first device 102 may be communicatively coupled to a second device 104 , to a third device 106 , or to both.
- the first device 102 may be coupled, via a network, to the second device 104 , to the third device 106 , or to both.
- the network may include a wired network, a wireless network, or both.
- the first device 102 is coupled to a display 118 .
- the first device 102 includes the display 118 .
- the first device 102 includes a package file generator 120 coupled to memory 132 .
- the package file generator 120 is configured to generate a package file 115 indicating linkage between multiple elements of a first file 111 .
- the package file 115 may be represented in a markup language (e.g., XML).
- the memory 132 is configured to store the first file 111 , the package file 115 , or both.
- the third device 106 is coupled to a display 108 .
- the third device 106 includes the display 108 .
- the third device 106 includes a file analyzer 150 .
- the file analyzer 150 is configured to generate, based on the first file 111 and the package file 115 , a GUI 117 indicating linkage between multiple elements of the first file 111 .
- the first device 102 may receive the first file 111 from the second device 104 . It should be understood that receiving the first file 111 from a single device is provided as an illustrative example. In some implementations, the first device 102 may receive multiple files from multiple sources (e.g., devices) and may generate the first file 111 by combining the multiple files.
- the first file 111 is in compliance with a particular format (e.g., an industry standard format), such as an inventory availability format, a construction parts format, or a software components list format.
- the first file 111 may be represented in a markup language (e.g., an eXtensible markup language (XML)).
- the first file 111 may include a file identifier (ID) 171 , such as a name, a serial number, or both.
- ID file identifier
- An indication of linkage between multiple elements of the first file 111 is absent from the first file 111 .
- the particular format does not provide for the indication of linkage between elements of the first file to be included in the first file 111 .
- a file is not considered to be in compliance with the particular format if the file includes an indication of linkage between multiple elements of the file.
- the package file generator 120 generates a GUI 173 based on the first file 111 .
- the GUI 173 may enable a user 103 to update the first file 111 , as further described with reference to FIG. 2 .
- the package file generator 120 may receive a user input 113 from the user 103 and may update the first file 111 based on the user input 113 .
- the first file 111 may include a plurality of elements 130 .
- the elements 130 may include an element 131 and an element 151 .
- the elements 130 include the element 131 , the element 151 , or both, prior to the update to the first file 111 .
- the first file 111 is updated, based on the user input 113 , to include the element 131 , the element 151 , or both.
- a particular element of the elements 130 may indicate that a radio advertising spot is available. Attributes of the particular element may indicate information regarding the radio advertising spot. For example, the element 131 may indicate that a first radio advertising spot is available. Attributes of the element 131 may indicate information regarding the first radio advertising spot, such as a radio station, a rate, a title of a radio show that includes the first radio advertising spot, etc. In some implementations, a particular element of the elements 130 may indicate that a hardware part is available. Attributes of the particular element may indicate information regarding the hardware part. For example, the element 131 may indicate that a first hardware part is available. Attributes of the element 131 may indicate information regarding the hardware part, such as a part serial number, a manufacturing date, a cost, etc.
- Each of the elements 130 may include an ID of the element.
- the element 131 includes an element ID 133 (e.g., a first unique element ID) and the element 151 includes an element ID 153 (e.g., a second unique element ID).
- the particular format may indicate that a particular element includes one or more attributes.
- the particular format indicates that a particular element includes an attribute 134 .
- the element 131 may have an attribute value 135 of the attribute 134 and the element 151 may have an attribute value 155 of the attribute 134 .
- the GUI 173 may indicate that the first file 111 includes the element 131 having the attribute value 135 for the attribute 134 and the element 151 having the attribute value 155 for the attribute 134 .
- the GUI 173 may enable the user 103 to indicate one or more of the elements 130 that are to be linked.
- the user 103 may select one or more of the elements 130 to be linked via the GUI 173 , and the package file generator 120 may receive the user input 113 indicating that one or more elements are to be linked, as further described with reference to FIGS. 3, 5, and 7 .
- the package file generator 120 may, based on the user input 113 , generate (or update) the package file 115 to indicate the linkage between one or more of the elements 130 , as further described with reference to FIGS. 3, 5, and 8 .
- one or more elements of the package file 115 may indicate that the element 131 is linked to the element 151 .
- the package file 115 may include a first element indicating a package identifier, a second element indicating the package identifier and the element ID 133 of the element 131 , and a third element indicating the package identifier and the element ID 153 of the element 151 .
- the second element indicates that the package having the package identifier includes the element 131 having the element ID 133 .
- the third element indicates that the package having the package identifier includes the element 151 having the element ID 153 .
- the second element and the third element together indicate that the element 131 is linked to the element 151 by indicating that the element 131 and the element 151 are included in the same package (e.g., the package having the package identifier).
- the first device 102 may provide the first file 111 and the package file 115 to one or more devices.
- the first device 102 may provide the first file 111 and the package file 115 to the third device 106 .
- the file analyzer 150 of the third device 106 may generate the GUI 117 based on the first file 111 and the package file 115 .
- the GUI 117 may indicate the linkage between one or more of the elements 130 of the first file 111 , as further described with reference to FIGS. 4, 6, and 9 .
- the GUI 117 may include at least one option that is selectable to initiate perform of an aggregate operation based on the elements 130 .
- a user 105 may select one or more options of the GUI 117 .
- the file analyzer 150 may be configured to perform the one or more aggregate operations in response to receiving user input 163 indicating the selection of the one or more options, as further described with reference to FIGS. 4, 6 , and 9 .
- the first device 102 provides the first file 111 and the package file 115 to a fourth device (not shown in FIG. 1 ).
- the fourth device is not configured to process package files, such as the package file 115 .
- the fourth device includes a second file analyzer (e.g., a legacy file analyzer) that is not configured to process the package file 115 .
- the second file analyzer may generate a GUI based on the first file 111 (and not the package file 115 ).
- the GUI may indicate attribute values of the elements 130 without indicating linkage between any of the elements 130 .
- the system 100 may thus enable the third device 106 to generate the GUI 117 indicating linkage between multiple elements of the first file 111 .
- the package file 115 may have a smaller memory footprint than the first file 111 because the package file 115 includes linkage information between elements of the first file 111 without duplicating all the content of the first file 111 .
- the first device 102 may send the first file 111 and the package file 115 without a prior determination whether a recipient device corresponds to a legacy device or a non-legacy device. Legacy devices ignore/discard the package file 115 .
- Sending the first file 111 and the package file 115 conserves resources (e.g., bandwidth, memory, or both) while maintaining backward compatibility, as compared to sending the first file 111 (in case of a legacy device) and a second file (in case of a non-legacy device) that duplicates all of the information of the first file 111 and includes linkage information.
- resources e.g., bandwidth, memory, or both
- the diagram 200 includes a GUI 201 and a GUI 203 .
- the GUI 201 , the GUI 203 , or both, may be generated by at least one of the package file generator 120 , the first device 102 , or the system 100 of FIG. 1 .
- the GUI 173 of FIG. 1 may include the GUI 201 , the GUI 203 , or both.
- the GUI 201 includes a table 206 including one or more rows and one or more rows.
- the GUI 201 includes an add new line option 208 .
- the add new line option 208 is selectable to add a line to the table 206 .
- the package file generator 120 of FIG. 1 may, in response to receiving the user input 113 indicating a selection of the add new line option 208 , add an element to the elements 130 and generate the GUI 203 based on the updated version of the elements 130 .
- the GUI 203 corresponds to an updated version of the GUI 201 with two additional lines (or rows) in the table 206 .
- Each of the rows of the table 206 corresponds to a particular element of the elements 130 of FIG. 1 .
- Each of the columns corresponds to an attribute of the elements 130 .
- the table 206 includes a row 210 , a row 212 , and a row 214 .
- the row 210 includes a first value (e.g., “M-F 6 p-6:30 p”) for a first column, a second value (e.g., “Family Strife”) for a second column, a third value (e.g., $250) for a third column, and a fourth value (e.g., “KKMM”) for a fourth column.
- the row 210 may correspond to a particular element of the elements 130 .
- the first column, the second column, the third column, and the fourth column may correspond to a first attribute, a second attribute, a third attribute, and a fourth attribute, respectively of the elements 130 .
- the first value of the first column may indicate that the particular element has the first value (e.g., a first attribute value) for the first attribute.
- the fourth column corresponds to the attribute 134 of FIG. 1 and the fourth value (e.g., “KKMM”) corresponds to the attribute value 135 (e.g., a first station ID).
- the row 212 and the row 214 may correspond to the element 131 and the element 151 of FIG. 1 , respectively.
- the table 206 may be editable.
- the user input 113 of FIG. 1 may indicate that the row 212 includes the first value (e.g., “M-F 6 p-6:30 p”) for the first column, the second value (e.g., “Family Strife”) for the second column, a fifth value (e.g., $200) for the third column, and the fourth value (e.g., “KKMM”) for the fourth column.
- the first value e.g., “M-F 6 p-6:30 p
- the second value e.g., “Family Strife”
- a fifth value e.g., $200
- the fourth value e.g., “KKMM”
- the user 103 may add the rows 212 and 214 to indicate updated values (e.g., discounted values) for the third column with the intention of adding the rows 212 and 214 to a package, as further described with reference to FIG. 3 .
- the user 103 may copy the column values of the row 210 as the column values for the row 212 and may enter an updated value (e.g., the fifth value) for the third column.
- Each of the GUI 201 and the GUI 203 includes a save option 224 .
- the user input 113 may indicate a selection of the save option 224 .
- the package file generator 120 may, in response to receiving the user input 113 , update attribute values of the elements 130 based on corresponding column values indicated in the user input 113 .
- the package file generator 120 may update the element 131 to have the attribute value 135 (e.g., the first station ID) for the attribute 134 in response to determining that the row 212 corresponds to the element 131 , that the fourth column corresponds to the attribute 134 , that the row 212 has the fourth value (e.g., “KKMM”) for the fourth column, and that the attribute value 135 (e.g., the first station ID) of the attribute 134 corresponds to the fourth value (e.g., “KKMM”).
- the attribute value 135 e.g., the first station ID
- the package file generator 120 may update the element 151 to have the attribute value 155 (e.g., a second station ID) for the attribute 134 in response to determining that the row 214 corresponds to the element 151 , that the fourth column corresponds to the attribute 134 , that the row 214 has a sixth value (e.g., “AABB”) for the fourth column, and that the attribute value 155 (e.g., the second station ID) of the attribute 134 corresponds to the sixth value (e.g., “AABB”).
- the attribute value 155 e.g., a second station ID
- Each of the GUI 201 and the GUI 203 may include a plurality of checkboxes and a delete option 222 .
- Each of the checkboxes may correspond to a particular row of the rows.
- the user input 113 indicates a selection of a checkbox corresponding to the row 214 and a selection of the delete option 222 .
- the package file generator 120 may, in response to receiving the user input 113 , remove the element 151 from the elements 130 .
- the GUI 201 and the GUI 203 thus enable updating of the first file 111 while maintaining compliance with the particular format (e.g., the industry standard format).
- the user 103 may use the GUI 201 and the GUI 203 to add one or more elements to the elements 130 , remove one or more elements from the elements 130 , or both.
- the diagram 300 includes a GUI 301 , a GUI 303 , and the elements 140 .
- the GUI 301 , the GUI 303 , or both, may be generated by at least one of the package file generator 120 , the first device 102 , or the system 100 of FIG. 1 .
- the GUI 173 of FIG. 1 may include the GUI 301 , the GUI 303 , or both.
- the GUI 301 includes the table 206 and an add to package option 308 .
- the user 103 of FIG. 1 may select one or more of the rows of the table 206 and may select the add to package option 308 .
- the package file generator 120 may generate the GUI 303 in response to receiving the user input 113 indicating a selection of the one or more rows and the add to package option 308 .
- the package file generator 120 may generate the GUI 303 in response to receiving the user input 113 indicating a selection of a first checkbox corresponding to the row 212 , a second checkbox corresponding to the row 214 , and the add to package option 308 .
- the package file generator 120 generates the GUI 303 to include a table 306 having the selected rows.
- the table 306 includes the row 212 and the row 214 .
- the GUI 303 may also include a start date field 310 , an end date field 312 , a comments field 314 , or a combination thereof.
- the user 103 of FIG. 1 may edit the start date field 310 , the end date field 312 , the comments field 314 , or a combination thereof.
- the GUI 303 includes a save package option 316 .
- the package file generator 120 updates the elements 140 in response to receiving a selection of the save package option 316 .
- the package file generator 120 generates an element 361 including the file ID 171 , a package ID 335 , a start date 337 , an end date 339 , a comment 341 , or a combination thereof.
- the package file generator 120 generates the package ID 335 as a unique package identifier of the package file 115 of FIG. 1 .
- the package ID 335 may indicate a particular type of package (e.g., an individual element package).
- the package file generator 120 may generate the start date 337 based on a first value (e.g., “12/28/2017”) of the start date field 310 , the end date 339 based on a second value (e.g., “3/27/2018”) of the end date field 312 , the comment 341 based on a third value (e.g., “This represents a Family Strife sponsorship”) of the comments field 314 , or a combination thereof.
- the package file generator 120 adds the element 361 to the elements 140 .
- the element 361 indicates that a package having the package ID 335 is associated with the first file 111 having the file ID 171 .
- the element 361 may indicate that the package is available at or subsequent to the start date 337 , at or prior to the end date 339 , or both.
- the element 361 may indicate additional information in the comment 341 is associated with the package.
- the package file generator 120 may generate one or more elements corresponding to the selected rows in response to receiving the selection of the save package option 316 .
- the package file generator 120 generates an element 363 corresponding to the row 212 and an element 365 corresponding to the row 214 .
- the element 363 includes the element ID 133 of the element 131 corresponding to the row 212 .
- the element 365 includes the element ID 153 of the element 151 corresponding to the row 214 .
- Each of the element 363 and the element 365 includes the package ID 335 .
- the element 363 indicates that the package having the package ID 335 includes the element 131 having the element ID 133 .
- the element 365 indicates that the package having the package ID 335 includes the element 151 having the element ID 153 .
- the elements 361 , 363 , and 365 of the package file 115 thus indicate a linkage between the element 131 and the element 151 of the first file 111 .
- the elements 361 , 363 , and 365 indicate that a package includes the element 131 and the element 151 of the first file 111 .
- the diagram 300 thus illustrates generation (or update) of the package file 115 to indicate linkage between multiple elements of the first file 111 .
- the diagram 400 includes a GUI 401 .
- the GUI 401 may be generated by the file analyzer 150 , the third device 106 , the system 100 of FIG. 1 , or a combination thereof.
- the GUI 117 of FIG. 1 may include the GUI 401 .
- the file analyzer 150 may generate the GUI 401 in response to receiving the first file 111 and the package file 115 .
- the file analyzer 150 may generate the GUI 401 to include a table 406 .
- the file analyzer 150 may generate the table 406 to include first rows and first columns corresponding to the rows and columns of the table 206 of FIG. 2 .
- the table 406 includes a row 412 and a row 414 corresponding to the row 212 and the row 214 of the table 206 of FIG. 2 , respectively.
- the row 412 and the row 414 correspond to the element 131 and the element 151 of FIG. 1 , respectively.
- the table 406 differs from the table 206 in that the table 406 includes a line number column 422 , a package (pckg) lines column 424 , a pckg comments column 426 , a pckg start column 432 , and a pckg end column 434 . It should be understood that the table 406 is provided as an illustrative example. In some implementations, the table 406 may include fewer than 9 columns, more than 9 columns, one or more other columns, or a combination thereof.
- the line number column 422 may include a line identifier associated with each row.
- the line number column 422 includes a first line identifier (e.g., 7) and a second line identifier (e.g., 8) associated with the row 412 and the row 414 , respectively.
- the GUI 401 also includes a sort by package option 442 , a calculate total option 444 , a total field 446 , a purchase option 448 , or a combination thereof.
- the file analyzer 150 may determine that the elements 140 of the package file 115 include the element 361 .
- the file analyzer 150 may, in response to determining that the element 361 includes the file ID 171 and the package ID 335 , determine that a package corresponding to the package ID 335 is associated with the first file 111 having the file ID 171 .
- the file analyzer 150 may determine that a package includes one or more of the elements 130 . For example, the file analyzer 150 may, in response to determining that the element 363 indicates the package ID 335 and the element ID 133 and that the first file 111 includes the element 131 having the element ID 133 , determine that the package having the package ID 335 includes the element 131 . Similarly, the file analyzer 150 may, in response to determining that the element 365 indicates the package ID 335 and the element ID 153 and that the first file 111 includes the element 151 having the element ID 153 , determine that the package having the package ID 335 includes the element 151 .
- the file analyzer 150 may generate an indication of linkage between the elements of the first file 111 .
- the file analyzer 150 may generate a package lines value indicating line identifiers of rows corresponding to elements that are included in the same package.
- the file analyzer 150 may, in response to determining that the package having the package ID 335 includes the element 131 , generate a package lines value (e.g., “7”) indicating the first line identifier (e.g., “7”) of the row 412 corresponding to the element 131 .
- the file analyzer 150 may, in response to determining that the package having the package ID 335 includes the element 151 , generate (or update) the package lines value (e.g., “7, 8”) to indicate the second line identifier (e.g., “8”) of the row 414 corresponding to the element 151 .
- the package lines value (e.g., “7, 8”) indicates that the row 412 corresponding to the first line identifier (e.g., “7”) is linked to the row 414 corresponding to the second line identifier (e.g., “8”).
- the package lines value (e.g., “7, 8”) indicates that a package includes the element 131 corresponding to the row 412 and the element 151 corresponding to the row 414 .
- the file analyzer 150 may add the indication of the linkage between the elements of the first file 111 to entries in the pckg lines column 424 that are associated with the rows corresponding to the elements. For example, the file analyzer 150 may, in response to determining that the package includes the element 131 and that the row 412 corresponds to the element 131 , add the package lines value (e.g., “7,8”) to a first entry of the pckg lines column 424 associated with the row 412 .
- the package lines value e.g., “7,8”
- the file analyzer 150 may, in response to determining that the package includes the element 151 and that the row 414 corresponds to the element 151 , add the package lines value (e.g., “7,8”) to a second entry of the pckg lines column 424 associated with the row 414 .
- the package lines value e.g., “7,8”
- the element 361 includes the comment 341 associated with the package having the package ID 335 .
- the file analyzer 150 may generate a comment value (e.g., “This represents a Family Strife sponsorship”) based on the comment 341 .
- the file analyzer 150 may add the comment value to entries of the pckg comments column 426 that are associated with the rows corresponding to the elements that are included in the package.
- the file analyzer 150 may add the comment value (e.g., “This represents a Family Strife sponsorship”) to a first entry of the pckg comments column 426 that corresponds to the row 412 , to a second entry of the pckg comments column 426 that corresponds to the row 414 , or both.
- the element 361 includes the start date 337 associated with the package having the package ID 335 .
- the file analyzer 150 may generate a start value (e.g., “12/28/2017”) representative of the start date 337 .
- the file analyzer 150 may add the start value to entries of the pckg start column 432 that are associated with the rows corresponding to the elements that are included in the package. For example, the file analyzer 150 may add the start value (e.g., “12/28/2017”) to a first entry of the pckg start column 432 that corresponds to the row 412 , to a second entry of the pckg start column 432 that corresponds to the row 414 , or both.
- the element 361 includes the end date 339 associated with the package having the package ID 335 .
- the file analyzer 150 may generate an end value (e.g., “3/27/2018”) representative of the end date 339 .
- the file analyzer 150 may add the end value to entries of the pckg end column 434 that are associated with the rows corresponding to the elements that are included in the package. For example, the file analyzer 150 may add the end value (e.g., “3/27/2018”) to a first entry of the pckg end column 434 that corresponds to the row 412 , to a second entry of the pckg end column 434 that corresponds to the row 414 , or both.
- the GUI 401 includes at least one option that is selectable to initiate performance of an aggregate operation.
- a first aggregate operation includes displaying rows of a package contiguously.
- the user 105 of FIG. 1 may select the sort by package option 442 .
- the file analyzer 150 may, in response to receiving a selection of the sort by package option 442 , identify rows of the table 406 that correspond to the same package and update the GUI 401 to display the identified rows contiguously.
- the file analyzer 150 may, in response to receiving the selection of the sort by package option 442 , determine that the row 412 and the row 414 correspond to the package having the package ID 335 and may update the GUI 401 to display the row 412 and the row 414 contiguously.
- the file analyzer 150 may update the first line identifier associated with the row 412 based on an updated position of the row 412 in the table 406 , and update the second line identifier associated with the row 414 based on an updated position of the row 414 in the table 406 .
- the file analyzer 150 may update the first entry of the pckg lines column 424 corresponding to the row 412 , the second entry of the pckg lines column 424 corresponding to the row 414 , or both, to indicate the updated first line identifier, the updated second line identifier, or both.
- a second aggregate operation includes calculating a value based on attribute values of rows of a package in response to a selection of at least one of the rows.
- the user 105 may select one or more rows of the table 406 and may select the calculate total option 444 .
- the file analyzer 150 may, in response to receiving a selection of the calculate total option 444 and a selection of one or more rows of the table 406 , determine that elements corresponding to the one or more rows are selected and generate a total rate corresponding to the selected elements.
- a selection of a row that is included in a package causes a selection of all rows that are included in the package.
- the file analyzer 150 may, in response to receiving a selection of the calculate total option 444 and a selection of the row 412 , the row 414 , or both, determine that elements of the package having the package ID 335 are selected.
- the attribute 134 corresponds to rate
- the element 131 includes the attribute value 135 of the attribute 134 indicating a first rate
- the element 151 includes the attribute value 155 of the attribute 134 indicating a second rate.
- the file analyzer 150 may update the total field 446 to indicate a total rate (e.g., a sum of the first rate and the second rate).
- a third aggregate operation includes generating a purchase order based on elements of a package in response to a selection of at least one of rows corresponding to the elements.
- the user 105 may select one or more rows of the table 406 and may select the purchase option 448 .
- the file analyzer 150 may, in response to receiving a selection of the purchase option 448 and a selection of one or more rows of the table 406 , generate a purchase order corresponding to the selected rows.
- a selection of a row that is included in a package may cause a selection of all rows that are included in the package.
- the file analyzer 150 may generate a purchase order in response to receiving a selection of the purchase option 448 and a selection of the row 412 , the row 414 , or both.
- the purchase order may indicate that a first inventory item corresponding to the element 131 and a second inventory item corresponding to the element 151 is to be purchased.
- the third device 106 may send the purchase order to the first device 102 .
- the GUI 401 thus enables display of an indication of linkage between multiple elements of the first file 111 .
- the first entry of the pckg lines column 424 , the second entry of the pckg lines column 424 , or both indicate that the row 412 corresponding to the element 131 of the first file 111 is linked to the row 414 corresponding to the element 151 of the first file 111 .
- the first entry, the second entry, or both indicate that the element 131 is included in the same package as the element 151 .
- the diagram 500 includes a GUI 501 , a GUI 503 , and the elements 140 .
- the GUI 501 , the GUI 503 , or both, may be generated by at least one of the package file generator 120 , the first device 102 , or the system 100 of FIG. 1 .
- the GUI 173 of FIG. 1 may include the GUI 501 , the GUI 503 , or both.
- the GUI 501 includes the table 206 and an add stations to package option 508 .
- the user 103 of FIG. 1 may select one or more of the rows of the table 206 and the add stations to package option 508 .
- the package file generator 120 may generate the GUI 503 in response to receiving the user input 113 indicating a selection of the one or more rows and the add stations to package option 508 .
- the package file generator 120 may generate the GUI 503 in response to receiving the user input 113 indicating a selection of a first checkbox corresponding to a row 522 of the table 206 , a second checkbox corresponding to a row 524 of the table 206 , and the add stations to package option 508 .
- the package file generator 120 generates the GUI 503 to include a table 506 .
- the table 506 may indicate an attribute value of the selected rows.
- the selected rows include the row 522 and the row 524 .
- the row 522 corresponds to a first element of the elements 130 and the row 524 corresponds to a second element of the elements 130 .
- the row 522 corresponds to the element 131 and the row 524 corresponds to the element 151 .
- the attribute 134 corresponds to station
- the attribute value 135 indicates a first station (e.g., “BBCC”) associated with the element 131
- the attribute value 155 e.g., “DDEE” indicates a second station associated with the element 151 .
- the table 506 includes a stations column associated with the attribute 134 . Entries of the stations column may represent unique attribute values of the attribute 134 of the selected rows. For example, the package file generator 120 may generate the table 506 to have a first value in a first entry of stations column and a second value in a second entry of the stations column. The first value and the second value represent the first station and the second station, respectively.
- the GUI 503 may also include a start date field 510 , an end date field 512 , a comments field 514 , or a combination thereof.
- the user 103 of FIG. 1 may edit the start date field 510 , the end date field 512 , the comments field 514 , or a combination thereof.
- the GUI 303 includes a save package option 516 .
- the package file generator 120 may generate the start date 537 based on a first value (e.g., “12/15/2017”) of the start date field 510 , the end date 539 based on a second value (e.g., “2/16/2018”) of the end date field 512 , the comment 541 based on a third value (e.g., “This represents a BBCC & DDEE sponsorship”) of the comments field 514 , or a combination thereof.
- the package file generator 120 adds the element 561 to the elements 140 .
- the elements 561 and 567 of the package file 115 thus indicate a linkage between elements of the first file 111 that have the attribute value 135 (e.g., “BBCC”) or the attribute value 155 (e.g., “DDEE”) for the attribute 134 (e.g., station).
- the elements 561 and 567 indicate that a package includes the element 131 corresponding to the row 522 , the element 151 corresponding to the row 524 , and an element of the first file 111 corresponding to a row 526 of the table 206 .
- the diagram 500 thus illustrates generation (or update) of the package file 115 to indicate linkage between multiple elements of the first file 111 .
- the diagram 600 includes a GUI 601 .
- the GUI 601 may be generated by the file analyzer 150 , the third device 106 , the system 100 of FIG. 1 , or a combination thereof.
- the GUI 117 of FIG. 1 may include the GUI 601 .
- the file analyzer 150 may generate the GUI 601 in response to receiving the first file 111 and the package file 115 .
- the file analyzer 150 may generate the GUI 601 to include the table 406 , as described with reference to FIG. 4 .
- the table 406 includes a row 622 , a row 624 , and a row 626 corresponding to the row 522 , the row 524 , and the row 526 of FIG. 5 , respectively.
- the file analyzer 150 may, in response to determining that the element 561 includes the file ID 171 and the package ID 535 , determine that a package corresponding to the package ID 535 is associated with the first file 111 having the file ID 171 .
- the file analyzer 150 may determine that the package having the package ID 535 includes one or more of the elements 130 . For example, the file analyzer 150 may, in response to determining that the element 567 indicates the package ID 535 , the attribute value 135 of the attribute 134 , and the attribute value 155 of the attribute 134 , determine that the package includes one or more first elements of the elements 130 and one or more second elements of the elements 130 , where each of the first elements has the attribute value 135 of the attribute 134 and each of the second elements has the attribute value 155 of the attribute 134 .
- the file analyzer 150 may, in response to determining that the element 131 has the attribute value 135 (e.g., “BBCC”) for the attribute 134 , determine that the package includes the element 131 of the first file 111 .
- the file analyzer 150 may determine that the package includes the element 151 in response to determining that the element 151 has the attribute value 155 (e.g., “DDEE”) for the attribute 134 .
- the file analyzer 150 may determine that the package includes a third element of the first file 111 in response to determining that the third element has the attribute value 155 (e.g., “DDEE”) for the attribute 134 .
- Each of the row 526 of FIG. 5 and the row 626 may correspond to the third element of the first file 111 .
- the file analyzer 150 may generate an indication of linkage between the elements of the first file 111 .
- the file analyzer 150 may generate a package lines value indicating line identifiers of rows corresponding to elements that are included in the same package.
- the file analyzer 150 may, in response to determining that the package having the package ID 535 includes the element 131 , the element 151 , and the third element, generate a package lines value (e.g., “3, 5, 6”) indicating a first line identifier (e.g., “3”), a second line identifier (e.g., “5”), and a third line identifier (e.g., “6”).
- the first line identifier (e.g., “3”), the second line identifier (e.g., “5”), and the third line identifier (e.g., “6”) may designate the row 622 corresponding to the element 131 , the row 624 corresponding to the element 151 , and the row 626 corresponding to the third element, respectively.
- the package lines value (e.g., “3, 5, 6”) indicates that the row 622 corresponding to the first line identifier (e.g., “3”) is linked to the row 624 corresponding to the second line identifier (e.g., “5”) and to the row 626 corresponding to the third line identifier (e.g., “6”).
- the package lines value (e.g., “3, 5, 6”) indicates that a package includes the element 131 corresponding to the row 622 , the element 151 corresponding to the row 624 , and a third element corresponding to the row 626 .
- the file analyzer 150 may add the package lines value (e.g., “3, 5, 6”) to a first entry of the pckg lines column 424 associated with the row 622 , a second entry of the pckg lines column 424 associated with the row 624 , a third entry of the pckg lines column 424 associated with the row 626 .
- package lines value e.g., “3, 5, 6”
- the file analyzer 150 updates, based on the comment 541 , entries of the pckg comments column 426 corresponding to the row 622 , the row 624 , the row 626 , or a combination thereof, as described with reference to FIG. 4 .
- the file analyzer 150 updates, based on the start date 537 , entries of the pckg start column 432 corresponding to the row 622 , the row 624 , the row 626 , or a combination thereof, as described with reference to FIG. 4 .
- the file analyzer 150 updates, based on the end date 539 , entries of the pckg end column 434 corresponding to the row 622 , the row 624 , the row 626 , or a combination thereof, as described with reference to FIG. 4 .
- the GUI 601 thus enables display of an indication of linkage between multiple elements of the first file 111 .
- the first entry of the pckg lines column 424 , the second entry of the pckg lines column 424 , the third entry of the pckg lines column 424 , or a combination thereof indicate that the row 622 corresponding to the element 131 of the first file 111 is linked to the row 624 corresponding to the element 151 of the first file 111 and to the row 626 corresponding to a third element of the first file 111 .
- the first entry, the second entry, the third entry, or a combination thereof indicate that the element 131 is included in the same package as the element 151 and the third element.
- the diagram 700 includes a GUI 701 and a GUI 703 .
- the GUI 701 , the GUI 703 , or both, may be generated by at least one of the package file generator 120 , the first device 102 , or the system 100 of FIG. 1 .
- the GUI 173 of FIG. 1 may include the GUI 701 , the GUI 703 , or both.
- the GUI 701 includes the table 206 and an add overall comments/thresholds option 708 .
- the user 103 of FIG. 1 may select the add overall comments/thresholds option 708 .
- the package file generator 120 may generate the GUI 703 in response to receiving a selection of the add overall comments/thresholds option 708 .
- the GUI 703 includes a min spots field 710 , a min total rate field 712 , a max total rate field 714 , an overall comments field 718 , and a save option 716 .
- the user 103 of FIG. 1 may enter values in one or more of the min spots field 710 , the min total rate field 712 , the max total rate field 714 , the overall comments field 718 , or a combination thereof.
- the user 103 may also select the save option 716 .
- the package file generator 120 may add one or more elements to the elements 140 of the package file 115 in response to receiving a selection of the save option 716 and the user input 113 indicating values of the min spots field 710 , the min total rate field 712 , the max total rate field 714 , the overall comments field 718 , or a combination thereof, as further described with reference to FIG. 8 .
- the diagram 800 includes the elements 140 .
- the package file generator 120 may, in response to receiving a selection of the save option 716 of FIG. 7 , add one or more elements to the elements 140 of the package file 115 based on the user input 113 of FIG. 1 .
- the package file generator 120 may add an element 861 to the elements 140 based on the user input 113 .
- the package file generator 120 may generate the element 861 to include the file ID 171 , a package ID 835 , a threshold number 843 , a first threshold total 837 , a second threshold total 839 , a comment 841 , or a combination thereof.
- the package file generator 120 may, in response to determining that the user input 113 indicates a first value for the min spots field 710 of FIG. 7 , set the threshold number 843 to the first value (e.g., 2).
- the first value may indicate a threshold number of elements and the threshold number 843 may indicate that the threshold number of elements is to be included in the package associated with the package ID 835 .
- the package file generator 120 may, in response to determining that the user input 113 indicates a second value (e.g., “$350”) for the min total rate field 712 of FIG. 7 , set the first threshold total 837 to the second value (e.g., 350).
- the attribute 134 e.g., rate
- the first threshold total 837 indicates a minimum threshold (e.g., a minimum total rate threshold) for a sum of attribute values of the attribute 134 (e.g., rate).
- the first threshold total 837 indicates that one or more of the elements 130 are to be selected such that a sum of attribute values of the attribute 134 (e.g., rate) for the selected elements is greater than or equal to the first threshold total 837 .
- the package file generator 120 may, in response to determining that the user input 113 indicates a third value (e.g., “$1000”) for the max total rate field 714 of FIG. 7 , set the second threshold total 839 to the third value (e.g., 1000).
- the attribute 134 e.g., rate
- the second threshold total 839 indicates a maximum threshold (e.g., a maximum total rate threshold) for a sum of attribute values of the attribute 134 (e.g., rate).
- the second threshold total 839 indicates that one or more of the elements 130 are to be selected such that a sum of attribute values of the attribute 134 (e.g., rate) for the selected elements is less than or equal to the second threshold total 839 .
- the package file generator 120 may, in response to determining that the user input 113 indicates a fourth value (e.g., “Call us at 123-456-789 for any questions/concerns”) for the overall comments field 718 of FIG. 7 , set the comment 841 to the fourth value (e.g., “Call us at 123-456-789 for any questions/concerns”).
- a fourth value e.g., “Call us at 123-456-789 for any questions/concerns”
- the element 861 indicates that a package having the package ID 835 is associated with the first file 111 having the file ID 171 .
- the element 861 may indicate that the package associated with the package ID 835 contains or includes a threshold number of elements (e.g., a minimum number of elements, a maximum number of elements, or both) indicated by the threshold number 843 .
- the element 861 may indicate that the first threshold total 837 is related to the attribute 134 and that the package associated with the package ID 835 includes one or more elements such that a sum of attribute values of the attribute 134 for the included elements is greater than or equal to the first threshold total 837 .
- the element 861 may indicate that the second threshold total 839 is related to the attribute 134 and that the package associated with the package ID 835 includes one or more elements such that a sum of attribute values of the attribute 134 for the included elements is less than or equal to the second threshold total 839 .
- the element 861 may also indicate that the package associated with the package ID 835 has/includes the comment 841 .
- the element 861 of the package file 115 thus indicates a linkage between multiple elements of the first file 111 .
- the element 861 indicates that a package includes at least the threshold number of elements indicated by the threshold number 843 .
- the element 861 indicates that a package includes elements such that a corresponding total value for the attribute 134 (e.g., rate) is greater than or equal to the first threshold total 837 , is less than or equal to the second threshold total 839 , or both.
- the diagram 700 and the diagram 800 thus illustrate generation (or update) of the package file 115 to indicate linkage between multiple elements of the first file 111 .
- the diagram 900 includes a GUI 901 .
- the GUI 901 may be generated by the file analyzer 150 , the third device 106 , the system 100 of FIG. 1 , or a combination thereof.
- the GUI 117 of FIG. 1 may include the GUI 901 .
- the file analyzer 150 may generate the GUI 901 in response to receiving the first file 111 and the package file 115 .
- the file analyzer 150 may generate the GUI 901 to include the table 406 , as described with reference to FIGS. 4 and 6 .
- the file analyzer 150 may, in response to determining that the element 861 includes the file ID 171 and the package ID 835 , determine that a package corresponding to the package ID 835 is associated with the first file 111 having the file ID 171 .
- the file analyzer 150 may, in response to determining that the element 861 includes the package ID 835 and the threshold number 843 , generate text 902 indicating the threshold number 843 and include the text 902 in the GUI 901 .
- the file analyzer 150 may, in response to determining that the element 861 includes the package ID 835 and the first threshold total 837 associated with the attribute 134 , generate text 904 indicating the first threshold total 837 and include the text 904 in the GUI 901 .
- the file analyzer 150 may, in response to determining that the element 861 includes the package ID 835 and the second threshold total 839 , generate text 906 indicating the second threshold total 839 and may include the text 906 in the GUI 901 .
- the file analyzer 150 may, in response to determining that the element 861 includes the package ID 835 and the comment 841 , generate text 908 indicating the comment 841 and include the text 908 in the GUI 901 .
- the text 902 may indicate to the user 105 that the information (e.g., inventory information such as prices/rates) indicated by the GUI 901 is valid with a first condition that the user 105 selects rows corresponding to at least the threshold number of elements for purchase.
- the text 904 may indicate to the user 105 that the information is valid with a second condition that the user 105 selects rows corresponding to elements such that a sum of the values (e.g., attribute values) of the attribute 134 (e.g., the rate) for the selected rows is greater than or equal to the first threshold total 837 indicated by the text 904 .
- the text 906 may indicate to the user 105 that the information is valid with a third condition that the sum of the values of the attribute 134 (e.g., the rate) for the selected rows is less than or equal to the second threshold total 839 indicated by the text 906 .
- the text 908 may provide the user 105 with additional information/conditions.
- the file analyzer 150 may generate a purchase order in response to receiving a selection of one or more rows of the table 406 and a selection of the purchase option 448 . In a particular aspect, the file analyzer 150 generates the purchase order based on determining whether one or more conditions indicated by the element 861 are satisfied. Determining whether a condition is satisfied may correspond to performing an aggregate operation. The file analyzer 150 may determine one or more selected elements in response to receiving a selection of the purchase option 448 , as described with reference to FIG. 4 . As a particular example, the file analyzer 150 may determine whether a first condition is satisfied based on the selected elements and the threshold number 843 .
- the file analyzer 150 determines that the first condition is satisfied in response to determining that a count of the selected elements is greater than or equal to the threshold number 843 . Alternatively, the file analyzer 150 determines that the first condition is not satisfied in response to determining that the count of the selected elements is less than the threshold number 843 .
- the file analyzer 150 may determine whether a second condition is satisfied based on the first threshold total 837 and a sum of attribute values of the selected elements for an attribute (e.g., the attribute 134 ) related to the first threshold total 837 .
- the file analyzer 150 determines that the second condition is satisfied in response to determining that a sum of attribute values for the attribute 134 for the selected elements is greater than or equal to the first threshold total 837 .
- the selected elements may include the element 131 and the element 151 of FIG. 1 .
- the file analyzer 150 determines that the second condition is satisfied in response to determining that a sum of the attribute value 135 and the attribute value 155 is greater than or equal to the first threshold total 837 .
- the file analyzer 150 determines that the second condition is not satisfied in response to determining that the sum of the attribute value 135 and the attribute value 155 is less than the first threshold total 837 .
- the file analyzer 150 determines whether a third condition is satisfied based on the second threshold total 839 and a sum of attribute values of the selected elements for an attribute (e.g., the attribute 134 ) related to the second threshold total 839 .
- the file analyzer 150 determines that the third condition is satisfied in response to determining that a sum of attribute values for the attribute 134 for the selected elements is less than or equal to the second threshold total 839 .
- the selected elements may include the element 131 and the element 151 of FIG. 1 .
- the file analyzer 150 determines that the third condition is satisfied in response to determining that a sum of the attribute value 135 and the attribute value 155 is less than or equal to the second threshold total 839 .
- the file analyzer 150 determines that the third condition is not satisfied in response to determining that the sum of the attribute value 135 and the attribute value 155 is greater than or equal to the second threshold total 839 .
- the file analyzer 150 may generate a purchase order corresponding to the selected elements, as described with reference to FIG. 4 .
- the file analyzer 150 generates the purchase order in response to receiving the selection of the purchase option 448 and independently of performing a validation condition analysis.
- the file analyzer 150 may generate the purchase order independently of determining whether the selected elements satisfy conditions corresponding to the threshold number 843 , the first threshold total 837 , or the second threshold total 839 .
- the file analyzer 150 generates the purchase order in response to determining that the one or more conditions indicated by the element 861 are satisfied.
- the file analyzer 150 may generate the purchase order based on determining that a first condition is satisfied in response to determining that a count of selected elements is greater than the threshold number 843 .
- the file analyzer 150 may generate the purchase order based on determining that a second condition is satisfied in response to determining that a sum of attribute values of the attribute 134 for the selected elements is greater than or equal to the first threshold total 837 .
- the file analyzer 150 may generate the purchase order based on determining that a third condition is satisfied in response to determining that the sum of attribute values is less than or equal to the second threshold total 839 .
- the purchase order may indicate that the purchase order is associated with the first file 111 , the package file 115 , or both.
- the third device 106 may send the purchase order to the first device 102 .
- the package file generator 120 may, in response to receiving the purchase order from the third device 106 , send a success notification to the third device 106 independently of performing a validation condition analysis of the purchase order. For example, in this aspect, the package file generator 120 may send the success notification to the third device 106 independently of determining whether the purchase order satisfies one or more conditions indicated by the package file 115 associated with the purchase order. The success notification may indicate that the purchase order is received by the package file generator 120 . In an alternative aspect, the package file generator 120 may, in response to determining that the purchase order is associated with the package file 115 , determine whether the selected elements indicated in the purchase order satisfy one or more conditions indicated by the package file 115 .
- the package file generator 120 may send a success notification to the third device 106 in response to determining that the one or more conditions are satisfied by the selected elements.
- the success notification may indicate that the purchase order has been successfully processed.
- the package file generator 120 may send an error notification to the third device 106 in response to determining that the one or more conditions are not satisfied by the selected elements.
- the error notification may indicate that there is an error in processing the purchase order.
- the error notification may indicate whether the first condition is not satisfied, the second condition is not satisfied, the third condition is not satisfied, or a combination thereof.
- the file analyzer 150 may update the GUI 117 to indicate the success notification or the error notification.
- the GUI 901 thus enables display of an indication of linkage between multiple elements of the first file 111 .
- the text 902 indicates that a package includes at least a threshold number of elements.
- the text 904 indicates that a package includes elements such that a corresponding total is greater than or equal to a first indicated threshold (e.g., $350), the text 906 indicates that the package includes elements such that the corresponding total is less than or equal to a second indicated threshold (e.g., $1000), or both.
- the diagram 900 thus illustrates display of an indication of linkage between multiple elements of the first file 111 .
- the first condition, the second condition, and the third condition are provided as illustrative, non-limiting examples of conditions indicated by the package file 115 .
- the package file 115 may include one or more other conditions.
- the GUI 303 of FIG. 3 , the GUI 503 of FIG. 5 , or both may include a package min spots field, a package min total rate field, a package max total rate field, or a combination thereof.
- the package file generator 120 may add an element to the elements 140 indicating that the package corresponding to the package ID 335 (or the package ID 535 ) is associated with a package threshold number corresponding to a value of the package min spots field, a first package threshold total corresponding to a value of the package min total rate field, a second package threshold total corresponding to a value of the package max total rate field, or a combination thereof.
- the file analyzer 150 may, in response to determining that the elements 140 include the element associated with the package ID 335 (or the package ID 535 ), generate text indicating the package threshold number, the first package threshold total, the second package threshold total, or a combination thereof, and include the text in the GUI 401 (or the GUI 601 ).
- the GUI 401 (or the GUI 601 ) may indicate package information (e.g., inventory information such as prices/rates) associated with a package corresponding to the package ID 335 (or the package ID 535 ).
- the text may indicate to the user 105 that the package information is valid with a first particular condition that the user 105 selects rows of the package corresponding to at least the package threshold number of elements for purchase. For example, the text may indicate that an element included in the package is available at a particular price if the user 105 selects elements of the packages such that a count of the selected elements of the package is greater than or equal to the package threshold number of elements.
- the text may indicate to the user 105 that the package information is valid with a second particular condition that the user 105 selects rows of the package such that a sum of the values (e.g., attribute values) of the attribute 134 (e.g., the rate) for the selected rows is greater than or equal to the first package threshold total.
- the text may indicate that an element included in the package is available at a particular price if the user 105 selects elements of the package for purchase such that a total price of the selected elements of the package is greater than or equal to the first package threshold total.
- the text may indicate to the user 105 that the package information is valid with a third particular condition that the sum of the values of the attribute 134 (e.g., the rate) for the selected rows of the package is less than or equal to the second package threshold total.
- the text may indicate that an element included in the package is available at a particular price if the user 105 selects elements of the package for purchase such that a total price of the selected elements of the package is less than or equal to the second package threshold total.
- the file analyzer 150 may generate the purchase order independently of determining whether one or more conditions associated with the package are satisfied. For example, the file analyzer 150 may generate the purchase order independently of determining whether the first particular condition, the second particular condition, or the third particular condition is satisfied. In an alternate aspect, the file analyzer 150 may generate the purchase order based on determining whether one or more conditions associated with the package are satisfied. As a particular example, the file analyzer 150 may determine that a first particular condition is satisfied in response to determining that a count of the selected elements that are associated with the package ID 335 (or the package ID 535 ) is greater than or equal to the package threshold number.
- the file analyzer 150 may determine that the second particular condition is satisfied in response to determining that a sum of attribute values for the attribute 134 for the selected elements that are associated with the package ID 335 (or the package ID 535 ) is greater than or equal to the first package threshold total. In a particular example, the file analyzer 150 may determine that the third condition is satisfied in response to determining that a sum of attribute values for the attribute 134 for the selected elements that are associated with the package ID 335 (or the package ID 535 ) is less than or equal to the second package threshold total. The file analyzer 150 may generate the purchase order in response to determining that the first condition, the second condition, the third condition, or a combination thereof, is satisfied. In this aspect, the file analyzer 150 may perform validation of the conditions associated with one or more packages prior to generating the purchase order.
- the method 1000 may be performed by the package file generator 120 , the first device 102 , the system 100 of FIG. 1 , or a combination thereof.
- the method 1000 includes receiving, at a first device from a second device, a first file including a plurality of elements, at 1002 .
- the first device 102 of FIG. 1 may receive the first file 111 from the second device 104 , as described with reference to FIG. 1 .
- the first file 111 includes the elements 130 .
- the first file 111 may be represented in a markup language and may comply with an inventory availability format.
- the method 1000 also includes receiving user input at the first device, at 1004 .
- the package file generator 120 of FIG. 1 may receive the user input 113 , as described with reference to FIG. 1 .
- the method 1000 further includes generating, based on the user input, a second file that indicates linkage between multiple elements of the first file, at 1006 .
- the package file generator 120 of FIG. 1 may generate, based on the user input 113 , the package file 115 that indicates linkage between multiple elements of the first file 111 , as described with reference to FIG. 1 .
- the method 1000 also includes providing, from the first device to a third device, the first file and the second file, at 1008 .
- the first device 102 of FIG. 1 may send the first file 111 and the package file 115 to the third device 106 .
- the method 1000 thus enables generation of the package file 115 indicating linkage between multiple elements of the first file 111 .
- the package file 115 may have a smaller size than the first file 111 .
- the first device sends the first file 111 and the package file 115 without a prior determination whether a recipient device is a legacy device that is not configured to process package files (such as the package file 115 ) or a non-legacy device that is configured to process package files.
- Resource e.g., memory, bandwidth, or both
- Resource e.g., memory, bandwidth, or both
- utilization may be reduced by sending the first file 111 and the package file 115 while maintaining backward compatibility with legacy devices that are not configured to process the package file 115 , as compared to sending the first file 111 (in case of a legacy device) and a second file that corresponds to a combination of the first file 111 and the package file 115 (in case of a non-legacy device).
- a method of operation is shown and generally designated 1100 .
- the method 1100 may be performed by the file analyzer 150 , the third device 106 , the system 100 of FIG. 1 , or a combination thereof.
- the method 1100 includes receiving, at a device, a first file including a plurality of elements, at 1102 .
- the third device 106 of FIG. 1 may receive the first file 111 including the elements 130 , as described with reference to FIG. 1 .
- the first file 111 may be represented in a markup language and may comply with an inventory availability format.
- the method 1100 also includes receiving, at the device, a second file that indicates linkage between multiple elements of the first file, at 1104 .
- the third device 106 of FIG. 1 may receive the package file 115 that indicates linkage between multiple elements of the first file 111 , as described with reference to FIG. 1 .
- the method 1100 further includes generating, at the device, a graphical user interface (GUI) indicating the linkage between the multiple elements, at 1106 .
- GUI graphical user interface
- the file analyzer 150 of FIG. 1 may generate the GUI 117 indicating the linkage between multiple elements of the first file 111 , as described with reference to FIG. 1 .
- the GUI 117 may include at least one option that is selectable to initiate performance of an aggregate operation on the multiple elements, as described with reference to FIGS. 4 and 9 .
- the method 1100 also includes providing the GUI from the device to a display, at 1108 .
- the file analyzer 150 of FIG. 1 may provide the GUI 117 to the display 108 for display to a user.
- the method 1100 thus enables display of linkage between multiple elements of the first file 111 .
- An indication of the linkage may be absent from the first file 111 .
- the file analyzer 150 may determine the linkage based on an analysis of the first file 111 and the package file 115 , and the linkage may be displayed via a GUI.
- FIG. 12 is a block diagram of a computing environment 1200 including a computing device 1210 that is operable to support aspects of computer-implemented methods, computer program products, and system components according to the present disclosure.
- the computing device 1210 includes at least one processor 1220 and the memory 132 (e.g., a system memory).
- the computing device 1210 may be a mobile device, a desktop computer, a laptop computer, a tablet computer, a server, a cloud computing device, or any other fixed or mobile computing device.
- the at least one processor 1220 may include the package file generator 120 , the file analyzer 150 , or both, of FIG. 1 .
- the memory 132 may include volatile (such as random access memory or “RAM”), non-volatile (such as read-only memory or “ROM,” flash memory, and similar memory devices that maintain stored data even when power is not provided), a combination thereof, or some other memory.
- the memory 132 may store an operating system 1232 , program data 1238 , or both.
- the program data 1238 may include the first file 111 , the package file 115 , or both, of FIG. 1 .
- the computing device 1210 may correspond to the first device 102 , the third device 106 , or both, of FIG. 1 .
- the computing device 1210 may also have additional features or functionality.
- the computing device 1210 may also include removable and/or non-removable additional data storage devices, such as magnetic disks, optical disks, tape, and memory cards.
- additional storage is illustrated in FIG. 12 by a data store 1240 .
- at least a portion of the program data 1238 is stored at the data store 1240 .
- Computer-readable or processor-readable storage media may include volatile and/or non-volatile storage and removable and/or non-removable media implemented in any technology for storage of information such as computer-readable instructions, data structures, program components or other data.
- the memory 132 and the data store 1240 are examples of computer storage media.
- the computer storage media includes, but is not limited to, RAM, ROM, electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, compact disks (CD), digital versatile disks (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, and other non-transitory media that can be used to store information and that can be accessed by the computing device 1210 . Any such computer storage media may be part of the computing device 1210 .
- the computing device 1210 may also have one or more input devices, such as an external device 1262 connected via one or more input interfaces 1260 .
- the external device 1262 may include a key pad, a touchscreen, a microphone, an optical sensor, a mouse, etc.
- One or more output devices, such as a display 1206 , speakers, a printer, etc. may also be connected to the computing device 1210 via one or more output interfaces 1270 .
- the display 1206 may correspond to the display 108 , the display 118 , or both, of FIG. 1 .
- the input interfaces 1260 and the output interfaces 1270 may each include one or more wired or wireless interfaces, such as a universal serial bus (USB) interface, a video graphics array (VGA) interface, a serial interface, a digital visual interface (DVI), a high-definition multimedia interface (HDMI), or some other interface.
- USB universal serial bus
- VGA video graphics array
- DVI digital visual interface
- HDMI high-definition multimedia interface
- the computing device 1210 has one or more communication interfaces 1280 that enable the computing device 1210 to communicate (e.g., via a network) with other computing devices 1222 , such as the first device 102 , the second device 104 , the third device 106 of FIG. 1 , or a combination thereof.
- the computing device 1210 may be an application server or other server that provides package management.
- portions of the present disclosure may be implemented using a system that includes a software module, logic engines, computer hardware, databases, and/or computer networks.
- a system that includes a software module, logic engines, computer hardware, databases, and/or computer networks.
- aspects may be embodied as a system, method, or computer program product. Accordingly, some aspect may take the form of an entirely hardware implementation, an entirely software implementation (including firmware, resident software, micro-code, etc.) or a combination of software and hardware aspects that may all generally be referred to herein as a “circuit,” “module,” or system.” Furthermore, some aspects may take the form of a computer program product embodied in a tangible medium of expression having computer-usable program code embodied in the medium.
- the computer-usable or computer-readable medium may be, for example but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus device, or propagation medium. More specific examples (a non-exhaustive list) of the computer-readable medium would include the following: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), an optical fiber, a portable compact disc read-only memory (CDROM), an optical storage device, a transmission media such as those supporting the Internet or an intranet, or a magnetic storage device.
- RAM random access memory
- ROM read-only memory
- EPROM or Flash memory erasable programmable read-only memory
- CDROM portable compact disc read-only memory
- CDROM compact disc read-only memory
- optical storage device a transmission media such as those supporting the Internet or an intranet, or a magnetic storage device.
- the computer-usable or computer-readable medium could even be paper or another suitable medium upon which the program is printed, as the program can be electronically captured via, for instance, optical scanning of the paper or other medium, then compiled, interpreted, or otherwise processed in a suitable manner, if necessary, and then stored in a computer memory.
- a computer-usable or computer-readable medium may be any medium that can contain, store, communicate, propagate, or transport the program for use by or in connection with the instruction execution system, apparatus, or device.
- the computer-usable medium may include a propagated data signal with the computer-usable program code embodied therewith, either in baseband or as part of a carrier wave.
- the computer-usable program code may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, radio frequency (RF), etc.
- Computer program code for carrying out operations of the disclosure may be written in any combination of one or more programming languages, including an object oriented programming language, such as Java, Smalltalk, C++, or the like, and conventional procedural programming languages, such as the “C” programming language, or similar programming languages.
- the program code may execute entirely on a user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer, or entirely on the remote computer or server.
- the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet Service Provider).
- the network may include a wired network or a wireless network.
- the network may be configured in accordance with one or more wireless communication protocols, such as an Institute of Electrical and Electronics Engineers (IEEE) protocol, a Wi-Fi Alliance protocol, a Bluetooth® protocol, a Zigbee® protocol, a near-field communication protocol, an infrared communication protocol, a cellular protocol, a Long Term Evolution (LTE) protocol, or a combination thereof.
- IEEE Institute of Electrical and Electronics Engineers
- Wi-Fi Alliance such as Wi-Fi Alliance
- Bluetooth® protocol such as a Wi-Fi Alliance protocol, a Bluetooth® protocol, a Zigbee® protocol, a near-field communication protocol, an infrared communication protocol, a cellular protocol, a Long Term Evolution (LTE) protocol, or a combination thereof.
- Bluetooth is a registered trademark of Bluetooth Special Interest Group (SIG)
- Zigbee is a registered trademark of Zigbee Alliance.
- the computer program instructions may also be stored in a computer-readable medium that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable medium produce an article of manufacture including instruction means which implement the function/act specified in the flowchart and/or block diagram block or blocks.
- the computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide processes for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.
- each block in the flowchart or block diagrams may represent a module, a segment, or a portion of code, which includes one or more executable instructions for implementing the specified logical function(s).
- the functions noted in the block may occur out of order noted in the FIGS. 1-12 .
- two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Business, Economics & Management (AREA)
- Human Computer Interaction (AREA)
- Accounting & Taxation (AREA)
- Software Systems (AREA)
- Finance (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Library & Information Science (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
Description
- The present application claims the benefit of U.S. Provisional Patent Application No. 62/620,933, entitled “GENERATION AND DISPLAY OF LINKAGE BETWEEN ELEMENTS OF A FILE,” filed Jan. 23, 2018, which is expressly incorporated by reference herein in its entirety.
- The present disclosure relates to systems and methods of generating and displaying linkage between elements of a file.
- Users may rely on electronic files to communicate information. To ease the communication process, the files may comply with a format (e.g., an industry standard). The format may not be designed to support indication of linkage between multiple elements of a file. A user who is interested in linking multiple elements of a first file is unable to include an indication of the linkage in the first file while maintaining compliance of the first file with the format. In a particular example, the first file complies with an inventory availability format and indicates available inventory. To illustrate, the first file may indicate availability of a first item at a first seller and a second item at a second seller. A broker (e.g., the user) may be interested in using the first file to indicate availability of a package including the first item and the second item and providing the first file to a buyer. However, the broker is unable to indicate a link between the first item and the second item in the first file and maintain compliance of the first file with the inventory availability format. In another example, the first file complies with a construction parts format. A user may be interested in indicating that a first hardware part and a second hardware part indicated by the first file form a package. For example, the first hardware part may be compatible with the second hardware part. Because the construction parts format does not include linkage information, the user is unable to indicate a link between the first hardware part and the second hardware part in the first file.
- Systems and methods of generating and displaying linkage between elements of a file are disclosed. In a particular implementation, a first file is in compliance with a format (e.g., an industry standard format) that does not provide for indicating linkage between file elements. A package file generator of a first device generates a package file indicating linkage between multiple elements of the first file. For example, the package file generator generates a GUI (e.g., a configuration GUI) to enable selection of elements of the first file. The GUI indicates the elements of the first file. The package file generator provides the GUI to a display. The package file generator generates the package file in response to receiving a user input indicating that a first element is to be linked to a second element. The package file indicates that a first identifier of the first element is linked to a second identifier of the second element. The first device provides the first file and the package file to a second device.
- A file analyzer of the second device generates a GUI (e.g., a package GUI) based on the first file and the package file. The package GUI indicates that the first element is linked to the second element. The first device is thus able to provide the first file that complies with the format (e.g., the industry standard format) along with the package file that indicates linkage between elements of the first file. The first device is able to provide the linkage information in the package file without duplicating all of the information that is included in the first file while maintaining backward compatibility with a recipient device (e.g., a legacy device) that is not configured to process the package file. A legacy device may generate a GUI based on the first file. The GUI generated by the legacy device may indicate the elements of the first file without indicating linkage between the elements of the first file. A non-legacy device generates a GUI based on the first file and the package file. The GUI generated by the non-legacy device indicates the elements of the first file and indicates linkage between the elements of the first file.
- In a particular aspect, a method includes receiving, at a device, a first file including a plurality of elements. The first file is represented in a markup language and complies with an inventory availability format. The method also includes receiving, at the device, a second file that indicates linkage between multiple elements of the first file. The method further includes generating, at the device, a graphical user interface (GUI) indicating the linkage between the multiple elements. The GUI includes at least one option that is selectable to initiate performance of an aggregate operation on the multiple elements. The method also includes providing the GUI from the device to a display.
- In another particular aspect, a method includes receiving, at a first device from a second device, a first file including a plurality of elements. The first file is represented in a markup language and complying with an inventory availability format. The method also includes receiving user input at the first device. The method further includes generating, based on the user input, a second file that indicates linkage between multiple elements of the first file. The method also includes providing, from the first device to a third device, the first file and the second file.
- Aspects, advantages, and features of the present disclosure will become apparent after review of the entire application, including the following sections: Brief Description, Detailed Description, and the Claims.
-
FIG. 1 is a block diagram of a particular illustrative aspect of a system that is operable to generate and display linkage between elements of a file; -
FIG. 2 is a diagram to illustrate aspects of graphical user interfaces generated by the system ofFIG. 1 ; -
FIG. 3 is a diagram to illustrate aspects of graphical user interfaces generated by the system ofFIG. 1 ; -
FIG. 4 is a diagram to illustrate an aspect of a graphical user interface generated by the system ofFIG. 1 ; -
FIG. 5 is a diagram to illustrate aspects of graphical user interfaces generated by the system ofFIG. 1 ; -
FIG. 6 is a diagram to illustrate an aspect of a graphical user interface generated by the system ofFIG. 1 ; -
FIG. 7 is a diagram to illustrate aspects of graphical user interfaces generated by the system ofFIG. 1 ; -
FIG. 8 is a diagram to illustrate an aspect of a package file generated by the system ofFIG. 1 ; -
FIG. 9 is a diagram to illustrate an aspect of a graphical user interface generated by the system ofFIG. 1 ; -
FIG. 10 is a flowchart to illustrate an aspect of a method of generating a second file that indicates linkage between elements of a first file that may be performed by the system ofFIG. 1 ; -
FIG. 11 is a flow chart to illustrate an aspect of a method of displaying linkage between elements of a first file that may be performed by the system ofFIG. 1 ; and -
FIG. 12 is a block diagram of a device operable to generate a second file indicating linkage between elements of a first file and/or display the linkage between the elements of the first file in accordance with the systems, devices, and methods ofFIGS. 1-11 . - The terminology used herein is for the purpose of describing particular aspects only and is not intended to be limiting of the claims. As used herein, the singular forms “a,” “an,” and “the” are intended to include plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms “comprises” and/or “comprising,” when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof.
- Referring to
FIG. 1 , a particular illustrative aspect of a system is disclosed and generally designated 100. Thesystem 100 includes afirst device 102. Thefirst device 102 may be communicatively coupled to asecond device 104, to athird device 106, or to both. For example, thefirst device 102 may be coupled, via a network, to thesecond device 104, to thethird device 106, or to both. The network may include a wired network, a wireless network, or both. - The
first device 102 is coupled to adisplay 118. In a particular aspect, thefirst device 102 includes thedisplay 118. Thefirst device 102 includes apackage file generator 120 coupled tomemory 132. Thepackage file generator 120 is configured to generate apackage file 115 indicating linkage between multiple elements of afirst file 111. Thepackage file 115 may be represented in a markup language (e.g., XML). Thememory 132 is configured to store thefirst file 111, thepackage file 115, or both. - The
third device 106 is coupled to adisplay 108. In a particular aspect, thethird device 106 includes thedisplay 108. Thethird device 106 includes afile analyzer 150. Thefile analyzer 150 is configured to generate, based on thefirst file 111 and thepackage file 115, aGUI 117 indicating linkage between multiple elements of thefirst file 111. - During operation, the
first device 102 may receive thefirst file 111 from thesecond device 104. It should be understood that receiving thefirst file 111 from a single device is provided as an illustrative example. In some implementations, thefirst device 102 may receive multiple files from multiple sources (e.g., devices) and may generate thefirst file 111 by combining the multiple files. Thefirst file 111 is in compliance with a particular format (e.g., an industry standard format), such as an inventory availability format, a construction parts format, or a software components list format. Thefirst file 111 may be represented in a markup language (e.g., an eXtensible markup language (XML)). Thefirst file 111 may include a file identifier (ID) 171, such as a name, a serial number, or both. An indication of linkage between multiple elements of thefirst file 111 is absent from thefirst file 111. For example, the particular format does not provide for the indication of linkage between elements of the first file to be included in thefirst file 111. A file is not considered to be in compliance with the particular format if the file includes an indication of linkage between multiple elements of the file. - The
package file generator 120 generates aGUI 173 based on thefirst file 111. TheGUI 173 may enable a user 103 to update thefirst file 111, as further described with reference toFIG. 2 . For example, thepackage file generator 120 may receive a user input 113 from the user 103 and may update thefirst file 111 based on the user input 113. Thefirst file 111 may include a plurality ofelements 130. For example, theelements 130 may include anelement 131 and anelement 151. In a particular aspect, theelements 130 include theelement 131, theelement 151, or both, prior to the update to thefirst file 111. In an alternative aspect, thefirst file 111 is updated, based on the user input 113, to include theelement 131, theelement 151, or both. - In some implementations, a particular element of the
elements 130 may indicate that a radio advertising spot is available. Attributes of the particular element may indicate information regarding the radio advertising spot. For example, theelement 131 may indicate that a first radio advertising spot is available. Attributes of theelement 131 may indicate information regarding the first radio advertising spot, such as a radio station, a rate, a title of a radio show that includes the first radio advertising spot, etc. In some implementations, a particular element of theelements 130 may indicate that a hardware part is available. Attributes of the particular element may indicate information regarding the hardware part. For example, theelement 131 may indicate that a first hardware part is available. Attributes of theelement 131 may indicate information regarding the hardware part, such as a part serial number, a manufacturing date, a cost, etc. - Each of the
elements 130 may include an ID of the element. For example, theelement 131 includes an element ID 133 (e.g., a first unique element ID) and theelement 151 includes an element ID 153 (e.g., a second unique element ID). The particular format may indicate that a particular element includes one or more attributes. In a particular example, the particular format indicates that a particular element includes anattribute 134. Theelement 131 may have anattribute value 135 of theattribute 134 and theelement 151 may have anattribute value 155 of theattribute 134. TheGUI 173 may indicate that thefirst file 111 includes theelement 131 having theattribute value 135 for theattribute 134 and theelement 151 having theattribute value 155 for theattribute 134. - The
GUI 173 may enable the user 103 to indicate one or more of theelements 130 that are to be linked. For example, the user 103 may select one or more of theelements 130 to be linked via theGUI 173, and thepackage file generator 120 may receive the user input 113 indicating that one or more elements are to be linked, as further described with reference toFIGS. 3, 5, and 7 . Thepackage file generator 120 may, based on the user input 113, generate (or update) thepackage file 115 to indicate the linkage between one or more of theelements 130, as further described with reference toFIGS. 3, 5, and 8 . For example, one or more elements of thepackage file 115 may indicate that theelement 131 is linked to theelement 151. To illustrate, thepackage file 115 may include a first element indicating a package identifier, a second element indicating the package identifier and theelement ID 133 of theelement 131, and a third element indicating the package identifier and theelement ID 153 of theelement 151. The second element indicates that the package having the package identifier includes theelement 131 having theelement ID 133. The third element indicates that the package having the package identifier includes theelement 151 having theelement ID 153. The second element and the third element together indicate that theelement 131 is linked to theelement 151 by indicating that theelement 131 and theelement 151 are included in the same package (e.g., the package having the package identifier). - The
first device 102 may provide thefirst file 111 and thepackage file 115 to one or more devices. For example, thefirst device 102 may provide thefirst file 111 and thepackage file 115 to thethird device 106. Thefile analyzer 150 of thethird device 106 may generate theGUI 117 based on thefirst file 111 and thepackage file 115. TheGUI 117 may indicate the linkage between one or more of theelements 130 of thefirst file 111, as further described with reference toFIGS. 4, 6, and 9 . TheGUI 117 may include at least one option that is selectable to initiate perform of an aggregate operation based on theelements 130. For example, a user 105 may select one or more options of theGUI 117. Thefile analyzer 150 may be configured to perform the one or more aggregate operations in response to receiving user input 163 indicating the selection of the one or more options, as further described with reference toFIGS. 4, 6 , and 9. In a particular aspect, thefirst device 102 provides thefirst file 111 and thepackage file 115 to a fourth device (not shown inFIG. 1 ). The fourth device is not configured to process package files, such as thepackage file 115. For example, the fourth device includes a second file analyzer (e.g., a legacy file analyzer) that is not configured to process thepackage file 115. The second file analyzer may generate a GUI based on the first file 111 (and not the package file 115). The GUI may indicate attribute values of theelements 130 without indicating linkage between any of theelements 130. - The
system 100 may thus enable thethird device 106 to generate theGUI 117 indicating linkage between multiple elements of thefirst file 111. Thepackage file 115 may have a smaller memory footprint than thefirst file 111 because thepackage file 115 includes linkage information between elements of thefirst file 111 without duplicating all the content of thefirst file 111. Thefirst device 102 may send thefirst file 111 and thepackage file 115 without a prior determination whether a recipient device corresponds to a legacy device or a non-legacy device. Legacy devices ignore/discard thepackage file 115. Sending thefirst file 111 and thepackage file 115 conserves resources (e.g., bandwidth, memory, or both) while maintaining backward compatibility, as compared to sending the first file 111 (in case of a legacy device) and a second file (in case of a non-legacy device) that duplicates all of the information of thefirst file 111 and includes linkage information. - Referring to
FIG. 2 , a diagram is shown and generally designated 200. The diagram 200 includes aGUI 201 and aGUI 203. TheGUI 201, theGUI 203, or both, may be generated by at least one of thepackage file generator 120, thefirst device 102, or thesystem 100 ofFIG. 1 . For example, theGUI 173 ofFIG. 1 may include theGUI 201, theGUI 203, or both. - The
GUI 201 includes a table 206 including one or more rows and one or more rows. TheGUI 201 includes an addnew line option 208. The addnew line option 208 is selectable to add a line to the table 206. For example, thepackage file generator 120 ofFIG. 1 may, in response to receiving the user input 113 indicating a selection of the addnew line option 208, add an element to theelements 130 and generate theGUI 203 based on the updated version of theelements 130. TheGUI 203 corresponds to an updated version of theGUI 201 with two additional lines (or rows) in the table 206. - Each of the rows of the table 206 corresponds to a particular element of the
elements 130 ofFIG. 1 . Each of the columns corresponds to an attribute of theelements 130. For example, the table 206 includes arow 210, arow 212, and arow 214. Therow 210 includes a first value (e.g., “M-F 6 p-6:30 p”) for a first column, a second value (e.g., “Family Strife”) for a second column, a third value (e.g., $250) for a third column, and a fourth value (e.g., “KKMM”) for a fourth column. - The
row 210 may correspond to a particular element of theelements 130. The first column, the second column, the third column, and the fourth column may correspond to a first attribute, a second attribute, a third attribute, and a fourth attribute, respectively of theelements 130. The first value of the first column may indicate that the particular element has the first value (e.g., a first attribute value) for the first attribute. In a particular aspect, the fourth column corresponds to theattribute 134 ofFIG. 1 and the fourth value (e.g., “KKMM”) corresponds to the attribute value 135 (e.g., a first station ID). - The
row 212 and therow 214 may correspond to theelement 131 and theelement 151 ofFIG. 1 , respectively. The table 206 may be editable. For example, the user input 113 ofFIG. 1 may indicate that therow 212 includes the first value (e.g., “M-F 6 p-6:30 p”) for the first column, the second value (e.g., “Family Strife”) for the second column, a fifth value (e.g., $200) for the third column, and the fourth value (e.g., “KKMM”) for the fourth column. In a particular aspect, the user 103 may add therows rows FIG. 3 . For example, the user 103 may copy the column values of therow 210 as the column values for therow 212 and may enter an updated value (e.g., the fifth value) for the third column. - Each of the
GUI 201 and theGUI 203 includes asave option 224. The user input 113 may indicate a selection of thesave option 224. Thepackage file generator 120 may, in response to receiving the user input 113, update attribute values of theelements 130 based on corresponding column values indicated in the user input 113. For example, thepackage file generator 120 may update theelement 131 to have the attribute value 135 (e.g., the first station ID) for theattribute 134 in response to determining that therow 212 corresponds to theelement 131, that the fourth column corresponds to theattribute 134, that therow 212 has the fourth value (e.g., “KKMM”) for the fourth column, and that the attribute value 135 (e.g., the first station ID) of theattribute 134 corresponds to the fourth value (e.g., “KKMM”). As another example, thepackage file generator 120 may update theelement 151 to have the attribute value 155 (e.g., a second station ID) for theattribute 134 in response to determining that therow 214 corresponds to theelement 151, that the fourth column corresponds to theattribute 134, that therow 214 has a sixth value (e.g., “AABB”) for the fourth column, and that the attribute value 155 (e.g., the second station ID) of theattribute 134 corresponds to the sixth value (e.g., “AABB”). - Each of the
GUI 201 and theGUI 203 may include a plurality of checkboxes and adelete option 222. Each of the checkboxes may correspond to a particular row of the rows. In a particular aspect, the user input 113 indicates a selection of a checkbox corresponding to therow 214 and a selection of thedelete option 222. In this aspect, thepackage file generator 120 may, in response to receiving the user input 113, remove theelement 151 from theelements 130. - The
GUI 201 and theGUI 203 thus enable updating of thefirst file 111 while maintaining compliance with the particular format (e.g., the industry standard format). For example, the user 103 may use theGUI 201 and theGUI 203 to add one or more elements to theelements 130, remove one or more elements from theelements 130, or both. - Referring to
FIG. 3 , a diagram is shown and generally designated 300. The diagram 300 includes aGUI 301, aGUI 303, and theelements 140. TheGUI 301, theGUI 303, or both, may be generated by at least one of thepackage file generator 120, thefirst device 102, or thesystem 100 ofFIG. 1 . For example, theGUI 173 ofFIG. 1 may include theGUI 301, theGUI 303, or both. - The
GUI 301 includes the table 206 and an add to packageoption 308. The user 103 ofFIG. 1 may select one or more of the rows of the table 206 and may select the add to packageoption 308. Thepackage file generator 120 may generate theGUI 303 in response to receiving the user input 113 indicating a selection of the one or more rows and the add to packageoption 308. For example, thepackage file generator 120 may generate theGUI 303 in response to receiving the user input 113 indicating a selection of a first checkbox corresponding to therow 212, a second checkbox corresponding to therow 214, and the add to packageoption 308. - The
package file generator 120 generates theGUI 303 to include a table 306 having the selected rows. For example, the table 306 includes therow 212 and therow 214. TheGUI 303 may also include astart date field 310, anend date field 312, acomments field 314, or a combination thereof. The user 103 ofFIG. 1 may edit thestart date field 310, theend date field 312, thecomments field 314, or a combination thereof. TheGUI 303 includes asave package option 316. - The
package file generator 120 updates theelements 140 in response to receiving a selection of thesave package option 316. For example, thepackage file generator 120 generates anelement 361 including thefile ID 171, apackage ID 335, astart date 337, anend date 339, acomment 341, or a combination thereof. Thepackage file generator 120 generates thepackage ID 335 as a unique package identifier of thepackage file 115 ofFIG. 1 . Thepackage ID 335 may indicate a particular type of package (e.g., an individual element package). - The
package file generator 120 may generate thestart date 337 based on a first value (e.g., “12/28/2017”) of thestart date field 310, theend date 339 based on a second value (e.g., “3/27/2018”) of theend date field 312, thecomment 341 based on a third value (e.g., “This represents a Family Strife sponsorship”) of thecomments field 314, or a combination thereof. Thepackage file generator 120 adds theelement 361 to theelements 140. Theelement 361 indicates that a package having thepackage ID 335 is associated with thefirst file 111 having thefile ID 171. Theelement 361 may indicate that the package is available at or subsequent to thestart date 337, at or prior to theend date 339, or both. Theelement 361 may indicate additional information in thecomment 341 is associated with the package. - The
package file generator 120 may generate one or more elements corresponding to the selected rows in response to receiving the selection of thesave package option 316. For example, thepackage file generator 120 generates anelement 363 corresponding to therow 212 and anelement 365 corresponding to therow 214. Theelement 363 includes theelement ID 133 of theelement 131 corresponding to therow 212. Theelement 365 includes theelement ID 153 of theelement 151 corresponding to therow 214. Each of theelement 363 and theelement 365 includes thepackage ID 335. Theelement 363 indicates that the package having thepackage ID 335 includes theelement 131 having theelement ID 133. Theelement 365 indicates that the package having thepackage ID 335 includes theelement 151 having theelement ID 153. Theelements package file 115 thus indicate a linkage between theelement 131 and theelement 151 of thefirst file 111. For example, theelements element 131 and theelement 151 of thefirst file 111. The diagram 300 thus illustrates generation (or update) of thepackage file 115 to indicate linkage between multiple elements of thefirst file 111. - Referring to
FIG. 4 , a diagram is shown and generally designated 400. The diagram 400 includes aGUI 401. TheGUI 401 may be generated by thefile analyzer 150, thethird device 106, thesystem 100 ofFIG. 1 , or a combination thereof. TheGUI 117 ofFIG. 1 may include theGUI 401. - The
file analyzer 150 may generate theGUI 401 in response to receiving thefirst file 111 and thepackage file 115. Thefile analyzer 150 may generate theGUI 401 to include a table 406. Thefile analyzer 150 may generate the table 406 to include first rows and first columns corresponding to the rows and columns of the table 206 ofFIG. 2 . For example, the table 406 includes arow 412 and arow 414 corresponding to therow 212 and therow 214 of the table 206 ofFIG. 2 , respectively. To illustrate, therow 412 and therow 414 correspond to theelement 131 and theelement 151 ofFIG. 1 , respectively. - The table 406 differs from the table 206 in that the table 406 includes a
line number column 422, a package (pckg)lines column 424, apckg comments column 426, apckg start column 432, and apckg end column 434. It should be understood that the table 406 is provided as an illustrative example. In some implementations, the table 406 may include fewer than 9 columns, more than 9 columns, one or more other columns, or a combination thereof. Theline number column 422 may include a line identifier associated with each row. For example, theline number column 422 includes a first line identifier (e.g., 7) and a second line identifier (e.g., 8) associated with therow 412 and therow 414, respectively. TheGUI 401 also includes a sort bypackage option 442, a calculatetotal option 444, atotal field 446, apurchase option 448, or a combination thereof. - The
file analyzer 150 may determine that theelements 140 of thepackage file 115 include theelement 361. Thefile analyzer 150 may, in response to determining that theelement 361 includes thefile ID 171 and thepackage ID 335, determine that a package corresponding to thepackage ID 335 is associated with thefirst file 111 having thefile ID 171. - The
file analyzer 150 may determine that a package includes one or more of theelements 130. For example, thefile analyzer 150 may, in response to determining that theelement 363 indicates thepackage ID 335 and theelement ID 133 and that thefirst file 111 includes theelement 131 having theelement ID 133, determine that the package having thepackage ID 335 includes theelement 131. Similarly, thefile analyzer 150 may, in response to determining that theelement 365 indicates thepackage ID 335 and theelement ID 153 and that thefirst file 111 includes theelement 151 having theelement ID 153, determine that the package having thepackage ID 335 includes theelement 151. - The
file analyzer 150 may generate an indication of linkage between the elements of thefirst file 111. For example, thefile analyzer 150 may generate a package lines value indicating line identifiers of rows corresponding to elements that are included in the same package. To illustrate, thefile analyzer 150 may, in response to determining that the package having thepackage ID 335 includes theelement 131, generate a package lines value (e.g., “7”) indicating the first line identifier (e.g., “7”) of therow 412 corresponding to theelement 131. Thefile analyzer 150 may, in response to determining that the package having thepackage ID 335 includes theelement 151, generate (or update) the package lines value (e.g., “7, 8”) to indicate the second line identifier (e.g., “8”) of therow 414 corresponding to theelement 151. The package lines value (e.g., “7, 8”) indicates that therow 412 corresponding to the first line identifier (e.g., “7”) is linked to therow 414 corresponding to the second line identifier (e.g., “8”). For example, the package lines value (e.g., “7, 8”) indicates that a package includes theelement 131 corresponding to therow 412 and theelement 151 corresponding to therow 414. - The
file analyzer 150 may add the indication of the linkage between the elements of thefirst file 111 to entries in thepckg lines column 424 that are associated with the rows corresponding to the elements. For example, thefile analyzer 150 may, in response to determining that the package includes theelement 131 and that therow 412 corresponds to theelement 131, add the package lines value (e.g., “7,8”) to a first entry of thepckg lines column 424 associated with therow 412. Similarly, thefile analyzer 150 may, in response to determining that the package includes theelement 151 and that therow 414 corresponds to theelement 151, add the package lines value (e.g., “7,8”) to a second entry of thepckg lines column 424 associated with therow 414. - In a particular aspect, the
element 361 includes thecomment 341 associated with the package having thepackage ID 335. In this aspect, thefile analyzer 150 may generate a comment value (e.g., “This represents a Family Strife sponsorship”) based on thecomment 341. Thefile analyzer 150 may add the comment value to entries of thepckg comments column 426 that are associated with the rows corresponding to the elements that are included in the package. For example, thefile analyzer 150 may add the comment value (e.g., “This represents a Family Strife sponsorship”) to a first entry of thepckg comments column 426 that corresponds to therow 412, to a second entry of thepckg comments column 426 that corresponds to therow 414, or both. - In a particular aspect, the
element 361 includes thestart date 337 associated with the package having thepackage ID 335. In this aspect, thefile analyzer 150 may generate a start value (e.g., “12/28/2017”) representative of thestart date 337. Thefile analyzer 150 may add the start value to entries of the pckg startcolumn 432 that are associated with the rows corresponding to the elements that are included in the package. For example, thefile analyzer 150 may add the start value (e.g., “12/28/2017”) to a first entry of the pckg startcolumn 432 that corresponds to therow 412, to a second entry of the pckg startcolumn 432 that corresponds to therow 414, or both. - In a particular aspect, the
element 361 includes theend date 339 associated with the package having thepackage ID 335. In this aspect, thefile analyzer 150 may generate an end value (e.g., “3/27/2018”) representative of theend date 339. Thefile analyzer 150 may add the end value to entries of thepckg end column 434 that are associated with the rows corresponding to the elements that are included in the package. For example, thefile analyzer 150 may add the end value (e.g., “3/27/2018”) to a first entry of thepckg end column 434 that corresponds to therow 412, to a second entry of thepckg end column 434 that corresponds to therow 414, or both. - In a particular aspect, the
GUI 401 includes at least one option that is selectable to initiate performance of an aggregate operation. For example, a first aggregate operation includes displaying rows of a package contiguously. The user 105 ofFIG. 1 may select the sort bypackage option 442. Thefile analyzer 150 may, in response to receiving a selection of the sort bypackage option 442, identify rows of the table 406 that correspond to the same package and update theGUI 401 to display the identified rows contiguously. For example, thefile analyzer 150 may, in response to receiving the selection of the sort bypackage option 442, determine that therow 412 and therow 414 correspond to the package having thepackage ID 335 and may update theGUI 401 to display therow 412 and therow 414 contiguously. In a particular aspect, thefile analyzer 150 may update the first line identifier associated with therow 412 based on an updated position of therow 412 in the table 406, and update the second line identifier associated with therow 414 based on an updated position of therow 414 in the table 406. In this aspect, thefile analyzer 150 may update the first entry of thepckg lines column 424 corresponding to therow 412, the second entry of thepckg lines column 424 corresponding to therow 414, or both, to indicate the updated first line identifier, the updated second line identifier, or both. - A second aggregate operation includes calculating a value based on attribute values of rows of a package in response to a selection of at least one of the rows. For example, the user 105 may select one or more rows of the table 406 and may select the calculate
total option 444. Thefile analyzer 150 may, in response to receiving a selection of the calculatetotal option 444 and a selection of one or more rows of the table 406, determine that elements corresponding to the one or more rows are selected and generate a total rate corresponding to the selected elements. In a particular aspect, a selection of a row that is included in a package causes a selection of all rows that are included in the package. For example, thefile analyzer 150 may, in response to receiving a selection of the calculatetotal option 444 and a selection of therow 412, therow 414, or both, determine that elements of the package having thepackage ID 335 are selected. - The
file analyzer 150 may generate a total value based on one or more attributes of the selected elements. For example, thefile analyzer 150 may generate a total value based on a first attribute value of theelement 131 and a second attribute value of the element 151 (e.g., total value=first attribute value+second attribute value). In a particular aspect, theattribute 134 corresponds to rate, theelement 131 includes theattribute value 135 of theattribute 134 indicating a first rate, and theelement 151 includes theattribute value 155 of theattribute 134 indicating a second rate. Thefile analyzer 150 may update thetotal field 446 to indicate a total rate (e.g., a sum of the first rate and the second rate). - A third aggregate operation includes generating a purchase order based on elements of a package in response to a selection of at least one of rows corresponding to the elements. For example, the user 105 may select one or more rows of the table 406 and may select the
purchase option 448. Thefile analyzer 150 may, in response to receiving a selection of thepurchase option 448 and a selection of one or more rows of the table 406, generate a purchase order corresponding to the selected rows. A selection of a row that is included in a package may cause a selection of all rows that are included in the package. For example, thefile analyzer 150 may generate a purchase order in response to receiving a selection of thepurchase option 448 and a selection of therow 412, therow 414, or both. The purchase order may indicate that a first inventory item corresponding to theelement 131 and a second inventory item corresponding to theelement 151 is to be purchased. Thethird device 106 may send the purchase order to thefirst device 102. - The
GUI 401 thus enables display of an indication of linkage between multiple elements of thefirst file 111. For example, the first entry of thepckg lines column 424, the second entry of thepckg lines column 424, or both, indicate that therow 412 corresponding to theelement 131 of thefirst file 111 is linked to therow 414 corresponding to theelement 151 of thefirst file 111. To illustrate, the first entry, the second entry, or both, indicate that theelement 131 is included in the same package as theelement 151. - Referring to
FIG. 5 , a diagram is shown and generally designated 500. The diagram 500 includes aGUI 501, aGUI 503, and theelements 140. TheGUI 501, theGUI 503, or both, may be generated by at least one of thepackage file generator 120, thefirst device 102, or thesystem 100 ofFIG. 1 . For example, theGUI 173 ofFIG. 1 may include theGUI 501, theGUI 503, or both. - The
GUI 501 includes the table 206 and an add stations to packageoption 508. The user 103 ofFIG. 1 may select one or more of the rows of the table 206 and the add stations to packageoption 508. Thepackage file generator 120 may generate theGUI 503 in response to receiving the user input 113 indicating a selection of the one or more rows and the add stations to packageoption 508. For example, thepackage file generator 120 may generate theGUI 503 in response to receiving the user input 113 indicating a selection of a first checkbox corresponding to arow 522 of the table 206, a second checkbox corresponding to arow 524 of the table 206, and the add stations to packageoption 508. - The
package file generator 120 generates theGUI 503 to include a table 506. The table 506 may indicate an attribute value of the selected rows. For example, the selected rows include therow 522 and therow 524. Therow 522 corresponds to a first element of theelements 130 and therow 524 corresponds to a second element of theelements 130. For example, therow 522 corresponds to theelement 131 and therow 524 corresponds to theelement 151. In this example, theattribute 134 corresponds to station, theattribute value 135 indicates a first station (e.g., “BBCC”) associated with theelement 131, and the attribute value 155 (e.g., “DDEE”) indicates a second station associated with theelement 151. The table 506 includes a stations column associated with theattribute 134. Entries of the stations column may represent unique attribute values of theattribute 134 of the selected rows. For example, thepackage file generator 120 may generate the table 506 to have a first value in a first entry of stations column and a second value in a second entry of the stations column. The first value and the second value represent the first station and the second station, respectively. - The
GUI 503 may also include astart date field 510, anend date field 512, acomments field 514, or a combination thereof. The user 103 ofFIG. 1 may edit thestart date field 510, theend date field 512, thecomments field 514, or a combination thereof. TheGUI 303 includes asave package option 516. - The
package file generator 120 updates theelements 140 in response to receiving a selection of thesave package option 516. For example, thepackage file generator 120 generates anelement 561 including thefile ID 171, apackage ID 535, astart date 537, anend date 539, acomment 541, or a combination thereof. Thepackage file generator 120 generates the package ID 535 (e.g., a group station package ID) as a unique package identifier of thepackage file 115 ofFIG. 1 . For example, thepackage ID 535 is distinct from thepackage ID 335. Thepackage ID 535 may indicate a particular type of package (e.g., a group station package). - The
package file generator 120 may generate thestart date 537 based on a first value (e.g., “12/15/2017”) of thestart date field 510, theend date 539 based on a second value (e.g., “2/16/2018”) of theend date field 512, thecomment 541 based on a third value (e.g., “This represents a BBCC & DDEE sponsorship”) of thecomments field 514, or a combination thereof. Thepackage file generator 120 adds theelement 561 to theelements 140. - The
package file generator 120 generates anelement 567 including thepackage ID 535, theattribute value 135 indicating the first station (e.g., BBCC), theattribute value 155 indicating the second station (e.g., DDEE), thecomment 541, or a combination thereof. It should be understood that a particular number of elements with particular components are described as illustrative examples. In some implementations, thepackage file generator 120 may generate a single element or more than 2 elements in response to receiving the selection of thesave package option 516. For example, the single element may correspond to a combination of theelement 561 and theelement 567. - The
elements package file 115 thus indicate a linkage between elements of thefirst file 111 that have the attribute value 135 (e.g., “BBCC”) or the attribute value 155 (e.g., “DDEE”) for the attribute 134 (e.g., station). For example, theelements element 131 corresponding to therow 522, theelement 151 corresponding to therow 524, and an element of thefirst file 111 corresponding to arow 526 of the table 206. The diagram 500 thus illustrates generation (or update) of thepackage file 115 to indicate linkage between multiple elements of thefirst file 111. - Referring to
FIG. 6 , a diagram is shown and generally designated 600. The diagram 600 includes aGUI 601. TheGUI 601 may be generated by thefile analyzer 150, thethird device 106, thesystem 100 ofFIG. 1 , or a combination thereof. TheGUI 117 ofFIG. 1 may include theGUI 601. - The
file analyzer 150 may generate theGUI 601 in response to receiving thefirst file 111 and thepackage file 115. Thefile analyzer 150 may generate theGUI 601 to include the table 406, as described with reference toFIG. 4 . For example, the table 406 includes arow 622, arow 624, and arow 626 corresponding to therow 522, therow 524, and therow 526 ofFIG. 5 , respectively. Thefile analyzer 150 may, in response to determining that theelement 561 includes thefile ID 171 and thepackage ID 535, determine that a package corresponding to thepackage ID 535 is associated with thefirst file 111 having thefile ID 171. - The
file analyzer 150 may determine that the package having thepackage ID 535 includes one or more of theelements 130. For example, thefile analyzer 150 may, in response to determining that theelement 567 indicates thepackage ID 535, theattribute value 135 of theattribute 134, and theattribute value 155 of theattribute 134, determine that the package includes one or more first elements of theelements 130 and one or more second elements of theelements 130, where each of the first elements has theattribute value 135 of theattribute 134 and each of the second elements has theattribute value 155 of theattribute 134. For example, thefile analyzer 150 may, in response to determining that theelement 131 has the attribute value 135 (e.g., “BBCC”) for theattribute 134, determine that the package includes theelement 131 of thefirst file 111. Thefile analyzer 150 may determine that the package includes theelement 151 in response to determining that theelement 151 has the attribute value 155 (e.g., “DDEE”) for theattribute 134. Thefile analyzer 150 may determine that the package includes a third element of thefirst file 111 in response to determining that the third element has the attribute value 155 (e.g., “DDEE”) for theattribute 134. Each of therow 526 ofFIG. 5 and therow 626 may correspond to the third element of thefirst file 111. - The
file analyzer 150 may generate an indication of linkage between the elements of thefirst file 111. For example, thefile analyzer 150 may generate a package lines value indicating line identifiers of rows corresponding to elements that are included in the same package. To illustrate, thefile analyzer 150 may, in response to determining that the package having thepackage ID 535 includes theelement 131, theelement 151, and the third element, generate a package lines value (e.g., “3, 5, 6”) indicating a first line identifier (e.g., “3”), a second line identifier (e.g., “5”), and a third line identifier (e.g., “6”). The first line identifier (e.g., “3”), the second line identifier (e.g., “5”), and the third line identifier (e.g., “6”) may designate therow 622 corresponding to theelement 131, therow 624 corresponding to theelement 151, and therow 626 corresponding to the third element, respectively. - The package lines value (e.g., “3, 5, 6”) indicates that the
row 622 corresponding to the first line identifier (e.g., “3”) is linked to therow 624 corresponding to the second line identifier (e.g., “5”) and to therow 626 corresponding to the third line identifier (e.g., “6”). For example, the package lines value (e.g., “3, 5, 6”) indicates that a package includes theelement 131 corresponding to therow 622, theelement 151 corresponding to therow 624, and a third element corresponding to therow 626. - The
file analyzer 150 may add the package lines value (e.g., “3, 5, 6”) to a first entry of thepckg lines column 424 associated with therow 622, a second entry of thepckg lines column 424 associated with therow 624, a third entry of thepckg lines column 424 associated with therow 626. - In a particular aspect, the
file analyzer 150 updates, based on thecomment 541, entries of thepckg comments column 426 corresponding to therow 622, therow 624, therow 626, or a combination thereof, as described with reference toFIG. 4 . In a particular aspect, thefile analyzer 150 updates, based on thestart date 537, entries of the pckg startcolumn 432 corresponding to therow 622, therow 624, therow 626, or a combination thereof, as described with reference toFIG. 4 . In a particular aspect, thefile analyzer 150 updates, based on theend date 539, entries of thepckg end column 434 corresponding to therow 622, therow 624, therow 626, or a combination thereof, as described with reference toFIG. 4 . - The
GUI 601 thus enables display of an indication of linkage between multiple elements of thefirst file 111. For example, the first entry of thepckg lines column 424, the second entry of thepckg lines column 424, the third entry of thepckg lines column 424, or a combination thereof, indicate that therow 622 corresponding to theelement 131 of thefirst file 111 is linked to therow 624 corresponding to theelement 151 of thefirst file 111 and to therow 626 corresponding to a third element of thefirst file 111. To illustrate, the first entry, the second entry, the third entry, or a combination thereof, indicate that theelement 131 is included in the same package as theelement 151 and the third element. - Referring to
FIG. 7 , a diagram is shown and generally designated 700. The diagram 700 includes aGUI 701 and aGUI 703. TheGUI 701, theGUI 703, or both, may be generated by at least one of thepackage file generator 120, thefirst device 102, or thesystem 100 ofFIG. 1 . For example, theGUI 173 ofFIG. 1 may include theGUI 701, theGUI 703, or both. - The
GUI 701 includes the table 206 and an add overall comments/thresholds option 708. The user 103 ofFIG. 1 may select the add overall comments/thresholds option 708. Thepackage file generator 120 may generate theGUI 703 in response to receiving a selection of the add overall comments/thresholds option 708. TheGUI 703 includes a min spotsfield 710, a mintotal rate field 712, a maxtotal rate field 714, anoverall comments field 718, and asave option 716. - The user 103 of
FIG. 1 may enter values in one or more of themin spots field 710, the mintotal rate field 712, the maxtotal rate field 714, theoverall comments field 718, or a combination thereof. The user 103 may also select thesave option 716. Thepackage file generator 120 may add one or more elements to theelements 140 of thepackage file 115 in response to receiving a selection of thesave option 716 and the user input 113 indicating values of themin spots field 710, the mintotal rate field 712, the maxtotal rate field 714, theoverall comments field 718, or a combination thereof, as further described with reference toFIG. 8 . - Referring to
FIG. 8 , a diagram is shown and generally designated 800. The diagram 800 includes theelements 140. Thepackage file generator 120 may, in response to receiving a selection of thesave option 716 ofFIG. 7 , add one or more elements to theelements 140 of thepackage file 115 based on the user input 113 ofFIG. 1 . For example, thepackage file generator 120 may add anelement 861 to theelements 140 based on the user input 113. To illustrate, thepackage file generator 120 may generate theelement 861 to include thefile ID 171, apackage ID 835, athreshold number 843, afirst threshold total 837, asecond threshold total 839, acomment 841, or a combination thereof. - The
package file generator 120 may generate thepackage ID 835 as a unique package identifier of thepackage file 115. For example, thepackage ID 835 is distinct from each of thepackage ID 335 and thepackage ID 535. Thepackage ID 835 may indicate a particular type of package (e.g., an overall package). - The
package file generator 120 may, in response to determining that the user input 113 indicates a first value for themin spots field 710 ofFIG. 7 , set thethreshold number 843 to the first value (e.g., 2). The first value may indicate a threshold number of elements and thethreshold number 843 may indicate that the threshold number of elements is to be included in the package associated with thepackage ID 835. - The
package file generator 120 may, in response to determining that the user input 113 indicates a second value (e.g., “$350”) for the mintotal rate field 712 ofFIG. 7 , set thefirst threshold total 837 to the second value (e.g., 350). In a particular aspect, the attribute 134 (e.g., rate) is associated with the mintotal rate field 712. In this aspect, thefirst threshold total 837 indicates a minimum threshold (e.g., a minimum total rate threshold) for a sum of attribute values of the attribute 134 (e.g., rate). For example, thefirst threshold total 837 indicates that one or more of theelements 130 are to be selected such that a sum of attribute values of the attribute 134 (e.g., rate) for the selected elements is greater than or equal to thefirst threshold total 837. - The
package file generator 120 may, in response to determining that the user input 113 indicates a third value (e.g., “$1000”) for the maxtotal rate field 714 ofFIG. 7 , set thesecond threshold total 839 to the third value (e.g., 1000). In a particular aspect, the attribute 134 (e.g., rate) is associated with the maxtotal rate field 714. In this aspect, thesecond threshold total 839 indicates a maximum threshold (e.g., a maximum total rate threshold) for a sum of attribute values of the attribute 134 (e.g., rate). For example, thesecond threshold total 839 indicates that one or more of theelements 130 are to be selected such that a sum of attribute values of the attribute 134 (e.g., rate) for the selected elements is less than or equal to thesecond threshold total 839. - The
package file generator 120 may, in response to determining that the user input 113 indicates a fourth value (e.g., “Call us at 123-456-789 for any questions/concerns”) for theoverall comments field 718 ofFIG. 7 , set thecomment 841 to the fourth value (e.g., “Call us at 123-456-789 for any questions/concerns”). - The
element 861 indicates that a package having thepackage ID 835 is associated with thefirst file 111 having thefile ID 171. Theelement 861 may indicate that the package associated with thepackage ID 835 contains or includes a threshold number of elements (e.g., a minimum number of elements, a maximum number of elements, or both) indicated by thethreshold number 843. Theelement 861 may indicate that thefirst threshold total 837 is related to theattribute 134 and that the package associated with thepackage ID 835 includes one or more elements such that a sum of attribute values of theattribute 134 for the included elements is greater than or equal to thefirst threshold total 837. Theelement 861 may indicate that thesecond threshold total 839 is related to theattribute 134 and that the package associated with thepackage ID 835 includes one or more elements such that a sum of attribute values of theattribute 134 for the included elements is less than or equal to thesecond threshold total 839. Theelement 861 may also indicate that the package associated with thepackage ID 835 has/includes thecomment 841. - The
element 861 of thepackage file 115 thus indicates a linkage between multiple elements of thefirst file 111. For example, theelement 861 indicates that a package includes at least the threshold number of elements indicated by thethreshold number 843. As another example, theelement 861 indicates that a package includes elements such that a corresponding total value for the attribute 134 (e.g., rate) is greater than or equal to thefirst threshold total 837, is less than or equal to thesecond threshold total 839, or both. The diagram 700 and the diagram 800 thus illustrate generation (or update) of thepackage file 115 to indicate linkage between multiple elements of thefirst file 111. - Referring to
FIG. 9 , a diagram is shown and generally designated 900. The diagram 900 includes aGUI 901. TheGUI 901 may be generated by thefile analyzer 150, thethird device 106, thesystem 100 ofFIG. 1 , or a combination thereof. TheGUI 117 ofFIG. 1 may include theGUI 901. - The
file analyzer 150 may generate theGUI 901 in response to receiving thefirst file 111 and thepackage file 115. Thefile analyzer 150 may generate theGUI 901 to include the table 406, as described with reference toFIGS. 4 and 6 . - The
file analyzer 150 may, in response to determining that theelement 861 includes thefile ID 171 and thepackage ID 835, determine that a package corresponding to thepackage ID 835 is associated with thefirst file 111 having thefile ID 171. - The
file analyzer 150 may, in response to determining that theelement 861 includes thepackage ID 835 and thethreshold number 843, generatetext 902 indicating thethreshold number 843 and include thetext 902 in theGUI 901. Thefile analyzer 150 may, in response to determining that theelement 861 includes thepackage ID 835 and thefirst threshold total 837 associated with theattribute 134, generatetext 904 indicating thefirst threshold total 837 and include thetext 904 in theGUI 901. Thefile analyzer 150 may, in response to determining that theelement 861 includes thepackage ID 835 and thesecond threshold total 839, generatetext 906 indicating thesecond threshold total 839 and may include thetext 906 in theGUI 901. Thefile analyzer 150 may, in response to determining that theelement 861 includes thepackage ID 835 and thecomment 841, generatetext 908 indicating thecomment 841 and include thetext 908 in theGUI 901. - The
text 902 may indicate to the user 105 that the information (e.g., inventory information such as prices/rates) indicated by theGUI 901 is valid with a first condition that the user 105 selects rows corresponding to at least the threshold number of elements for purchase. Thetext 904 may indicate to the user 105 that the information is valid with a second condition that the user 105 selects rows corresponding to elements such that a sum of the values (e.g., attribute values) of the attribute 134 (e.g., the rate) for the selected rows is greater than or equal to thefirst threshold total 837 indicated by thetext 904. Thetext 906 may indicate to the user 105 that the information is valid with a third condition that the sum of the values of the attribute 134 (e.g., the rate) for the selected rows is less than or equal to thesecond threshold total 839 indicated by thetext 906. Thetext 908 may provide the user 105 with additional information/conditions. - In a particular aspect, the
file analyzer 150 may generate a purchase order in response to receiving a selection of one or more rows of the table 406 and a selection of thepurchase option 448. In a particular aspect, thefile analyzer 150 generates the purchase order based on determining whether one or more conditions indicated by theelement 861 are satisfied. Determining whether a condition is satisfied may correspond to performing an aggregate operation. Thefile analyzer 150 may determine one or more selected elements in response to receiving a selection of thepurchase option 448, as described with reference toFIG. 4 . As a particular example, thefile analyzer 150 may determine whether a first condition is satisfied based on the selected elements and thethreshold number 843. To illustrate, thefile analyzer 150 determines that the first condition is satisfied in response to determining that a count of the selected elements is greater than or equal to thethreshold number 843. Alternatively, thefile analyzer 150 determines that the first condition is not satisfied in response to determining that the count of the selected elements is less than thethreshold number 843. - As another example, the
file analyzer 150 may determine whether a second condition is satisfied based on thefirst threshold total 837 and a sum of attribute values of the selected elements for an attribute (e.g., the attribute 134) related to thefirst threshold total 837. To illustrate, thefile analyzer 150 determines that the second condition is satisfied in response to determining that a sum of attribute values for theattribute 134 for the selected elements is greater than or equal to thefirst threshold total 837. For example, the selected elements may include theelement 131 and theelement 151 ofFIG. 1 . Thefile analyzer 150 determines that the second condition is satisfied in response to determining that a sum of theattribute value 135 and theattribute value 155 is greater than or equal to thefirst threshold total 837. Alternatively, thefile analyzer 150 determines that the second condition is not satisfied in response to determining that the sum of theattribute value 135 and theattribute value 155 is less than thefirst threshold total 837. - In a particular example, the
file analyzer 150 determines whether a third condition is satisfied based on thesecond threshold total 839 and a sum of attribute values of the selected elements for an attribute (e.g., the attribute 134) related to thesecond threshold total 839. To illustrate, thefile analyzer 150 determines that the third condition is satisfied in response to determining that a sum of attribute values for theattribute 134 for the selected elements is less than or equal to thesecond threshold total 839. For example, the selected elements may include theelement 131 and theelement 151 ofFIG. 1 . Thefile analyzer 150 determines that the third condition is satisfied in response to determining that a sum of theattribute value 135 and theattribute value 155 is less than or equal to thesecond threshold total 839. Alternatively, thefile analyzer 150 determines that the third condition is not satisfied in response to determining that the sum of theattribute value 135 and theattribute value 155 is greater than or equal to thesecond threshold total 839. - The
file analyzer 150 may generate a purchase order corresponding to the selected elements, as described with reference toFIG. 4 . In a particular aspect, thefile analyzer 150 generates the purchase order in response to receiving the selection of thepurchase option 448 and independently of performing a validation condition analysis. For example, thefile analyzer 150 may generate the purchase order independently of determining whether the selected elements satisfy conditions corresponding to thethreshold number 843, thefirst threshold total 837, or thesecond threshold total 839. In an alternate aspect, thefile analyzer 150 generates the purchase order in response to determining that the one or more conditions indicated by theelement 861 are satisfied. For example, thefile analyzer 150 may generate the purchase order based on determining that a first condition is satisfied in response to determining that a count of selected elements is greater than thethreshold number 843. Thefile analyzer 150 may generate the purchase order based on determining that a second condition is satisfied in response to determining that a sum of attribute values of theattribute 134 for the selected elements is greater than or equal to thefirst threshold total 837. Thefile analyzer 150 may generate the purchase order based on determining that a third condition is satisfied in response to determining that the sum of attribute values is less than or equal to thesecond threshold total 839. The purchase order may indicate that the purchase order is associated with thefirst file 111, thepackage file 115, or both. Thethird device 106 may send the purchase order to thefirst device 102. - In a particular aspect, the
package file generator 120 may, in response to receiving the purchase order from thethird device 106, send a success notification to thethird device 106 independently of performing a validation condition analysis of the purchase order. For example, in this aspect, thepackage file generator 120 may send the success notification to thethird device 106 independently of determining whether the purchase order satisfies one or more conditions indicated by thepackage file 115 associated with the purchase order. The success notification may indicate that the purchase order is received by thepackage file generator 120. In an alternative aspect, thepackage file generator 120 may, in response to determining that the purchase order is associated with thepackage file 115, determine whether the selected elements indicated in the purchase order satisfy one or more conditions indicated by thepackage file 115. Thepackage file generator 120 may send a success notification to thethird device 106 in response to determining that the one or more conditions are satisfied by the selected elements. The success notification may indicate that the purchase order has been successfully processed. Alternatively, thepackage file generator 120 may send an error notification to thethird device 106 in response to determining that the one or more conditions are not satisfied by the selected elements. The error notification may indicate that there is an error in processing the purchase order. The error notification may indicate whether the first condition is not satisfied, the second condition is not satisfied, the third condition is not satisfied, or a combination thereof. Thefile analyzer 150 may update theGUI 117 to indicate the success notification or the error notification. - The
GUI 901 thus enables display of an indication of linkage between multiple elements of thefirst file 111. For example, thetext 902 indicates that a package includes at least a threshold number of elements. As another example, thetext 904 indicates that a package includes elements such that a corresponding total is greater than or equal to a first indicated threshold (e.g., $350), thetext 906 indicates that the package includes elements such that the corresponding total is less than or equal to a second indicated threshold (e.g., $1000), or both. The diagram 900 thus illustrates display of an indication of linkage between multiple elements of thefirst file 111. - It should be understood that the first condition, the second condition, and the third condition are provided as illustrative, non-limiting examples of conditions indicated by the
package file 115. In other implementations, thepackage file 115 may include one or more other conditions. For example, theGUI 303 ofFIG. 3 , theGUI 503 ofFIG. 5 , or both, may include a package min spots field, a package min total rate field, a package max total rate field, or a combination thereof. Thepackage file generator 120 may add an element to theelements 140 indicating that the package corresponding to the package ID 335 (or the package ID 535) is associated with a package threshold number corresponding to a value of the package min spots field, a first package threshold total corresponding to a value of the package min total rate field, a second package threshold total corresponding to a value of the package max total rate field, or a combination thereof. - The
file analyzer 150 may, in response to determining that theelements 140 include the element associated with the package ID 335 (or the package ID 535), generate text indicating the package threshold number, the first package threshold total, the second package threshold total, or a combination thereof, and include the text in the GUI 401 (or the GUI 601). The GUI 401 (or the GUI 601) may indicate package information (e.g., inventory information such as prices/rates) associated with a package corresponding to the package ID 335 (or the package ID 535). The text may indicate to the user 105 that the package information is valid with a first particular condition that the user 105 selects rows of the package corresponding to at least the package threshold number of elements for purchase. For example, the text may indicate that an element included in the package is available at a particular price if the user 105 selects elements of the packages such that a count of the selected elements of the package is greater than or equal to the package threshold number of elements. - The text may indicate to the user 105 that the package information is valid with a second particular condition that the user 105 selects rows of the package such that a sum of the values (e.g., attribute values) of the attribute 134 (e.g., the rate) for the selected rows is greater than or equal to the first package threshold total. For example, the text may indicate that an element included in the package is available at a particular price if the user 105 selects elements of the package for purchase such that a total price of the selected elements of the package is greater than or equal to the first package threshold total.
- The text may indicate to the user 105 that the package information is valid with a third particular condition that the sum of the values of the attribute 134 (e.g., the rate) for the selected rows of the package is less than or equal to the second package threshold total. For example, the text may indicate that an element included in the package is available at a particular price if the user 105 selects elements of the package for purchase such that a total price of the selected elements of the package is less than or equal to the second package threshold total.
- In a particular aspect, the
file analyzer 150 may generate the purchase order independently of determining whether one or more conditions associated with the package are satisfied. For example, thefile analyzer 150 may generate the purchase order independently of determining whether the first particular condition, the second particular condition, or the third particular condition is satisfied. In an alternate aspect, thefile analyzer 150 may generate the purchase order based on determining whether one or more conditions associated with the package are satisfied. As a particular example, thefile analyzer 150 may determine that a first particular condition is satisfied in response to determining that a count of the selected elements that are associated with the package ID 335 (or the package ID 535) is greater than or equal to the package threshold number. As another example, thefile analyzer 150 may determine that the second particular condition is satisfied in response to determining that a sum of attribute values for theattribute 134 for the selected elements that are associated with the package ID 335 (or the package ID 535) is greater than or equal to the first package threshold total. In a particular example, thefile analyzer 150 may determine that the third condition is satisfied in response to determining that a sum of attribute values for theattribute 134 for the selected elements that are associated with the package ID 335 (or the package ID 535) is less than or equal to the second package threshold total. Thefile analyzer 150 may generate the purchase order in response to determining that the first condition, the second condition, the third condition, or a combination thereof, is satisfied. In this aspect, thefile analyzer 150 may perform validation of the conditions associated with one or more packages prior to generating the purchase order. - Referring to
FIG. 10 , a method of operation is shown and generally designated 1000. Themethod 1000 may be performed by thepackage file generator 120, thefirst device 102, thesystem 100 ofFIG. 1 , or a combination thereof. - The
method 1000 includes receiving, at a first device from a second device, a first file including a plurality of elements, at 1002. For example, thefirst device 102 ofFIG. 1 may receive thefirst file 111 from thesecond device 104, as described with reference toFIG. 1 . Thefirst file 111 includes theelements 130. Thefirst file 111 may be represented in a markup language and may comply with an inventory availability format. - The
method 1000 also includes receiving user input at the first device, at 1004. For example, thepackage file generator 120 ofFIG. 1 may receive the user input 113, as described with reference toFIG. 1 . - The
method 1000 further includes generating, based on the user input, a second file that indicates linkage between multiple elements of the first file, at 1006. For example, thepackage file generator 120 ofFIG. 1 may generate, based on the user input 113, thepackage file 115 that indicates linkage between multiple elements of thefirst file 111, as described with reference toFIG. 1 . - The
method 1000 also includes providing, from the first device to a third device, the first file and the second file, at 1008. For example, thefirst device 102 ofFIG. 1 may send thefirst file 111 and thepackage file 115 to thethird device 106. - The
method 1000 thus enables generation of thepackage file 115 indicating linkage between multiple elements of thefirst file 111. Thepackage file 115 may have a smaller size than thefirst file 111. The first device sends thefirst file 111 and thepackage file 115 without a prior determination whether a recipient device is a legacy device that is not configured to process package files (such as the package file 115) or a non-legacy device that is configured to process package files. Resource (e.g., memory, bandwidth, or both) utilization may be reduced by sending thefirst file 111 and thepackage file 115 while maintaining backward compatibility with legacy devices that are not configured to process thepackage file 115, as compared to sending the first file 111 (in case of a legacy device) and a second file that corresponds to a combination of thefirst file 111 and the package file 115 (in case of a non-legacy device). - Referring to
FIG. 11 , a method of operation is shown and generally designated 1100. Themethod 1100 may be performed by thefile analyzer 150, thethird device 106, thesystem 100 ofFIG. 1 , or a combination thereof. - The
method 1100 includes receiving, at a device, a first file including a plurality of elements, at 1102. For example, thethird device 106 ofFIG. 1 may receive thefirst file 111 including theelements 130, as described with reference toFIG. 1 . Thefirst file 111 may be represented in a markup language and may comply with an inventory availability format. - The
method 1100 also includes receiving, at the device, a second file that indicates linkage between multiple elements of the first file, at 1104. For example, thethird device 106 ofFIG. 1 may receive thepackage file 115 that indicates linkage between multiple elements of thefirst file 111, as described with reference toFIG. 1 . - The
method 1100 further includes generating, at the device, a graphical user interface (GUI) indicating the linkage between the multiple elements, at 1106. For example, thefile analyzer 150 ofFIG. 1 may generate theGUI 117 indicating the linkage between multiple elements of thefirst file 111, as described with reference toFIG. 1 . TheGUI 117 may include at least one option that is selectable to initiate performance of an aggregate operation on the multiple elements, as described with reference toFIGS. 4 and 9 . - The
method 1100 also includes providing the GUI from the device to a display, at 1108. For example, thefile analyzer 150 ofFIG. 1 may provide theGUI 117 to thedisplay 108 for display to a user. - The
method 1100 thus enables display of linkage between multiple elements of thefirst file 111. An indication of the linkage may be absent from thefirst file 111. Thefile analyzer 150 may determine the linkage based on an analysis of thefirst file 111 and thepackage file 115, and the linkage may be displayed via a GUI. -
FIG. 12 is a block diagram of acomputing environment 1200 including acomputing device 1210 that is operable to support aspects of computer-implemented methods, computer program products, and system components according to the present disclosure. - The
computing device 1210 includes at least oneprocessor 1220 and the memory 132 (e.g., a system memory). For example, thecomputing device 1210 may be a mobile device, a desktop computer, a laptop computer, a tablet computer, a server, a cloud computing device, or any other fixed or mobile computing device. The at least oneprocessor 1220 may include thepackage file generator 120, thefile analyzer 150, or both, ofFIG. 1 . Depending on the configuration and type of computing device, thememory 132 may include volatile (such as random access memory or “RAM”), non-volatile (such as read-only memory or “ROM,” flash memory, and similar memory devices that maintain stored data even when power is not provided), a combination thereof, or some other memory. Thememory 132 may store anoperating system 1232,program data 1238, or both. Theprogram data 1238 may include thefirst file 111, thepackage file 115, or both, ofFIG. 1 . In an illustrative aspect, thecomputing device 1210 may correspond to thefirst device 102, thethird device 106, or both, ofFIG. 1 . - The
computing device 1210 may also have additional features or functionality. For example, thecomputing device 1210 may also include removable and/or non-removable additional data storage devices, such as magnetic disks, optical disks, tape, and memory cards. Such additional storage is illustrated inFIG. 12 by adata store 1240. In a particular aspect, at least a portion of theprogram data 1238 is stored at thedata store 1240. Computer-readable or processor-readable storage media may include volatile and/or non-volatile storage and removable and/or non-removable media implemented in any technology for storage of information such as computer-readable instructions, data structures, program components or other data. Thememory 132 and thedata store 1240 are examples of computer storage media. The computer storage media includes, but is not limited to, RAM, ROM, electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, compact disks (CD), digital versatile disks (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, and other non-transitory media that can be used to store information and that can be accessed by thecomputing device 1210. Any such computer storage media may be part of thecomputing device 1210. - The
computing device 1210 may also have one or more input devices, such as anexternal device 1262 connected via one or more input interfaces 1260. Theexternal device 1262 may include a key pad, a touchscreen, a microphone, an optical sensor, a mouse, etc. One or more output devices, such as adisplay 1206, speakers, a printer, etc. may also be connected to thecomputing device 1210 via one ormore output interfaces 1270. Thedisplay 1206 may correspond to thedisplay 108, thedisplay 118, or both, ofFIG. 1 . The input interfaces 1260 and theoutput interfaces 1270 may each include one or more wired or wireless interfaces, such as a universal serial bus (USB) interface, a video graphics array (VGA) interface, a serial interface, a digital visual interface (DVI), a high-definition multimedia interface (HDMI), or some other interface. In certain aspects, such as when thecomputing device 1210 is a server, the input interfaces 1260 and theoutput interfaces 1270 may not be included. Thecomputing device 1210 has one ormore communication interfaces 1280 that enable thecomputing device 1210 to communicate (e.g., via a network) withother computing devices 1222, such as thefirst device 102, thesecond device 104, thethird device 106 ofFIG. 1 , or a combination thereof. - Particular aspects of disclosed techniques may be implemented in conjunction with a client-server architecture. To illustrate, the
computing device 1210 may be an application server or other server that provides package management. - It will be appreciated that not all of the components or devices illustrated in
FIG. 12 or otherwise described in the previous paragraphs are necessary to support aspects as herein described. It will also be appreciated that thecomputing device 1210 may have additional or different components or devices than illustrated inFIG. 12 or otherwise described in the previous paragraphs. - It should be noted that various functions performed by the one or more components of the systems described herein and the
computing device 1210 are described as being performed by certain components or modules. This division of components and modules is for illustration only. In an alternate implementation, a function performed by a particular component or module may be divided amongst multiple components or modules. Moreover, in an alternate implementation, two or more components or modules of the systems described herein may be integrated into a single component or module. Each component or module illustrated in systems described herein may be implemented using hardware (e.g., a field-programmable gate array (FPGA) device, an application-specific integrated circuit (ASIC), a DSP, a controller, etc.), software (e.g., instructions executable by a processor), or any combination thereof. - Although the exemplary aspects described herein are intended to enable a person skilled in the art to practice such aspects, it should be understood that other aspects may be realized and that logical and physical changes may be made without departing from the scope of the present disclosure. Thus, the detailed description herein is presented for purposes of illustration only.
- In one aspect, portions of the present disclosure may be implemented using a system that includes a software module, logic engines, computer hardware, databases, and/or computer networks. Moreover, while the description may make reference to specific technologies, system architectures, and data management techniques, it will be appreciated that other devices and/or methods that use different technologies, architectures, or techniques may be implemented without departing from the scope of the disclosure. This disclosure is intended to cover any and all subsequent adaptations or variations of various aspects.
- As will be appreciated by one skilled in the art, some aspects may be embodied as a system, method, or computer program product. Accordingly, some aspect may take the form of an entirely hardware implementation, an entirely software implementation (including firmware, resident software, micro-code, etc.) or a combination of software and hardware aspects that may all generally be referred to herein as a “circuit,” “module,” or system.” Furthermore, some aspects may take the form of a computer program product embodied in a tangible medium of expression having computer-usable program code embodied in the medium.
- Any combination of one or more computer usable or computer readable medium(s) may be utilized. The computer-usable or computer-readable medium may be, for example but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus device, or propagation medium. More specific examples (a non-exhaustive list) of the computer-readable medium would include the following: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), an optical fiber, a portable compact disc read-only memory (CDROM), an optical storage device, a transmission media such as those supporting the Internet or an intranet, or a magnetic storage device. Note that the computer-usable or computer-readable medium could even be paper or another suitable medium upon which the program is printed, as the program can be electronically captured via, for instance, optical scanning of the paper or other medium, then compiled, interpreted, or otherwise processed in a suitable manner, if necessary, and then stored in a computer memory. In the context of this document, a computer-usable or computer-readable medium may be any medium that can contain, store, communicate, propagate, or transport the program for use by or in connection with the instruction execution system, apparatus, or device.
- The computer-usable medium may include a propagated data signal with the computer-usable program code embodied therewith, either in baseband or as part of a carrier wave. The computer-usable program code may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, radio frequency (RF), etc. Computer program code for carrying out operations of the disclosure may be written in any combination of one or more programming languages, including an object oriented programming language, such as Java, Smalltalk, C++, or the like, and conventional procedural programming languages, such as the “C” programming language, or similar programming languages. The program code may execute entirely on a user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer, or entirely on the remote computer or server. In the latter scenario, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet Service Provider). The network may include a wired network or a wireless network. The network may be configured in accordance with one or more wireless communication protocols, such as an Institute of Electrical and Electronics Engineers (IEEE) protocol, a Wi-Fi Alliance protocol, a Bluetooth® protocol, a Zigbee® protocol, a near-field communication protocol, an infrared communication protocol, a cellular protocol, a Long Term Evolution (LTE) protocol, or a combination thereof. Bluetooth is a registered trademark of Bluetooth Special Interest Group (SIG), and Zigbee is a registered trademark of Zigbee Alliance.
- Various aspects are described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products. It will be understood that each block of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. The computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create mans for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks. The computer program instructions may also be stored in a computer-readable medium that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable medium produce an article of manufacture including instruction means which implement the function/act specified in the flowchart and/or block diagram block or blocks. The computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide processes for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.
- The flowchart and block diagrams in
FIGS. 1-12 illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various disclosed aspects. In this regard, each block in the flowchart or block diagrams may represent a module, a segment, or a portion of code, which includes one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of order noted in theFIGS. 1-12 . For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems that perform the specified functions or acts, or combinations of special purpose hardware and computer instructions. - The corresponding structures, materials, acts, and equivalents of all means or step plus function elements in the claims below are intended to include any structure, material, or act for performing the function in combination with other claimed elements as specifically claimed. The description has been presented for purposes of illustration and description, but is not intended to be exhaustive or limited to the form disclosed. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of this technology. Some implementations were chosen and described in order to explain the principles and practical application, and to enable others of ordinary skill in the art to understand various implementations with various modifications as are suited to particular uses contemplated.
- The Abstract is not intended to be used in interpreting or limiting the scope or meaning of the claims. In addition, the disclosure is not to be interpreted as indicating that the claimed aspects require more features than are expressly recited in each claim. Thus, the present disclosure is not intended to be limited to the aspects shown herein but is to be accorded the widest scope possible consistent with the principles and novel features as defined by the following claims.
Claims (20)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/186,082 US20190227676A1 (en) | 2018-01-23 | 2018-11-09 | Generation and display of linkage between elements of a file |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201862620933P | 2018-01-23 | 2018-01-23 | |
US16/186,082 US20190227676A1 (en) | 2018-01-23 | 2018-11-09 | Generation and display of linkage between elements of a file |
Publications (1)
Publication Number | Publication Date |
---|---|
US20190227676A1 true US20190227676A1 (en) | 2019-07-25 |
Family
ID=67298680
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US16/186,082 Pending US20190227676A1 (en) | 2018-01-23 | 2018-11-09 | Generation and display of linkage between elements of a file |
Country Status (1)
Country | Link |
---|---|
US (1) | US20190227676A1 (en) |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030009385A1 (en) * | 2000-12-26 | 2003-01-09 | Tucciarone Joel D. | Electronic messaging system and method thereof |
US20030030844A1 (en) * | 2001-08-07 | 2003-02-13 | Olympus Optical Co., Ltd. | Method of generating image data for printing, apparatus of the same, and program |
US20090118845A1 (en) * | 1999-05-17 | 2009-05-07 | Invensys Systems, Inc. | Control system configuration and methods with object characteristic swapping |
US20110029535A1 (en) * | 2009-07-31 | 2011-02-03 | Cole Patrick L | Data management system |
US20120151418A1 (en) * | 2010-12-14 | 2012-06-14 | International Business Machines Corporation | Linking of a plurality of items of a user interface to display new information inferred from the plurality of items that are linked |
US20120265744A1 (en) * | 2001-08-08 | 2012-10-18 | Gary Charles Berkowitz | Knowledge-based e-catalog procurement system and method |
US20140358267A1 (en) * | 2006-09-26 | 2014-12-04 | Clear Channel Management Services, Inc. | Scheduling Advertising During Restricted Periods |
US20150149298A1 (en) * | 2013-11-22 | 2015-05-28 | John Tapley | Dynamic list creation |
US20150193123A1 (en) * | 2014-01-07 | 2015-07-09 | Bank Of America Corporation | Transfer of data between applications using intermediate user interface |
US20150193860A1 (en) * | 2014-01-07 | 2015-07-09 | Robert A. Walker | Electronic commerce system and method |
US20150278906A1 (en) * | 2014-03-26 | 2015-10-01 | Cellco Partnership (D/B/A Verizon Wireless) | Product notification and recommendation technology utilizing detected activity |
US20160231880A1 (en) * | 2015-02-06 | 2016-08-11 | Jamdeo Canada Ltd. | System and methods for card interaction and assigning cards to devices |
US20160292760A1 (en) * | 2015-04-03 | 2016-10-06 | James Pastore | System and method for automatically generating a roofing plan with cost estimation |
-
2018
- 2018-11-09 US US16/186,082 patent/US20190227676A1/en active Pending
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090118845A1 (en) * | 1999-05-17 | 2009-05-07 | Invensys Systems, Inc. | Control system configuration and methods with object characteristic swapping |
US20030009385A1 (en) * | 2000-12-26 | 2003-01-09 | Tucciarone Joel D. | Electronic messaging system and method thereof |
US20030030844A1 (en) * | 2001-08-07 | 2003-02-13 | Olympus Optical Co., Ltd. | Method of generating image data for printing, apparatus of the same, and program |
US20120265744A1 (en) * | 2001-08-08 | 2012-10-18 | Gary Charles Berkowitz | Knowledge-based e-catalog procurement system and method |
US20140358267A1 (en) * | 2006-09-26 | 2014-12-04 | Clear Channel Management Services, Inc. | Scheduling Advertising During Restricted Periods |
US20110029535A1 (en) * | 2009-07-31 | 2011-02-03 | Cole Patrick L | Data management system |
US20120151418A1 (en) * | 2010-12-14 | 2012-06-14 | International Business Machines Corporation | Linking of a plurality of items of a user interface to display new information inferred from the plurality of items that are linked |
US20150149298A1 (en) * | 2013-11-22 | 2015-05-28 | John Tapley | Dynamic list creation |
US20150193123A1 (en) * | 2014-01-07 | 2015-07-09 | Bank Of America Corporation | Transfer of data between applications using intermediate user interface |
US20150193860A1 (en) * | 2014-01-07 | 2015-07-09 | Robert A. Walker | Electronic commerce system and method |
US20150278906A1 (en) * | 2014-03-26 | 2015-10-01 | Cellco Partnership (D/B/A Verizon Wireless) | Product notification and recommendation technology utilizing detected activity |
US20160231880A1 (en) * | 2015-02-06 | 2016-08-11 | Jamdeo Canada Ltd. | System and methods for card interaction and assigning cards to devices |
US20160292760A1 (en) * | 2015-04-03 | 2016-10-06 | James Pastore | System and method for automatically generating a roofing plan with cost estimation |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9069868B2 (en) | Computer device for reading e-book and server for being connected with the same | |
US10175954B2 (en) | Method of processing big data, including arranging icons in a workflow GUI by a user, checking process availability and syntax, converting the workflow into execution code, monitoring the workflow, and displaying associated information | |
US7703099B2 (en) | Scalable transformation and configuration of EDI interchanges | |
US10038654B1 (en) | Dynamic formatting of messages for multiple endpoints | |
CN107408113B (en) | Analysis engine and method for analyzing pre-generated data reports | |
US10439967B2 (en) | Attachment reply handling in networked messaging systems | |
US20130226925A1 (en) | Intelligent product feedback analytics tool | |
US12032635B2 (en) | Systems, apparatuses, and methods of processing and managing web traffic data | |
US10650085B2 (en) | Providing interactive preview of content within communication | |
CN109815448B (en) | Slide generation method and device | |
US9888050B2 (en) | Method and apparatus for integrating various network elements and providing media processing services | |
CN110489156A (en) | Edition control method, device, medium and the electronic equipment of binary format | |
US11062497B2 (en) | Structuralized creation and transmission of personalized audiovisual data | |
CN113779952B (en) | Text processing method and device and electronic equipment | |
US20190227676A1 (en) | Generation and display of linkage between elements of a file | |
CN108509582A (en) | A kind of answering method of information, terminal device and computer readable storage medium | |
CN107526827A (en) | Method, equipment and computer-readable recording medium for question and answer displaying | |
CN111352963B (en) | A data statistics method and device | |
CN114757157B (en) | Method, apparatus, device and medium for generating an aircraft kit | |
CN113282285B (en) | Code writing method, device, electronic equipment and storage medium | |
US20150356070A1 (en) | Information processing device, information processing method, and non-transitory computer-readable medium | |
US10387393B1 (en) | System, method, and computer program for generating a maturity assessment of a document management system | |
CN113641359B (en) | Data processing method and device | |
CN115983762A (en) | Electric equipment material receiving method, device, electronic equipment and computer medium | |
US9678748B2 (en) | Methods, systems and computer-readable media for managing a local stack |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: IHEARTMEDIA MANAGEMENT SERVICES, INC., TEXAS Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:BREWER, JOSEPH;SPORN, JODY;SIGNING DATES FROM 20181102 TO 20181109;REEL/FRAME:047465/0946 |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION |
|
AS | Assignment |
Owner name: U.S. BANK NATIONAL ASSOCIATION AS COLLATERAL AGENT, TENNESSEE Free format text: SECURITY INTEREST;ASSIGNORS:IHEARTCOMMUNICATIONS, INC.;IHEARTMEDIA MANAGEMENT SERVICES, INC.;REEL/FRAME:049067/0800 Effective date: 20190501 Owner name: U.S. BANK NATIONAL ASSOCIATION, TENNESSEE Free format text: SECURITY INTEREST;ASSIGNORS:IHEARTCOMMUNICATIONS, INC.;IHEARTMEDIA MANAGEMENT SERVICES, INC.;REEL/FRAME:049079/0814 Effective date: 20190501 Owner name: U.S. BANK NATIONAL ASSOCIATION AS COLLATERAL AGENT Free format text: SECURITY INTEREST;ASSIGNORS:IHEARTCOMMUNICATIONS, INC.;IHEARTMEDIA MANAGEMENT SERVICES, INC.;REEL/FRAME:049067/0800 Effective date: 20190501 Owner name: CITIBANK, N.A., AS COLLATERAL AGENT, NEW YORK Free format text: SECURITY INTEREST;ASSIGNORS:IHEARTCOMMUNICATIONS, INC.;IHEARTMEDIA MANAGEMENT SERVICES, INC.;REEL/FRAME:049067/0606 Effective date: 20190501 |
|
AS | Assignment |
Owner name: U.S. BANK NATIONAL ASSOCIATION, TENNESSEE Free format text: SECURITY INTEREST;ASSIGNORS:IHEART COMMUNICATIONS, INC.;IHEARTMEDIA MANAGEMENT SERVICES, INC.;REEL/FRAME:050017/0882 Effective date: 20190807 |
|
AS | Assignment |
Owner name: U. S. BANK NATIONAL ASSOCIATION, TENNESSEE Free format text: PATENT SECURITY AGREEMENT;ASSIGNORS:IHEART COMMUNICATIONS, INC.;IHEARTMEDIA MANAGEMENT SERVICES, INC.;REEL/FRAME:051143/0579 Effective date: 20191122 |
|
AS | Assignment |
Owner name: BANK OF AMERICA, N.A., AS SUCCESSOR COLLATERAL AGENT, NORTH CAROLINA Free format text: ASSIGNMENT OF SECURITY INTEREST IN PATENT RIGHTS;ASSIGNOR:CITIBANK, N.A., AS COLLATERAL AGENT;REEL/FRAME:052144/0833 Effective date: 20200203 |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NON FINAL ACTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: ADVISORY ACTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NON FINAL ACTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: FINAL REJECTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NON FINAL ACTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: FINAL REJECTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NON FINAL ACTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: FINAL REJECTION MAILED |
|
STCV | Information on status: appeal procedure |
Free format text: NOTICE OF APPEAL FILED |
|
STCV | Information on status: appeal procedure |
Free format text: NOTICE OF APPEAL FILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NON FINAL ACTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER |
|
AS | Assignment |
Owner name: U.S. BANK TRUST COMPANY, NATIONAL ASSOCIATION, TENNESSEE Free format text: PATENT SECURITY AGREEMENT;ASSIGNOR:IHEARTMEDIA MANAGEMENT SERVICES, INC.;REEL/FRAME:069762/0453 Effective date: 20241220 |
|
AS | Assignment |
Owner name: U.S. BANK TRUST COMPANY, NATIONAL ASSOCIATION, TENNESSEE Free format text: PATENT SECURITY AGREEMENT;ASSIGNOR:IHEARTMEDIA MANAGEMENT SERVICES, INC.;REEL/FRAME:069792/0335 Effective date: 20241220 |
|
AS | Assignment |
Owner name: U.S. BANK TRUST COMPANY, NATIONAL ASSOCIATION, TENNESSEE Free format text: PATENT SECURITY AGREEMENT;ASSIGNOR:IHEARTMEDIA MANAGEMENT SERVICES, INC.;REEL/FRAME:069793/0758 Effective date: 20241220 Owner name: U.S. BANK TRUST COMPANY, NATIONAL ASSOCIATION, TENNESSEE Free format text: PATENT SECURITY AGREEMENT;ASSIGNOR:IHEARTMEDIA MANAGEMENT SERVICES, INC.;REEL/FRAME:069794/0248 Effective date: 20241220 |
|
AS | Assignment |
Owner name: BANK OF AMERICA, N.A., NORTH CAROLINA Free format text: PATENT SECURITY AGREEMENT;ASSIGNOR:IHEARTMEDIA MANAGEMENT SERVICES, INC.;REEL/FRAME:069795/0912 Effective date: 20241220 |
|
AS | Assignment |
Owner name: IHEARTMEDIA MANAGEMENT SERVICES, INC., TEXAS Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS (REEL/FRAME 049067/0800);ASSIGNOR:U.S. BANK TRUST COMPANY, NATIONAL ASSOCIATION (FORMERLY KNOWN AS U.S. BANK NATIONAL ASSOCIATION);REEL/FRAME:069795/0423 Effective date: 20241220 Owner name: IHEARTCOMMUNICATIONS, INC., TEXAS Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS (REEL/FRAME 049067/0800);ASSIGNOR:U.S. BANK TRUST COMPANY, NATIONAL ASSOCIATION (FORMERLY KNOWN AS U.S. BANK NATIONAL ASSOCIATION);REEL/FRAME:069795/0423 Effective date: 20241220 Owner name: IHEARTMEDIA MANAGEMENT SERVICES, INC., TEXAS Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS (REEL/FRAME 049079/0814);ASSIGNOR:U.S. BANK TRUST COMPANY, NATIONAL ASSOCIATION (FORMERLY KNOWN AS U.S. BANK NATIONAL ASSOCIATION);REEL/FRAME:069795/0488 Effective date: 20241220 Owner name: IHEARTCOMMUNICATIONS, INC., TEXAS Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS (REEL/FRAME 049079/0814);ASSIGNOR:U.S. BANK TRUST COMPANY, NATIONAL ASSOCIATION (FORMERLY KNOWN AS U.S. BANK NATIONAL ASSOCIATION);REEL/FRAME:069795/0488 Effective date: 20241220 |
|
AS | Assignment |
Owner name: IHEARTMEDIA MANAGEMENT SERVICES, INC., TEXAS Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS (REEL/FRAME 050017/0882);ASSIGNOR:U.S. BANK TRUST COMPANY, NATIONAL ASSOCIATION;REEL/FRAME:069795/0626 Effective date: 20241220 Owner name: IHEARTCOMMUNICATIONS, INC., TEXAS Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS (REEL/FRAME 050017/0882);ASSIGNOR:U.S. BANK TRUST COMPANY, NATIONAL ASSOCIATION;REEL/FRAME:069795/0626 Effective date: 20241220 |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: FINAL REJECTION MAILED |